#ifndef KISSCOUNT_H #define KISSCOUNT_H #include #include #include #include #include class wxUI; class KissCount { public: KissCount(); ~KissCount(); std::list GetUsers(); bool IsValidUser(wxString user, wxString password); void LoadUser(wxString user); User* GetUser(); void ChangePassword(wxString password); bool UserExists(wxString name); void ChangeName(wxString name); void NewUser(wxString name); void LoadYear(int year, bool force=false); wxString AddOperation(struct operation op); void UpdateOperation(struct operation op); void DeleteOperation(struct operation op); void DeleteOperations(int month, int year); double GetAccountAmount(wxString id, int month, int year); void SetAccountAmount(int month, int year, wxString accountId, double value); void AddAccount(struct Account ac); void UpdateAccount(struct Account ac); void DeleteAccount(struct Account ac); wxString AddCategory(struct category category); void UpdateCategory(wxString oldName, struct category category); void DeleteCategory(struct category category); std::map > GetAllOperations(); void GenerateMonth(int monthFrom, int yearFrom, int monthTo, int yearTo); void KillMe(); private: wxUI* _wxUI; Database* _db; User* _user; }; #endif