loadArticleCache function

Future<String?> loadArticleCache(
  1. bool onlyVisible
)

Implementation

Future<String?> loadArticleCache(bool onlyVisible) async {
  try{
    work(querySnapshot){
      productDataCache = [];
      if (querySnapshot.exists){
        if (querySnapshot.data() != null) {
          var _meData = querySnapshot.data()!;
          for (var item in _meData.entries){
            var t = ProductDataCache.fromJson(item.key, item.value);
            if (!t.delete) {
              if (onlyVisible) {
                if (t.visible)
                  productDataCache.add(t);
              } else
                productDataCache.add(t);
            }
          }
        }
        productDataCache.sort((a, b) => b.timeModify.compareTo(a.timeModify));
      }
    }

    var querySnapshot = await FirebaseFirestore.instance.collection("cache").doc("article").get();
    work(querySnapshot);

    FirebaseFirestore.instance.collection("cache")
        .doc("article").snapshots().listen((querySnapshot) {
      work(querySnapshot);
      redrawMainWindow();
    });

  }catch(ex){
    return "loadArticleCache " + ex.toString();
  }
  return null;
}