+ g_return_if_fail (MODEST_IS_ACCOUNT_MGR (mgr));
+ g_return_if_fail (MODEST_IS_ACCOUNT_SETTINGS (settings));
+
+ const gchar *account_name;
+ const gchar *store_account_name;
+ const gchar *transport_account_name;
+ ModestServerAccountSettings *store_settings;
+ ModestServerAccountSettings *transport_settings;
+
+ account_name = modest_account_settings_get_account_name (settings);
+ g_return_if_fail (account_name != NULL);
+
+ modest_account_mgr_set_display_name (mgr, account_name,
+ modest_account_settings_get_display_name (settings));
+ modest_account_mgr_set_user_fullname (mgr, account_name,
+ modest_account_settings_get_fullname (settings));
+ modest_account_mgr_set_user_email (mgr, account_name,
+ modest_account_settings_get_email_address (settings));
+ modest_account_mgr_set_retrieve_type (mgr, account_name,
+ modest_account_settings_get_retrieve_type (settings));
+ modest_account_mgr_set_retrieve_limit (mgr, account_name,
+ modest_account_settings_get_retrieve_limit (settings));
+ modest_account_mgr_set_leave_on_server (mgr, account_name,
+ modest_account_settings_get_leave_messages_on_server (settings));
+ modest_account_mgr_set_signature (mgr, account_name,
+ modest_account_settings_get_signature (settings),
+ modest_account_settings_get_use_signature (settings));
+ modest_account_mgr_set_use_connection_specific_smtp
+ (mgr, account_name,
+ modest_account_settings_get_use_connection_specific_smtp (settings));
+
+ store_settings = modest_account_settings_get_store_settings (settings);
+ store_account_name = modest_server_account_settings_get_account_name (store_settings);
+ if (store_settings != NULL) {
+ modest_account_mgr_save_server_settings (mgr, store_settings);
+ }
+ modest_account_mgr_set_string (mgr, account_name, MODEST_ACCOUNT_STORE_ACCOUNT, store_account_name, FALSE);
+ g_object_unref (store_settings);