:mod:`profile` --- Profile ========================== .. module::profile :synopsis: Profile module Profile object -------------- .. class:: Profile(self, name) A profile object is created at the beginning of every request with details of the use. The global profile object is `webnotes.user` .. attribute:: roles list of roles assigned including 'All' (for logged user) or 'Guest' for not logged user .. attribute:: can_create list of DocTypes the user can create .. attribute:: can_read list of DocTypes the user can read .. attribute:: can_write list of DocTypes the user can edit .. method:: get_roles() get list of roles .. method:: get_allow_list(key) internal - get list of DocType where `key` is allowed. Key is either 'read', 'write' or 'create' .. method:: get_create_list() get list of DocTypes the user can create. Will filter DocTypes tagged with 'not_in_create' and table .. method:: get_read_list() get list of DocTypes the user can read .. method:: get_write_list() get list of DocTypes the user can write .. method:: def get_home_page() get the name of the user's home page from the `Control Panel` .. method:: get_defaults() get the user's default values based on user and role profile .. method:: get_random_password() generate a random password .. method:: reset_password(): reset the user's password and send an email .. method:: update_recent(dt, dn) update the user's `Recent` list with the given `dt` and `dn` .. method:: load_profile() return a dictionary of user properites to be stored in the session .. method:: load_from_session(self): setup the user profile from the dictionary saved in the session (generated by `load_profile`)