logViewFirebase static method

Future<void> logViewFirebase(
  1. Map<String, dynamic> viewJson
)

Implementation

static Future<void> logViewFirebase(Map<String, dynamic> viewJson) async {
  try {
    String id = viewJson['id'];
    Map<String, dynamic> analytics = viewJson['analytics'] ?? {};
    int views = 1;
    if (analytics['views'] != null) {
      views = analytics['views'] + 1;
    }
    analytics['views'] = views;
    viewJson['analytics'] = analytics;
    FirebaseApp app = Instadiv.getInstance().firebaseApp;
    FirebaseFirestore firestore = FirebaseFirestore.instanceFor(app: app);
    await firestore
        .collection(instaCollection)
        .doc(Instadiv.getInstance().project)
        .collection('views')
        .doc(id)
        .update(viewJson);
  } catch (e) {
    print('Error $e');
  }
}