mirror of
https://git.jabber.space/devs/cproof.git
synced 2026-07-22 11:46:20 +00:00
WIP - Adding port to account options
This commit is contained in:
@@ -43,6 +43,7 @@ static Autocomplete enabled_ac;
|
||||
static gchar *string_keys[] = {
|
||||
"jid",
|
||||
"server",
|
||||
"port",
|
||||
"resource",
|
||||
"password",
|
||||
"presence.last",
|
||||
@@ -118,7 +119,7 @@ _accounts_reset_enabled_search(void)
|
||||
}
|
||||
|
||||
static void
|
||||
_accounts_add(const char *account_name, const char *altdomain)
|
||||
_accounts_add(const char *account_name, const char *altdomain, int port)
|
||||
{
|
||||
// set account name and resource
|
||||
const char *barejid = account_name;
|
||||
@@ -139,6 +140,9 @@ _accounts_add(const char *account_name, const char *altdomain)
|
||||
if (altdomain != NULL) {
|
||||
g_key_file_set_string(accounts, account_name, "server", altdomain);
|
||||
}
|
||||
if (port != 0) {
|
||||
g_key_file_set_integer(accounts, account_name, "port", port);
|
||||
}
|
||||
|
||||
Jid *jidp = jid_create(barejid);
|
||||
GString *muc_service = g_string_new("conference.");
|
||||
@@ -211,6 +215,9 @@ _accounts_get_account(const char * const name)
|
||||
account->server = NULL;
|
||||
}
|
||||
|
||||
int port = g_key_file_get_integer(accounts, name, "port", NULL);
|
||||
account->port = port;
|
||||
|
||||
gchar *resource = g_key_file_get_string(accounts, name, "resource", NULL);
|
||||
if (resource != NULL) {
|
||||
account->resource = strdup(resource);
|
||||
@@ -435,6 +442,15 @@ _accounts_set_server(const char * const account_name, const char * const value)
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
_accounts_set_port(const char * const account_name, const int value)
|
||||
{
|
||||
if (value != 0) {
|
||||
g_key_file_set_integer(accounts, account_name, "port", value);
|
||||
_save_accounts();
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
_accounts_set_resource(const char * const account_name, const char * const value)
|
||||
{
|
||||
@@ -736,6 +752,7 @@ accounts_init_module(void)
|
||||
accounts_account_exists = _accounts_account_exists;
|
||||
accounts_set_jid = _accounts_set_jid;
|
||||
accounts_set_server = _accounts_set_server;
|
||||
accounts_set_port = _accounts_set_port;
|
||||
accounts_set_resource = _accounts_set_resource;
|
||||
accounts_set_password = _accounts_set_password;
|
||||
accounts_set_muc_service = _accounts_set_muc_service;
|
||||
|
||||
@@ -33,6 +33,7 @@ typedef struct prof_account_t {
|
||||
gchar *password;
|
||||
gchar *resource;
|
||||
gchar *server;
|
||||
int port;
|
||||
gchar *last_presence;
|
||||
gchar *login_presence;
|
||||
gint priority_online;
|
||||
@@ -55,7 +56,7 @@ char * (*accounts_find_all)(char *prefix);
|
||||
char * (*accounts_find_enabled)(char *prefix);
|
||||
void (*accounts_reset_all_search)(void);
|
||||
void (*accounts_reset_enabled_search)(void);
|
||||
void (*accounts_add)(const char *jid, const char *altdomain);
|
||||
void (*accounts_add)(const char *jid, const char *altdomain, int port);
|
||||
gchar** (*accounts_get_list)(void);
|
||||
ProfAccount* (*accounts_get_account)(const char * const name);
|
||||
void (*accounts_free_account)(ProfAccount *account);
|
||||
@@ -66,6 +67,7 @@ gboolean (*accounts_rename)(const char * const account_name,
|
||||
gboolean (*accounts_account_exists)(const char * const account_name);
|
||||
void (*accounts_set_jid)(const char * const account_name, const char * const value);
|
||||
void (*accounts_set_server)(const char * const account_name, const char * const value);
|
||||
void (*accounts_set_port)(const char * const account_name, const int value);
|
||||
void (*accounts_set_resource)(const char * const account_name, const char * const value);
|
||||
void (*accounts_set_password)(const char * const account_name, const char * const value);
|
||||
void (*accounts_set_muc_service)(const char * const account_name, const char * const value);
|
||||
|
||||
Reference in New Issue
Block a user