X-Git-Url: http://git.maemo.org/git/?p=python-purple;a=blobdiff_plain;f=account.pyx;h=e45288d3ba7f5638821d1771446a743d9df10873;hp=4b3af4bf0e07831b11b96539cd3baa5e4e91ff59;hb=501c0498d70144d950602879e44840e761e8cc00;hpb=7b3a84e1d328964d372cd4d3f891ab0d4619adfd diff --git a/account.pyx b/account.pyx index 4b3af4b..e45288d 100644 --- a/account.pyx +++ b/account.pyx @@ -305,53 +305,21 @@ cdef class Account: iter = iter.next return buddies - def get_protocol_options(self): - ''' FIXME: It is just a hack, to set the XMPP's options. ''' + def get_all(self): cdef glib.GList *iter - cdef accountopt.PurpleAccountOption *option - cdef prefs.PurplePrefType type - cdef const_char *label_name - cdef const_char *str_value - cdef const_char *setting - cdef int int_value - cdef glib.gboolean bool_value - iter = self.c_prpl_info.protocol_options - while iter: - option = iter.data - type = accountopt.c_purple_account_option_get_type(option) - label_name = accountopt.c_purple_account_option_get_text(option) - setting = accountopt.c_purple_account_option_get_setting(option) - if type == prefs.PURPLE_PREF_STRING: - str_value = accountopt.c_purple_account_option_get_default_string(option) + cdef account.PurpleAccount *acc - # Google Talk default domain hackery! - if str_value == NULL and str( label_name) == "Connect server": - str_value = "talk.google.com" - - if self.c_account != NULL: - str_value = account.c_purple_account_get_string(self.c_account, setting, str_value) - account.c_purple_account_set_string(self.c_account, setting, str_value) - - elif type == prefs.PURPLE_PREF_INT: - int_value = accountopt.c_purple_account_option_get_default_int(option) - if self.c_account != NULL: - int_value = account.c_purple_account_get_int(self.c_account, setting, int_value) - if str( setting) == "port": - account.c_purple_account_set_int(self.c_account, setting, 443) + accounts = [] - elif type == prefs.PURPLE_PREF_BOOLEAN: - bool_value = accountopt.c_purple_account_option_get_default_bool(option) - if self.c_account != NULL: - bool_value = account.c_purple_account_get_bool(self.c_account, setting, bool_value) - if str( setting) == "old_ssl": - account.c_purple_account_set_bool(self.c_account, setting, True) - - elif type == prefs.PURPLE_PREF_STRING_LIST: - str_value = accountopt.c_purple_account_option_get_default_list_value(option) - if self.c_account != NULL: - str_value = account.c_purple_account_get_string(self.c_account, setting, str_value) + iter = account.c_purple_accounts_get_all() + while iter: + acc = iter.data + if acc: + username = account.c_purple_account_get_username(acc) + protocol_id = account.c_purple_account_get_protocol_id(acc) + accounts.append((username, protocol_id)) iter = iter.next - def save_into_xml(self): - account.c_purple_accounts_add(self.c_account) + return accounts +