Difference between revisions of "Development Team/Almanac/sugar.profile"
< Development Team | Almanac
Jump to navigation
Jump to search
Dfarning-bot (talk | contribs) m (Robot: Automated text replacement (-{{Sugar Almanac}} +{{Almanac}})) |
|||
(7 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
{{Almanac}} | {{Almanac}} | ||
+ | |||
+ | '''Note:''' | ||
+ | |||
+ | sugar.profile is largely depreciated. We are now using gconf for accessing most profile information. | ||
+ | |||
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. | 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. | ||
Line 6: | Line 11: | ||
=== How do I get the user's nick name? === | === How do I get the user's nick name? === | ||
+ | |||
+ | <pre> | ||
+ | import gconf | ||
+ | |||
+ | client = gconf.client_get_default() | ||
+ | username = client.get_string("/desktop/sugar/user/nick") | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | The following code is depreciated: | ||
<pre> | <pre> | ||
from sugar import profile | from sugar import profile | ||
Line 12: | Line 27: | ||
prof = profile.get_profile() | prof = profile.get_profile() | ||
− | # Two ways to print nickname: either through profile object, or through a helper | + | # Two ways to print nickname: either through profile object, or through a helper function in sugar.profile |
print prof.nick_name | print prof.nick_name | ||
print profile.get_nick_name() | print profile.get_nick_name() | ||
Line 18: | Line 33: | ||
=== How do I get the XO colors set by the user? === | === How do I get the XO colors set by the user? === | ||
+ | |||
+ | <pre> | ||
+ | import gconf | ||
+ | |||
+ | client = gconf.client_get_default() | ||
+ | color = client.get_string("/desktop/sugar/user/color") | ||
+ | stroke,fill = color.split(",") | ||
+ | </pre> | ||
+ | |||
+ | The following code is depreciated: | ||
<pre> | <pre> | ||
from sugar import profile | from sugar import profile | ||
Line 48: | Line 73: | ||
=== How do I get the school server with which this child is associated? === | === How do I get the school server with which this child is associated? === | ||
+ | Method on the 82: DEPRECATED | ||
<pre> | <pre> | ||
from sugar import profile | from sugar import profile | ||
Line 58: | Line 84: | ||
#Print out whether this XO is actually registered with a school server | #Print out whether this XO is actually registered with a school server | ||
print prof.jabber_registered | print prof.jabber_registered | ||
+ | </pre> | ||
+ | |||
+ | Get school server with both older and new implementations. | ||
+ | <pre> | ||
+ | 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") | ||
</pre> | </pre> |
Latest revision as of 10:23, 12 April 2011
For Developers: almanac · api · bugs · gitorious · cgit · download · people · OLPC: wiki · activities · trac · cgit · build index · repository · firmware · Fedora: packages
Note:
sugar.profile is largely depreciated. We are now using gconf for accessing most profile information.
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.
Helper Functions
How do I get the user's nick name?
import gconf client = gconf.client_get_default() username = client.get_string("/desktop/sugar/user/nick")
The following code is depreciated:
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 function in sugar.profile print prof.nick_name print profile.get_nick_name()
How do I get the XO colors set by the user?
import gconf client = gconf.client_get_default() color = client.get_string("/desktop/sugar/user/color") stroke,fill = color.split(",")
The following code is depreciated:
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")