/* Copyright 2010 Grégory Soutadé This file is part of KissCount. KissCount is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. KissCount is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with KissCount. If not, see . */ #include "User.h" User::~User() { std::map >* >::iterator it; for (it = _operations.begin(); it != _operations.end(); it++) { if (_operations[it->first]) { delete it->second; } } } Category User::GetCategory(wxString& catId) { Category cat; std::vector::iterator it; for (it=_categories.begin(); it !=_categories.end(); it++) if (it->id == catId) return *it; cat.id = wxT("0"); cat.parent = wxT("0"); cat.name = _("Unknown"); cat.font = wxT(""); cat.color = wxColour(0xFF, 0xFF, 0xFF); return cat; } wxString User::GetCategoryName(wxString& catId) { std::vector::iterator it; for (it=_categories.begin(); it !=_categories.end(); it++) if (it->id == catId) return it->name; return _("Unknown") ; } wxString User::GetCategoryId(wxString& catName) { std::vector::iterator it; for (it=_categories.begin(); it !=_categories.end(); it++) if (it->name == catName) return it->id; return wxT("0") ; } wxString User::GetAccountName(wxString& accountId) { std::vector::iterator it; for (it=_accounts.begin(); it !=_accounts.end(); it++) if (it->id == accountId) return it->name; return _("Unknown") ; } wxString User::GetAccountId(wxString& accountName) { std::vector::iterator it; for (it=_accounts.begin(); it !=_accounts.end(); it++) if (it->name == accountName) return it->id; return wxT("0") ; } int User::GetCategoriesNumber() { return _categories.size(); } int User::GetAccountsNumber() { return _accounts.size(); } int User::GetOperationsNumber(int month, int year) { return (*_operations[year])[month].size(); } wxLanguage User::GetLanguage() { wxString res = _preferences[wxT("language")]; long val; if (res == wxT("")) return wxLANGUAGE_ENGLISH ; res.ToLong(&val); return (wxLanguage)val; }