Add ascending/descending operation order in preferences
Remove default_preferences table Force date by default in SearchPanel Update TODO !! Add a generic UpdatePreference instead of SetLanguage, SetXXX into Database
This commit is contained in:
@@ -201,11 +201,13 @@ User* Database::LoadUser(const wxString& name)
|
||||
return NULL;
|
||||
|
||||
user = new User();
|
||||
|
||||
|
||||
user->_id = set.GetAsString(wxT("id"));
|
||||
user->_name = set.GetAsString(wxT("name"));
|
||||
user->_password = wxT("") ; // Security reasons set.GetAsString("password");
|
||||
|
||||
user->_preferences[wxT("operation_order")] = wxT("ASC") ;
|
||||
|
||||
set.Finalize();
|
||||
|
||||
req = wxT("SELECT * FROM account WHERE user='") + user->_id + wxT("' ORDER BY default_account DESC, name ASC");
|
||||
@@ -295,7 +297,8 @@ void Database::LoadYear(User* user, int year)
|
||||
req += wxT("')");
|
||||
req += wxT(" OR user='") + user->_id + wxT("')");
|
||||
req += wxT(" AND year='") + wxString::Format(wxT("%d"), year) + wxT("'");
|
||||
req += wxT(" ORDER BY fix_cost DESC, year,month,day ASC");
|
||||
req += wxT(" ORDER BY fix_cost DESC, year, month ASC, day ");
|
||||
req += user->_preferences[wxT("operation_order")];
|
||||
|
||||
EXECUTE_SQL_QUERY(req, set, );
|
||||
|
||||
@@ -883,12 +886,14 @@ void Database::KillMe(User* user)
|
||||
EXECUTE_SQL_UPDATE(req, );
|
||||
}
|
||||
|
||||
void Database::SetLanguage(User* user, wxLanguage language)
|
||||
void Database::UpdatePreference(User* user, const wxString& preference)
|
||||
{
|
||||
wxString req;
|
||||
wxString value = user->_preferences[preference];
|
||||
|
||||
req = wxT("UPDATE preference SET ") ;
|
||||
req += wxT("name='language'");
|
||||
req += wxT(", value='") + wxString::Format(wxT("%d"), language) + wxT("'");
|
||||
req += wxT("name='") + preference + wxT("'");
|
||||
req += wxT(", value='") + value + wxT("'");
|
||||
req += wxT(" WHERE user='") + user->_id + wxT("'");
|
||||
|
||||
try
|
||||
@@ -897,8 +902,8 @@ void Database::SetLanguage(User* user, wxLanguage language)
|
||||
{
|
||||
req = wxT("INSERT INTO preference ('user', 'name', 'value') VALUES ('") ;
|
||||
req += user->_id + wxT("'");
|
||||
req += wxT(" ,'language'");
|
||||
req += wxT(" ,'") + wxString::Format(wxT("%d"), language) + wxT("'");
|
||||
req += wxT(" ,'") + preference + wxT("'");
|
||||
req += wxT(" ,'") + value + wxT("'");
|
||||
req += wxT(")");
|
||||
EXECUTE_SQL_UPDATE(req, );
|
||||
}
|
||||
@@ -1003,7 +1008,10 @@ std::vector<Operation>* Database::Search(User* user, wxString* description, wxDa
|
||||
req += wxT("')");
|
||||
}
|
||||
|
||||
req += wxT(" ORDER BY year,month,day ASC");
|
||||
req += wxT(" ORDER BY year ") ;
|
||||
req += user->_preferences[wxT("operation_order")] ;
|
||||
req += wxT(", month ") + user->_preferences[wxT("operation_order")] ;
|
||||
req += wxT(", day ") + user->_preferences[wxT("operation_order")] ;
|
||||
|
||||
// std::cout << req.mb_str() << "\n";
|
||||
|
||||
|
||||
@@ -66,7 +66,7 @@ class Database
|
||||
void ChangeName(User* user, const wxString& name);
|
||||
void NewUser(const wxString& name);
|
||||
|
||||
void SetLanguage(User* user, wxLanguage language);
|
||||
void UpdatePreference(User* user, const wxString& preference);
|
||||
|
||||
std::vector<Operation>* Search(User* user, wxString* description, wxDateTime* dateFrom, wxDateTime* dateTo,
|
||||
wxString* amountFrom, wxString* amountTo,
|
||||
|
||||
Reference in New Issue
Block a user