Syncing issue fixed v2
This commit is contained in:
@@ -83,7 +83,7 @@ Future<void> BuildBridgeToServer() async{
|
||||
final prefs = await SharedPreferences.getInstance();
|
||||
|
||||
while(true){
|
||||
|
||||
await UserOperations.executeQueries();
|
||||
try {
|
||||
http.Response response = (await http.post(Uri.parse('http://161.97.127.136/task_tracker/bridge.php'),
|
||||
body: <String, String>{"username": username}));
|
||||
@@ -111,25 +111,38 @@ Future<void> BuildBridgeToServer() async{
|
||||
await Future.delayed(Duration(seconds: 5));
|
||||
}
|
||||
}
|
||||
|
||||
bool m_refreshing = false;
|
||||
Future<void> refreshUserData() async {
|
||||
Future<void> refreshUserData({bool forceOffline = false}) async {
|
||||
print('refreshing user data');
|
||||
if(m_refreshing){
|
||||
print('Called while refreshing. Return');return;
|
||||
}
|
||||
m_refreshing=true;
|
||||
refreshStream.add(true);
|
||||
await updateCatsList();
|
||||
await updateTasksList();
|
||||
await updateActList();
|
||||
await updateProjectsList();
|
||||
refreshStream.add(false);
|
||||
|
||||
if(forceOffline) {
|
||||
refreshStream.add(true);
|
||||
categories = await GetCategories(true);
|
||||
taskTypes = await GetTaskTypes(true);
|
||||
activities = await GetActivities(true);
|
||||
projects= await GetProjects(true);
|
||||
|
||||
refreshStream.add(false);
|
||||
}else{
|
||||
|
||||
await updateCatsList();
|
||||
await updateTasksList();
|
||||
await updateActList();
|
||||
await updateProjectsList();
|
||||
}
|
||||
|
||||
m_refreshing=false;
|
||||
if (cacheEnabled) {
|
||||
NotificationManager.RescheduleNotifications();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Future<bool> cacheDbExist() async {
|
||||
if (Platform.isAndroid || Platform.isIOS) {
|
||||
Directory directory = await getApplicationDocumentsDirectory();
|
||||
@@ -749,7 +762,7 @@ class UserOperations {
|
||||
Category.colProductive: productive
|
||||
};
|
||||
await cacheDb.insert('Categories', data);
|
||||
// await refreshUserData();
|
||||
await refreshUserData(forceOffline: true);
|
||||
} else {
|
||||
try {
|
||||
http.Response queryResponse = (await http.post(Uri.parse('http://161.97.127.136/task_tracker/add_category.php'), body: queryBody));
|
||||
@@ -788,7 +801,7 @@ class UserOperations {
|
||||
//update Cache
|
||||
Map<String, Object> data = {TaskType.colId: username + name, Category.colName: name, Category.colCatId: username + category};
|
||||
await cacheDb.insert('TaskTypes', data);
|
||||
//await refreshUserData();
|
||||
await refreshUserData(forceOffline: true);
|
||||
} else {
|
||||
try {
|
||||
http.Response queryResponse = (await http.post(Uri.parse('http://161.97.127.136/task_tracker/add_taskType.php'), body: queryBody));
|
||||
@@ -844,7 +857,7 @@ class UserOperations {
|
||||
Activity.colMetadata: metadata
|
||||
};
|
||||
await cacheDb.insert('Activities', data);
|
||||
// await refreshUserData();
|
||||
await refreshUserData(forceOffline: true);
|
||||
} else {
|
||||
try {
|
||||
http.Response queryResponse = (await http.post(Uri.parse('http://161.97.127.136/task_tracker/add_activity.php'), body: queryBody));
|
||||
@@ -898,7 +911,7 @@ class UserOperations {
|
||||
// Map<String, Object> data = {Activity.colType: username + type, Activity.colStartTime: dFormat.format(sTime), Activity.colEndTime: dFormat.format(eTime), Activity.colMetadata: metadata};
|
||||
// String updateActQuery = "UPDATE Activities SET ${Activity.colType}=";
|
||||
// await cacheDb.insert('Activities', data);
|
||||
// await refreshUserData();
|
||||
await refreshUserData(forceOffline: true);
|
||||
} else {
|
||||
// queries.add(Queries('edit_activity', jsonEncode(queryBody)));
|
||||
try {
|
||||
@@ -938,7 +951,7 @@ class UserOperations {
|
||||
//update Cache
|
||||
Map<String, Object> data = {Project.colName: username+name, Project.colCat: category, Project.colSteps: jsonEncode(steps), Project.colDeadline: deadline.toString()};
|
||||
await cacheDb.insert('Projects', data);
|
||||
//await refreshUserData();
|
||||
await refreshUserData(forceOffline: true);
|
||||
} else {
|
||||
try {
|
||||
http.Response queryResponse = (await http.post(Uri.parse('http://161.97.127.136/task_tracker/add_project.php'), body: queryBody));
|
||||
@@ -974,7 +987,7 @@ class UserOperations {
|
||||
};
|
||||
await cacheDb.rawDelete("DELETE FROM TaskTypes WHERE id='${username + name}'");
|
||||
|
||||
// await refreshUserData();
|
||||
await refreshUserData(forceOffline: true);
|
||||
//Add to server and refresh Cache
|
||||
} else {
|
||||
try {
|
||||
@@ -1011,7 +1024,7 @@ class UserOperations {
|
||||
Category.colName: name,
|
||||
};
|
||||
await cacheDb.rawDelete("DELETE FROM Categories WHERE ${Category.colCatId}='${username + name}'");
|
||||
//await refreshUserData();
|
||||
await refreshUserData(forceOffline: true);
|
||||
//Add to server and refresh Cache
|
||||
} else {
|
||||
try {
|
||||
@@ -1050,7 +1063,7 @@ class UserOperations {
|
||||
print("delteQuery : $deleteQuery");
|
||||
|
||||
await cacheDb.rawDelete(deleteQuery);
|
||||
// await refreshUserData();
|
||||
await refreshUserData(forceOffline: true);
|
||||
//Add to server and refresh Cache
|
||||
} else {
|
||||
try {
|
||||
|
||||
Reference in New Issue
Block a user