summaryrefslogtreecommitdiff
path: root/src/libaccountsservice/act-user.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libaccountsservice/act-user.c')
-rw-r--r--src/libaccountsservice/act-user.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/libaccountsservice/act-user.c b/src/libaccountsservice/act-user.c
index 70691a0..cb2ed62 100644
--- a/src/libaccountsservice/act-user.c
+++ b/src/libaccountsservice/act-user.c
@@ -86,6 +86,7 @@ enum {
PROP_LOCKED,
PROP_AUTOMATIC_LOGIN,
PROP_SYSTEM_ACCOUNT,
+ PROP_GUEST_ACCOUNT,
PROP_NONEXISTENT,
PROP_LOCAL_ACCOUNT,
PROP_LOGIN_FREQUENCY,
@@ -437,6 +438,14 @@ act_user_class_init (ActUserClass *class)
FALSE,
G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));
+ g_object_class_install_property (gobject_class,
+ PROP_GUEST_ACCOUNT,
+ g_param_spec_boolean ("guest-account",
+ "Guest Account",
+ "Guest Account",
+ FALSE,
+ G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));
+
/**
* ActUser::changed:
@@ -947,6 +956,27 @@ act_user_is_local_account (ActUser *user)
}
/**
+ * act_user_is_guest_account:
+ * @user: a #ActUser
+ *
+ * Retrieves whether the user is a guest account or not.
+ *
+ * Returns: %TRUE if the user is a guest
+ *
+ * Since: 0.6.46
+ */
+gboolean
+act_user_is_guest_account (ActUser *user)
+{
+ g_return_val_if_fail (ACT_IS_USER (user), TRUE);
+
+ if (user->accounts_proxy == NULL)
+ return TRUE;
+
+ return accounts_user_get_guest_account (user->accounts_proxy);
+}
+
+/**
* act_user_is_nonexistent:
* @user: the user object to examine.
*