diff --git a/trackeroo/lib/logic/services/categories_controller.dart b/trackeroo/lib/logic/services/categories_controller.dart index 6033d41b903192a10a6052c800685ec3c8a3b1f6..3815d1496e1d16a811c95a4758b6b4392ed69004 100644 --- a/trackeroo/lib/logic/services/categories_controller.dart +++ b/trackeroo/lib/logic/services/categories_controller.dart @@ -7,18 +7,34 @@ class CategoriesController { Box<Category> catBox; Map<dynamic, Category> categories; - void saveCategory() { - // TODO: implement save categories function - return; + Future<bool> saveCategory(Category category) async { + // String id = category.title.replaceAll(' ', '_').toLowerCase(); + try { + await catBox.put(category.id, category); + categories[category.id] = category; + } catch (e) { + return false; + } + return true; } - void updateCategory() { - // TODO: implement update category - return; + Future<bool> updateCategory(Category category) async { + try { + await catBox.put(category.id, category); + categories[category.id] = category; + } catch (e) { + return false; + } + return true; } - void deleteCategory() { - // TODO: implement read categories function - return; + Future<bool> deleteCategory(String id) async { + try { + await catBox.delete(id); + categories.remove(id); + } catch (e) { + return false; + } + return true; } }