Sugar.profile
Revision as of 15:55, 7 January 2010 by 129.21.138.82 (talk) (Updated "How do I get the school server with which this child is associated" with code that works on both older and new implementations)
For Developers
The profile package can be used to get access to user specific details such as his/her nick_name, XO colors, public key, etc. Much of these details are accessed by first creating a Profile object. However, there are several shortcut helper functions that provide access to some user details directly.
Contents
Helper Functions
How do I get the user's nick name?
from sugar import profile ... #prof will refer to a Profile object used to access user information prof = profile.get_profile() # Two ways to print nickname: either through profile object, or through a helper funciton in sugar.profile print prof.nick_name print profile.get_nick_name()
How do I get the XO colors set by the user?
from sugar import profile ... #prof will refer to a Profile object used to access user information prof = profile.get_profile() # Two ways to get the XO colors: through profile object or using helper function print prof.color.to_string() print profile.get_color().to_string()
How do I access this XO's public key?
from sugar import profile ... #prof will refer to a Profile object used to access user information prof = profile.get_profile() #Two ways to get the public key for this XO: through Profile object or with helper function print prof.pubkey print profile.get_pubkey()
Class: Profile
How do I get the nick name, color and public key information for this XO?
See the documentation for Helper Functions.
How do I get the school server with which this child is associated?
Method on the 82: DEPRECATED
from sugar import profile ... #prof will refer to a Profile object used to access user information prof = profile.get_profile() #Print out the name of the school server this XO is registered with print prof.jabber_server #Print out whether this XO is actually registered with a school server print prof.jabber_registered
Get school server with both older and new implementations.
from sugar import profile ... prof = profile.get_profile() jabber_serv = None if hasattr(profile, 'jabber_server'): jabber_serv = profile.jabber_server else: import gconf client = gconf.client_get_default() jabber_serv = client.get_string("/desktop/sugar/collaboration/jabber_server")