plugins: fix password plugin to use GSignondSignonuiData
authorAlexander Kanavin <alexander.kanavin@intel.com>
Mon, 25 Mar 2013 19:18:34 +0000 (21:18 +0200)
committerAlexander Kanavin <alexander.kanavin@intel.com>
Mon, 25 Mar 2013 19:18:34 +0000 (21:18 +0200)
include/gsignond/gsignond-plugin-interface.h
src/plugins/password/gsignond-password-plugin.c

index cb5f83f..37d4ba5 100644 (file)
@@ -84,9 +84,9 @@ struct _GSignondPluginInterface {
     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);
index e6c18f2..f83d350 100644 (file)
@@ -71,37 +71,35 @@ static void gsignond_password_plugin_request_initial (
         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");
@@ -114,12 +112,12 @@ static void gsignond_password_plugin_user_action_finished (
                                 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);
 }