ILIAS  Release_4_0_x_branch Revision 61816
 All Data Structures Namespaces Files Functions Variables Groups Pages
ilObjUser Class Reference
+ Inheritance diagram for ilObjUser:
+ Collaboration diagram for ilObjUser:

Public Member Functions

 ilObjUser ($a_user_id=0, $a_call_by_reference=false)
 Constructor public.
 read ()
 loads a record "user" from database private
 assignData ($a_data)
 loads a record "user" from array public
 saveAsNew ($a_from_formular=true)
 TODO: drop fields last_update & create_date.
 update ()
 updates a record "user" and write it into database public
 writeAccepted ()
 write accept date of user agreement to db
 _lookupFullname ($a_user_id)
 Lookup Full Name.
 _lookupIm ($a_user_id, $a_type)
 Lookup IM.
 _lookupEmail ($a_user_id)
 Lookup email.
 _lookupClientIP ($a_user_id)
 Lookup client ip.
 _lookupFields ($a_user_id)
 lookup fields (deprecated; use more specific methods instead)
 _lookupLogin ($a_user_id)
 lookup login
 _lookupExternalAccount ($a_user_id)
 lookup external account for login and authmethod
 _lookupLastLogin ($a_user_id)
 lookup last login
 refreshLogin ()
 updates the login data of a "user" // TODO set date with now() should be enough public
 replacePassword ($new_md5)
 replaces password with new md5 hash
 updatePassword ($a_old, $a_new1, $a_new2)
 updates password
 resetPassword ($a_new1, $a_new2)
 reset password
 _makeIlias2Password ($a_passwd)
 get encrypted Ilias 2 password (needed for imported ilias 2 users)
 _lookupHasIlias2Password ($a_user_login)
 check if user has ilias 2 password (imported user)
 _switchToIlias3Password ($a_user, $a_pw)
 check if user has ilias 2 password (imported user)
 updateLogin ($a_login)
 update login name
 writePref ($a_keyword, $a_value)
 write userpref to user table private
 deletePref ($a_keyword)
 Deletes a userpref value of the user from the database public.
 _deletePref ($a_user_id, $a_keyword)
 Deletes a userpref value of the user from the database public.
 _deleteAllPref ($a_user_id)
 Deletes a userpref value of the user from the database public.
 _writePref ($a_usr_id, $a_keyword, $a_value)
 Write preference.
 writePrefs ()
 write all userprefs private
 getTimeZone ()
 get timezone of user
 getTimeFormat ()
 get time format
 setPref ($a_keyword, $a_value)
 set a user preference
 getPref ($a_keyword)
 get a user preference
 _lookupPref ($a_usr_id, $a_keyword)
 readPrefs ()
 get all user preferences private
 delete ()
 deletes a user public
 setFullname ($a_title="", $a_firstname="", $a_lastname="")
 builds a string with title + firstname + lastname method is used to build fullname in member variable $this->fullname.
 getFullname ($a_max_strlen=0)
 get fullname public
 getLastVisitedLessons ()
 get read lessons, ordered by timestamp public
 getLessons ()
 get all lessons, unordered public
 hasAcceptedUserAgreement ()
 check wether user has accepted user agreement
 setLogin ($a_str)
 set login / username public
 getLogin ()
 get login / username public
 setPasswd ($a_str, $a_type=IL_PASSWD_PLAIN)
 set password public
 getPasswd ()
 get password
 getPasswdType ()
 get password type
 setGender ($a_str)
 set gender public
 getGender ()
 get gender public
 setUTitle ($a_str)
 set user title (note: don't mix up this method with setTitle() that is derived from ilObject and sets the user object's title) public
 getUTitle ()
 get user title (note: don't mix up this method with getTitle() that is derived from ilObject and gets the user object's title) public
 setFirstname ($a_str)
 set firstname public
 getFirstname ()
 get firstname public
 setLastname ($a_str)
 set lastame public
 getLastname ()
 get lastname public
 setInstitution ($a_str)
 set institution public
 getInstitution ()
 get institution public
 setDepartment ($a_str)
 set department public
 getDepartment ()
 get department public
 setStreet ($a_str)
 set street public
 getStreet ()
 get street public
 setCity ($a_str)
 set city public
 getCity ()
 get city public
 setZipcode ($a_str)
 set zipcode public
 getZipcode ()
 get zipcode public
 setCountry ($a_str)
 set country public
 getCountry ()
 get country public
 setPhoneOffice ($a_str)
 set office phone public
 getPhoneOffice ()
 get office phone public
 setPhoneHome ($a_str)
 set home phone public
 getPhoneHome ()
 get home phone public
 setPhoneMobile ($a_str)
 set mobile phone public
 getPhoneMobile ()
 get mobile phone public
 setFax ($a_str)
 set fax public
 getFax ()
 get fax public
 setClientIP ($a_str)
 set client ip number public
 getClientIP ()
 get client ip number public
 setMatriculation ($a_str)
 set matriculation number public
 getMatriculation ()
 get matriculation number public
 setEmail ($a_str)
 set email public
 getEmail ()
 get email address public
 setHobby ($a_str)
 set hobby public
 getHobby ()
 get hobby public
 setLanguage ($a_str)
 set user language public
 getLanguage ()
 returns a 2char-language-string public
 setDiskQuota ($a_disk_quota)
 Sets the minimal disk quota imposed by this user account.
 getDiskQuota ()
 Returns the minimal disk quota imposed by this user account.
 setLastPasswordChangeTS ($a_last_password_change_ts)
 getLastPasswordChangeTS ()
 _checkPassword ($a_usr_id, $a_pw)
 _writeExternalAccount ($a_usr_id, $a_ext_id)
 _writeAuthMode ($a_usr_id, $a_auth_mode)
 getCurrentLanguage ()
 returns the current language (may differ from user's pref setting!)
 setLastLogin ($a_str)
 set user's last login public
 getLastLogin ()
 returns last login date public
 setLastUpdate ($a_str)
 set last update of user data set public
 getLastUpdate ()
 setComment ($a_str)
 set referral comment public
 getComment ()
 get referral comment public
 setApproveDate ($a_str)
 set date the user account was activated null indicates that the user has not yet been activated public
 getApproveDate ()
 get the date when the user account was approved public
 getAgreeDate ()
 get the date when the user accepted the user agreement public
 setAgreeDate ($a_str)
 set date the user account was accepted by the user nullindicates that the user has not accepted his account public
 setActive ($a_active, $a_owner=6)
 set user active state and updates system fields appropriately public
 getActive ()
 get user active state public
 syncActive ()
 synchronizes current and stored user active values for the owner value to be set correctly, this function should only be called when an admin is approving a user account public
 getStoredActive ($a_id)
 get user active state
 setSkin ($a_str)
 set user skin (template set) public
 setTimeLimitOwner ($a_owner)
 getTimeLimitOwner ()
 setTimeLimitFrom ($a_from)
 getTimeLimitFrom ()
 setTimeLimitUntil ($a_until)
 getTimeLimitUntil ()
 setTimeLimitUnlimited ($a_unlimited)
 getTimeLimitUnlimited ()
 setTimeLimitMessage ($a_time_limit_message)
 getTimeLimitMessage ()
 setLoginAttempts ($a_login_attempts)
 getLoginAttempts ()
 checkTimeLimit ()
 setProfileIncomplete ($a_prof_inc)
 getProfileIncomplete ()
 isPasswordChangeDemanded ()
 isPasswordExpired ()
 getPasswordAge ()
 setLastPasswordChangeToNow ()
 resetLastPasswordChange ()
 setLatitude ($a_latitude)
 Set Latitude.
 getLatitude ()
 Get Latitude.
 setLongitude ($a_longitude)
 Set Longitude.
 getLongitude ()
 Get Longitude.
 setLocationZoom ($a_locationzoom)
 Set Location Zoom.
 getLocationZoom ()
 Get Location Zoom.
getAppliedUsers ()
 isChild ($a_usr_id)
 __readAppliedUsers ($a_parent_id)
 checkUserId ()
 isCurrentUserActive ()
 getUserIdByLogin ($a_login)
 getLoginByUserId ($a_userid)
 _getNumberOfUsersForStyle ($a_skin, $a_style)
 skins and styles
 _getAllUserAssignedStyles ()
 skins and styles
 _moveUsersToStyle ($a_from_skin, $a_from_style, $a_to_skin, $a_to_style)
 skins and styles
 addDesktopItem ($a_item_id, $a_type, $a_par="")
 add an item to user's personal desktop
 setDesktopItemParameters ($a_item_id, $a_type, $a_par)
 set parameters of a desktop item entry
 dropDesktopItem ($a_item_id, $a_type)
 drop an item from user's personal desktop
 isDesktopItem ($a_item_id, $a_type)
 check wether an item is on the users desktop or not
 getDesktopItems ($a_types="")
 addObjectToClipboard ($a_item_id, $a_type, $a_title, $a_parent=0, $a_time=0, $a_order_nr=0)
 add an item to user's personal clipboard
 addToPCClipboard ($a_content, $a_time, $a_nr)
 Add a page content item to PC clipboard (should go to another class)
 getPCClipboardContent ()
 Add a page content item to PC clipboard (should go to another class)
 clipboardHasObjectsOfType ($a_type)
 Check whether clipboard has objects of a certain type.
 clipboardDeleteObjectsOfType ($a_type)
 Delete objects of type for user.
 clipboardDeleteAll ()
 Delete objects of type for user.
 getClipboardObjects ($a_type="", $a_top_nodes_only=false)
 get all clipboard objects of user and specified type
 getClipboardChilds ($a_parent, $a_insert_time)
 Get childs of an item.
 _getUsersForClipboadObject ($a_type, $a_id)
 get all users, that have a certain object within their clipboard
 removeObjectFromClipboard ($a_item_id, $a_type)
 remove object from user's personal clipboard
 _getImportedUserId ($i2_id)
 setAuthMode ($a_str)
 set auth mode public
 getAuthMode ($a_auth_key=false)
 get auth mode public
 setExternalAccount ($a_str)
 set external account
 getExternalAccount ()
 get external account
 _getNumberOfUsersPerAuthMode ()
 get number of users per auth mode
 _getLocalAccountsForEmail ($a_email)
 check whether external account and authentication method matches with a user
 _uploadPersonalPicture ($tmp_file, $obj_id)
 Create a personal picture image file from a temporary image file.
 getPersonalPicturePath ($a_size="small", $a_force_pic=false)
 get path to personal picture
 _getPersonalPicturePath ($a_usr_id, $a_size="small", $a_force_pic=false, $a_prevent_no_photo_image=false)
 get path to personal picture
 removeUserPicture ()
 Remove user picture.
 setUserDefinedData ($a_data)
 getUserDefinedData ()
 updateUserDefinedFields ()
 readUserDefinedFields ()
 addUserDefinedFieldEntry ()
 deleteUserDefinedFieldEntries ()
 getProfileAsString (&$a_language)
 Get formatted mail body text of user profile data.
 setInstantMessengerId ($a_im_type, $a_im_id)
 getInstantMessengerId ($a_im_type)
 setDelicious ($a_delicious)
 getDelicious ()
 _lookupFeedHash ($a_user_id, $a_create=false)
 Lookup news feed hash for user.
 _getFeedPass ($a_user_id)
 Lookup news feed password for user.
 _setFeedPass ($a_user_id, $a_password)
 Set news feed password for user.
 hasPublicProfile ()
 returns true if public is profile, false otherwise
 getPublicName ()
 returns firstname lastname and login if profile is public, login otherwise
 _getUsersOnline ($a_user_id=0, $a_no_anonymous=false)
 reads all active sessions from db and returns users that are online OR returns only one active user if a user_id is given
 _getAssociatedUsersOnline ($a_user_id, $a_no_anonymous=false)
 
reads all active sessions from db and returns users that are online
and who have a local role in a group or a course for which the

the current user has also a local role.

 setBirthday ($a_birthday)
 getBirthday ()
- Public Member Functions inherited from ilObject
 ilObject ($a_id=0, $a_reference=true)
 Constructor public.
 withReferences ()
 determines wehter objects are referenced or not (got ref ids or not)
 read ($a_force_db=false)
 read object data from db into object
 getId ()
 get object id public
 setId ($a_id)
 set object id public
 setRefId ($a_id)
 set reference id public
 getRefId ()
 get reference id public
 getType ()
 get object type public
 setType ($a_type)
 set object type public
 getPresentationTitle ()
 get presentation title Normally same as title Overwritten for sessions
 getTitle ()
 get object title public
 getUntranslatedTitle ()
 get untranslated object title public
 setTitle ($a_title)
 set object title
 getDescription ()
 get object description
 setDescription ($a_desc)
 set object description
 getLongDescription ()
 get object long description (stored in object_description)
 getImportId ()
 get import id
 setImportId ($a_import_id)
 set import id
 _lookupObjIdByImportId ($a_import_id)
 getOwner ()
 get object owner
 getOwnerName ()
 _lookupOwnerName ($a_owner_id)
 lookup owner name for owner id
 setOwner ($a_owner)
 set object owner
 getCreateDate ()
 get create date public
 getLastUpdateDate ()
 get last update date public
 getDiskUsage ()
 Gets the disk usage of the object in bytes.
 setObjDataRecord ($a_record)
 set object_data record (note: this method should only be called from the ilObjectFactory class)
 create ()
 create
 MDUpdateListener ($a_element)
 Meta data update listener.
 createMetaData ()
 create meta data entry
 updateMetaData ()
 update meta data entry
 deleteMetaData ()
 delete meta data entry
 updateOwner ()
 update owner of object in db
 _getIdForImportId ($a_import_id)
 get current object id for import id (static)
 _getAllReferences ($a_id)
 get all reference ids of object
 _lookupOwner ($a_id)
 lookup object owner
 _lookupDescription ($a_id)
 lookup object description
 _lookupLastUpdate ($a_id, $a_as_string=false)
 lookup last update
 _getLastUpdateOfObjects ($a_objs)
 Get last update for a set of media objects.
 _setDeletedDate ($a_ref_id)
 only called in ilTree::saveSubTree
 _resetDeletedDate ($a_ref_id)
 only called in ilObjectGUI::insertSavedNodes
 _lookupDeletedDate ($a_ref_id)
 only called in ilObjectGUI::insertSavedNodes
 _writeTitle ($a_obj_id, $a_title)
 write title to db (static)
 _writeDescription ($a_obj_id, $a_desc)
 write description to db (static)
 _writeImportId ($a_obj_id, $a_import_id)
 write import id to db (static)
 _isInTrash ($a_ref_id)
 checks wether object is in trash
 _hasUntrashedReference ($a_obj_id)
 checks wether an object has at least one reference that is not in trash
 _lookupObjectId ($a_ref_id)
 lookup object id
 _getObjectsDataForType ($a_type, $a_omit_trash=false)
 get all objects of a certain type
 putInTree ($a_parent_ref)
 maybe this method should be in tree object!?
 setPermissions ($a_parent_ref)
 set permissions of object
 createReference ()
 creates reference for object
 countReferences ()
 count references of object
 initDefaultRoles ()
 init default roles settings Purpose of this function is to create a local role folder and local roles, that are needed depending on the object type If you want to setup default local roles you MUST overwrite this method in derived object classes (see ilObjForum for an example) public
 createRoleFolder ()
 creates a local role folder
 notify ($a_event, $a_ref_id, $a_parent_non_rbac_id, $a_node_id, $a_params=0)
 notifys an object about an event occured Based on the event passed, each object may decide how it reacts.
 setRegisterMode ($a_bool)
 isUserRegistered ($a_user_id=0)
 requireRegistration ()
 getXMLZip ()
 getHTMLDirectory ()
 cloneObject ($a_target_id, $a_copy_id=0)
 Clone object permissions, put in tree ...
 appendCopyInfo ($a_target_id, $a_copy_id)
 Prepend Copy info if object with same name exists in that container.
 cloneDependencies ($a_target_id, $a_copy_id)
 Clone object dependencies.
 cloneMetaData ($target_obj)
 Copy meta data.

Static Public Member Functions

static _lookupGender ($a_user_id)
 Lookup gender.
static _lookupName ($a_user_id)
 lookup user name
static _lookupId ($a_user_str)
 lookup id by login
static _doesLoginnameExistInHistory ($a_login)
 Checks wether the passed loginname already exists in history.
static _getLastHistoryDataByUserId ($a_usr_id)
 Returns the last used loginname and the changedate of the passed user_id.
static _hasAcceptedAgreement ($a_username)
 Check if user has accepted the agreement.
static lookupMatriculation ($a_usr_id)
 Lookup matriculation.
static _lookupLanguage ($a_usr_id)
 _getUserIdsByEmail ($a_email)
 STATIC METHOD get all user_ids of an email address.
 getUserIdByEmail ($a_email)
 STATIC METHOD get the user_id of an email address.
static searchUsers ($a_search_str, $active=1, $a_return_ids_only=false, $filter_settings=FALSE)
 STATIC METHOD get the user_ids which correspond a search string.
 _getAllUserLogins (&$ilias)
 STATIC METHOD get all user logins.
static _readUsersProfileData ($a_user_ids)
 STATIC METHOD get user data of selected users.
 _getAllUserData ($a_fields=NULL, $active=-1)
 STATIC METHOD get all user data.
static _addDesktopItem ($a_usr_id, $a_item_id, $a_type, $a_par="")
 add an item to user's personal desktop
static _dropDesktopItem ($a_usr_id, $a_item_id, $a_type)
 drop an item from user's personal desktop
static _removeItemFromDesktops ($a_id)
 removes object from all user's desktops public
static _isDesktopItem ($a_usr_id, $a_item_id, $a_type)
 check wether an item is on the users desktop or not
static _lookupDesktopItems ($user_id, $a_types="")
 get all desktop items of user and specified type
static _getExternalAccountsByAuthMode ($a_auth_mode, $a_read_auth_default=false)
 Get list of external account by authentication method Note: If login == ext_account for two user with auth_mode 'default' and auth_mode 'ldap' The ldap auth mode chosen.
static _toggleActiveStatusOfUsers ($a_usr_ids, $a_status)
 Toggle active status of users.
static _lookupAuthMode ($a_usr_id)
 lookup auth mode
static _checkExternalAuthAccount ($a_auth, $a_account)
 check whether external account and authentication method matches with a user
static _loginExists ($a_login, $a_user_id=0)
 check if a login name already exists You may exclude a user from the check by giving his user id as 2nd paramter public static
static _externalAccountExists ($a_external_account, $a_auth_mode)
 Check if an external account name already exists.
static _getUsersForRole ($role_id, $active=-1)
 return array of complete users which belong to a specific role
static _getUsersForFolder ($ref_id, $active)
 get users for a category or from system folder
static _getUsersForGroup ($a_mem_ids, $active=-1)
 return user data for group members
static _getUsersForIds ($a_mem_ids, $active=-1, $timelimitowner=-1)
 return user data for given user id
static _getUserData ($a_internalids)
 return user data for given user ids
static _getPreferences ($user_id)
 get preferences for user
static _resetLoginAttempts ($a_usr_id)
static _getLoginAttempts ($a_usr_id)
static _incrementLoginAttempts ($a_usr_id)
static _setUserInactive ($a_usr_id)
static _writeHistory ($a_usr_id, $a_login)
static _generateRegistrationHash ($a_usr_id)
 Generates a unique hashcode for activating a user profile after registration.
static _verifyRegistrationHash ($a_hash)
 Verifies a registration hash.
- Static Public Member Functions inherited from ilObject
static _lookupTitle ($a_id)
 lookup object title
static _getIdsForTitle ($title, $type= '', $partialmatch=false)
static _lookupObjId ($a_id)
static _lookupType ($a_id, $a_reference=false)
 lookup object type
 _exists ($a_id, $a_reference=false)
 checks if an object exists in object_data
static _getObjectsByType ($a_obj_type="", $a_owner="")
 Get objects by type.
static _prepareCloneSelection ($a_ref_ids, $new_type)
 Prepare copy wizard object selection.
static _getIcon ($a_obj_id="", $a_size="big", $a_type="", $a_offline=false)
 Get icon for repository item.

Data Fields

 $login
 all user related data in single vars public
 $passwd
 $passwd_type
 $gender
 $utitle
 $firstname
 $lastname
 $fullname
 $institution
 $department
 $street
 $city
 $zipcode
 $country
 $phone_office
 $phone_home
 $phone_mobile
 $fax
 $email
 $hobby
 $matriculation
 $referral_comment
 $approve_date = null
 $agree_date = null
 $active
 $client_ip
 $auth_mode
 $im_icq
 $im_yahoo
 $im_msn
 $im_aim
 $im_skype
 $im_jabber
 $im_voip
 $delicious
 $latitude
 $longitude
 $loc_zoom
 $last_password_change_ts
 $login_attempts
 $user_defined_data = array()
 $prefs
 $skin
 $default_role
 $ilias
- Data Fields inherited from ilObject
 $ilias
 $lng
 $id
 $ref_id
 $type
 $title
 $untranslatedTitle
 $desc
 $long_desc
 $owner
 $create_date
 $last_update
 $import_id
 $register = false
 $referenced
 $objectList
 $max_title
 $max_desc
 $add_dots
 $obj_data_record
 object_data record

Protected Attributes

 $birthday

Private Member Functions

 _lookup ($a_user_id, $a_field)
 Private function for lookup methods.

Static Private Member Functions

static getLoginFromAuth ()
 Gets the username from $ilAuth, and converts it into an ILIAS login name.

Detailed Description

Definition at line 24 of file class.ilObjUser.php.

Member Function Documentation

ilObjUser::__readAppliedUsers (   $a_parent_id)

Definition at line 2467 of file class.ilObjUser.php.

References $ilDB, $res, and $row.

Referenced by getAppliedUsers(), and isChild().

{
global $ilDB;
$res = $ilDB->queryF("SELECT usr_id FROM usr_data ".
"WHERE time_limit_owner = %s",
array("integer"),
array($a_parent_id));
while ($row = $ilDB->fetchObject($res))
{
$this->applied_users[] = $row->usr_id;
// recursion
$this->__readAppliedUsers($row->usr_id);
}
return true;
}

+ Here is the caller graph for this function:

static ilObjUser::_addDesktopItem (   $a_usr_id,
  $a_item_id,
  $a_type,
  $a_par = "" 
)
static

add an item to user's personal desktop

Parameters
int$a_usr_idid of user object
int$a_item_idref_id for objects, that are in the main tree (learning modules, forums) obj_id for others
string$a_typeobject type

Definition at line 3008 of file class.ilObjUser.php.

References $ilDB, and ilCalendarCategories\deletePDItemsCache().

Referenced by ilParticipants\addDesktopItem(), addDesktopItem(), ilDesktopItemGUI\addToDesktop(), ilObjGroupGUI\addUserObject(), ilUserImportParser\assignToRole(), ilObjSurvey\inviteGroup(), ilObjSurvey\inviteRole(), and ilObjSurvey\inviteUser().

{
global $ilDB;
$item_set = $ilDB->queryF("SELECT * FROM desktop_item WHERE ".
"item_id = %s AND type = %s AND user_id = %s",
array("integer", "text", "integer"),
array($a_item_id, $a_type, $a_usr_id));
// only insert if item is not already on desktop
if (!$ilDB->fetchAssoc($item_set))
{
$ilDB->manipulateF("INSERT INTO desktop_item (item_id, type, user_id, parameters) VALUES ".
" (%s,%s,%s,%s)", array("integer", "text", "integer", "text"),
array($a_item_id,$a_type,$a_usr_id,$a_par));
}
include_once './Services/Calendar/classes/class.ilCalendarCategories.php';
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static ilObjUser::_checkExternalAuthAccount (   $a_auth,
  $a_account 
)
static

check whether external account and authentication method matches with a user

Definition at line 3651 of file class.ilObjUser.php.

References $ilDB, $ilSetting, $res, and ilAuthUtils\_getAuthModeName().

Referenced by ilSoapAuthentication\__checkAgreement(), ilSoapAuthenticationCAS\authenticate(), ilAuthContainerLDAP\extractUserName(), ShibAuth\generateLogin(), ilUserImportParser\importEndTag(), ilCASAuth\login(), ilAuthContainerCAS\loginObserver(), ilAuthContainerRadius\loginObserver(), ilAuthContainerLDAP\loginObserver(), ilLDAPQuery\readUserData(), ilObjUserTest\testAuthAndEmailMethods(), ilObjUserGUI\updateObjectOld(), ilAuthContainerLDAP\updateRequired(), and ilUserImportParser\verifyEndTag().

{
global $ilDB,$ilSetting;
// Check directly with auth_mode
$r = $ilDB->queryF("SELECT * FROM usr_data WHERE ".
" ext_account = %s AND auth_mode = %s",
array("text", "text"),
array($a_account, $a_auth));
if ($usr = $ilDB->fetchAssoc($r))
{
return $usr["login"];
}
// For compatibility, check for login (no ext_account entry given)
$res = $ilDB->queryF("SELECT login FROM usr_data ".
"WHERE login = %s AND auth_mode = %s",
array("text", "text"),
array($a_account, $a_auth));
if($usr = $ilDB->fetchAssoc($res))
{
return $usr['login'];
}
// If auth_default == $a_auth => check for login
if(ilAuthUtils::_getAuthModeName($ilSetting->get('auth_mode')) == $a_auth)
{
$res = $ilDB->queryF("SELECT login FROM usr_data WHERE ".
" ext_account = %s AND auth_mode = %s",
array("text", "text"),
array($a_account, "default"));
if ($usr = $ilDB->fetchAssoc($res))
{
return $usr["login"];
}
// Search for login (no ext_account given)
$res = $ilDB->queryF("SELECT login FROM usr_data ".
"WHERE login = %s AND (ext_account IS NULL OR ext_account = '') AND auth_mode = %s",
array("text", "text"),
array($a_account, "default"));
if($usr = $ilDB->fetchAssoc($res))
{
return $usr["login"];
}
}
return false;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::_checkPassword (   $a_usr_id,
  $a_pw 
)

Definition at line 2012 of file class.ilObjUser.php.

References $ilDB, and _lookup().

Referenced by ilObjUserTest\testCreateSetLookupDelete().

{
global $ilDB;
$pw = ilObjUser::_lookup($a_usr_id, "passwd");
if ($pw == md5($a_pw))
{
return true;
}
return false;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::_deleteAllPref (   $a_user_id)

Deletes a userpref value of the user from the database public.

Parameters
stringkeyword

Definition at line 1106 of file class.ilObjUser.php.

References $ilDB.

Referenced by delete(), and writePrefs().

{
global $ilDB;
$ilDB->manipulateF("DELETE FROM usr_pref WHERE usr_id = %s",
array("integer"), array($a_user_id));
}

+ Here is the caller graph for this function:

ilObjUser::_deletePref (   $a_user_id,
  $a_keyword 
)

Deletes a userpref value of the user from the database public.

Parameters
stringkeyword

Definition at line 1093 of file class.ilObjUser.php.

References $ilDB.

Referenced by _writePref(), and deletePref().

{
global $ilDB;
$ilDB->manipulateF("DELETE FROM usr_pref WHERE usr_id = %s AND keyword = %s",
array("integer", "text"), array($a_user_id, $a_keyword));
}

+ Here is the caller graph for this function:

static ilObjUser::_doesLoginnameExistInHistory (   $a_login)
static

Checks wether the passed loginname already exists in history.

public

Parameters
string$a_loginLoginname
Returns
boolean true or false

Definition at line 946 of file class.ilObjUser.php.

References $ilDB, and $res.

Referenced by ilAccountRegistrationGUI\saveForm(), and updateLogin().

{
global $ilDB;
$res = $ilDB->queryF('
SELECT * FROM loginname_history
WHERE login = %s',
array('text'), array($a_login));
return $ilDB->fetchAssoc($res) ? true : false;
}

+ Here is the caller graph for this function:

static ilObjUser::_dropDesktopItem (   $a_usr_id,
  $a_item_id,
  $a_type 
)
static

drop an item from user's personal desktop

Parameters
int$a_usr_idid of user object
int$a_item_idref_id for objects, that are in the main tree (learning modules, forums) obj_id for others
string$a_typeobject type

Definition at line 3069 of file class.ilObjUser.php.

References $ilDB, and ilCalendarCategories\deletePDItemsCache().

Referenced by ilObjSurvey\disinviteUser(), ilParticipants\dropDesktopItem(), dropDesktopItem(), and ilDesktopItemGUI\removeFromDesktop().

{
global $ilDB;
$ilDB->manipulateF("DELETE FROM desktop_item WHERE ".
" item_id = %s AND type = %s AND user_id = %s",
array("integer", "text", "integer"),
array($a_item_id, $a_type, $a_usr_id));
include_once './Services/Calendar/classes/class.ilCalendarCategories.php';
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static ilObjUser::_externalAccountExists (   $a_external_account,
  $a_auth_mode 
)
static

Check if an external account name already exists.

public

Parameters
stringexternal account
stringauth mode

Definition at line 4288 of file class.ilObjUser.php.

References $ilDB, and $res.

Referenced by ilObjUserTest\testAuthAndEmailMethods().

{
global $ilDB;
$res = $ilDB->queryF("SELECT * FROM usr_data ".
"WHERE ext_account = %s AND auth_mode = %s",
array("text", "text"),
array($a_external_account, $a_auth_mode));
return $ilDB->fetchAssoc($res) ? true :false;
}

+ Here is the caller graph for this function:

static ilObjUser::_generateRegistrationHash (   $a_usr_id)
static

Generates a unique hashcode for activating a user profile after registration.

Parameters
integer$a_usr_iduser id of the current user
Returns
string generated hashcode

Definition at line 4763 of file class.ilObjUser.php.

References $ilDB, $res, $row, and DB_FETCHMODE_OBJECT.

Referenced by ilAccountRegistrationGUI\__distributeMails().

{
global $ilDB;
do
{
$continue = false;
$hashcode = substr(md5(uniqid(rand(), true)), 0, 16);
$res = $ilDB->queryf('
SELECT COUNT(usr_id) cnt FROM usr_data
WHERE reg_hash = %s',
array('text'),
array($hashcode));
while($row = $res->fetchRow(DB_FETCHMODE_OBJECT))
{
if($row->cnt > 0) $continue = true;
break;
}
if($continue) continue;
$ilDB->manipulateF('
UPDATE usr_data
SET reg_hash = %s
WHERE usr_id = %s',
array('text', 'integer'),
array($hashcode, (int)$a_usr_id)
);
break;
} while(true);
return $hashcode;
}

+ Here is the caller graph for this function:

ilObjUser::_getAllUserAssignedStyles ( )

skins and styles

Definition at line 2955 of file class.ilObjUser.php.

References $ilDB, and $q.

Referenced by ilObjStyleSettingsGUI\editSystemStylesObject(), ilObjStyleSettingsGUI\saveStyleSettingsObject(), and ilObjUserTest\testMiscellaneous().

{
global $ilDB;
$q = "SELECT DISTINCT up1.value style, up2.value skin FROM usr_pref up1, usr_pref up2 ".
" WHERE up1.keyword = ".$ilDB->quote("style", "text").
" AND up2.keyword = ".$ilDB->quote("skin", "text").
" AND up1.usr_id = up2.usr_id";
$sty_set = $ilDB->query($q);
$styles = array();
while($sty_rec = $ilDB->fetchAssoc($sty_set))
{
$styles[] = $sty_rec["skin"].":".$sty_rec["style"];
}
return $styles;
}

+ Here is the caller graph for this function:

ilObjUser::_getAllUserData (   $a_fields = NULL,
  $active = -1 
)
static

STATIC METHOD get all user data.

Parameters
arraydesired columns
Returns
array of user data public

Definition at line 2820 of file class.ilObjUser.php.

References $_SESSION, $active, $ilDB, $q, ilObject\$ref_id, and $row.

Referenced by ilObjUserFolderGUI\_addLearningProgressWorksheet(), ilLocalUser\_getUserData(), ilObjUserFolderGUI\learningProgressObject(), ilObjUserTest\testSearch(), and ilObjUserFolderGUI\viewObject().

{
global $ilDB;
$result_arr = array();
$types = array();
$values = array();
if ($a_fields !== NULL and is_array($a_fields))
{
if (count($a_fields) == 0)
{
$select = "*";
}
else
{
if (($usr_id_field = array_search("usr_id",$a_fields)) !== false)
unset($a_fields[$usr_id_field]);
$select = implode(",",$a_fields).",usr_data.usr_id";
// online time
if(in_array('online_time',$a_fields))
{
$select .= ",ut_online.online_time ";
}
}
$q = "SELECT ".$select." FROM usr_data ";
// Add online_time if desired
// Need left join here to show users that never logged in
if(in_array('online_time',$a_fields))
{
$q .= "LEFT JOIN ut_online ON usr_data.usr_id = ut_online.usr_id ";
}
switch ($active)
{
case 0:
case 1:
$q .= "WHERE active = ".$ilDB->quote($active, "integer");
break;
case 2:
$q .= "WHERE time_limit_unlimited= ".$ilDB->quote(0, "integer");;
break;
case 3:
$qtemp = $q . ", rbac_ua, object_data WHERE rbac_ua.rol_id = object_data.obj_id AND ".
$ilDB->like("object_data.title", "text", "%crs%")." AND usr_data.usr_id = rbac_ua.usr_id";
$r = $ilDB->query($qtemp);
$course_users = array();
while ($row = $ilDB->fetchAssoc($r))
{
array_push($course_users, $row["usr_id"]);
}
if (count($course_users))
{
$q .= " WHERE ".$ilDB->in("usr_data.usr_id", $course_users, true, "integer")." ";
}
else
{
return $result_arr;
}
break;
case 4:
$date = strftime("%Y-%m-%d %H:%I:%S", mktime(0, 0, 0, $_SESSION["user_filter_data"]["m"], $_SESSION["user_filter_data"]["d"], $_SESSION["user_filter_data"]["y"]));
$q.= " AND last_login < ".$ilDB->quote($date, "timestamp");
break;
case 5:
$ref_id = $_SESSION["user_filter_data"];
if ($ref_id)
{
$q .= " LEFT JOIN crs_members ON usr_data.usr_id = crs_members.usr_id ".
"WHERE crs_members.obj_id = (SELECT obj_id FROM object_reference ".
"WHERE ref_id = ".$ilDB->quote($ref_id, "integer").") ";
}
break;
case 6:
global $rbacreview;
$ref_id = $_SESSION["user_filter_data"];
if ($ref_id)
{
$rolf = $rbacreview->getRoleFolderOfObject($ref_id);
$local_roles = $rbacreview->getRolesOfRoleFolder($rolf["ref_id"],false);
if (is_array($local_roles) && count($local_roles))
{
$q.= " LEFT JOIN rbac_ua ON usr_data.usr_id = rbac_ua.usr_id WHERE ".
$ilDB->in("rbac_ua.rol_id", $local_roles, false, "integer")." ";
}
}
break;
case 7:
$rol_id = $_SESSION["user_filter_data"];
if ($rol_id)
{
$q .= " LEFT JOIN rbac_ua ON usr_data.usr_id = rbac_ua.usr_id WHERE rbac_ua.rol_id = ".
$ilDB->quote($rol_id, "integer");
}
break;
}
$r = $ilDB->query($q);
while ($row = $ilDB->fetchAssoc($r))
{
$result_arr[] = $row;
}
}
return $result_arr;
}

+ Here is the caller graph for this function:

ilObjUser::_getAllUserLogins ( $ilias)
static

STATIC METHOD get all user logins.

Parameters
iliasobject
Returns
array of logins public

Definition at line 2780 of file class.ilObjUser.php.

References $ilDB, $res, and $row.

Referenced by ilMail\__checkSystemRecipients().

{
global $ilDB;
$res = $ilDB->query("SELECT login FROM usr_data");
while($row = $ilDB->fetchObject($res))
{
$logins[] = $row->login;
}
return $logins ? $logins : array();
}

+ Here is the caller graph for this function:

ilObjUser::_getAssociatedUsersOnline (   $a_user_id,
  $a_no_anonymous = false 
)

reads all active sessions from db and returns users that are online
and who have a local role in a group or a course for which the

the current user has also a local role.

Parameters
integeruser_id User ID of the current user.
Returns
array

Definition at line 4676 of file class.ilObjUser.php.

References $ilDB, $ilias, $q, $row, and $user.

Referenced by ilUtil\getAssociatedUsersOnline().

{
global $ilias, $ilDB;
$pd_set = new ilSetting("pd");
$atime = $pd_set->get("user_activity_time") * 60;
$ctime = time();
$no_anonym = ($a_no_anonymous)
? "AND user_id <> ".$ilDB->quote(ANONYMOUS_USER_ID, "integer")." "
: "";
// Get a list of object id's of all courses and groups for which
// the current user has local roles.
// Note: we have to use DISTINCT here, because a user may assume
// multiple roles in a group or a course.
$q = "SELECT DISTINCT dat.obj_id as obj_id ".
"FROM rbac_ua ua ".
"JOIN rbac_fa fa ON fa.rol_id = ua.rol_id ".
"JOIN object_reference r1 ON r1.ref_id = fa.parent ".
"JOIN tree ON tree.child = r1.ref_id ".
"JOIN object_reference r2 ON r2.ref_id = tree.parent ".
"JOIN object_data dat ON dat.obj_id = r2.obj_id ".
"WHERE ua.usr_id = ".$ilDB->quote($a_user_id, "integer")." ".
"AND fa.assign = ".$ilDB->quote("y", "text")." ".
"AND dat.type IN (".$ilDB->quote("crs", "text").",".
$ilDB->quote("grp", "text").")";
$r = $ilDB->query($q);
while ($row = $ilDB->fetchAssoc($r))
{
$groups_and_courses_of_user[] = $row["obj_id"];
}
// If the user is not in a course or a group, he has no associated users.
if (count($groups_and_courses_of_user) == 0)
{
$q = "SELECT count(user_id) as num,ctime,user_id,firstname,lastname,title,login,last_login ".
"FROM usr_session ".
"JOIN usr_data ON user_id=usr_id ".
"WHERE user_id = ".$ilDB->quote($a_user_id, "integer")." ".
$no_anonym.
" AND NOT agree_date IS NULL ".
"AND expires > ".$ilDB->quote(time(), "integer")." ".
"GROUP BY user_id,ctime,firstname,lastname,title,login,last_login";
$r = $ilDB->query($q);
}
else
{
$q = "SELECT count(user_id) as num,s.ctime,s.user_id,ud.firstname,ud.lastname,ud.title,ud.login,ud.last_login ".
"FROM usr_session s ".
"JOIN usr_data ud ON ud.usr_id = s.user_id ".
"JOIN rbac_ua ua ON ua.usr_id = s.user_id ".
"JOIN rbac_fa fa ON fa.rol_id = ua.rol_id ".
"JOIN tree ON tree.child = fa.parent ".
"JOIN object_reference or1 ON or1.ref_id = tree.parent ".
"JOIN object_data od ON od.obj_id = or1.obj_id ".
"LEFT JOIN usr_pref p ON (p.usr_id = ud.usr_id AND p.keyword = ".
$ilDB->quote("hide_own_online_status", "text").") ".
"WHERE s.user_id != 0 ".
$no_anonym.
"AND (p.value IS NULL OR NOT p.value = ".$ilDB->quote("y", "text").") ".
"AND s.expires > ".$ilDB->quote(time(),"integer")." ".
"AND fa.assign = ".$ilDB->quote("y", "text")." ".
" AND NOT ud.agree_date IS NULL ".
"AND ".$ilDB->in("od.obj_id", $groups_and_courses_of_user, false, "integer")." ".
"GROUP BY s.user_id,s.ctime,ud.firstname,ud.lastname,ud.title,ud.login,ud.last_login ".
"ORDER BY ud.lastname, ud.firstname";
$r = $ilDB->query($q);
}
while ($user = $ilDB->fetchAssoc($r))
{
if ($atime <= 0
|| $user["ctime"] + $atime > $ctime)
{
$users[$user["user_id"]] = $user;
}
}
return $users ? $users : array();
}

+ Here is the caller graph for this function:

static ilObjUser::_getExternalAccountsByAuthMode (   $a_auth_mode,
  $a_read_auth_default = false 
)
static

Get list of external account by authentication method Note: If login == ext_account for two user with auth_mode 'default' and auth_mode 'ldap' The ldap auth mode chosen.

public

Parameters
stringauth_mode
boolalso get users with authentication method 'default'
Returns
array of external account names

Definition at line 3578 of file class.ilObjUser.php.

References $ilDB, $ilSetting, $q, $res, $row, ilAuthUtils\_getAuthModeName(), and AUTH_LOCAL.

Referenced by ilLDAPCronSynchronization\deactivateUsers(), ilLDAPRoleGroupMapping\initServers(), and ilObjUserTest\testAuthAndEmailMethods().

{
global $ilDB,$ilSetting;
include_once('./Services/Authentication/classes/class.ilAuthUtils.php');
$q = "SELECT login,usr_id,ext_account,auth_mode FROM usr_data ".
"WHERE auth_mode = %s";
$types[] = "text";
$values[] = $a_auth_mode;
if($a_read_auth_default and ilAuthUtils::_getAuthModeName($ilSetting->get('auth_mode',AUTH_LOCAL)) == $a_auth_mode)
{
$q.= " OR auth_mode = %s ";
$types[] = "text";
$values[] = 'default';
}
$res = $ilDB->queryF($q, $types, $values);
while ($row = $ilDB->fetchObject($res))
{
if($row->auth_mode == 'default')
{
$accounts[$row->usr_id] = $row->login;
}
else
{
$accounts[$row->usr_id] = $row->ext_account;
}
}
return $accounts ? $accounts : array();
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::_getFeedPass (   $a_user_id)

Lookup news feed password for user.

Parameters
integeruser_id
Returns
string feed_password md5-encoded, or false

Definition at line 4220 of file class.ilObjUser.php.

References $ilDB, and _lookupPref().

Referenced by ilPDNewsBlockGUI\editSettings().

{
global $ilDB;
if ($a_user_id > 0)
{
return ilObjUser::_lookupPref($a_user_id, "priv_feed_pass");
}
return false;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::_getImportedUserId (   $i2_id)

Definition at line 3486 of file class.ilObjUser.php.

References ilObject\$id, $ilDB, $query, $res, and $row.

Referenced by ilGroupXMLParser\__parseId(), ilCourseXMLParser\__parseId(), ilForumImportParser\handlerBeginTag(), and ilMailImportParser\handlerBeginTag().

{
global $ilDB;
$query = "SELECT obj_id FROM object_data WHERE import_id = ".
$ilDB->quote($i2_id, "text");
$res = $ilDB->query($query);
while($row = $ilDB->fetchObject($res))
{
$id = $row->obj_id;
}
return $id ? $id : 0;
}

+ Here is the caller graph for this function:

static ilObjUser::_getLastHistoryDataByUserId (   $a_usr_id)
static

Returns the last used loginname and the changedate of the passed user_id.

Throws an ilUserException in case no entry could be found.

public

Parameters
string$a_usr_idA user id
Returns
array Associative array, first index is the loginname, second index a unix_timestamp
Exceptions
ilUserException

Definition at line 970 of file class.ilObjUser.php.

References $ilDB, $res, and $row.

Referenced by ilObjUserGUI\initForm(), and updateLogin().

{
global $ilDB;
$ilDB->setLimit(1, 0);
$res = $ilDB->queryF('
SELECT login, history_date FROM loginname_history
WHERE usr_id = %s ORDER BY history_date DESC',
array('integer'), array($a_usr_id));
$row = $ilDB->fetchAssoc($res);
if(!is_array($row) || !count($row)) throw new ilUserException('');
return array(
$row['login'], $row['history_date']
);
}

+ Here is the caller graph for this function:

ilObjUser::_getLocalAccountsForEmail (   $a_email)

check whether external account and authentication method matches with a user

Definition at line 3722 of file class.ilObjUser.php.

References $ilDB, $ilSetting, and $q.

Referenced by ilStartUpGUI\showUserMappingSelection(), and ilObjUserTest\testAuthAndEmailMethods().

{
global $ilDB, $ilSetting;
// default set to local (1)?
$q = "SELECT * FROM usr_data WHERE ".
" email = %s AND (auth_mode = %s ";
$types = array("text", "text");
$values = array($a_email, "local");
if ($ilSetting->get("auth_mode") == 1)
{
$q.=" OR auth_mode = %s";
$types[] = "text";
$values[] = "default";
}
$q.= ")";
$users = array();
$usr_set = $ilDB->queryF($q, $types, $values);
while ($usr_rec = $ilDB->fetchAssoc($usr_set))
{
$users[$usr_rec["usr_id"]] = $usr_rec["login"];
}
return $users;
}

+ Here is the caller graph for this function:

static ilObjUser::_getLoginAttempts (   $a_usr_id)
static

Definition at line 4533 of file class.ilObjUser.php.

References $ilDB, $login_attempts, $query, and $result.

Referenced by ilInitialisation\initILIAS(), and ilObjUserTest\testAuthAndEmailMethods().

{
global $ilDB;
$query = "SELECT usr_data.login_attempts FROM usr_data WHERE usr_data.usr_id = %s";
$result = $ilDB->queryF( $query, array('integer'), array($a_usr_id) );
$record = $ilDB->fetchAssoc( $result );
$login_attempts = $record['login_attempts'];
}

+ Here is the caller graph for this function:

ilObjUser::_getNumberOfUsersForStyle (   $a_skin,
  $a_style 
)

skins and styles

Definition at line 2934 of file class.ilObjUser.php.

References $ilDB, and $q.

Referenced by ilObjStyleSettingsGUI\editSystemStylesObject(), ilObjStyleSettingsGUI\saveStyleSettingsObject(), and ilObjUserTest\testMiscellaneous().

{
global $ilDB;
$q = "SELECT count(*) as cnt FROM usr_pref up1, usr_pref up2 ".
" WHERE up1.keyword= ".$ilDB->quote("style", "text").
" AND up1.value= ".$ilDB->quote($a_style, "text").
" AND up2.keyword= ".$ilDB->quote("skin", "text").
" AND up2.value= ".$ilDB->quote($a_skin, "text").
" AND up1.usr_id = up2.usr_id ";
$cnt_set = $ilDB->query($q);
$cnt_rec = $ilDB->fetchAssoc($cnt_set);
return $cnt_rec["cnt"];
}

+ Here is the caller graph for this function:

ilObjUser::_getNumberOfUsersPerAuthMode ( )

get number of users per auth mode

Definition at line 3702 of file class.ilObjUser.php.

References $ilDB.

Referenced by ilObjAuthSettingsGUI\authSettingsObject(), and ilObjUserTest\testAuthAndEmailMethods().

{
global $ilDB;
$r = $ilDB->query("SELECT count(*) AS cnt, auth_mode FROM usr_data ".
"GROUP BY auth_mode");
$cnt_arr = array();
while($cnt = $ilDB->fetchAssoc($r))
{
$cnt_arr[$cnt["auth_mode"]] = $cnt["cnt"];
}
return $cnt_arr;
}

+ Here is the caller graph for this function:

ilObjUser::_getPersonalPicturePath (   $a_usr_id,
  $a_size = "small",
  $a_force_pic = false,
  $a_prevent_no_photo_image = false 
)

get path to personal picture

Parameters
stringsize "small", "xsmall" or "xxsmall" STATIC

Definition at line 3803 of file class.ilObjUser.php.

References $file, $ilDB, $res, $row, and ilUtil\getImagePath().

Referenced by ilLPListOfObjectsGUI\__showEditUser(), ilUserProfile\addStandardFieldsToForm(), ilPageHistoryTableGUI\fillRow(), ilWikiContributorsTableGUI\fillRow(), ilUsersOnlineBlockGUI\fillRow(), ilPublicUserProfileGUI\getHTML(), ilUserUtil\getNamePresentation(), ilNoteGUI\getNoteListHTML(), getPersonalPicturePath(), ilObjUserGUI\initForm(), and ilLPUserItemListGUI\renderTypeImage().

{
global $ilDB;
// BEGIN DiskQuota: Fetch all user preferences in a single query
$res = $ilDB->queryF("SELECT * FROM usr_pref WHERE ".
"keyword IN (%s,%s) ".
"AND usr_id = %s",
array("text", "text", "integer"),
array('public_upload', 'public_profile', $a_usr_id));
while ($row = $ilDB->fetchAssoc($res))
{
switch ($row['keyword'])
{
case 'public_upload' :
$upload = $row['value'] == 'y';
break;
case 'public_profile' :
$profile = ($row['value'] == 'y' ||
$row['value'] == 'g');
break;
}
}
// END DiskQuota: Fetch all user preferences in a single query
if(defined('ILIAS_MODULE'))
{
$webspace_dir = ('.'.$webspace_dir);
}
$webspace_dir .= ('./'.ilUtil::getWebspaceDir());
$image_dir = $webspace_dir."/usr_images";
// BEGIN DiskQuota: Support 'big' user images
if ($a_size == 'big')
{
$thumb_file = $image_dir."/usr_".$a_usr_id.".jpg";
}
else
{
$thumb_file = $image_dir."/usr_".$a_usr_id."_".$a_size.".jpg";
}
// END DiskQuota: Support 'big' user images
if((($upload && $profile) || $a_force_pic)
&& @is_file($thumb_file))
{
$file = $thumb_file."?t=".rand(1, 99999);
}
else
{
if (!$a_prevent_no_photo_image)
{
$file = ilUtil::getImagePath("no_photo_".$a_size.".jpg");
}
}
return $file;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static ilObjUser::_getPreferences (   $user_id)
static

get preferences for user

Parameters
int$user_id
Returns
array of keys (pref_keys) and values

Definition at line 4504 of file class.ilObjUser.php.

References $ilDB, $prefs, and $row.

Referenced by ilUserXMLWriter\__handleUser(), and readPrefs().

{
global $ilDB;
$prefs = array();
$r = $ilDB->queryF("SELECT * FROM usr_pref WHERE usr_id = %s",
array("integer"), array($user_id));
while($row = $ilDB->fetchAssoc($r))
{
$prefs[$row["keyword"]] = $row["value"];
}
return $prefs;
}

+ Here is the caller graph for this function:

static ilObjUser::_getUserData (   $a_internalids)
static

return user data for given user ids

Parameters
arrayof internal ids or numerics $a_internalids

Definition at line 4456 of file class.ilObjUser.php.

References $data, $ilDB, $query, $result, $row, and ilUtil\__extractId().

Referenced by ilSoapUserAdministration\getUserXML().

{
global $ilDB;
$ids = array();
if (is_array($a_internalids)) {
foreach ($a_internalids as $internalid) {
if (is_numeric ($internalid))
{
$ids[] = $internalid;
}
else
{
$parsedid = ilUtil::__extractId($internalid, IL_INST_ID);
if (is_numeric($parsedid) && $parsedid > 0)
{
$ids[] = $parsedid;
}
}
}
}
if (count($ids) == 0)
$ids [] = -1;
$query = "SELECT usr_data.*, usr_pref.value AS language
FROM usr_data
LEFT JOIN usr_pref
ON usr_pref.usr_id = usr_data.usr_id AND usr_pref.keyword = %s
WHERE ".$ilDB->in("usr_data.usr_id", $ids, false, "integer");
$values[] = "language";
$types[] = "text";
$query .= " ORDER BY usr_data.lastname, usr_data.firstname ";
$data = array();
$result = $ilDB->queryF($query, $types, $values);
while ($row = $ilDB->fetchAssoc($result))
{
$data[] = $row;
}
return $data;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::_getUserIdsByEmail (   $a_email)
static

STATIC METHOD get all user_ids of an email address.

Parameters
stringemail of user
Returns
integer id of user public

Definition at line 2586 of file class.ilObjUser.php.

References $ilDB, $ilias, $res, and $row.

Referenced by ilPasswordAssistanceGUI\submitUsernameAssistanceForm(), and ilObjUserTest\testAuthAndEmailMethods().

{
global $ilias, $ilDB;
$res = $ilDB->queryF("SELECT login FROM usr_data ".
"WHERE email = %s and active = 1",
array("text"),
array($a_email));
$ids = array ();
while($row = $ilDB->fetchObject($res))
{
$ids[] = $row->login;
}
return $ids;
}

+ Here is the caller graph for this function:

ilObjUser::_getUsersForClipboadObject (   $a_type,
  $a_id 
)

get all users, that have a certain object within their clipboard

Parameters
string$a_typeobject type
string$a_typeobject type
Returns
array array of user IDs

Definition at line 3451 of file class.ilObjUser.php.

References $ilDB, and $q.

Referenced by ilObjMediaObject\lookupUsages(), and ilObjUserTest\testClipboard().

{
global $ilDB;
$q = "SELECT DISTINCT user_id FROM personal_clipboard WHERE ".
"item_id = ".$ilDB->quote($a_id, "integer")." AND ".
"type = ".$ilDB->quote($a_type, "text");
$user_set = $ilDB->query($q);
$users = array();
while ($user_rec = $ilDB->fetchAssoc($user_set))
{
$users[] = $user_rec["user_id"];
}
return $users;
}

+ Here is the caller graph for this function:

static ilObjUser::_getUsersForFolder (   $ref_id,
  $active 
)
static

get users for a category or from system folder

Parameters
$ref_idref id of object
$activecan be -1 (ignore), 1 = active, 0 = not active user

Definition at line 4349 of file class.ilObjUser.php.

References $active, $data, $ilDB, $query, ilObject\$ref_id, $result, $row, and USER_FOLDER_ID.

Referenced by ilSoapUserAdministration\getUsersForContainer().

{
global $ilDB;
$data = array();
$query = "SELECT usr_data.*, usr_pref.value AS language FROM usr_data LEFT JOIN usr_pref ON usr_pref.usr_id = usr_data.usr_id and usr_pref.keyword = %s WHERE 1 = 1 ";
$types[] = "text";
$values[] = "language";
if (is_numeric($active) && $active > -1)
{
$query .= " AND usr_data.active = %s";
$values[] = $active;
$types[] = "integer";
}
{
$query.= " AND usr_data.time_limit_owner = %s";
$values[] = $ref_id;
$types[] = "integer";
}
$query .= " AND usr_data.usr_id != %s ";
$values[] = ANONYMOUS_USER_ID;
$types[] = "integer";
$query .= " ORDER BY usr_data.lastname, usr_data.firstname ";
$result = $ilDB->queryF($query, $types, $values);
$data = array();
while ($row = $ilDB->fetchAssoc($result))
{
array_push($data, $row);
}
return $data;
}

+ Here is the caller graph for this function:

static ilObjUser::_getUsersForGroup (   $a_mem_ids,
  $active = -1 
)
static

return user data for group members

Parameters
intarray of member ids
intactive can be -1 (ignore), 1 = active, 0 = not active user

Definition at line 4392 of file class.ilObjUser.php.

References $active, and _getUsersForIds().

Referenced by ilSoapUserAdministration\getUsersForContainer().

{
return ilObjUser::_getUsersForIds($a_mem_ids, $active);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static ilObjUser::_getUsersForIds (   $a_mem_ids,
  $active = -1,
  $timelimitowner = -1 
)
static

return user data for given user id

Parameters
intarray of member ids
intactive can be -1 (ignore), 1 = active, 0 = not active user

Definition at line 4403 of file class.ilObjUser.php.

References $active, $ilDB, $query, $result, $row, and USER_FOLDER_ID.

Referenced by _getUsersForGroup(), and ilSoapUserAdministration\getUsersForContainer().

{
global $rbacadmin, $rbacreview, $ilDB;
// quote all ids
$ids = array();
foreach ($a_mem_ids as $mem_id) {
$ids [] = $ilDB->quote($mem_id);
}
$query = "SELECT usr_data.*, usr_pref.value AS language
FROM usr_data
LEFT JOIN usr_pref ON usr_pref.usr_id = usr_data.usr_id AND usr_pref.keyword = %s
WHERE ".$ilDB->in("usr_data.usr_id", $ids, false, "integer")."
AND usr_data.usr_id != %s";
$values[] = "language";
$types[] = "text";
$values[] = ANONYMOUS_USER_ID;
$types[] = "integer";
if (is_numeric($active) && $active > -1)
{
$query .= " AND active = %s";
$values[] = $active;
$types[] = "integer";
}
if ($timelimitowner != USER_FOLDER_ID && $timelimitowner != -1)
{
$query.= " AND usr_data.time_limit_owner = %s";
$values[] = $timelimitowner;
$types[] = "integer";
}
$query .= " ORDER BY usr_data.lastname, usr_data.firstname ";
$result = $ilDB->queryF($query, $types, $values);
while ($row = $ilDB->fetchAssoc($result))
{
$mem_arr[] = $row;
}
return $mem_arr ? $mem_arr : array();
}

+ Here is the caller graph for this function:

static ilObjUser::_getUsersForRole (   $role_id,
  $active = -1 
)
static

return array of complete users which belong to a specific role

Parameters
introle id
int$activeif -1, all users will be delivered, 0 only non active, 1 only active users

Definition at line 4306 of file class.ilObjUser.php.

References $active, $data, $ilDB, $query, and $row.

Referenced by ilSoapUserAdministration\getUserForRole().

{
global $ilDB, $rbacreview;
$data = array();
$ids = $rbacreview->assignedUsers($role_id);
if (count ($ids) == 0)
{
$ids = array (-1);
}
$query = "SELECT usr_data.*, usr_pref.value AS language
FROM usr_data
LEFT JOIN usr_pref ON usr_pref.usr_id = usr_data.usr_id AND usr_pref.keyword = %s
WHERE ".$ilDB->in("usr_data.usr_id", $ids, false, "integer");
$values[] = "language";
$types[] = "text";
if (is_numeric($active) && $active > -1)
{
$query .= " AND usr_data.active = %s";
$values[] = $active;
$types[] = "integer";
}
$query .= " ORDER BY usr_data.lastname, usr_data.firstname ";
$r = $ilDB->queryF($query, $types, $values);
$data = array();
while ($row = $ilDB->fetchAssoc($r))
{
$data[] = $row;
}
return $data;
}

+ Here is the caller graph for this function:

ilObjUser::_getUsersOnline (   $a_user_id = 0,
  $a_no_anonymous = false 
)

reads all active sessions from db and returns users that are online OR returns only one active user if a user_id is given

Parameters
integeruser_id (optional)
Returns
array

Definition at line 4620 of file class.ilObjUser.php.

References $ilDB, and $user.

Referenced by ilUsersOnlineBlockGUI\getUsers(), and ilUtil\getUsersOnline().

{
global $ilDB;
$pd_set = new ilSetting("pd");
$atime = $pd_set->get("user_activity_time") * 60;
$ctime = time();
if ($a_user_id == 0)
{
$where = "WHERE user_id != 0 AND NOT agree_date IS NULL ";
$type_array = array("integer");
$val_array = array(time());
}
else
{
$where = "WHERE user_id = %s ";
$type_array = array("integer", "integer");
$val_array = array($a_user_id, time());
}
$no_anonym = ($a_no_anonymous)
? "AND user_id <> ".$ilDB->quote(ANONYMOUS_USER_ID, "integer")." "
: "";
$r = $ilDB->queryF("SELECT count(user_id) as num,user_id,firstname,lastname,title,login,last_login,max(ctime) AS ctime ".
"FROM usr_session ".
"LEFT JOIN usr_data u ON user_id = u.usr_id ".
"LEFT JOIN usr_pref p ON (p.usr_id = u.usr_id AND p.keyword = ".
$ilDB->quote("hide_own_online_status", "text").") ".$where.
"AND expires > %s ".
"AND (p.value IS NULL OR NOT p.value = ".$ilDB->quote("y", "text").") ".
$no_anonym.
"GROUP BY user_id,firstname,lastname,title,login,last_login ".
"ORDER BY lastname, firstname", $type_array, $val_array);
while ($user = $ilDB->fetchAssoc($r))
{
if ($atime <= 0
|| $user["ctime"] + $atime > $ctime)
{
$users[$user["user_id"]] = $user;
}
}
return $users ? $users : array();
}

+ Here is the caller graph for this function:

static ilObjUser::_hasAcceptedAgreement (   $a_username)
static

Check if user has accepted the agreement.

public

Parameters

Definition at line 1493 of file class.ilObjUser.php.

References $ilDB, and $res.

Referenced by ilSoapAuthentication\__checkAgreement(), and ilObjUserTest\testCreateSetLookupDelete().

{
global $ilDB;
if($a_username == 'root')
{
return true;
}
$res = $ilDB->queryF("SELECT usr_id FROM usr_data ".
"WHERE login = %s AND NOT agree_date IS NULL",
array("text"), array($a_username));
return $ilDB->fetchAssoc($res) ? true : false;
}

+ Here is the caller graph for this function:

static ilObjUser::_incrementLoginAttempts (   $a_usr_id)
static

Definition at line 4545 of file class.ilObjUser.php.

References $ilDB, and $query.

Referenced by ilInitialisation\initILIAS(), and ilObjUserTest\testAuthAndEmailMethods().

{
global $ilDB;
$query = "UPDATE usr_data SET usr_data.login_attempts = (usr_data.login_attempts + 1) WHERE usr_data.usr_id = %s";
$affected = $ilDB->manipulateF( $query, array('integer'), array($a_usr_id) );
if($affected) return true;
else return false;
}

+ Here is the caller graph for this function:

static ilObjUser::_isDesktopItem (   $a_usr_id,
  $a_item_id,
  $a_type 
)
static

check wether an item is on the users desktop or not

Parameters
int$a_usr_idid of user object
int$a_item_idref_id for objects, that are in the main tree (learning modules, forums) obj_id for others
string$a_typeobject type

Definition at line 3132 of file class.ilObjUser.php.

References $ilDB.

Referenced by ilParticipants\addDesktopItem(), ilParticipants\dropDesktopItem(), and isDesktopItem().

{
global $ilDB;
$item_set = $ilDB->queryF("SELECT * FROM desktop_item WHERE ".
"item_id = %s AND type = %s AND user_id = %s",
array("integer", "text", "integer"),
array($a_item_id, $a_type, $a_usr_id));
if ($ilDB->fetchAssoc($item_set))
{
return true;
}
else
{
return false;
}
}

+ Here is the caller graph for this function:

static ilObjUser::_loginExists (   $a_login,
  $a_user_id = 0 
)
static

check if a login name already exists You may exclude a user from the check by giving his user id as 2nd paramter public static

Parameters
stringlogin name
integeruser id of user to exclude (optional)
Returns
boolean

Definition at line 4253 of file class.ilObjUser.php.

References $ilDB, $q, and $row.

Referenced by ilMail\__substituteRecipients(), ilSoapUserAdministration\__validateUserData(), ilUserLoginInputGUI\checkInput(), ilLuceneQueryParser\replaceOwnerCallback(), ilAccountRegistrationGUI\saveForm(), ilPersonalProfileGUI\savePersonalData(), ilObjUserTest\testCreateSetLookupDelete(), and ilObjUserGUI\updateObjectOld().

{
global $ilDB;
$q = "SELECT DISTINCT login, usr_id FROM usr_data ".
"WHERE login = %s";
$types[] = "text";
$values[] = $a_login;
if ($a_user_id != 0)
{
$q.= " AND usr_id != %s ";
$types[] = "integer";
$values[] = $a_user_id;
}
$r = $ilDB->queryF($q, $types, $values);
if ($row = $ilDB->fetchAssoc($r))
{
return $row['usr_id'];
}
return false;
}

+ Here is the caller graph for this function:

ilObjUser::_lookup (   $a_user_id,
  $a_field 
)
private

Private function for lookup methods.

Definition at line 592 of file class.ilObjUser.php.

References $ilDB, and $res.

Referenced by _checkPassword(), _lookupAuthMode(), _lookupClientIP(), _lookupEmail(), _lookupExternalAccount(), _lookupGender(), _lookupIm(), _lookupLastLogin(), _lookupLogin(), and getStoredActive().

{
global $ilDB;
$res = $ilDB->queryF("SELECT ".$a_field." FROM usr_data WHERE usr_id = %s",
array("integer"), array($a_user_id));
while($set = $ilDB->fetchAssoc($res))
{
return $set[$a_field];
}
return false;
}

+ Here is the caller graph for this function:

static ilObjUser::_lookupAuthMode (   $a_usr_id)
static

lookup auth mode

public

Parameters
intusr_id

Definition at line 3640 of file class.ilObjUser.php.

References _lookup().

Referenced by ilECSAppEventListener\handleEvent(), and ilObjUserTest\testAuthAndEmailMethods().

{
return (string) ilObjUser::_lookup($a_usr_id, "auth_mode");
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::_lookupClientIP (   $a_user_id)

Lookup client ip.

Parameters
intuser id
Returns
string client ip

Definition at line 665 of file class.ilObjUser.php.

References _lookup().

Referenced by ilObjTest\inviteGroup(), ilObjTest\inviteRole(), and ilObjUserTest\testCreateSetLookupDelete().

{
return ilObjUser::_lookup($a_user_id, "client_ip");
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static ilObjUser::_lookupDesktopItems (   $user_id,
  $a_types = "" 
)
static

get all desktop items of user and specified type

note: the implementation of this method is not good style (directly reading tables object_data and object_reference), must be revised someday...

Definition at line 3174 of file class.ilObjUser.php.

References ilObject\$desc, $ilDB, ilObject\$title, ilObject\_lookupDescription(), and ilObject\_lookupTitle().

Referenced by ilNewsItem\_getNewsItemsOfUser(), ilNote\_getRelatedObjectsOfUser(), getDesktopItems(), and ilCalendarCategories\readSelectedItemCalendars().

{
global $ilUser, $rbacsystem, $tree, $ilDB;
if ($a_types == "")
{
$item_set = $ilDB->queryF("SELECT obj.obj_id, obj.description, oref.ref_id, obj.title, obj.type ".
" FROM desktop_item it, object_reference oref ".
", object_data obj".
" WHERE ".
"it.item_id = oref.ref_id AND ".
"oref.obj_id = obj.obj_id AND ".
"it.user_id = %s", array("integer"), array($user_id));
$items = array();
while ($item_rec = $ilDB->fetchAssoc($item_set))
{
if ($tree->isInTree($item_rec["ref_id"])
&& $item_rec["type"] != "rolf")
{
$parent_ref = $tree->getParentId($item_rec["ref_id"]);
$par_left = $tree->getLeftValue($parent_ref);
$par_left = sprintf("%010d", $par_left);
$title = ilObject::_lookupTitle($item_rec["obj_id"]);
$desc = ilObject::_lookupDescription($item_rec["obj_id"]);
$items[$par_left.$title.$item_rec["ref_id"]] =
array("ref_id" => $item_rec["ref_id"],
"obj_id" => $item_rec["obj_id"],
"type" => $item_rec["type"],
"title" => $title,
"description" => $desc,
"parent_ref" => $parent_ref);
}
}
ksort($items);
}
else
{
if (!is_array($a_types))
{
$a_types = array($a_types);
}
$items = array();
$foundsurveys = array();
foreach($a_types as $a_type)
{
$item_set = $ilDB->queryF("SELECT obj.obj_id, obj.description, oref.ref_id, obj.title FROM desktop_item it, object_reference oref ".
", object_data obj WHERE ".
"it.item_id = oref.ref_id AND ".
"oref.obj_id = obj.obj_id AND ".
"it.type = %s AND ".
"it.user_id = %s ".
"ORDER BY title",
array("text", "integer"),
array($a_type, $user_id));
while ($item_rec = $ilDB->fetchAssoc($item_set))
{
$title = ilObject::_lookupTitle($item_rec["obj_id"]);
$desc = ilObject::_lookupDescription($item_rec["obj_id"]);
$items[$title.$a_type.$item_rec["ref_id"]] =
array("ref_id" => $item_rec["ref_id"],
"obj_id" => $item_rec["obj_id"], "type" => $a_type,
"title" => $title, "description" => $desc);
}
}
ksort($items);
}
return $items;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::_lookupExternalAccount (   $a_user_id)

lookup external account for login and authmethod

Definition at line 712 of file class.ilObjUser.php.

References _lookup().

Referenced by ilUserImportParser\importEndTag(), ilObjUserTest\testCreateSetLookupDelete(), and ilUserImportParser\verifyEndTag().

{
return ilObjUser::_lookup($a_user_id, "ext_account");
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::_lookupFeedHash (   $a_user_id,
  $a_create = false 
)

Lookup news feed hash for user.

If hash does not exist, create one.

Definition at line 4186 of file class.ilObjUser.php.

References $ilDB.

Referenced by ilUserFeedWriter\ilUserFeedWriter().

{
global $ilDB;
if ($a_user_id > 0)
{
$set = $ilDB->queryF("SELECT feed_hash from usr_data WHERE usr_id = %s",
array("integer"), array($a_user_id));
if ($rec = $ilDB->fetchAssoc($set))
{
if (strlen($rec["feed_hash"]) == 32)
{
return $rec["feed_hash"];
}
else if($a_create)
{
$hash = md5(rand(1,9999999) + str_replace(" ", "", (string) microtime()));
$ilDB->manipulateF("UPDATE usr_data SET feed_hash = %s".
" WHERE usr_id = %s",
array("text", "integer"),
array($hash, $a_user_id));
return $hash;
}
}
}
return false;
}

+ Here is the caller graph for this function:

ilObjUser::_lookupFields (   $a_user_id)

lookup fields (deprecated; use more specific methods instead)

Definition at line 691 of file class.ilObjUser.php.

References $ilDB, and $res.

Referenced by ilSCORMPresentationGUI\downloadCertificate(), ilTestExport\exportToCSV(), ilTestExport\exportToExcel(), ilSpecialUsersTableGUI\fillRow(), ilTestCertificateAdapter\getCertificateVariablesForPresentation(), ilTestEvaluationGUI\outEvaluation(), and ilObjUserTest\testCreateSetLookupDelete().

{
global $ilDB;
$res = $ilDB->queryF("SELECT * FROM usr_data WHERE usr_id = %s",
array("integer"), array($a_user_id));
$user_rec = $ilDB->fetchAssoc($res);
return $user_rec;
}

+ Here is the caller graph for this function:

ilObjUser::_lookupFullname (   $a_user_id)

Lookup Full Name.

Definition at line 609 of file class.ilObjUser.php.

References $fullname, and $ilDB.

{
global $ilDB;
$set = $ilDB->queryF("SELECT title, firstname, lastname FROM usr_data WHERE usr_id = %s",
array("integer"), array($a_user_id));
if ($rec = $ilDB->fetchAssoc($set))
{
if ($rec["title"])
{
$fullname = $rec["title"]." ";
}
if ($rec["firstname"])
{
$fullname .= $rec["firstname"]." ";
}
if ($rec["lastname"])
{
$fullname .= $rec["lastname"];
}
}
return $fullname;
}
static ilObjUser::_lookupGender (   $a_user_id)
static

Lookup gender.

Definition at line 654 of file class.ilObjUser.php.

References _lookup().

Referenced by ilMail\getSalutation(), and ilObjUserTest\testCreateSetLookupDelete().

{
return ilObjUser::_lookup($a_user_id, "gender");
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::_lookupHasIlias2Password (   $a_user_login)

check if user has ilias 2 password (imported user)

Definition at line 895 of file class.ilObjUser.php.

References $ilDB, and $ilias.

Referenced by ilInitialisation\initILIAS().

{
global $ilias, $ilDB;
$user_set = $ilDB->queryF("SELECT i2passwd FROM usr_data ".
"WHERE login = %s", array("text"), array($a_user_login));
if ($user_rec = $ilDB->fetchAssoc($user_set))
{
if ($user_rec["i2passwd"] != "")
{
return true;
}
}
return false;
}

+ Here is the caller graph for this function:

ilObjUser::_lookupIm (   $a_user_id,
  $a_type 
)

Lookup IM.

Definition at line 637 of file class.ilObjUser.php.

References _lookup().

Referenced by ilUsersOnlineBlockGUI\fillRow().

{
return ilObjUser::_lookup($a_user_id, "im_".$a_type);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static ilObjUser::_lookupLanguage (   $a_usr_id)
static

Definition at line 1995 of file class.ilObjUser.php.

References $ilDB, $q, and $row.

Referenced by ilForum\_getLanguageInstanceByUsrId(), ilLanguageFactory\_getLanguageOfUser(), and ilObjUserTest\testCreateSetLookupDelete().

{
global $ilDB;
$q = "SELECT value FROM usr_pref WHERE usr_id= ".
$ilDB->quote($a_usr_id, "integer")." AND keyword = ".
$ilDB->quote('language', "text");
$r = $ilDB->query($q);
while($row = $ilDB->fetchAssoc($r))
{
return $row['value'];
}
return 'en';
}

+ Here is the caller graph for this function:

ilObjUser::_lookupLastLogin (   $a_user_id)

lookup last login

Definition at line 733 of file class.ilObjUser.php.

References _lookup().

Referenced by ilLPItemListGUI\renderObjectInfoXML(), and ilObjUserTest\testCreateSetLookupDelete().

{
return ilObjUser::_lookup($a_user_id, "last_login");
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::_lookupLogin (   $a_user_id)

lookup login

Definition at line 704 of file class.ilObjUser.php.

References _lookup().

Referenced by ilCourseXMLParser\__parseId(), ilRegistrationSettings\__read(), ilPaymentStatisticGUI\addStatisticWorksheet(), ilObjPaymentSettingsGUI\addStatisticWorksheet(), ilMailSearchGroupsGUI\adoptMembers(), ilMailSearchCoursesGUI\adoptMembers(), ilLMStatistics\calcStats(), ilObjTestGUI\deleteSingleUserResultsObject(), ilFileDataExercise\downloadAllDeliveredFiles(), ilObjUserGUI\editOldObject(), ilObjSessionGUI\eventsListObject(), ilSessionOverviewGUI\exportCSV(), ilPageHistoryTableGUI\fillRow(), ilMilestoneResponsiblesTableGUI\fillRow(), ilHistoryGUI\getHistoryTable(), ilDAVServer\getLogin(), getLoginByUserId(), ilObjExercise\getMemberListData(), ilChatRecording\getModerator(), ilNoteGUI\getNoteListHTML(), ilTestServiceGUI\getResultsHeadUserAndPass(), ilTestServiceGUI\getResultsUserdata(), ilObjSCORM2004LearningModule\getTrackedUsers(), ilObjSurvey\getUserDataFromActiveId(), ilObjUserGUI\getValues(), ilObjChatGUI\invitePDObject(), ilSessionOverviewGUI\listSessions(), ilMailSearchGroupsGUI\mailMembers(), ilMailSearchCoursesGUI\mailMembers(), ilPermissionGUI\owner(), ilCalendarSharedUserListTableGUI\parse(), ilSessionParticipantsTableGUI\parse(), ilObjSessionGUI\printAttendanceListObject(), ilObjSessionGUI\printViewMembersObject(), ilObjGroupGUI\readMemberData(), ilObjCourseGUI\readMemberData(), ilCalendarEntry\readResponsibleUsers(), ilObjExerciseGUI\redirectFeedbackMailObject(), ilLPItemListGUI\renderObjectInfoXML(), ilObjTest\sendAdvancedNotification(), ilForum\sendForumNotifications(), ilMailNotification\sendMail(), ilCronForumNotification\sendMails(), ilObjCourseGUI\sendMailToSelectedUsersObject(), ilObjGroupGUI\sendMailToSelectedUsersObject(), ilForum\sendPostActivationNotification(), ilObjTest\sendSimpleNotification(), ilForum\sendThreadNotifications(), ilPaymentCouponGUI\showCoupons(), ilMailSearchCoursesGUI\showMembers(), ilMailSearchGUI\showResults(), ilPaymentStatisticGUI\showStatistics(), ilMailFolderGUI\showUser(), ilObjPaymentSettingsGUI\statisticObject(), ilObjUserTest\testCreateSetLookupDelete(), and ilUserImportParser\verifyEndTag().

{
return ilObjUser::_lookup($a_user_id, "login");
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static ilObjUser::_lookupName (   $a_user_id)
static

lookup user name

Definition at line 674 of file class.ilObjUser.php.

References $ilDB, and $res.

Referenced by ilPDFPresentation\__addMain(), ilGroupXMLParser\__parseId(), ilObjTestAccess\_getParticipantData(), ilObjPaymentSettingsGUI\addStatisticWorksheet(), ilMailSearchGroupsGUI\adoptMembers(), ilMailSearchCoursesGUI\adoptMembers(), ilObjTestGUI\deleteSingleUserResultsObject(), ilObjCategoryGUI\deleteUserObject(), ilFileDataExercise\downloadAllDeliveredFiles(), ilExerciseMembers\downloadMultipleFiles(), ilObjSessionGUI\eventsListObject(), ilSessionOverviewGUI\exportCSV(), ilObjAssessmentFolderGUI\exportLogObject(), ilPageHistoryTableGUI\fillRow(), ilAssessmentFolderLogTableGUI\fillRow(), ilCalendarInboxSharedTableGUI\fillRow(), ilObjUserTracking\getAccessPerUserDetail(), ilObjUserTracking\getAccessTotalPerUser(), ilHistoryGUI\getHistoryTable(), ilObjExercise\getMemberListData(), ilPageObject\getPageContributors(), ilPageObject\getParentObjectContributors(), ilMilestoneResponsiblesTableGUI\getParticipantsAndResponsibles(), ilObjForumListGUI\getProperties(), ilMail\getSalutation(), ilObjSCORM2004LearningModule\getTrackedUsers(), ilHistoryGUI\getVersionsTable(), ilSessionOverviewGUI\listSessions(), ilAuthContainerCalendarToken\loginObserver(), ilCalendarSharedUserListTableGUI\parse(), ilCalendarSharedListTableGUI\parse(), ilSessionParticipantsTableGUI\parse(), ilRepositoryUserResultTableGUI\parseUserIds(), ilObjSessionGUI\printAttendanceListObject(), ilObjSessionGUI\printViewMembersObject(), ilObjGroupGUI\readMemberData(), ilObjCourseGUI\readMemberData(), ilCalendarEntry\readResponsibleUsers(), ilSubscriberTableGUI\readSubscriberData(), ilWaitingListTableGUI\readUserData(), ilObjExerciseGUI\saveStatusObject(), ilMailSearchCoursesGUI\showMembers(), ilMailSearchGUI\showResults(), ilObjSCORMLearningModuleGUI\showTrackingItemSco(), ilCourseContentGUI\showUserTimings(), ilObjPaymentSettingsGUI\statisticObject(), ilObjUserTest\testCreateSetLookupDelete(), ilObjTest\userLookupFullName(), and ilMailNotification\userToString().

{
global $ilDB;
$res = $ilDB->queryF("SELECT firstname, lastname, title, login FROM usr_data WHERE usr_id = %s",
array("integer"), array($a_user_id));
$user_rec = $ilDB->fetchAssoc($res);
return array("user_id" => $a_user_id,
"firstname" => $user_rec["firstname"],
"lastname" => $user_rec["lastname"],
"title" => $user_rec["title"],
"login" => $user_rec["login"]);
}

+ Here is the caller graph for this function:

ilObjUser::_makeIlias2Password (   $a_passwd)

get encrypted Ilias 2 password (needed for imported ilias 2 users)

Definition at line 887 of file class.ilObjUser.php.

Referenced by _switchToIlias3Password(), and updatePassword().

{
return (crypt($a_passwd,substr($a_passwd,0,2)));
}

+ Here is the caller graph for this function:

ilObjUser::_moveUsersToStyle (   $a_from_skin,
  $a_from_style,
  $a_to_skin,
  $a_to_style 
)

skins and styles

Definition at line 2978 of file class.ilObjUser.php.

References $ilDB, $q, and _writePref().

Referenced by ilObjStyleSettingsGUI\saveStyleSettingsObject(), and ilObjUserTest\testMiscellaneous().

{
global $ilDB;
$q = "SELECT up1.usr_id usr_id FROM usr_pref up1, usr_pref up2 ".
" WHERE up1.keyword= ".$ilDB->quote("style", "text").
" AND up1.value= ".$ilDB->quote($a_from_style, "text").
" AND up2.keyword= ".$ilDB->quote("skin", "text").
" AND up2.value= ".$ilDB->quote($a_from_skin, "text").
" AND up1.usr_id = up2.usr_id ";
$usr_set = $ilDB->query($q);
while ($usr_rec = $ilDB->fetchAssoc($usr_set))
{
ilObjUser::_writePref($usr_rec["usr_id"], "skin", $a_to_skin);
ilObjUser::_writePref($usr_rec["usr_id"], "style", $a_to_style);
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static ilObjUser::_readUsersProfileData (   $a_user_ids)
static

STATIC METHOD get user data of selected users.

Parameters
arraydesired user ids
Returns
array of user data public

Definition at line 2800 of file class.ilObjUser.php.

References $ilDB, $res, and $row.

Referenced by ilMemberExport\fetchUsers(), ilPaymentStatisticGUI\saveCustomer(), ilObjPaymentSettingsGUI\saveCustomerObject(), and ilObjUserTest\testCreateSetLookupDelete().

{
global $ilDB;
$res = $ilDB->query("SELECT * FROM usr_data WHERE ".
$ilDB->in("usr_id", $a_user_ids, false, "integer"));
while ($row = $ilDB->fetchAssoc($res))
{
$user_data["$row[usr_id]"] = $row;
}
return $user_data ? $user_data : array();
}

+ Here is the caller graph for this function:

static ilObjUser::_removeItemFromDesktops (   $a_id)
static

removes object from all user's desktops public

Parameters
integerref_id
Returns
array user_ids of all affected users

Definition at line 3100 of file class.ilObjUser.php.

References $ilDB, and $row.

Referenced by ilUtil\removeItemFromDesktops().

{
global $ilDB;
$r = $ilDB->queryF("SELECT user_id FROM desktop_item WHERE item_id = %s",
array("integer"), array($a_id));
$users = array();
while ($row = $ilDB->fetchObject($r))
{
$users[] = $row->user_id;
} // while
if (count($users) > 0)
{
$ilDB->manipulateF("DELETE FROM desktop_item WHERE item_id = %s",
array("integer"), array($a_id));
}
return $users;
}

+ Here is the caller graph for this function:

static ilObjUser::_resetLoginAttempts (   $a_usr_id)
static

Definition at line 4522 of file class.ilObjUser.php.

References $ilDB, and $query.

Referenced by ilInitialisation\initILIAS(), ilObjUserTest\testAuthAndEmailMethods(), and ilObjUserGUI\updateObject().

{
global $ilDB;
$query = "UPDATE usr_data SET usr_data.login_attempts = 0 WHERE usr_data.usr_id = %s";
$affected = $ilDB->manipulateF( $query, array('integer'), array($a_usr_id) );
if($affected) return true;
else return false;
}

+ Here is the caller graph for this function:

ilObjUser::_setFeedPass (   $a_user_id,
  $a_password 
)

Set news feed password for user.

Parameters
integeruser_id
stringnew password

Definition at line 4236 of file class.ilObjUser.php.

References $ilDB, and _writePref().

{
global $ilDB;
ilObjUser::_writePref($a_user_id, "priv_feed_pass",
($a_password=="") ? "" : md5($a_password));
}

+ Here is the call graph for this function:

static ilObjUser::_setUserInactive (   $a_usr_id)
static

Definition at line 4556 of file class.ilObjUser.php.

References $ilDB, and $query.

Referenced by ilInitialisation\initILIAS(), and ilObjUserTest\testAuthAndEmailMethods().

{
global $ilDB;
$query = "UPDATE usr_data SET usr_data.active = 0 WHERE usr_data.usr_id = %s";
$affected = $ilDB->manipulateF( $query, array('integer'), array($a_usr_id) );
if($affected) return true;
else return false;
}

+ Here is the caller graph for this function:

ilObjUser::_switchToIlias3Password (   $a_user,
  $a_pw 
)

check if user has ilias 2 password (imported user)

Definition at line 915 of file class.ilObjUser.php.

References $ilDB, $ilias, and _makeIlias2Password().

Referenced by ilInitialisation\initILIAS().

{
global $ilias, $ilDB;
$user_set = $ilDB->queryF("SELECT i2passwd FROM usr_data ".
"WHERE login = %s", array("text"), array($a_user_login));
if ($user_rec = $ilDB->fetchAssoc($user_set))
{
if ($user_rec["i2passwd"] == ilObjUser::_makeIlias2Password($a_pw))
{
$ilDB->manipulateF("UPDATE usr_data SET passwd = %s, i2passwd = %s".
"WHERE login = %s",
array("text", "text", "text"),
array(md5($a_pw), "", $a_user));
return true;
}
}
return false;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static ilObjUser::_toggleActiveStatusOfUsers (   $a_usr_ids,
  $a_status 
)
static

Toggle active status of users.

public

Parameters

Definition at line 3616 of file class.ilObjUser.php.

References $ilDB, and $q.

Referenced by ilLDAPCronSynchronization\deactivateUsers(), and ilObjUserTest\testCreateSetLookupDelete().

{
global $ilDB;
if(!is_array($a_usr_ids))
{
return false;
}
$q = "UPDATE usr_data SET active = %s WHERE ".
$ilDB->in("usr_id", $a_usr_ids, false, "integer");
$ilDB->manipulateF($q, array("integer"), array(($a_status ? 1 : 0)));
return true;
}

+ Here is the caller graph for this function:

ilObjUser::_uploadPersonalPicture (   $tmp_file,
  $obj_id 
)

Create a personal picture image file from a temporary image file.

Parameters
string$tmp_fileComplete path to the temporary image file
int$obj_idThe object id of the related user account
Returns
returns TRUE on success, otherwise FALSE

Definition at line 3760 of file class.ilObjUser.php.

References _writePref(), ilUtil\getConvertCmd(), and ilUtil\getWebspaceDir().

Referenced by ilUserImportParser\importEndTag().

{
$webspace_dir = ilUtil::getWebspaceDir();
$image_dir = $webspace_dir."/usr_images";
$store_file = "usr_".$obj_id."."."jpg";
$target_file = $image_dir."/$store_file";
chmod($tmp_file, 0770);
// take quality 100 to avoid jpeg artefacts when uploading jpeg files
// taking only frame [0] to avoid problems with animated gifs
$show_file = "$image_dir/usr_".$obj_id.".jpg";
$thumb_file = "$image_dir/usr_".$obj_id."_small.jpg";
$xthumb_file = "$image_dir/usr_".$obj_id."_xsmall.jpg";
$xxthumb_file = "$image_dir/usr_".$obj_id."_xxsmall.jpg";
system(ilUtil::getConvertCmd()." $tmp_file" . "[0] -geometry 200x200 -quality 100 JPEG:$show_file");
system(ilUtil::getConvertCmd()." $tmp_file" . "[0] -geometry 100x100 -quality 100 JPEG:$thumb_file");
system(ilUtil::getConvertCmd()." $tmp_file" . "[0] -geometry 75x75 -quality 100 JPEG:$xthumb_file");
system(ilUtil::getConvertCmd()." $tmp_file" . "[0] -geometry 30x30 -quality 100 JPEG:$xxthumb_file");
// store filename
ilObjUser::_writePref($obj_id, "profile_image", $store_file);
return TRUE;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static ilObjUser::_verifyRegistrationHash (   $a_hash)
static

Verifies a registration hash.

Exceptions
ilRegistrationHashExpiredException
ilRegistrationHashNotFoundException
Parameters
string$a_hashhashcode
Returns
integer user id of the user

Definition at line 4809 of file class.ilObjUser.php.

References $ilDB, $res, $row, and DB_FETCHMODE_OBJECT.

Referenced by ilStartUpGUI\confirmRegistration().

{
global $ilDB;
$res = $ilDB->queryf('
SELECT usr_id, create_date FROM usr_data
WHERE reg_hash = %s',
array('text'),
array($a_hash));
while($row = $res->fetchRow(DB_FETCHMODE_OBJECT))
{
require_once 'Services/Registration/classes/class.ilRegistrationSettings.php';
$oRegSettigs = new ilRegistrationSettings();
if((int)$oRegSettigs->getRegistrationHashLifetime() != 0 &&
time() - (int)$oRegSettigs->getRegistrationHashLifetime() > strtotime($row->create_date))
{
require_once 'Services/Registration/exceptions/class.ilRegConfirmationLinkExpiredException.php';
throw new ilRegConfirmationLinkExpiredException('reg_confirmation_hash_life_time_expired');
}
$ilDB->manipulateF('
UPDATE usr_data
SET reg_hash = %s
WHERE usr_id = %s',
array('text', 'integer'),
array('', (int)$row->usr_id)
);
return $row->usr_id;
}
require_once 'Services/Registration/exceptions/class.ilRegistrationHashNotFoundException.php';
throw new ilRegistrationHashNotFoundException('reg_confirmation_hash_not_found');
}

+ Here is the caller graph for this function:

ilObjUser::_writeAuthMode (   $a_usr_id,
  $a_auth_mode 
)

Definition at line 2034 of file class.ilObjUser.php.

References $ilDB.

Referenced by ilObjUserTest\testAuthAndEmailMethods().

{
global $ilDB;
$ilDB->manipulateF("UPDATE usr_data ".
" SET auth_mode = %s WHERE usr_id = %s",
array("text", "integer"),
array($a_auth_mode, $a_usr_id));
}

+ Here is the caller graph for this function:

ilObjUser::_writeExternalAccount (   $a_usr_id,
  $a_ext_id 
)

Definition at line 2024 of file class.ilObjUser.php.

References $ilDB.

Referenced by ilObjUserTest\testAuthAndEmailMethods().

{
global $ilDB;
$ilDB->manipulateF("UPDATE usr_data ".
" SET ext_account = %s WHERE usr_id = %s",
array("text", "integer"),
array($a_ext_id, $a_usr_id));
}

+ Here is the caller graph for this function:

static ilObjUser::_writeHistory (   $a_usr_id,
  $a_login 
)
static

Definition at line 4590 of file class.ilObjUser.php.

References $ilDB, $res, and $timestamp.

Referenced by updateLogin().

{
global $ilDB;
$timestamp = time();
$res = $ilDB->queryF('SELECT * FROM loginname_history WHERE usr_id = %s AND login = %s AND history_date = %s',
array('integer', 'text', 'integer'),
array($a_usr_id, $a_login, $timestamp));
if( $ilDB->numRows($res) == 0 )
{
$ilDB->manipulateF('
INSERT INTO loginname_history
(usr_id, login, history_date)
VALUES (%s, %s, %s)',
array('integer', 'text', 'integer'),
array($a_usr_id, $a_login, $timestamp));
}
return true;
}

+ Here is the caller graph for this function:

ilObjUser::_writePref (   $a_usr_id,
  $a_keyword,
  $a_value 
)

Write preference.

Definition at line 1117 of file class.ilObjUser.php.

References $ilDB, and _deletePref().

Referenced by _moveUsersToStyle(), _setFeedPass(), _uploadPersonalPicture(), ilObjChatGUI\getChatViewerBlockContentObject(), ilContainerObjectiveGUI\initDetails(), ilCourseObjectivePresentationGUI\reset(), writePref(), and writePrefs().

{
global $ilDB;
ilObjUser::_deletePref($a_usr_id, $a_keyword);
if (strlen($a_value))
{
$ilDB->manipulateF("INSERT INTO usr_pref (usr_id, keyword, value) VALUES (%s,%s,%s)",
array("integer", "text", "text"), array($a_usr_id, $a_keyword, $a_value));
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::addDesktopItem (   $a_item_id,
  $a_type,
  $a_par = "" 
)

add an item to user's personal desktop

Parameters
int$a_item_idref_id for objects, that are in the main tree (learning modules, forums) obj_id for others
string$a_typeobject type

Definition at line 3036 of file class.ilObjUser.php.

References _addDesktopItem(), and ilObject\getId().

{
ilObjUser::_addDesktopItem($this->getId(), $a_item_id, $a_type, $a_par);
}

+ Here is the call graph for this function:

ilObjUser::addObjectToClipboard (   $a_item_id,
  $a_type,
  $a_title,
  $a_parent = 0,
  $a_time = 0,
  $a_order_nr = 0 
)

add an item to user's personal clipboard

Parameters
int$a_item_idref_id for objects, that are in the main tree (learning modules, forums) obj_id for others
string$a_typeobject type

Definition at line 3260 of file class.ilObjUser.php.

References $d, $ilDB, and ilObject\getId().

{
global $ilDB;
if ($a_time == 0)
{
$a_time = date("Y-m-d H:i:s", time());
}
$item_set = $ilDB->queryF("SELECT * FROM personal_clipboard WHERE ".
"parent = %s AND item_id = %s AND type = %s AND user_id = %s",
array("integer", "integer", "text", "integer"),
array(0, $a_item_id, $a_type, $this->getId()));
// only insert if item is not already in clipboard
if (!$d = $item_set->fetchRow())
{
$ilDB->manipulateF("INSERT INTO personal_clipboard ".
"(item_id, type, user_id, title, parent, insert_time, order_nr) VALUES ".
" (%s,%s,%s,%s,%s,%s,%s)",
array("integer", "text", "integer", "text", "integer", "timestamp", "integer"),
array($a_item_id, $a_type, $this->getId(), $a_title, (int) $a_parent, $a_time, (int) $a_order_nr));
}
else
{
$ilDB->manipulateF("UPDATE personal_clipboard SET insert_time = %s ".
"WHERE user_id = %s AND item_id = %s AND type = %s AND parent = 0",
array("timestamp", "integer", "integer", "text"),
array($a_time, $this->getId(), $a_item_id, $a_type));
}
}

+ Here is the call graph for this function:

ilObjUser::addToPCClipboard (   $a_content,
  $a_time,
  $a_nr 
)

Add a page content item to PC clipboard (should go to another class)

Definition at line 3296 of file class.ilObjUser.php.

References $ilDB, and ilObject\getId().

{
global $ilDB;
if ($a_time == 0)
{
$a_time = date("Y-m-d H:i:s", time());
}
$ilDB->insert("personal_pc_clipboard", array(
"user_id" => array("integer", $this->getId()),
"content" => array("clob", $a_content),
"insert_time" => array("timestamp", $a_time),
"order_nr" => array("integer", $a_nr)
));
}

+ Here is the call graph for this function:

ilObjUser::addUserDefinedFieldEntry ( )

Definition at line 3991 of file class.ilObjUser.php.

References $ilDB.

Referenced by saveAsNew().

{
global $ilDB;
// not needed. no entry in udf_text/udf_clob means no value
/* $query = "INSERT INTO udf_data (usr_id ) ".
"VALUES( ".
$ilDB->quote($this->getId(),'integer').
")";
$res = $ilDB->manipulate($query);
*/
return true;
}

+ Here is the caller graph for this function:

ilObjUser::assignData (   $a_data)

loads a record "user" from array public

Parameters
arrayuserdata

Definition at line 268 of file class.ilObjUser.php.

References $ilDB, $ilErr, ilObject\$lng, setAuthMode(), setBirthday(), setCity(), setClientIP(), setComment(), setCountry(), setDelicious(), setDepartment(), setEmail(), setExternalAccount(), setFax(), setFirstname(), setFullname(), setGender(), setHobby(), setInstantMessengerId(), setInstitution(), setLastLogin(), setLastname(), setLastUpdate(), setLatitude(), setLocationZoom(), setLogin(), setLongitude(), setMatriculation(), setPasswd(), setPhoneHome(), setPhoneMobile(), setPhoneOffice(), setProfileIncomplete(), setStreet(), setTimeLimitFrom(), setTimeLimitMessage(), setTimeLimitOwner(), setTimeLimitUnlimited(), setTimeLimitUntil(), setUTitle(), and setZipcode().

Referenced by read().

{
global $ilErr, $ilDB, $lng;
// basic personal data
$this->setLogin($a_data["login"]);
if (! $a_data["passwd_type"])
{
$ilErr->raiseError("<b>Error: passwd_type missing in function assignData(). ".
$this->id."!</b><br />class: ".get_class($this)."<br />Script: "
.__FILE__."<br />Line: ".__LINE__, $ilErr->FATAL);
}
if ($a_data["passwd"] != "********" and strlen($a_data['passwd']))
{
$this->setPasswd($a_data["passwd"], $a_data["passwd_type"]);
}
$this->setGender($a_data["gender"]);
$this->setUTitle($a_data["title"]);
$this->setFirstname($a_data["firstname"]);
$this->setLastname($a_data["lastname"]);
$this->setFullname();
if (!is_array($a_data['birthday']))
{
$this->setBirthday($a_data['birthday']);
}
else
{
$this->setBirthday(null);
}
// address data
$this->setInstitution($a_data["institution"]);
$this->setDepartment($a_data["department"]);
$this->setStreet($a_data["street"]);
$this->setCity($a_data["city"]);
$this->setZipcode($a_data["zipcode"]);
$this->setCountry($a_data["country"]);
$this->setPhoneOffice($a_data["phone_office"]);
$this->setPhoneHome($a_data["phone_home"]);
$this->setPhoneMobile($a_data["phone_mobile"]);
$this->setFax($a_data["fax"]);
$this->setMatriculation($a_data["matriculation"]);
$this->setEmail($a_data["email"]);
$this->setHobby($a_data["hobby"]);
$this->setClientIP($a_data["client_ip"]);
// instant messenger data
$this->setInstantMessengerId('icq',$a_data["im_icq"]);
$this->setInstantMessengerId('yahoo',$a_data["im_yahoo"]);
$this->setInstantMessengerId('msn',$a_data["im_msn"]);
$this->setInstantMessengerId('aim',$a_data["im_aim"]);
$this->setInstantMessengerId('skype',$a_data["im_skype"]);
$this->setInstantMessengerId('jabber',$a_data["im_jabber"]);
$this->setInstantMessengerId('voip',$a_data["im_voip"]);
// other data
$this->setDelicious($a_data["delicious"]);
$this->setLatitude($a_data["latitude"]);
$this->setLongitude($a_data["longitude"]);
$this->setLocationZoom($a_data["loc_zoom"]);
// system data
$this->setLastLogin($a_data["last_login"]);
$this->setLastUpdate($a_data["last_update"]);
$this->create_date = $a_data["create_date"];
$this->setComment($a_data["referral_comment"]);
$this->approve_date = $a_data["approve_date"];
$this->active = $a_data["active"];
$this->agree_date = $a_data["agree_date"];
// time limitation
$this->setTimeLimitOwner($a_data["time_limit_owner"]);
$this->setTimeLimitUnlimited($a_data["time_limit_unlimited"]);
$this->setTimeLimitFrom($a_data["time_limit_from"]);
$this->setTimeLimitUntil($a_data["time_limit_until"]);
$this->setTimeLimitMessage($a_data['time_limit_message']);
// user profile incomplete?
$this->setProfileIncomplete($a_data["profile_incomplete"]);
//iLinc
//$this->setiLincData($a_data['ilinc_id'],$a_data['ilinc_login'],$a_data['ilinc_passwd']);
//authentication
$this->setAuthMode($a_data['auth_mode']);
$this->setExternalAccount($a_data['ext_account']);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::checkTimeLimit ( )

Definition at line 2288 of file class.ilObjUser.php.

References getTimeLimitFrom(), getTimeLimitUnlimited(), and getTimeLimitUntil().

{
if($this->getTimeLimitUnlimited())
{
return true;
}
if($this->getTimeLimitFrom() < time() and $this->getTimeLimitUntil() > time())
{
return true;
}
return false;
}

+ Here is the call graph for this function:

ilObjUser::checkUserId ( )

Definition at line 2489 of file class.ilObjUser.php.

References ilObject\$id, $ilAuth, $ilDB, $ilSetting, $login, $res, $row, _lookupId(), DB_FETCHMODE_OBJECT, exit, getLoginFromAuth(), and ilUtil\redirect().

{
if ($id > 0)
{
// check for simultaneous logins, except the user is the anonymous one
if( $id != ANONYMOUS_USER_ID && (int)$ilSetting->get('ps_prevent_simultaneous_logins') == 1 )
{
$res = $ilDB->queryf('
SELECT * FROM usr_session WHERE user_id = %s AND expires > %s',
array('integer', 'integer'),
array($id, time()));
while($row = $res->fetchRow(DB_FETCHMODE_OBJECT))
{
$ilAuth->logout();
@session_destroy();
ilUtil::redirect('login.php?simultaneous_login=true');
exit();
}
}
return $id;
}
return false;
}

+ Here is the call graph for this function:

ilObjUser::clipboardDeleteAll ( )

Delete objects of type for user.

Definition at line 3370 of file class.ilObjUser.php.

References $ilDB, and ilObject\getId().

Referenced by delete().

{
global $ilDB;
$ilDB->manipulateF("DELETE FROM personal_clipboard WHERE ".
"user_id = %s", array("integer"), array($this->getId()));
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::clipboardDeleteObjectsOfType (   $a_type)

Delete objects of type for user.

Definition at line 3357 of file class.ilObjUser.php.

References $ilDB, and ilObject\getId().

{
global $ilDB;
$ilDB->manipulateF("DELETE FROM personal_clipboard WHERE ".
"type = %s AND user_id = %s",
array("text", "integer"),
array($a_type, $this->getId()));
}

+ Here is the call graph for this function:

ilObjUser::clipboardHasObjectsOfType (   $a_type)

Check whether clipboard has objects of a certain type.

Definition at line 3338 of file class.ilObjUser.php.

References $ilDB, and ilObject\getId().

{
global $ilDB;
$set = $ilDB->queryF("SELECT * FROM personal_clipboard WHERE ".
"parent = %s AND type = %s AND user_id = %s",
array("integer", "text", "integer"),
array(0, $a_type, $this->getId()));
if ($rec = $ilDB->fetchAssoc($set))
{
return true;
}
return false;
}

+ Here is the call graph for this function:

ilObjUser::delete ( )

deletes a user public

Parameters
integeruser_id

Reimplemented from ilObject.

Definition at line 1253 of file class.ilObjUser.php.

References $ilDB, $q, _deleteAllPref(), ilEventParticipants\_deleteByUser(), ilBlockSetting\_deleteSettingsOfUser(), ilLinkCheckNotify\_deleteUser(), ilObjForum\_deleteUser(), ilObjUserTracking\_deleteUser(), ilObjCourse\_deleteUser(), ilSession\_destroyByUserId(), ilLDAPRoleGroupMapping\_getInstance(), clipboardDeleteAll(), deleteUserDefinedFieldEntries(), and ilObject\getId().

{
global $rbacadmin, $ilDB;
// deassign from ldap groups
include_once('Services/LDAP/classes/class.ilLDAPRoleGroupMapping.php');
$mapping->deleteUser($this->getId());
// remove mailbox / update sent mails
include_once ("Services/Mail/classes/class.ilMailbox.php");
$mailbox = new ilMailbox($this->getId());
$mailbox->delete();
$mailbox->updateMailsOfDeletedUser();
// delete feed blocks on personal desktop
include_once("./Services/Block/classes/class.ilCustomBlock.php");
$costum_block = new ilCustomBlock();
$costum_block->setContextObjId($this->getId());
$costum_block->setContextObjType("user");
$c_blocks = $costum_block->queryBlocksForContext();
include_once("./Services/Feeds/classes/class.ilPDExternalFeedBlock.php");
foreach($c_blocks as $c_block)
{
if ($c_block["type"] == "pdfeed")
{
$fb = new ilPDExternalFeedBlock($c_block["id"]);
$fb->delete();
}
}
// delete block settings
include_once("./Services/Block/classes/class.ilBlockSetting.php");
// delete user_account
$ilDB->manipulateF("DELETE FROM usr_data WHERE usr_id = %s",
array("integer"), array($this->getId()));
// delete user_prefs
// delete user_session
include_once("./Services/Authentication/classes/class.ilSession.php");
// remove user from rbac
$rbacadmin->removeUser($this->getId());
// remove bookmarks
// TODO: move this to class.ilBookmarkFolder
$q = "DELETE FROM bookmark_tree WHERE tree = ".
$ilDB->quote($this->getId(), "integer");
$ilDB->manipulate($q);
$q = "DELETE FROM bookmark_data WHERE user_id = ".
$ilDB->quote($this->getId(), "integer");
$ilDB->manipulate($q);
// DELETE FORUM ENTRIES (not complete in the moment)
include_once './Modules/Forum/classes/class.ilObjForum.php';
// Delete link check notify entries
include_once './classes/class.ilLinkCheckNotify.php';
// Delete crs entries
include_once './Modules/Course/classes/class.ilObjCourse.php';
// Delete user tracking
include_once './Services/Tracking/classes/class.ilObjUserTracking.php';
include_once 'Modules/Session/classes/class.ilEventParticipants.php';
// Delete user defined field entries
// Delete clipboard entries
// delete object data
return true;
}

+ Here is the call graph for this function:

ilObjUser::deletePref (   $a_keyword)

Deletes a userpref value of the user from the database public.

Parameters
stringkeyword

Definition at line 1083 of file class.ilObjUser.php.

References _deletePref(), and ilObject\getId().

{
ilObjUser::_deletePref($this->getId(), $a_keyword);
}

+ Here is the call graph for this function:

ilObjUser::deleteUserDefinedFieldEntries ( )

Definition at line 4006 of file class.ilObjUser.php.

References $ilDB, ilUserDefinedData\deleteEntriesOfUser(), and ilObject\getId().

Referenced by delete().

{
global $ilDB;
include_once("./Services/User/classes/class.ilUserDefinedData.php");
// wrong place...
/* $query = "DELETE FROM udf_data ".
"WHERE usr_id = ".$ilDB->quote($this->getId(),'integer');
$res = $ilDB->manipulate($query);*/
return true;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::dropDesktopItem (   $a_item_id,
  $a_type 
)

drop an item from user's personal desktop

Parameters
int$a_item_idref_id for objects, that are in the main tree (learning modules, forums) obj_id for others
string$a_typeobject type

Definition at line 3089 of file class.ilObjUser.php.

References _dropDesktopItem(), and ilObject\getId().

Referenced by ilObjGroup\leaveGroup().

{
ilObjUser::_dropDesktopItem($this->getId(), $a_item_id, $a_type);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::getActive ( )

get user active state public

Definition at line 2180 of file class.ilObjUser.php.

References $active.

{
return $this->active;
}
ilObjUser::getAgreeDate ( )

get the date when the user accepted the user agreement public

Returns
string date of last update

Definition at line 2133 of file class.ilObjUser.php.

References $agree_date.

{
}
& ilObjUser::getAppliedUsers ( )

Definition at line 2446 of file class.ilObjUser.php.

References __readAppliedUsers(), and ilObject\getId().

{
$this->applied_users = array();
$this->__readAppliedUsers($this->getId());
return $this->applied_users ? $this->applied_users : array();
}

+ Here is the call graph for this function:

ilObjUser::getApproveDate ( )

get the date when the user account was approved public

Returns
string approve date

Definition at line 2122 of file class.ilObjUser.php.

References $approve_date.

{
}
ilObjUser::getAuthMode (   $a_auth_key = false)

get auth mode public

Definition at line 3532 of file class.ilObjUser.php.

References $auth_mode, and ilAuthUtils\_getAuthMode().

Referenced by isPasswordChangeDemanded(), saveAsNew(), and update().

{
if (!$a_auth_key)
{
}
include_once('./Services/Authentication/classes/class.ilAuthUtils.php');
return ilAuthUtils::_getAuthMode($this->auth_mode);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::getBirthday ( )

Definition at line 4858 of file class.ilObjUser.php.

References $birthday.

Referenced by saveAsNew(), and update().

{
}

+ Here is the caller graph for this function:

ilObjUser::getCity ( )

get city public

Definition at line 1724 of file class.ilObjUser.php.

References $city.

Referenced by getProfileAsString().

{
return $this->city;
}

+ Here is the caller graph for this function:

ilObjUser::getClientIP ( )

get client ip number public

Definition at line 1857 of file class.ilObjUser.php.

References $client_ip.

{
}
ilObjUser::getClipboardChilds (   $a_parent,
  $a_insert_time 
)

Get childs of an item.

Definition at line 3421 of file class.ilObjUser.php.

References $ilDB, and ilObject\_lookupTitle().

{
global $ilDB, $ilUser;
$objs = $ilDB->queryF("SELECT * FROM personal_clipboard WHERE ".
"user_id = %s AND parent = %s AND insert_time = %s ".
" ORDER BY order_nr",
array("integer", "integer", "timestamp"),
array($ilUser->getId(), (int) $a_parent, $a_insert_time));
$objects = array();
while ($obj = $ilDB->fetchAssoc($objs))
{
if ($obj["type"] == "mob")
{
$obj["title"] = ilObject::_lookupTitle($obj["item_id"]);
}
$objects[] = array ("id" => $obj["item_id"],
"type" => $obj["type"], "title" => $obj["title"]);
}
return $objects;
}

+ Here is the call graph for this function:

ilObjUser::getClipboardObjects (   $a_type = "",
  $a_top_nodes_only = false 
)

get all clipboard objects of user and specified type

Definition at line 3381 of file class.ilObjUser.php.

References $ilDB, $q, ilObject\_lookupTitle(), ilObject\getId(), and ilMediaPoolPage\lookupTitle().

{
global $ilDB;
$par = "";
if ($a_top_nodes_only)
{
$par = " AND parent = ".$ilDB->quote(0, "integer")." ";
}
$type_str = ($a_type != "")
? " AND type = ".$ilDB->quote($a_type, "text")." "
: "";
$q = "SELECT * FROM personal_clipboard WHERE ".
"user_id = ".$ilDB->quote($this->getId(), "integer")." ".
$type_str.$par.
" ORDER BY order_nr";
$objs = $ilDB->query($q);
$objects = array();
while ($obj = $ilDB->fetchAssoc($objs))
{
if ($obj["type"] == "mob")
{
$obj["title"] = ilObject::_lookupTitle($obj["item_id"]);
}
if ($obj["type"] == "incl")
{
include_once("./Modules/MediaPool/classes/class.ilMediaPoolPage.php");
$obj["title"] = ilMediaPoolPage::lookupTitle($obj["item_id"]);
}
$objects[] = array ("id" => $obj["item_id"],
"type" => $obj["type"], "title" => $obj["title"],
"insert_time" => $obj["insert_time"]);
}
return $objects;
}

+ Here is the call graph for this function:

ilObjUser::getComment ( )

get referral comment public

Definition at line 2101 of file class.ilObjUser.php.

References $referral_comment.

Referenced by getProfileAsString().

+ Here is the caller graph for this function:

ilObjUser::getCountry ( )

get country public

Definition at line 1762 of file class.ilObjUser.php.

References $country.

Referenced by getProfileAsString().

{
}

+ Here is the caller graph for this function:

ilObjUser::getCurrentLanguage ( )

returns the current language (may differ from user's pref setting!)

Definition at line 2048 of file class.ilObjUser.php.

References $_SESSION.

{
return $_SESSION['lang'];
}
ilObjUser::getDelicious ( )

Definition at line 4178 of file class.ilObjUser.php.

References $delicious.

{
}
ilObjUser::getDepartment ( )

get department public

Definition at line 1686 of file class.ilObjUser.php.

References $department.

Referenced by getProfileAsString().

{
}

+ Here is the caller graph for this function:

ilObjUser::getDesktopItems (   $a_types = "")

Definition at line 3163 of file class.ilObjUser.php.

References _lookupDesktopItems(), and ilObject\getId().

{
return $this->_lookupDesktopItems($this->getId(), $a_types);
}

+ Here is the call graph for this function:

ilObjUser::getDiskQuota ( )

Returns the minimal disk quota imposed by this user account.

The minimal disk quota is specified in bytes. The default value is 0.

public

Returns
integer

Definition at line 1979 of file class.ilObjUser.php.

{
return $this->prefs["disk_quota"] ? $this->prefs["disk_quota"] : 0;
}
ilObjUser::getEmail ( )

get email address public

Definition at line 1912 of file class.ilObjUser.php.

References $email.

Referenced by getProfileAsString().

{
return $this->email;
}

+ Here is the caller graph for this function:

ilObjUser::getExternalAccount ( )

get external account

note: 3.7.0 uses this field only for cas and soap authentication.

public

Definition at line 3562 of file class.ilObjUser.php.

Referenced by saveAsNew(), and update().

{
return $this->ext_account;
}

+ Here is the caller graph for this function:

ilObjUser::getFax ( )

get fax public

Definition at line 1838 of file class.ilObjUser.php.

References $fax.

Referenced by getProfileAsString().

{
return $this->fax;
}

+ Here is the caller graph for this function:

ilObjUser::getFirstname ( )

get firstname public

Definition at line 1629 of file class.ilObjUser.php.

References $firstname.

Referenced by getProfileAsString(), and getPublicName().

{
}

+ Here is the caller graph for this function:

ilObjUser::getFullname (   $a_max_strlen = 0)

get fullname public

Parameters
integermax. string length to return (optional) if string length of fullname is greater than given a_max_strlen the name is shortened in the following way:
  1. abreviate firstname (-> Dr. J. Smith) if fullname is still too long
  2. drop title (-> John Smith) if fullname is still too long
  3. drop title and abreviate first name (J. Smith) if fullname is still too long
  4. drop title and firstname and shorten lastname to max length (–> Smith)

Definition at line 1396 of file class.ilObjUser.php.

References ilUtil\stripSlashes().

Referenced by ilChatInvitationGUI\getHTML().

{
if (!$a_max_strlen)
{
return ilUtil::stripSlashes($this->fullname);
}
if (strlen($this->fullname) <= $a_max_strlen)
{
return ilUtil::stripSlashes($this->fullname);
}
if ((strlen($this->utitle) + strlen($this->lastname) + 4) <= $a_max_strlen)
{
return ilUtil::stripSlashes($this->utitle." ".substr($this->firstname,0,1).". ".$this->lastname);
}
if ((strlen($this->firstname) + strlen($this->lastname) + 1) <= $a_max_strlen)
{
return ilUtil::stripSlashes($this->firstname." ".$this->lastname);
}
if ((strlen($this->lastname) + 3) <= $a_max_strlen)
{
return ilUtil::stripSlashes(substr($this->firstname,0,1).". ".$this->lastname);
}
return ilUtil::stripSlashes(substr($this->lastname,0,$a_max_strlen));
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::getGender ( )

get gender public

Definition at line 1587 of file class.ilObjUser.php.

References $gender.

Referenced by getProfileAsString().

{
return $this->gender;
}

+ Here is the caller graph for this function:

ilObjUser::getHobby ( )

get hobby public

Definition at line 1931 of file class.ilObjUser.php.

References $hobby.

Referenced by getProfileAsString().

{
return $this->hobby;
}

+ Here is the caller graph for this function:

ilObjUser::getInstantMessengerId (   $a_im_type)

Definition at line 4167 of file class.ilObjUser.php.

{
$var = "im_".$a_im_type;
return $this->$var;
}
ilObjUser::getInstitution ( )

get institution public

Definition at line 1667 of file class.ilObjUser.php.

References $institution.

Referenced by getProfileAsString().

{
}

+ Here is the caller graph for this function:

ilObjUser::getLanguage ( )

returns a 2char-language-string public

Returns
string language

Definition at line 1952 of file class.ilObjUser.php.

{
return $this->prefs["language"];
}
ilObjUser::getLastLogin ( )

returns last login date public

Returns
string date

Definition at line 2068 of file class.ilObjUser.php.

{
return $this->last_login;
}
ilObjUser::getLastname ( )

get lastname public

Definition at line 1648 of file class.ilObjUser.php.

References $lastname.

Referenced by getProfileAsString(), and getPublicName().

{
}

+ Here is the caller graph for this function:

ilObjUser::getLastPasswordChangeTS ( )

Definition at line 1989 of file class.ilObjUser.php.

References $last_password_change_ts.

Referenced by getPasswordAge(), isPasswordChangeDemanded(), isPasswordExpired(), and setLastPasswordChangeToNow().

+ Here is the caller graph for this function:

ilObjUser::getLastUpdate ( )

Definition at line 2082 of file class.ilObjUser.php.

References ilObject\$last_update.

{
}
ilObjUser::getLastVisitedLessons ( )

get read lessons, ordered by timestamp public

Returns
array lessons

Definition at line 1432 of file class.ilObjUser.php.

References $ilDB, $q, and $result.

{
global $ilDB;
//query
$q = "SELECT * FROM lo_access ".
"WHERE usr_id= ".$ilDB->quote((int) $this->id, "integer")." ".
"ORDER BY timestamp DESC";
$rst = $ilDB->query($q);
// fill array
$result = array();
while($record = $ilDB->fetchObject($rst))
{
$result[] = array(
"timestamp" => $record->timestamp,
"usr_id" => $record->usr_id,
"lm_id" => $record->lm_id,
"obj_id" => $record->obj_id,
"lm_title" => $record->lm_title);
}
return $result;
}
ilObjUser::getLatitude ( )

Get Latitude.

Returns
string Latitude

Definition at line 2401 of file class.ilObjUser.php.

References $latitude.

{
}
ilObjUser::getLessons ( )

get all lessons, unordered public

Returns
array lessons

Definition at line 1462 of file class.ilObjUser.php.

References $ilDB, $q, $result, and DB_FETCHMODE_OBJECT.

{
global $ilDB;
//query
$q = "SELECT * FROM lo_access ".
"WHERE usr_id= ".$ilDB->quote((int) $this->id, "integer")." ";
$rst = $ilDB->query($q);
// fill array
$result = array();
while($record = $rst->fetchRow(DB_FETCHMODE_OBJECT))
{
$result[] = array(
"timestamp" => $record->timestamp,
"usr_id" => $record->usr_id,
"lm_id" => $record->lm_id,
"obj_id" => $record->obj_id,
"lm_title" => $record->lm_title);
}
return $result;
}
ilObjUser::getLocationZoom ( )

Get Location Zoom.

Returns
int Location Zoom

Definition at line 2441 of file class.ilObjUser.php.

References $loc_zoom.

{
}
ilObjUser::getLogin ( )

get login / username public

Definition at line 1535 of file class.ilObjUser.php.

References $login.

Referenced by getProfileAsString(), getPublicName(), and updateLogin().

{
return $this->login;
}

+ Here is the caller graph for this function:

ilObjUser::getLoginAttempts ( )

Definition at line 2282 of file class.ilObjUser.php.

References $login_attempts.

{
}
ilObjUser::getLoginByUserId (   $a_userid)

Definition at line 2632 of file class.ilObjUser.php.

References $login, and _lookupLogin().

Referenced by ilObjPaymentSettingsGUI\editVendor().

{
return $login ? $login : false;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static ilObjUser::getLoginFromAuth ( )
staticprivate

Gets the username from $ilAuth, and converts it into an ILIAS login name.

Definition at line 2521 of file class.ilObjUser.php.

References $ilAuth, $login, ilDAVActivationChecker\_isActive(), and ilAuthContainerMDB2\toUsernameWithoutDomain().

Referenced by checkUserId(), isCurrentUserActive(), and syncActive().

{
global $ilAuth;
// BEGIN WebDAV: Strip Microsoft Domain Names from logins
require_once ('Services/WebDAV/classes/class.ilDAVActivationChecker.php');
{
require_once ('Services/WebDAV/classes/class.ilDAVServer.php');
require_once ('Services/Database/classes/class.ilAuthContainerMDB2.php');
}
else
{
$login =$ilAuth->getUsername();
}
return $login;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::getLongitude ( )

Get Longitude.

Returns
string Longitude

Definition at line 2421 of file class.ilObjUser.php.

References $longitude.

{
}
ilObjUser::getMatriculation ( )

get matriculation number public

Definition at line 1876 of file class.ilObjUser.php.

References $matriculation.

Referenced by getProfileAsString().

{
}

+ Here is the caller graph for this function:

ilObjUser::getPasswd ( )

get password

Returns
password. The password is encoded depending on the current password type. public
See Also
getPasswdType

Definition at line 1558 of file class.ilObjUser.php.

References $passwd.

{
return $this->passwd;
}
ilObjUser::getPasswdType ( )

get password type

Returns
password type (IL_PASSWD_PLAIN, IL_PASSWD_MD5 or IL_PASSWD_CRYPT). public
See Also
getPasswd

Definition at line 1568 of file class.ilObjUser.php.

References $passwd_type.

{
}
ilObjUser::getPasswordAge ( )

Definition at line 2351 of file class.ilObjUser.php.

References getLastPasswordChangeTS().

{
$current_ts = time();
$pass_change_ts = $this->getLastPasswordChangeTS();
$password_age = (int) ( ($current_ts - $pass_change_ts) / 86400 );
return $password_age;
}

+ Here is the call graph for this function:

ilObjUser::getPCClipboardContent ( )

Add a page content item to PC clipboard (should go to another class)

Definition at line 3314 of file class.ilObjUser.php.

References $ilDB, $row, and ilObject\getId().

{
global $ilDB;
$set = $ilDB->queryF("SELECT MAX(insert_time) mtime FROM personal_pc_clipboard ".
" WHERE user_id = %s", array("integer"), array($this->getId()));
$row = $ilDB->fetchAssoc($set);
$set = $ilDB->queryF("SELECT * FROM personal_pc_clipboard ".
" WHERE user_id = %s AND insert_time = %s ORDER BY order_nr ASC",
array("integer", "timestamp"),
array($this->getId(), $row["mtime"]));
$content = array();
while ($row = $ilDB->fetchAssoc($set))
{
$content[] = $row["content"];
}
return $content;
}

+ Here is the call graph for this function:

ilObjUser::getPersonalPicturePath (   $a_size = "small",
  $a_force_pic = false 
)

get path to personal picture

Parameters
stringsize "small", "xsmall" or "xxsmall"

Definition at line 3792 of file class.ilObjUser.php.

References _getPersonalPicturePath(), and ilObject\getId().

{
return ilObjUser::_getPersonalPicturePath($this->getId(),$a_size,$a_force_pic);
}

+ Here is the call graph for this function:

ilObjUser::getPhoneHome ( )

get home phone public

Definition at line 1800 of file class.ilObjUser.php.

References $phone_home.

Referenced by getProfileAsString().

{
}

+ Here is the caller graph for this function:

ilObjUser::getPhoneMobile ( )

get mobile phone public

Definition at line 1819 of file class.ilObjUser.php.

References $phone_mobile.

Referenced by getProfileAsString().

{
}

+ Here is the caller graph for this function:

ilObjUser::getPhoneOffice ( )

get office phone public

Definition at line 1781 of file class.ilObjUser.php.

References $phone_office.

Referenced by getProfileAsString().

{
}

+ Here is the caller graph for this function:

ilObjUser::getPref (   $a_keyword)

get a user preference

Parameters
stringname of parameter public

Definition at line 1203 of file class.ilObjUser.php.

Referenced by getTimeFormat(), getTimeZone(), and hasPublicProfile().

{
if (array_key_exists($a_keyword, $this->prefs))
{
return $this->prefs[$a_keyword];
}
else
{
return FALSE;
}
}

+ Here is the caller graph for this function:

ilObjUser::getProfileAsString ( $a_language)

Get formatted mail body text of user profile data.

Parameters
objectLanguage object (choose user language of recipient) or null to use language of current user

Definition at line 4026 of file class.ilObjUser.php.

References $gender, ilObject\$lng, ilObject\_lookupTitle(), ilDatePresentation\formatDate(), ilDatePresentation\formatPeriod(), getCity(), getComment(), getCountry(), ilObject\getCreateDate(), getDepartment(), getEmail(), getFax(), getFirstname(), getGender(), getHobby(), getInstitution(), getLastname(), getLogin(), getMatriculation(), getPhoneHome(), getPhoneMobile(), getPhoneOffice(), getStreet(), getTimeLimitFrom(), getTimeLimitUnlimited(), getTimeLimitUntil(), getUTitle(), getZipcode(), IL_CAL_DATETIME, IL_CAL_UNIX, ilDatePresentation\resetToDefaults(), setLanguage(), and ilDatePresentation\setUseRelativeDates().

{
include_once './Services/AccessControl/classes/class.ilObjRole.php';
include_once 'classes/class.ilFormat.php';
global $lng,$rbacreview;
$language =& $a_language;
$language->loadLanguageModule('registration');
$language->loadLanguageModule('crs');
$body = '';
$body .= ($language->txt("login").": ".$this->getLogin()."\n");
if(strlen($this->getUTitle()))
{
$body .= ($language->txt("title").": ".$this->getUTitle()."\n");
}
if(strlen($this->getGender()))
{
$gender = ($this->getGender() == 'm') ?
$language->txt('gender_m') :
$language->txt('gender_f');
$body .= ($language->txt("gender").": ".$gender."\n");
}
if(strlen($this->getFirstname()))
{
$body .= ($language->txt("firstname").": ".$this->getFirstname()."\n");
}
if(strlen($this->getLastname()))
{
$body .= ($language->txt("lastname").": ".$this->getLastname()."\n");
}
if(strlen($this->getInstitution()))
{
$body .= ($language->txt("institution").": ".$this->getInstitution()."\n");
}
if(strlen($this->getDepartment()))
{
$body .= ($language->txt("department").": ".$this->getDepartment()."\n");
}
if(strlen($this->getStreet()))
{
$body .= ($language->txt("street").": ".$this->getStreet()."\n");
}
if(strlen($this->getCity()))
{
$body .= ($language->txt("city").": ".$this->getCity()."\n");
}
if(strlen($this->getZipcode()))
{
$body .= ($language->txt("zipcode").": ".$this->getZipcode()."\n");
}
if(strlen($this->getCountry()))
{
$body .= ($language->txt("country").": ".$this->getCountry()."\n");
}
if(strlen($this->getPhoneOffice()))
{
$body .= ($language->txt("phone_office").": ".$this->getPhoneOffice()."\n");
}
if(strlen($this->getPhoneHome()))
{
$body .= ($language->txt("phone_home").": ".$this->getPhoneHome()."\n");
}
if(strlen($this->getPhoneMobile()))
{
$body .= ($language->txt("phone_mobile").": ".$this->getPhoneMobile()."\n");
}
if(strlen($this->getFax()))
{
$body .= ($language->txt("fax").": ".$this->getFax()."\n");
}
if(strlen($this->getEmail()))
{
$body .= ($language->txt("email").": ".$this->getEmail()."\n");
}
if(strlen($this->getHobby()))
{
$body .= ($language->txt("hobby").": ".$this->getHobby()."\n");
}
if(strlen($this->getComment()))
{
$body .= ($language->txt("referral_comment").": ".$this->getComment()."\n");
}
if(strlen($this->getMatriculation()))
{
$body .= ($language->txt("matriculation").": ".$this->getMatriculation()."\n");
}
if(strlen($this->getCreateDate()))
{
$body .= ($language->txt("create_date").": ".$date."\n");
}
foreach($rbacreview->getGlobalRoles() as $role)
{
if($rbacreview->isAssigned($this->getId(),$role))
{
$gr[] = ilObjRole::_lookupTitle($role);
}
}
if(count($gr))
{
$body .= ($language->txt('reg_role_info').': '.implode(',',$gr)."\n");
}
// Time limit
if($this->getTimeLimitUnlimited())
{
$body .= ($language->txt('time_limit').": ".$language->txt('crs_unlimited')."\n");
}
else
{
$body .= $language->txt('time_limit').': '.$period;
/*
$body .= ($language->txt('time_limit').": ".$language->txt('crs_from')." ".
ilFormat::formatUnixTime($this->getTimeLimitFrom(), true)." ".
$language->txt('crs_to')." ".
ilFormat::formatUnixTime($this->getTimeLimitUntil(), true)."\n");
*/
}
return $body;
}

+ Here is the call graph for this function:

ilObjUser::getProfileIncomplete ( )

Definition at line 2304 of file class.ilObjUser.php.

Referenced by saveAsNew(), and update().

{
return $this->profile_incomplete;
}

+ Here is the caller graph for this function:

ilObjUser::getPublicName ( )

returns firstname lastname and login if profile is public, login otherwise

Returns
string

Definition at line 4581 of file class.ilObjUser.php.

References getFirstname(), getLastname(), getLogin(), and hasPublicProfile().

{
if ($this->hasPublicProfile())
return $this->getFirstname()." ".$this->getLastname()." (".$this->getLogin().")";
else
return $this->getLogin();
}

+ Here is the call graph for this function:

ilObjUser::getStoredActive (   $a_id)

get user active state

Parameters
integer$a_iduser id public
Returns
true if active, otherwise false

Definition at line 2219 of file class.ilObjUser.php.

References $active, and _lookup().

Referenced by syncActive(), and ilObjUserTest\testCreateSetLookupDelete().

{
$active = ilObjUser::_lookup($a_id, "active");
return $active ? true : false;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::getStreet ( )

get street public

Definition at line 1705 of file class.ilObjUser.php.

References $street.

Referenced by getProfileAsString().

{
return $this->street;
}

+ Here is the caller graph for this function:

ilObjUser::getTimeFormat ( )

get time format

public

Returns

Definition at line 1170 of file class.ilObjUser.php.

References ilCalendarSettings\_getInstance(), and getPref().

{
if($format = $this->getPref('time_format'))
{
return $format;
}
else
{
include_once('Services/Calendar/classes/class.ilCalendarSettings.php');
return $settings->getDefaultTimeFormat();
}
}

+ Here is the call graph for this function:

ilObjUser::getTimeLimitFrom ( )

Definition at line 2248 of file class.ilObjUser.php.

Referenced by checkTimeLimit(), getProfileAsString(), saveAsNew(), and update().

{
return $this->time_limit_from ? $this->time_limit_from : time();
}

+ Here is the caller graph for this function:

ilObjUser::getTimeLimitMessage ( )

Definition at line 2272 of file class.ilObjUser.php.

Referenced by update().

{
return $this->time_limit_message;
}

+ Here is the caller graph for this function:

ilObjUser::getTimeLimitOwner ( )

Definition at line 2240 of file class.ilObjUser.php.

Referenced by saveAsNew(), and update().

{
return $this->time_limit_owner ? $this->time_limit_owner : 7;
}

+ Here is the caller graph for this function:

ilObjUser::getTimeLimitUnlimited ( )

Definition at line 2264 of file class.ilObjUser.php.

Referenced by checkTimeLimit(), getProfileAsString(), saveAsNew(), and update().

{
return $this->time_limit_unlimited;
}

+ Here is the caller graph for this function:

ilObjUser::getTimeLimitUntil ( )

Definition at line 2256 of file class.ilObjUser.php.

Referenced by checkTimeLimit(), getProfileAsString(), saveAsNew(), and update().

{
return $this->time_limit_until ? $this->time_limit_until : time();
}

+ Here is the caller graph for this function:

ilObjUser::getTimeZone ( )

get timezone of user

public

Definition at line 1150 of file class.ilObjUser.php.

References ilCalendarSettings\_getInstance(), and getPref().

{
if($tz = $this->getPref('user_tz'))
{
return $tz;
}
else
{
include_once('Services/Calendar/classes/class.ilCalendarSettings.php');
return $settings->getDefaultTimeZone();
}
}

+ Here is the call graph for this function:

ilObjUser::getUserDefinedData ( )

Definition at line 3921 of file class.ilObjUser.php.

{
return $this->user_defined_data ? $this->user_defined_data : array();
}
ilObjUser::getUserIdByEmail (   $a_email)
static

STATIC METHOD get the user_id of an email address.

Parameters
stringemail of user
Returns
integer id of user public

Definition at line 2613 of file class.ilObjUser.php.

References $ilDB, $res, and $row.

Referenced by ilObjUserTest\testAuthAndEmailMethods().

{
global $ilDB;
$res = $ilDB->queryF("SELECT usr_id FROM usr_data ".
"WHERE email = %s", array("text"), array($a_email));
$row = $ilDB->fetchObject($res);
return $row->usr_id ? $row->usr_id : 0;
}

+ Here is the caller graph for this function:

ilObjUser::getUTitle ( )

get user title (note: don't mix up this method with getTitle() that is derived from ilObject and gets the user object's title) public

Definition at line 1610 of file class.ilObjUser.php.

References $utitle.

Referenced by getProfileAsString().

{
return $this->utitle;
}

+ Here is the caller graph for this function:

ilObjUser::getZipcode ( )

get zipcode public

Definition at line 1743 of file class.ilObjUser.php.

References $zipcode.

Referenced by getProfileAsString().

{
}

+ Here is the caller graph for this function:

ilObjUser::hasAcceptedUserAgreement ( )

check wether user has accepted user agreement

Definition at line 1512 of file class.ilObjUser.php.

{
if ($this->agree_date != null || $this->login == "root")
{
return true;
}
return false;
}
ilObjUser::hasPublicProfile ( )

returns true if public is profile, false otherwise

Returns
boolean

Definition at line 4572 of file class.ilObjUser.php.

References getPref().

Referenced by getPublicName().

{
return in_array($this->getPref("public_profile"), array("y", "g"));
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::ilObjUser (   $a_user_id = 0,
  $a_call_by_reference = false 
)

Constructor public.

Parameters
integeruser_id

Definition at line 134 of file class.ilObjUser.php.

References $ilDB, $ilias, $skin, IL_PASSWD_PLAIN, ilObject\ilObject(), read(), and ilObject\setId().

{
global $ilias,$ilDB;
// init variables
$this->ilias =& $ilias;
$this->db =& $ilDB;
$this->type = "usr";
$this->ilObject($a_user_id, $a_call_by_reference);
$this->auth_mode = "default";
$this->passwd_type = IL_PASSWD_PLAIN;
// for gender selection. don't change this
/*$this->gender = array(
'm' => "salutation_m",
'f' => "salutation_f"
);*/
if ($a_user_id > 0)
{
$this->setId($a_user_id);
$this->read();
}
else
{
// TODO: all code in else-structure doesn't belongs in class user !!!
//load default data
$this->prefs = array();
//language
$this->prefs["language"] = $this->ilias->ini->readVariable("language","default");
//skin and pda support
$this->skin = $this->ilias->ini->readVariable("layout","skin");
$this->prefs["skin"] = $this->skin;
$this->prefs["show_users_online"] = "y";
//style (css)
$this->prefs["style"] = $this->ilias->ini->readVariable("layout","style");
}
}

+ Here is the call graph for this function:

ilObjUser::isChild (   $a_usr_id)

Definition at line 2454 of file class.ilObjUser.php.

References __readAppliedUsers(), and ilObject\getId().

{
if($a_usr_id == $this->getId())
{
return true;
}
$this->applied_users = array();
$this->__readAppliedUsers($this->getId());
return in_array($a_usr_id,$this->applied_users);
}

+ Here is the call graph for this function:

ilObjUser::isCurrentUserActive ( )

Definition at line 2545 of file class.ilObjUser.php.

References $ilAuth, $ilDB, $login, and getLoginFromAuth().

{
global $ilDB,$ilAuth;
$set = $ilDB->queryF("SELECT active FROM usr_data WHERE login= %s",
array("text"),
array($login));
//query has got a result
if ($rec = $ilDB->fetchAssoc($set))
{
if ($rec["active"])
{
return true;
}
}
return false;
}

+ Here is the call graph for this function:

ilObjUser::isDesktopItem (   $a_item_id,
  $a_type 
)

check wether an item is on the users desktop or not

Parameters
int$a_item_idref_id for objects, that are in the main tree (learning modules, forums) obj_id for others
string$a_typeobject type

Definition at line 3158 of file class.ilObjUser.php.

References _isDesktopItem(), and ilObject\getId().

{
return ilObjUser::_isDesktopItem($this->getId(), $a_item_id, $a_type);
}

+ Here is the call graph for this function:

ilObjUser::isPasswordChangeDemanded ( )

Definition at line 2309 of file class.ilObjUser.php.

References ilSecuritySettings\_getInstance(), ilAuthUtils\_needsExternalAccountByAuthMode(), getAuthMode(), and getLastPasswordChangeTS().

{
//error_reporting(E_ALL);
if( $this->id == ANONYMOUS_USER_ID || $this->id == SYSTEM_USER_ID )
return false;
require_once('./Services/PrivacySecurity/classes/class.ilSecuritySettings.php');
&& $security->isPasswordChangeOnFirstLoginEnabled()
&& $this->getLastPasswordChangeTS() == 0
){
return true;
}
else return false;
}

+ Here is the call graph for this function:

ilObjUser::isPasswordExpired ( )

Definition at line 2327 of file class.ilObjUser.php.

References ilSecuritySettings\_getInstance(), ilSecuritySettings\ACCOUNT_SECURITY_MODE_CUSTOMIZED, and getLastPasswordChangeTS().

{
//error_reporting(E_ALL);
if($this->id == ANONYMOUS_USER_ID) return false;
require_once('./Services/PrivacySecurity/classes/class.ilSecuritySettings.php');
if( $security->getAccountSecurityMode() == ilSecuritySettings::ACCOUNT_SECURITY_MODE_CUSTOMIZED &&
$this->getLastPasswordChangeTS() > 0 )
{
$max_pass_age = $security->getPasswordMaxAge();
if( $max_pass_age > 0 )
{
$max_pass_age_ts = ( $max_pass_age * 86400 );
$pass_change_ts = $this->getLastPasswordChangeTS();
$current_ts = time();
if( ($current_ts - $pass_change_ts) > $max_pass_age_ts )
return true;
}
}
return false;
}

+ Here is the call graph for this function:

static ilObjUser::lookupMatriculation (   $a_usr_id)
static

Lookup matriculation.

Returns
string matricualtion
Parameters
int$a_usr_idpublic

Definition at line 1887 of file class.ilObjUser.php.

References $ilDB, $query, $res, $row, and DB_FETCHMODE_OBJECT.

Referenced by ilObjCourseGrouping\_checkGroupingDependencies().

{
global $ilDB;
$query = "SELECT matriculation FROM usr_data ".
"WHERE usr_id = ".$ilDB->quote($a_usr_id);
$res = $ilDB->query($query);
return $row->matriculation ? $row->matriculation : '';
}

+ Here is the caller graph for this function:

ilObjUser::read ( )

loads a record "user" from database private

Definition at line 180 of file class.ilObjUser.php.

References $data, $ilDB, $ilErr, assignData(), IL_PASSWD_CRYPT, IL_PASSWD_MD5, readPrefs(), readUserDefinedFields(), setLastPasswordChangeTS(), setLoginAttempts(), and ilStyleDefinition\skinExists().

Referenced by ilObjUser(), and update().

{
global $ilErr, $ilDB;
// Alex: I have removed the JOIN to rbac_ua, since there seems to be no
// use (3.11.0 alpha)
/*$q = "SELECT * FROM usr_data ".
"LEFT JOIN rbac_ua ON usr_data.usr_id=rbac_ua.usr_id ".
"WHERE usr_data.usr_id= ".$ilDB->quote($this->id); */
$r = $ilDB->queryF("SELECT * FROM usr_data ".
"WHERE usr_id= %s", array("integer"), array($this->id));
if ($data = $ilDB->fetchAssoc($r))
{
// convert password storage layout used by table usr_data into
// storage layout used by class ilObjUser
if ($data["passwd"] == "" && $data["i2passwd"] != "")
{
$data["passwd_type"] = IL_PASSWD_CRYPT;
$data["passwd"] = $data["i2passwd"];
}
else
{
$data["passwd_type"] = IL_PASSWD_MD5;
//$data["passwd"] = $data["passwd"]; (implicit)
}
unset($data["i2passw"]);
// this assign must not be set via $this->assignData($data)
// because this method will be called on profile updates and
// would set this values to 0, because they arent posted from form
$this->setLastPasswordChangeTS( $data['last_password_change'] );
$this->setLoginAttempts( $data['login_attempts'] );
// fill member vars in one shot
$this->assignData($data);
//get userpreferences from usr_pref table
$this->readPrefs();
//set language to default if not set
if ($this->prefs["language"] == "")
{
$this->prefs["language"] = $this->oldPrefs["language"];
}
//check skin-setting
include_once("./Services/Style/classes/class.ilStyleDefinition.php");
if ($this->prefs["skin"] == "" ||
!ilStyleDefinition::skinExists($this->prefs["skin"]))
{
$this->prefs["skin"] = $this->oldPrefs["skin"];
}
$this->skin = $this->prefs["skin"];
//check style-setting (skins could have more than one stylesheet
if ($this->prefs["style"] == "" ||
!ilStyleDefinition::skinExists($this->skin, $this->prefs["style"]))
{
//load default (css)
$this->prefs["style"] = $this->ilias->ini->readVariable("layout","style");
}
if (empty($this->prefs["hits_per_page"]))
{
$this->prefs["hits_per_page"] = 10;
}
}
else
{
$ilErr->raiseError("<b>Error: There is no dataset with id ".
$this->id."!</b><br />class: ".get_class($this)."<br />Script: ".__FILE__.
"<br />Line: ".__LINE__, $ilErr->FATAL);
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::readPrefs ( )

get all user preferences private

Returns
integer number of preferences

Definition at line 1235 of file class.ilObjUser.php.

References $ilDB, $prefs, and _getPreferences().

Referenced by read().

{
global $ilDB;
if (is_array($this->prefs))
{
$this->oldPrefs = $this->prefs;
}
$this->prefs = ilObjUser::_getPreferences($this->id);
return count($prefs);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::readUserDefinedFields ( )

Definition at line 3970 of file class.ilObjUser.php.

References $ilDB, and ilObject\getId().

Referenced by read().

{
global $ilDB;
include_once("./Services/User/classes/class.ilUserDefinedData.php");
$udata = new ilUserDefinedData($this->getId());
/* $query = "SELECT * FROM udf_data ".
"WHERE usr_id = ".$ilDB->quote($this->getId(),'integer');
$res = $this->db->query($query);
while($row = $res->fetchRow(DB_FETCHMODE_ASSOC))
{
$this->user_defined_data = $row;
}*/
$this->user_defined_data = $udata->getAll();
return true;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::refreshLogin ( )

updates the login data of a "user" // TODO set date with now() should be enough public

Definition at line 744 of file class.ilObjUser.php.

References $ilDB.

{
global $ilDB;
$ilDB->manipulateF("UPDATE usr_data SET ".
"last_login = ".$ilDB->now().
" WHERE usr_id = %s",
array("integer"), array($this->id));
}
ilObjUser::removeObjectFromClipboard (   $a_item_id,
  $a_type 
)

remove object from user's personal clipboard

Parameters
int$a_item_idref_id for objects, that are in the main tree (learning modules, forums) obj_id for others
string$a_typeobject type

Definition at line 3475 of file class.ilObjUser.php.

References $ilDB, $q, and ilObject\getId().

{
global $ilDB;
$q = "DELETE FROM personal_clipboard WHERE ".
"item_id = ".$ilDB->quote($a_item_id, "integer").
" AND type = ".$ilDB->quote($a_type, "text")." ".
" AND user_id = ".$ilDB->quote($this->getId(), "integer");
$ilDB->manipulate($q);
}

+ Here is the call graph for this function:

ilObjUser::removeUserPicture ( )

Remove user picture.

Definition at line 3867 of file class.ilObjUser.php.

References $file, ilUtil\getWebspaceDir(), setPref(), and update().

{
$webspace_dir = ilUtil::getWebspaceDir();
$image_dir = $webspace_dir."/usr_images";
$file = $image_dir."/usr_".$this->getID()."."."jpg";
$thumb_file = $image_dir."/usr_".$this->getID()."_small.jpg";
$xthumb_file = $image_dir."/usr_".$this->getID()."_xsmall.jpg";
$xxthumb_file = $image_dir."/usr_".$this->getID()."_xxsmall.jpg";
$upload_file = $image_dir."/upload_".$this->getID();
// remove user pref file name
$this->setPref("profile_image", "");
$this->update();
if (@is_file($file))
{
unlink($file);
}
if (@is_file($thumb_file))
{
unlink($thumb_file);
}
if (@is_file($xthumb_file))
{
unlink($xthumb_file);
}
if (@is_file($xxthumb_file))
{
unlink($xxthumb_file);
}
if (@is_file($upload_file))
{
unlink($upload_file);
}
}

+ Here is the call graph for this function:

ilObjUser::replacePassword (   $new_md5)

replaces password with new md5 hash

Parameters
stringnew password as md5
Returns
boolean true on success; otherwise false public

Definition at line 760 of file class.ilObjUser.php.

References $ilDB, and IL_PASSWD_MD5.

{
global $ilDB;
$this->passwd_type = IL_PASSWD_MD5;
$this->passwd = $new_md5;
$ilDB->manipulateF("UPDATE usr_data SET ".
"passwd = %s ".
"WHERE usr_id = %s",
array("text", "integer"), array($this->passwd, $this->id));
return true;
}
ilObjUser::resetLastPasswordChange ( )

Definition at line 2374 of file class.ilObjUser.php.

References $ilDB, $query, and ilObject\getId().

{
global $ilDB;
$query = "UPDATE usr_data SET usr_data.last_password_change = 0 " .
"WHERE usr_data.usr_id = %s";
$affected = $ilDB->manipulateF( $query, array('integer'),
array($this->getId()) );
if($affected) return true;
else return false;
}

+ Here is the call graph for this function:

ilObjUser::resetPassword (   $a_new1,
  $a_new2 
)

reset password

Parameters
stringnew password1 as plaintext
stringnew password2 as plaintext
Returns
boolean true on success; otherwise false public

Definition at line 852 of file class.ilObjUser.php.

References $ilDB, and IL_PASSWD_MD5.

{
global $ilDB;
if (func_num_args() != 2)
{
return false;
}
if (!isset($a_new1) or !isset($a_new2))
{
return false;
}
if ($a_new1 != $a_new2)
{
return false;
}
//update password
$this->passwd = md5($a_new1);
$this->passwd_type = IL_PASSWD_MD5;
$ilDB->manipulateF("UPDATE usr_data SET ".
"passwd = %s ".
"WHERE usr_id = %s",
array("text", "integer"),
array($this->passwd, $this->id));
return true;
}
ilObjUser::saveAsNew (   $a_from_formular = true)

TODO: drop fields last_update & create_date.

redundant data in object_data! saves a new record "user" to database public

Parameters
booleanuser data from formular (addSlashes) or not (prepareDBString)

Definition at line 363 of file class.ilObjUser.php.

References $ilDB, $ilErr, $ilSetting, $passwd, addUserDefinedFieldEntry(), getAuthMode(), getBirthday(), getExternalAccount(), getProfileIncomplete(), getTimeLimitFrom(), getTimeLimitOwner(), getTimeLimitUnlimited(), getTimeLimitUntil(), IL_PASSWD_CRYPT, IL_PASSWD_MD5, IL_PASSWD_PLAIN, ilUtil\now(), and updateUserDefinedFields().

{
global $ilErr, $ilDB, $ilSetting, $ilUser;
switch ($this->passwd_type)
{
$pw_field = "passwd";
if(strlen($this->passwd))
{
$pw_value = md5($this->passwd);
}
else
{
$pw_value = $this->passwd;
}
break;
$pw_field = "passwd";
$pw_value = $this->passwd;
break;
$pw_field = "i2passwd";
$pw_value = $this->passwd;
break;
default :
$ilErr->raiseError("<b>Error: passwd_type missing in function saveAsNew. ".
$this->id."!</b><br />class: ".get_class($this)."<br />Script: ".__FILE__.
"<br />Line: ".__LINE__, $ilErr->FATAL);
}
$insert_array = array(
"usr_id" => array("integer", $this->id),
"login" => array("text", $this->login),
$pw_field => array("text", $pw_value),
"firstname" => array("text", $this->firstname),
"lastname" => array("text", $this->lastname),
"title" => array("text", $this->utitle),
"gender" => array("text", $this->gender),
"email" => array("text", $this->email),
"hobby" => array("text", (string) $this->hobby),
"institution" => array("text", $this->institution),
"department" => array("text", $this->department),
"street" => array("text", $this->street),
"city" => array("text", $this->city),
"zipcode" => array("text", $this->zipcode),
"country" => array("text", $this->country),
"phone_office" => array("text", $this->phone_office),
"phone_home" => array("text", $this->phone_home),
"phone_mobile" => array("text", $this->phone_mobile),
"fax" => array("text", $this->fax),
"birthday" => array('date', $this->getBirthday()),
"last_login" => array("timestamp", null),
"last_update" => array("timestamp", ilUtil::now()),
"create_date" => array("timestamp", ilUtil::now()),
"referral_comment" => array("text", $this->referral_comment),
"matriculation" => array("text", $this->matriculation),
"client_ip" => array("text", $this->client_ip),
"approve_date" => array("timestamp", $this->approve_date),
"agree_date" => array("timestamp", $this->agree_date),
"active" => array("integer", (int) $this->active),
"time_limit_unlimited" => array("integer", $this->getTimeLimitUnlimited()),
"time_limit_until" => array("integer", $this->getTimeLimitUntil()),
"time_limit_from" => array("integer", $this->getTimeLimitFrom()),
"time_limit_owner" => array("integer", $this->getTimeLimitOwner()),
"auth_mode" => array("text", $this->getAuthMode()),
"ext_account" => array("text", $this->getExternalAccount()),
"profile_incomplete" => array("integer", $this->getProfileIncomplete()),
"im_icq" => array("text", $this->im_icq),
"im_yahoo" => array("text", $this->im_yahoo),
"im_msn" => array("text", $this->im_msn),
"im_aim" => array("text", $this->im_aim),
"im_skype" => array("text", $this->im_skype),
"delicious" => array("text", $this->delicious),
"latitude" => array("text", $this->latitude),
"longitude" => array("text", $this->longitude),
"loc_zoom" => array("integer", (int) $this->loc_zoom),
"last_password_change" => array("integer", (int) $this->last_password_change_ts),
"im_jabber" => array("text", $this->im_jabber),
"im_voip" => array("text", $this->im_voip)
);
$ilDB->insert("usr_data", $insert_array);
// add new entry in usr_defined_data
// ... and update
// CREATE ENTRIES FOR MAIL BOX
include_once ("Services/Mail/classes/class.ilMailbox.php");
$mbox = new ilMailbox($this->id);
$mbox->createDefaultFolder();
include_once "Services/Mail/classes/class.ilMailOptions.php";
$mail_options = new ilMailOptions($this->id);
$mail_options->createMailOptionsEntry();
// create personal bookmark folder tree
include_once "./Services/PersonalDesktop/classes/class.ilBookmarkFolder.php";
$bmf = new ilBookmarkFolder(0, $this->id);
$bmf->createNewBookmarkTree();
}

+ Here is the call graph for this function:

static ilObjUser::searchUsers (   $a_search_str,
  $active = 1,
  $a_return_ids_only = false,
  $filter_settings = FALSE 
)
static

STATIC METHOD get the user_ids which correspond a search string.

Parameters
stringsearch string
boolean$activeSearch only for active users
boolean$a_return_ids_onlyReturn only an array of user id's instead of id, login, name, active status
mixed$filter_settingsFilter settings of the user administration view public

Definition at line 2648 of file class.ilObjUser.php.

References $_SESSION, $active, $ilDB, $ilias, $ilLog, $query, ilObject\$ref_id, $res, and $row.

Referenced by ilAdminUserSearchGUI\performSearchSimple(), ilObjSurveyAdministrationGUI\searchObject(), ilObjUserFolderGUI\searchUserObject(), and ilObjUserTest\testSearch().

{
global $ilias, $ilDB, $ilLog;
$query = "SELECT usr_data.usr_id, usr_data.login, usr_data.firstname, usr_data.lastname, usr_data.email, usr_data.active FROM usr_data ";
$without_anonymous_users = true;
// determine join filter
$join_filter = " WHERE ";
if ($filter_settings !== FALSE && strlen($filter_settings))
{
switch ($filter_settings)
{
case 3:
// show only users without courses
$join_filter = " LEFT JOIN crs_members ON usr_data.usr_id = crs_members.usr_id WHERE crs_members.usr_id IS NULL AND ";
break;
case 5:
// show only users with a certain course membership
$ref_id = $_SESSION["user_filter_data"];
if ($ref_id)
{
$join_filter = " LEFT JOIN crs_members ON usr_data.usr_id = crs_members.usr_id WHERE crs_members.obj_id = ".
"(SELECT obj_id FROM object_reference WHERE ref_id = ".$ilDB->quote($ref_id, "integer").") AND ";
}
break;
case 6:
global $rbacreview;
$ref_id = $_SESSION["user_filter_data"];
if ($ref_id)
{
$rolf = $rbacreview->getRoleFolderOfObject($ref_id);
$local_roles = $rbacreview->getRolesOfRoleFolder($rolf["ref_id"],false);
if (is_array($local_roles) && count($local_roles))
{
$join_filter = " LEFT JOIN rbac_ua ON usr_data.usr_id = rbac_ua.usr_id WHERE ".
$ilDB->in("rbac_ua.rol_id", $local_roles, false, $local_roles)." AND ";
}
}
break;
case 7:
global $rbacreview;
$rol_id = $_SESSION["user_filter_data"];
if ($rol_id)
{
$join_filter = " LEFT JOIN rbac_ua ON usr_data.usr_id = rbac_ua.usr_id WHERE rbac_ua.rol_id = ".
$ilDB->quote($rol_id, "integer")." AND ";
$without_anonymous_users = false;
}
break;
}
}
// This is a temporary hack to search users by their role
// See Mantis #338. This is a hack due to Mantis #337.
if (strtolower(substr($a_search_str, 0, 5)) == "role:")
{
$query = "SELECT DISTINCT usr_data.usr_id,usr_data.login,usr_data.firstname,usr_data.lastname,usr_data.email ".
"FROM object_data,rbac_ua,usr_data ".
"WHERE ".$ilDB->like("object_data.title", "text", "%".substr($a_search_str,5)."%").
" AND object_data.type = 'role' ".
"AND rbac_ua.rol_id = object_data.obj_id ".
"AND usr_data.usr_id = rbac_ua.usr_id ".
"AND rbac_ua.usr_id != ".$illDB->quote(ANONYMOUS_USER_ID, "integer");
}
else
{
$query.= $join_filter.
"(".$ilDB->like("usr_data.login", "text", "%".$a_search_str."%")." ".
"OR ".$ilDB->like("usr_data.firstname", "text", "%".$a_search_str."%")." ".
"OR ".$ilDB->like("usr_data.lastname", "text", "%".$a_search_str."%")." ".
"OR ".$ilDB->like("usr_data.email", "text", "%".$a_search_str."%").") ";
if ($filter_settings !== FALSE && strlen($filter_settings))
{
switch ($filter_settings)
{
case 0:
$query.= " AND usr_data.active = ".$ilDB->quote(0, "integer")." ";
break;
case 1:
$query.= " AND usr_data.active = ".$ilDB->quote(1, "integer")." ";
break;
case 2:
$query.= " AND usr_data.time_limit_unlimited = ".$ilDB->quote(0, "integer")." ";
break;
case 4:
$date = strftime("%Y-%m-%d %H:%I:%S", mktime(0, 0, 0, $_SESSION["user_filter_data"]["m"], $_SESSION["user_filter_data"]["d"], $_SESSION["user_filter_data"]["y"]));
$query.= " AND last_login < ".$ilDB->quote($date, "timestamp")." ";
break;
}
}
if ($without_anonymous_users)
{
$query.= "AND usr_data.usr_id != ".$ilDB->quote(ANONYMOUS_USER_ID, "integer");
}
if (is_numeric($active) && $active > -1 && $filter_settings === FALSE)
{
$query.= " AND active = ".$ilDB->quote($active, "integer")." ";
}
}
$ilLog->write($query);
$res = $ilDB->query($query);
while ($row = $ilDB->fetchObject($res))
{
$users[] = array(
"usr_id" => $row->usr_id,
"login" => $row->login,
"firstname" => $row->firstname,
"lastname" => $row->lastname,
"email" => $row->email,
"active" => $row->active);
$ids[] = $row->usr_id;
}
if ($a_return_ids_only)
return $ids ? $ids : array();
else
return $users ? $users : array();
}

+ Here is the caller graph for this function:

ilObjUser::setActive (   $a_active,
  $a_owner = 6 
)

set user active state and updates system fields appropriately public

Parameters
string$a_activethe active state of the user account
string$a_ownerthe id of the person who approved the account, defaults to 6 (root)

Definition at line 2155 of file class.ilObjUser.php.

References setApproveDate(), and ilObject\setOwner().

Referenced by syncActive().

{
if (empty($a_owner))
{
$a_owner = 0;
}
if ($a_active)
{
$this->active = 1;
$this->setApproveDate(date('Y-m-d H:i:s'));
$this->setOwner($a_owner);
}
else
{
$this->active = 0;
$this->setApproveDate(null);
$this->setOwner(0);
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::setAgreeDate (   $a_str)

set date the user account was accepted by the user nullindicates that the user has not accepted his account public

Returns
void

Definition at line 2143 of file class.ilObjUser.php.

{
$this->agree_date = $a_str;
}
ilObjUser::setApproveDate (   $a_str)

set date the user account was activated null indicates that the user has not yet been activated public

Returns
void

Definition at line 2112 of file class.ilObjUser.php.

Referenced by setActive().

{
$this->approve_date = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setAuthMode (   $a_str)

set auth mode public

Definition at line 3523 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->auth_mode = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setBirthday (   $a_birthday)

Definition at line 4845 of file class.ilObjUser.php.

References IL_CAL_DATE.

Referenced by assignData().

{
if (strlen($a_birthday))
{
$date = new ilDate($a_birthday, IL_CAL_DATE);
$this->birthday = $date->get(IL_CAL_DATE);
}
else
{
$this->birthday = null;
}
}

+ Here is the caller graph for this function:

ilObjUser::setCity (   $a_str)

set city public

Parameters
stringcity

Definition at line 1715 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->city = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setClientIP (   $a_str)

set client ip number public

Parameters
stringclient ip

Definition at line 1848 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->client_ip = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setComment (   $a_str)

set referral comment public

Parameters
stringhobby

Definition at line 2092 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->referral_comment = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setCountry (   $a_str)

set country public

Parameters
stringcountry

Definition at line 1753 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->country = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setDelicious (   $a_delicious)

Definition at line 4173 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->delicious = $a_delicious;
}

+ Here is the caller graph for this function:

ilObjUser::setDepartment (   $a_str)

set department public

Parameters
stringdepartment

Definition at line 1677 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->department = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setDesktopItemParameters (   $a_item_id,
  $a_type,
  $a_par 
)

set parameters of a desktop item entry

Parameters
int$a_item_idref_id for objects, that are in the main tree (learning modules, forums) obj_id for others
string$a_typeobject type
string$a_parparameters

Definition at line 3049 of file class.ilObjUser.php.

References $ilDB, and ilObject\getId().

{
global $ilDB;
$ilDB->manipulateF("UPDATE desktop_item SET parameters = %s ".
" WHERE item_id = %s AND type = %s AND user_id = %s",
array("text", "integer", "text", "integer"),
array($a_par, $a_item_id, $a_type, $this->getId()));
}

+ Here is the call graph for this function:

ilObjUser::setDiskQuota (   $a_disk_quota)

Sets the minimal disk quota imposed by this user account.

The minimal disk quota is specified in bytes.

@access     public
@param      integer

Definition at line 1965 of file class.ilObjUser.php.

References setPref().

{
$this->setPref("disk_quota",$a_disk_quota);
}

+ Here is the call graph for this function:

ilObjUser::setEmail (   $a_str)

set email public

Parameters
stringemail address

Definition at line 1903 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->email = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setExternalAccount (   $a_str)

set external account

note: 3.7.0 uses this field only for cas and soap authentication.

public

Definition at line 3550 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->ext_account = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setFax (   $a_str)

set fax public

Parameters
stringfax

Definition at line 1829 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->fax = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setFirstname (   $a_str)

set firstname public

Parameters
stringfirstname

Definition at line 1620 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->firstname = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setFullname (   $a_title = "",
  $a_firstname = "",
  $a_lastname = "" 
)

builds a string with title + firstname + lastname method is used to build fullname in member variable $this->fullname.

But you may use the function in static manner. static

Parameters
stringtitle (opt.)
stringfirstname (opt.)
stringlastname (opt.)

Definition at line 1352 of file class.ilObjUser.php.

References $fullname, $lastname, and elseif().

Referenced by assignData().

{
$this->fullname = "";
if ($a_title)
{
$fullname = $a_title." ";
}
elseif ($this->utitle)
{
$this->fullname = $this->utitle." ";
}
if ($a_firstname)
{
$fullname .= $a_firstname." ";
}
elseif ($this->firstname)
{
$this->fullname .= $this->firstname." ";
}
if ($a_lastname)
{
return $fullname.$a_lastname;
}
$this->fullname .= $this->lastname;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::setGender (   $a_str)

set gender public

Parameters
stringgender

Definition at line 1578 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->gender = substr($a_str,-1);
}

+ Here is the caller graph for this function:

ilObjUser::setHobby (   $a_str)

set hobby public

Parameters
stringhobby

Definition at line 1922 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->hobby = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setInstantMessengerId (   $a_im_type,
  $a_im_id 
)

Definition at line 4161 of file class.ilObjUser.php.

Referenced by assignData().

{
$var = "im_".$a_im_type;
$this->$var = $a_im_id;
}

+ Here is the caller graph for this function:

ilObjUser::setInstitution (   $a_str)

set institution public

Parameters
stringinstitution

Definition at line 1658 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->institution = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setLanguage (   $a_str)

set user language public

Parameters
stringlang_key (i.e. de,en,fr,...)

Definition at line 1941 of file class.ilObjUser.php.

References $_SESSION, and setPref().

Referenced by getProfileAsString().

{
$this->setPref("language",$a_str);
unset($_SESSION['lang']);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::setLastLogin (   $a_str)

set user's last login public

Parameters
stringlogin date

Definition at line 2058 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->last_login = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setLastname (   $a_str)

set lastame public

Parameters
stringlastname

Definition at line 1639 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->lastname = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setLastPasswordChangeToNow ( )

Definition at line 2359 of file class.ilObjUser.php.

References $ilDB, $query, getLastPasswordChangeTS(), and setLastPasswordChangeTS().

{
global $ilDB;
$this->setLastPasswordChangeTS( time() );
$query = "UPDATE usr_data SET usr_data.last_password_change = %s " .
"WHERE usr_data.usr_id = %s";
$affected = $ilDB->manipulateF($query,
array('integer','integer'),
array($this->getLastPasswordChangeTS(),$this->id));
if($affected) return true;
else return false;
}

+ Here is the call graph for this function:

ilObjUser::setLastPasswordChangeTS (   $a_last_password_change_ts)

Definition at line 1984 of file class.ilObjUser.php.

Referenced by read(), and setLastPasswordChangeToNow().

{
$this->last_password_change_ts = $a_last_password_change_ts;
}

+ Here is the caller graph for this function:

ilObjUser::setLastUpdate (   $a_str)

set last update of user data set public

Parameters
stringdate

Definition at line 2078 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->last_update = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setLatitude (   $a_latitude)

Set Latitude.

Parameters
string$a_latitudeLatitude

Definition at line 2391 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->latitude = $a_latitude;
}

+ Here is the caller graph for this function:

ilObjUser::setLocationZoom (   $a_locationzoom)

Set Location Zoom.

Parameters
int$a_locationzoomLocation Zoom

Definition at line 2431 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->loc_zoom = $a_locationzoom;
}

+ Here is the caller graph for this function:

ilObjUser::setLogin (   $a_str)

set login / username public

Parameters
stringusername

Definition at line 1526 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->login = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setLoginAttempts (   $a_login_attempts)

Definition at line 2277 of file class.ilObjUser.php.

Referenced by read().

{
$this->login_attempts = $a_login_attempts;
}

+ Here is the caller graph for this function:

ilObjUser::setLongitude (   $a_longitude)

Set Longitude.

Parameters
string$a_longitudeLongitude

Definition at line 2411 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->longitude = $a_longitude;
}

+ Here is the caller graph for this function:

ilObjUser::setMatriculation (   $a_str)

set matriculation number public

Parameters
stringmatriculation number

Definition at line 1867 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->matriculation = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setPasswd (   $a_str,
  $a_type = IL_PASSWD_PLAIN 
)

set password public

Parameters
stringpasswd

Definition at line 1545 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->passwd = $a_str;
$this->passwd_type = $a_type;
}

+ Here is the caller graph for this function:

ilObjUser::setPhoneHome (   $a_str)

set home phone public

Parameters
stringhome phone

Definition at line 1791 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->phone_home = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setPhoneMobile (   $a_str)

set mobile phone public

Parameters
stringmobile phone

Definition at line 1810 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->phone_mobile = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setPhoneOffice (   $a_str)

set office phone public

Parameters
stringoffice phone

Definition at line 1772 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->phone_office = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setPref (   $a_keyword,
  $a_value 
)

set a user preference

Parameters
stringname of parameter
stringvalue public

Definition at line 1190 of file class.ilObjUser.php.

Referenced by removeUserPicture(), setDiskQuota(), setLanguage(), and writePref().

{
if ($a_keyword != "")
{
$this->prefs[$a_keyword] = $a_value;
}
}

+ Here is the caller graph for this function:

ilObjUser::setProfileIncomplete (   $a_prof_inc)

Definition at line 2300 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->profile_incomplete = (boolean) $a_prof_inc;
}

+ Here is the caller graph for this function:

ilObjUser::setSkin (   $a_str)

set user skin (template set) public

Parameters
stringdirectory name of template set

Definition at line 2230 of file class.ilObjUser.php.

{
// TODO: exception handling (dir exists)
$this->skin = $a_str;
}
ilObjUser::setStreet (   $a_str)

set street public

Parameters
stringstreet

Definition at line 1696 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->street = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setTimeLimitFrom (   $a_from)

Definition at line 2244 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->time_limit_from = $a_from;
}

+ Here is the caller graph for this function:

ilObjUser::setTimeLimitMessage (   $a_time_limit_message)

Definition at line 2268 of file class.ilObjUser.php.

Referenced by assignData().

{
return $this->time_limit_message = $a_time_limit_message;
}

+ Here is the caller graph for this function:

ilObjUser::setTimeLimitOwner (   $a_owner)

Definition at line 2236 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->time_limit_owner = $a_owner;
}

+ Here is the caller graph for this function:

ilObjUser::setTimeLimitUnlimited (   $a_unlimited)

Definition at line 2260 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->time_limit_unlimited = $a_unlimited;
}

+ Here is the caller graph for this function:

ilObjUser::setTimeLimitUntil (   $a_until)

Definition at line 2252 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->time_limit_until = $a_until;
}

+ Here is the caller graph for this function:

ilObjUser::setUserDefinedData (   $a_data)

Definition at line 3904 of file class.ilObjUser.php.

References $data.

{
if(!is_array($a_data))
{
return false;
}
foreach($a_data as $field => $data)
{
#$new_data[$field] = ilUtil::stripSlashes($data);
// Assign it directly to avoid update problems of unchangable fields
$this->user_defined_data['f_'.$field] = $data;
}
#$this->user_defined_data = $new_data;
return true;
}
ilObjUser::setUTitle (   $a_str)

set user title (note: don't mix up this method with setTitle() that is derived from ilObject and sets the user object's title) public

Parameters
stringtitle

Definition at line 1599 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->utitle = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::setZipcode (   $a_str)

set zipcode public

Parameters
stringzipcode

Definition at line 1734 of file class.ilObjUser.php.

Referenced by assignData().

{
$this->zipcode = $a_str;
}

+ Here is the caller graph for this function:

ilObjUser::syncActive ( )

synchronizes current and stored user active values for the owner value to be set correctly, this function should only be called when an admin is approving a user account public

Definition at line 2190 of file class.ilObjUser.php.

References $ilAuth, getLoginFromAuth(), getStoredActive(), getUserIdByLogin(), and setActive().

Referenced by update().

{
global $ilAuth;
$storedActive = 0;
if ($this->getStoredActive($this->id))
{
$storedActive = 1;
}
$currentActive = 0;
if ($this->active)
{
$currentActive = 1;
}
if ((!empty($storedActive) && empty($currentActive)) ||
(empty($storedActive) && !empty($currentActive)))
{
$this->setActive($currentActive, $this->getUserIdByLogin(ilObjUser::getLoginFromAuth()));
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::update ( )

updates a record "user" and write it into database public

Reimplemented from ilObject.

Definition at line 474 of file class.ilObjUser.php.

References $ilDB, $ilErr, getAuthMode(), getBirthday(), getExternalAccount(), getProfileIncomplete(), getTimeLimitFrom(), getTimeLimitMessage(), getTimeLimitOwner(), getTimeLimitUnlimited(), getTimeLimitUntil(), IL_PASSWD_CRYPT, IL_PASSWD_MD5, IL_PASSWD_PLAIN, ilUtil\now(), read(), syncActive(), ilObject\updateOwner(), updateUserDefinedFields(), and writePrefs().

Referenced by removeUserPicture().

{
global $ilErr, $ilDB, $ilAppEventHandler;
$this->syncActive();
$update_array = array(
"gender" => array("text", $this->gender),
"title" => array("text", $this->utitle),
"firstname" => array("text", $this->firstname),
"lastname" => array("text", $this->lastname),
"email" => array("text", $this->email),
"birthday" => array('date', $this->getBirthday()),
"hobby" => array("text", $this->hobby),
"institution" => array("text", $this->institution),
"department" => array("text", $this->department),
"street" => array("text", $this->street),
"city" => array("text", $this->city),
"zipcode" => array("text", $this->zipcode),
"country" => array("text", $this->country),
"phone_office" => array("text", $this->phone_office),
"phone_home" => array("text", $this->phone_home),
"phone_mobile" => array("text", $this->phone_mobile),
"fax" => array("text", $this->fax),
"referral_comment" => array("text", $this->referral_comment),
"matriculation" => array("text", $this->matriculation),
"client_ip" => array("text", $this->client_ip),
"approve_date" => array("timestamp", $this->approve_date),
"active" => array("integer", $this->active),
"time_limit_unlimited" => array("integer", $this->getTimeLimitUnlimited()),
"time_limit_until" => array("integer", $this->getTimeLimitUntil()),
"time_limit_from" => array("integer", $this->getTimeLimitFrom()),
"time_limit_owner" => array("integer", $this->getTimeLimitOwner()),
"time_limit_message" => array("integer", $this->getTimeLimitMessage()),
"profile_incomplete" => array("integer", $this->getProfileIncomplete()),
"auth_mode" => array("text", $this->getAuthMode()),
"ext_account" => array("text", $this->getExternalAccount()),
"im_icq" => array("text", $this->im_icq),
"im_yahoo" => array("text", $this->im_yahoo),
"im_msn" => array("text", $this->im_msn),
"im_aim" => array("text", $this->im_aim),
"im_skype" => array("text", $this->im_skype),
"delicious" => array("text", $this->delicious),
"latitude" => array("text", $this->latitude),
"longitude" => array("text", $this->longitude),
"loc_zoom" => array("integer", (int) $this->loc_zoom),
"last_password_change" => array("integer", $this->last_password_change_ts),
"im_jabber" => array("text", $this->im_jabber),
"im_voip" => array("text", $this->im_voip),
"last_update" => array("timestamp", ilUtil::now())
);
if (isset($this->agree_date) && (strtotime($this->agree_date) !== false || $this->agree_date == null))
{
$update_array["agree_date"] = array("timestamp", $this->agree_date);
}
switch ($this->passwd_type)
{
if(strlen($this->passwd))
{
$update_array["i2passwd"] = array("text", (string) "");
$update_array["passwd"] = array("text", (string) md5($this->passwd));
}
else
{
$update_array["i2passwd"] = array("text", (string) "");
$update_array["passwd"] = array("text", (string) $this->passwd);
}
break;
$update_array["i2passwd"] = array("text", (string) "");
$update_array["passwd"] = array("text", (string) $this->passwd);
break;
$update_array["i2passwd"] = array("text", (string) $this->passwd);
$update_array["passwd"] = array("text", (string) "");
break;
default :
$ilErr->raiseError("<b>Error: passwd_type missing in function update()".$this->id."!</b><br />class: ".
get_class($this)."<br />Script: ".__FILE__."<br />Line: ".__LINE__, $ilErr->FATAL);
}
$ilDB->update("usr_data", $update_array, array("usr_id" => array("integer", $this->id)));
$this->writePrefs();
// update user defined fields
$this->read();
$ilAppEventHandler->raise("Services/User", "afterUpdate",
array("user_obj" => $this));
return true;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::updateLogin (   $a_login)

update login name

Parameters
stringnew login
Returns
boolean true on success; otherwise false public
Exceptions
ilUserException

Definition at line 994 of file class.ilObjUser.php.

References $ilDB, $ilSetting, _doesLoginnameExistInHistory(), _getLastHistoryDataByUserId(), _writeHistory(), ilDatePresentation\formatDate(), ilObject\getId(), getLogin(), and IL_CAL_UNIX.

{
global $ilDB, $ilSetting;
if(func_num_args() != 1)
{
return false;
}
if(!isset($a_login))
{
return false;
}
// Update not necessary
if($a_login == self::_lookupLogin($this->getId()))
{
return false;
}
try
{
$last_history_entry = ilObjUser::_getLastHistoryDataByUserId($this->getId());
}
catch(ilUserException $e) { $last_history_entry = null; }
// throw exception if the desired loginame is already in history and it is not allowed to reuse it
if((int)$ilSetting->get('allow_change_loginname') &&
(int)$ilSetting->get('prevent_reuse_of_loginnames') &&
{
throw new ilUserException($this->lng->txt('loginname_already_exists'));
}
else if((int)$ilSetting->get('allow_change_loginname') &&
(int)$ilSetting->get('loginname_change_blocking_time') &&
is_array($last_history_entry) &&
$last_history_entry[1] + (int)$ilSetting->get('loginname_change_blocking_time') > time())
{
include_once 'Services/Calendar/classes/class.ilDate.php';
throw new ilUserException(
sprintf(
$this->lng->txt('changing_loginname_not_possible_info'),
new ilDateTime($last_history_entry[1], IL_CAL_UNIX)),
new ilDateTime(($last_history_entry[1] + (int)$ilSetting->get('loginname_change_blocking_time')), IL_CAL_UNIX))
)
);
}
else
{
// log old loginname in history
if((int)$ilSetting->get('allow_change_loginname') &&
(int)$ilSetting->get('create_history_loginname'))
{
ilObjUser::_writeHistory($this->getId(), self::_lookupLogin($this->getId()));
}
//update login
$this->login = $a_login;
$ilDB->manipulateF('
UPDATE usr_data
SET login = %s
WHERE usr_id = %s',
array('text', 'integer'), array($this->getLogin(), $this->getId()));
}
return true;
}

+ Here is the call graph for this function:

ilObjUser::updatePassword (   $a_old,
  $a_new1,
  $a_new2 
)

updates password

Parameters
stringold password as plaintext
stringnew password1 as plaintext
stringnew password2 as plaintext
Returns
boolean true on success; otherwise false public

Definition at line 783 of file class.ilObjUser.php.

References $ilDB, _makeIlias2Password(), IL_PASSWD_CRYPT, IL_PASSWD_MD5, and IL_PASSWD_PLAIN.

{
global $ilDB;
if (func_num_args() != 3)
{
return false;
}
if (!isset($a_old) or !isset($a_new1) or !isset($a_new2))
{
return false;
}
if ($a_new1 != $a_new2)
{
return false;
}
// is catched by isset() ???
if ($a_new1 == "" || $a_old == "")
{
return false;
}
//check old password
switch ($this->passwd_type)
{
if ($a_old != $this->passwd)
{
return false;
}
break;
if (md5($a_old) != $this->passwd)
{
return false;
}
break;
if (_makeIlias2Password($a_old) != $this->passwd)
{
return false;
}
break;
}
//update password
$this->passwd = md5($a_new1);
$this->passwd_type = IL_PASSWD_MD5;
$ilDB->manipulateF("UPDATE usr_data SET ".
"passwd = %s ".
"WHERE usr_id = %s",
array("text", "integer"), array($this->passwd, $this->id));
return true;
}

+ Here is the call graph for this function:

ilObjUser::updateUserDefinedFields ( )

Definition at line 3926 of file class.ilObjUser.php.

References $ilDB, and ilObject\getId().

Referenced by saveAsNew(), and update().

{
global $ilDB;
$fields = '';
$field_def = array();
include_once("./Services/User/classes/class.ilUserDefinedData.php");
$udata = new ilUserDefinedData($this->getId());
foreach($this->user_defined_data as $field => $value)
{
if($field != 'usr_id')
{
// $field_def[$field] = array('text',$value);
$udata->set($field, $value);
}
}
$udata->update();
/* if(!$field_def)
{
return true;
}
$query = "SELECT usr_id FROM udf_data WHERE usr_id = ".$ilDB->quote($this->getId(),'integer');
$res = $ilDB->query($query);
if($res->numRows())
{
// Update
$ilDB->update('udf_data',$field_def,array('usr_id' => array('integer',$this->getId())));
}
else
{
$field_def['usr_id'] = array('integer',$this->getId());
$ilDB->insert('udf_data',$field_def);
}
*/
return true;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjUser::writeAccepted ( )

write accept date of user agreement to db

Definition at line 581 of file class.ilObjUser.php.

References $ilDB, and ilObject\getId().

{
global $ilDB;
$ilDB->manipulateF("UPDATE usr_data SET agree_date = ".$ilDB->now().
" WHERE usr_id = %s", array("integer"), array($this->getId()));
}

+ Here is the call graph for this function:

ilObjUser::writePref (   $a_keyword,
  $a_value 
)

write userpref to user table private

Parameters
stringkeyword
stringvalue

Definition at line 1071 of file class.ilObjUser.php.

References _writePref(), and setPref().

{
ilObjUser::_writePref($this->id, $a_keyword, $a_value);
$this->setPref($a_keyword, $a_value);
}

+ Here is the call graph for this function:

ilObjUser::writePrefs ( )

write all userprefs private

Definition at line 1133 of file class.ilObjUser.php.

References $ilDB, _deleteAllPref(), and _writePref().

Referenced by update().

{
global $ilDB;
foreach ($this->prefs as $keyword => $value)
{
ilObjUser::_writePref($this->id, $keyword, $value);
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Field Documentation

ilObjUser::$agree_date = null

Definition at line 75 of file class.ilObjUser.php.

Referenced by getAgreeDate().

ilObjUser::$approve_date = null

Definition at line 74 of file class.ilObjUser.php.

Referenced by getApproveDate().

ilObjUser::$auth_mode

Definition at line 79 of file class.ilObjUser.php.

Referenced by getAuthMode().

ilObjUser::$birthday
protected

Definition at line 56 of file class.ilObjUser.php.

Referenced by getBirthday().

ilObjUser::$city

Definition at line 63 of file class.ilObjUser.php.

Referenced by getCity().

ilObjUser::$client_ip

Definition at line 78 of file class.ilObjUser.php.

Referenced by getClientIP().

ilObjUser::$country

Definition at line 65 of file class.ilObjUser.php.

Referenced by getCountry().

ilObjUser::$default_role

Definition at line 119 of file class.ilObjUser.php.

ilObjUser::$delicious

Definition at line 89 of file class.ilObjUser.php.

Referenced by getDelicious().

ilObjUser::$department

Definition at line 61 of file class.ilObjUser.php.

Referenced by getDepartment().

ilObjUser::$email

Definition at line 70 of file class.ilObjUser.php.

Referenced by getEmail().

ilObjUser::$fax

Definition at line 69 of file class.ilObjUser.php.

Referenced by getFax().

ilObjUser::$firstname

Definition at line 54 of file class.ilObjUser.php.

Referenced by getFirstname().

ilObjUser::$fullname

Definition at line 57 of file class.ilObjUser.php.

Referenced by _lookupFullname(), and setFullname().

ilObjUser::$gender

Definition at line 52 of file class.ilObjUser.php.

Referenced by getGender(), and getProfileAsString().

ilObjUser::$hobby

Definition at line 71 of file class.ilObjUser.php.

Referenced by getHobby().

ilObjUser::$im_aim

Definition at line 84 of file class.ilObjUser.php.

ilObjUser::$im_icq

Definition at line 81 of file class.ilObjUser.php.

ilObjUser::$im_jabber

Definition at line 86 of file class.ilObjUser.php.

ilObjUser::$im_msn

Definition at line 83 of file class.ilObjUser.php.

ilObjUser::$im_skype

Definition at line 85 of file class.ilObjUser.php.

ilObjUser::$im_voip

Definition at line 87 of file class.ilObjUser.php.

ilObjUser::$im_yahoo

Definition at line 82 of file class.ilObjUser.php.

ilObjUser::$institution

Definition at line 60 of file class.ilObjUser.php.

Referenced by getInstitution().

ilObjUser::$last_password_change_ts

Definition at line 94 of file class.ilObjUser.php.

Referenced by getLastPasswordChangeTS().

ilObjUser::$lastname

Definition at line 55 of file class.ilObjUser.php.

Referenced by getLastname(), and setFullname().

ilObjUser::$latitude

Definition at line 90 of file class.ilObjUser.php.

Referenced by getLatitude().

ilObjUser::$loc_zoom

Definition at line 92 of file class.ilObjUser.php.

Referenced by getLocationZoom().

ilObjUser::$login

all user related data in single vars public

Definition at line 32 of file class.ilObjUser.php.

Referenced by checkUserId(), getLogin(), getLoginByUserId(), getLoginFromAuth(), and isCurrentUserActive().

ilObjUser::$login_attempts

Definition at line 95 of file class.ilObjUser.php.

Referenced by _getLoginAttempts(), and getLoginAttempts().

ilObjUser::$longitude

Definition at line 91 of file class.ilObjUser.php.

Referenced by getLongitude().

ilObjUser::$matriculation

Definition at line 72 of file class.ilObjUser.php.

Referenced by getMatriculation().

ilObjUser::$passwd

Definition at line 34 of file class.ilObjUser.php.

Referenced by getPasswd(), and saveAsNew().

ilObjUser::$passwd_type

Definition at line 35 of file class.ilObjUser.php.

Referenced by getPasswdType().

ilObjUser::$phone_home

Definition at line 67 of file class.ilObjUser.php.

Referenced by getPhoneHome().

ilObjUser::$phone_mobile

Definition at line 68 of file class.ilObjUser.php.

Referenced by getPhoneMobile().

ilObjUser::$phone_office

Definition at line 66 of file class.ilObjUser.php.

Referenced by getPhoneOffice().

ilObjUser::$prefs

Definition at line 104 of file class.ilObjUser.php.

Referenced by _getPreferences(), and readPrefs().

ilObjUser::$referral_comment

Definition at line 73 of file class.ilObjUser.php.

Referenced by getComment().

ilObjUser::$skin

Definition at line 111 of file class.ilObjUser.php.

Referenced by ilObjUser().

ilObjUser::$street

Definition at line 62 of file class.ilObjUser.php.

Referenced by getStreet().

ilObjUser::$user_defined_data = array()

Definition at line 97 of file class.ilObjUser.php.

ilObjUser::$utitle

Definition at line 53 of file class.ilObjUser.php.

Referenced by getUTitle().

ilObjUser::$zipcode

Definition at line 64 of file class.ilObjUser.php.

Referenced by getZipcode().


The documentation for this class was generated from the following file: