From 8a69fffd86d01222cdb2b69d434ee6e15a6eeda3 Mon Sep 17 00:00:00 2001 From: James Booth Date: Thu, 31 Jan 2013 01:50:37 +0000 Subject: [PATCH] Added priority properties to account --- src/accounts.c | 75 ++++++++++++++++++++++++++++++++++++++++++++++++++ src/accounts.h | 10 +++++++ 2 files changed, 85 insertions(+) diff --git a/src/accounts.c b/src/accounts.c index d7149b77..8a765b9a 100644 --- a/src/accounts.c +++ b/src/accounts.c @@ -325,6 +325,81 @@ accounts_set_resource(const char * const account_name, const char * const value) } } +void +accounts_set_priority_online(const char * const account_name, const gint value) +{ + if (accounts_account_exists(account_name)) { + g_key_file_set_integer(accounts, account_name, "priority.online", value); + _save_accounts(); + } +} + +void +accounts_set_priority_chat(const char * const account_name, const gint value) +{ + if (accounts_account_exists(account_name)) { + g_key_file_set_integer(accounts, account_name, "priority.chat", value); + _save_accounts(); + } +} + +void +accounts_set_priority_away(const char * const account_name, const gint value) +{ + if (accounts_account_exists(account_name)) { + g_key_file_set_integer(accounts, account_name, "priority.away", value); + _save_accounts(); + } +} + +void +accounts_set_priority_xa(const char * const account_name, const gint value) +{ + if (accounts_account_exists(account_name)) { + g_key_file_set_integer(accounts, account_name, "priority.xa", value); + _save_accounts(); + } +} + +void +accounts_set_priority_dnd(const char * const account_name, const gint value) +{ + if (accounts_account_exists(account_name)) { + g_key_file_set_integer(accounts, account_name, "priority.dnd", value); + _save_accounts(); + } +} + +gint +prefs_get_priority_online(const char * const account_name) +{ + return g_key_file_get_integer(accounts, account_name, "priority.online", NULL); +} + +gint +prefs_get_priority_chat(const char * const account_name) +{ + return g_key_file_get_integer(accounts, account_name, "priority.chat", NULL); +} + +gint +prefs_get_priority_away(const char * const account_name) +{ + return g_key_file_get_integer(accounts, account_name, "priority.away", NULL); +} + +gint +prefs_get_priority_xa(const char * const account_name) +{ + return g_key_file_get_integer(accounts, account_name, "priority.xa", NULL); +} + +gint +prefs_get_priority_dnd(const char * const account_name) +{ + return g_key_file_get_integer(accounts, account_name, "priority.dnd", NULL); +} + void accounts_set_last_presence(const char * const account_name, const char * const value) { diff --git a/src/accounts.h b/src/accounts.h index e4601e9e..7cb19d10 100644 --- a/src/accounts.h +++ b/src/accounts.h @@ -63,5 +63,15 @@ void accounts_set_last_presence(const char * const account_name, const char * co void accounts_set_login_presence(const char * const account_name, const char * const value); jabber_presence_t accounts_get_login_presence(const char * const account_name); jabber_presence_t accounts_get_last_presence(const char * const account_name); +void accounts_set_priority_online(const char * const account_name, const gint value); +void accounts_set_priority_chat(const char * const account_name, const gint value); +void accounts_set_priority_away(const char * const account_name, const gint value); +void accounts_set_priority_xa(const char * const account_name, const gint value); +void accounts_set_priority_dnd(const char * const account_name, const gint value); +gint prefs_get_priority_online(const char * const account_name); +gint prefs_get_priority_chat(const char * const account_name); +gint prefs_get_priority_away(const char * const account_name); +gint prefs_get_priority_xa(const char * const account_name); +gint prefs_get_priority_dnd(const char * const account_name); #endif