import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:firebase_auth/firebase_auth.dart';
import 'package:test_project/model/todo.dart';
import 'package:test_project/firebase/sign_in.dart';
final FirebaseFirestore database = FirebaseFirestore.instance;
final FirebaseAuth auth = FirebaseAuth.instance;
var todoSize = 1;
var todoItemSize = 1;
List firebaseTodos = [];
void countTodos() {
var docs = database.collection('users').doc(currentLoggedIn.email).get();
docs.then((snapshot) {
todoSize = snapshot.data()['todo_count'];
});
}
void countTodoItem(int index) {
var docs = database.collection('users').doc(currentLoggedIn.email)
.collection('todo').doc('todo$index').get();
docs.then((snapshot) => todoItemSize = snapshot.data()['items']);
}
Future loadTodoFromFirebase() async {
var docs = database.collection('users').doc(currentLoggedIn.email)
.collection('todo').get();
docs.then((QuerySnapshot snapshot) {
snapshot.docs.forEach((element) {
firebaseTodos.add(Todo(element.data()['title'], element.data()['description']));
});
});
}
void updateTodoCount(int amount) {
countTodos();
database.collection('users').doc(currentLoggedIn.email).update({
'todo_count': todoSize + 1
});
}
void saveTodo(String title, String description) async {
database.collection('users').doc(currentLoggedIn.email)
.collection('todo').doc('todo$todoSize').set({
'title': title,
'description': description,
});
database.collection('users').doc(currentLoggedIn.email)
.collection('todo').doc('todo$todoSize')
.collection('item').doc('item0').set({
'item_name': 'Example Item',
'done': false
});
updateTodoCount(1);
}
void saveTodoItem(int index, String name) async {
print("index");
print(index);
database.collection('users').doc(currentLoggedIn.email)
.collection('todo').doc('todo$index')
.collection('item').doc('item$todoItemSize').set({
'item_name': name,
'done': false,
});
}