void (*request) (GSignondPlugin *self,
GSignondSessionData *session_data);
void (*user_action_finished) (GSignondPlugin *self,
- GSignondSessionData *session_data);
+ GSignondSignonuiData *session_data);
void (*refresh) (GSignondPlugin *self,
- GSignondSessionData *session_data);
+ GSignondSignonuiData *session_data);
};
GType gsignond_plugin_get_type (void);
return;
}
- GSignondSessionData *user_action_data = gsignond_dictionary_new();
- // FIXME: fix when the signon ui is integrated
- /*if (username == NULL)
- gsignond_session_data_set_query_username(user_action_data, TRUE);
- else*/
- gsignond_session_data_set_username(user_action_data, username);
- //gsignond_session_data_set_query_password(user_action_data, TRUE);
+ GSignondSignonuiData *user_action_data = gsignond_signonui_data_new();
+ if (username == NULL)
+ gsignond_signonui_data_set_query_username(user_action_data, TRUE);
+ else
+ gsignond_signonui_data_set_username(user_action_data, username);
+ gsignond_signonui_data_set_query_password(user_action_data, TRUE);
gsignond_plugin_user_action_required(self, user_action_data);
gsignond_dictionary_unref(user_action_data);
}
static void gsignond_password_plugin_user_action_finished (
GSignondPlugin *self,
- GSignondSessionData *session_data)
+ GSignondSignonuiData *session_data)
{
- // FIXME: fix when the signon ui is integrated
- /*GSignondQueryError query_error = gsignond_session_data_get_query_error(
- session_data);*/
- const gchar* username = gsignond_session_data_get_username(session_data);
- const gchar* secret = gsignond_session_data_get_secret(session_data);
+ GSignondSignonuiError query_error = gsignond_signonui_data_get_query_error(
+ session_data);
+ const gchar* username = gsignond_signonui_data_get_username(session_data);
+ const gchar* secret = gsignond_signonui_data_get_password(session_data);
- /*if (query_error == GSIGNOND_QUERY_ERROR_NONE &&
+ if (query_error == SIGNONUI_ERROR_NONE &&
username != NULL &&
- secret != NULL) {*/
+ secret != NULL) {
GSignondSessionData *response = gsignond_dictionary_new();
gsignond_session_data_set_username(response, username);
gsignond_session_data_set_secret(response, secret);
gsignond_plugin_response_final(self, response);
gsignond_dictionary_unref(response);
return;
- /*} else if (query_error == GSIGNOND_QUERY_ERROR_CANCELED) {
+ } else if (query_error == SIGNONUI_ERROR_CANCELED) {
GError* error = g_error_new(GSIGNOND_ERROR,
GSIGNOND_ERROR_SESSION_CANCELED,
"Session canceled");
query_error);
gsignond_plugin_error (self, error);
g_error_free(error);
- }*/
+ }
}
static void gsignond_password_plugin_refresh (
GSignondPlugin *self,
- GSignondSessionData *session_data)
+ GSignondSignonuiData *session_data)
{
gsignond_plugin_refreshed(self, session_data);
}