ILIAS  release_5-1 Revision 5.0.0-5477-g43f3e3fab5f
ilUserAutoComplete Class Reference

Auto completion class for user lists. More...

+ Collaboration diagram for ilUserAutoComplete:

Public Member Functions

 __construct ()
 Default constructor. More...
 
 setLimit ($a_limit)
 
 getLimit ()
 
 setSearchType ($search_type)
 
 getSearchType ()
 
 setPrivacyMode ($privacy_mode)
 
 getPrivacyMode ()
 
 setUser ($user)
 
 getUser ()
 
 enableFieldSearchableCheck ($a_status)
 Enable the check whether the field is searchable in Administration -> Settings -> Standard Fields. More...
 
 isFieldSearchableCheckEnabled ()
 Searchable check enabled. More...
 
 enableUserAccessCheck ($a_status)
 Enable user access check. More...
 
 isUserAccessCheckEnabled ()
 Check if user access check is enabled. More...
 
 setSearchFields ($a_fields)
 Set searchable fields. More...
 
 getSearchFields ()
 get possible search fields More...
 
 setResultField ($a_field)
 Set result field. More...
 
 setUserLimitations ($a_limitations)
 allow user limitations like inactive and access limitations More...
 
 getUserLimitations ()
 allow user limitations like inactive and access limitations More...
 
 isMoreLinkAvailable ()
 
 setMoreLinkAvailable ($more_link_available)
 IMPORTANT: remember to read request parameter 'fetchall' to use this function. More...
 

Data Fields

const MAX_ENTRIES = 1000
 
const SEARCH_TYPE_LIKE = 1
 
const SEARCH_TYPE_EQUALS = 2
 
const PRIVACY_MODE_RESPECT_USER_SETTING = 1
 
const PRIVACY_MODE_IGNORE_USER_SETTING = 2
 

Protected Member Functions

 getFields ()
 Get searchable fields. More...
 
 getSelectPart ()
 
 getOrderByPart ()
 

Private Attributes

 $searchable_check = false
 
 $user_access_check = true
 
 $possible_fields = array()
 
 $result_field
 
 $search_type
 
 $privacy_mode
 
 $user
 
 $limit = 0
 
 $user_limitations = true
 
 $more_link_available = false
 

Detailed Description

Auto completion class for user lists.

Definition at line 7 of file class.ilUserAutoComplete.php.

Constructor & Destructor Documentation

◆ __construct()

ilUserAutoComplete::__construct ( )

Default constructor.

Definition at line 80 of file class.ilUserAutoComplete.php.

References setPrivacyMode(), and setSearchType().

81  {
82  $this->result_field = 'login';
83 
84  $this->setSearchType(self::SEARCH_TYPE_LIKE);
85  $this->setPrivacyMode(self::PRIVACY_MODE_IGNORE_USER_SETTING);
86  }
+ Here is the call graph for this function:

Member Function Documentation

◆ enableFieldSearchableCheck()

ilUserAutoComplete::enableFieldSearchableCheck (   $a_status)

Enable the check whether the field is searchable in Administration -> Settings -> Standard Fields.

Parameters
bool$a_status

Definition at line 150 of file class.ilUserAutoComplete.php.

151  {
152  $this->searchable_check = $a_status;
153  }

◆ enableUserAccessCheck()

ilUserAutoComplete::enableUserAccessCheck (   $a_status)

Enable user access check.

See also
Administration -> User Accounts -> Settings -> General Settings
Parameters
bool$a_status

Definition at line 169 of file class.ilUserAutoComplete.php.

170  {
171  $this->user_access_check = $a_status;
172  }

◆ getFields()

ilUserAutoComplete::getFields ( )
protected

Get searchable fields.

Returns
array

Definition at line 205 of file class.ilUserAutoComplete.php.

References ilUserSearchOptions\_isEnabled(), getSearchFields(), and isFieldSearchableCheckEnabled().

Referenced by getSelectPart().

206  {
207  if(!$this->isFieldSearchableCheckEnabled())
208  {
209  return $this->getSearchFields();
210  }
211  $available_fields = array();
212  foreach($this->getSearchFields() as $field)
213  {
214  include_once 'Services/Search/classes/class.ilUserSearchOptions.php';
216  {
217  $available_fields[] = $field;
218  }
219  }
220  return $available_fields;
221  }
isFieldSearchableCheckEnabled()
Searchable check enabled.
getSearchFields()
get possible search fields
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getLimit()

ilUserAutoComplete::getLimit ( )

Definition at line 93 of file class.ilUserAutoComplete.php.

References $limit.

Referenced by setResultField().

94  {
95  return $this->limit;
96  }
+ Here is the caller graph for this function:

◆ getOrderByPart()

ilUserAutoComplete::getOrderByPart ( )
protected
Returns
string

Definition at line 469 of file class.ilUserAutoComplete.php.

References $ilDB, and getSearchType().

Referenced by setResultField().

470  {
471  return 'login ASC';
472  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getPrivacyMode()

ilUserAutoComplete::getPrivacyMode ( )
Returns
int

Definition at line 125 of file class.ilUserAutoComplete.php.

References $privacy_mode.

Referenced by getSelectPart(), and setResultField().

126  {
127  return $this->privacy_mode;
128  }
+ Here is the caller graph for this function:

◆ getSearchFields()

ilUserAutoComplete::getSearchFields ( )

get possible search fields

Returns
array

Definition at line 196 of file class.ilUserAutoComplete.php.

References $possible_fields.

Referenced by getFields().

197  {
198  return $this->possible_fields;
199  }
+ Here is the caller graph for this function:

◆ getSearchType()

ilUserAutoComplete::getSearchType ( )
Returns
mixed

Definition at line 109 of file class.ilUserAutoComplete.php.

References $search_type.

Referenced by getOrderByPart().

110  {
111  return $this->search_type;
112  }
+ Here is the caller graph for this function:

◆ getSelectPart()

ilUserAutoComplete::getSelectPart ( )
protected
Returns
string

Definition at line 307 of file class.ilUserAutoComplete.php.

References $ilDB, $ilSetting, getFields(), ilUserAccountSettings\getInstance(), ilUserFilter\getInstance(), ilSearchSettings\getInstance(), getPrivacyMode(), getUser(), and getUserLimitations().

Referenced by setResultField().

308  {
309  $fields = array(
310  'ud.usr_id',
311  'ud.login',
312  'ud.firstname',
313  'ud.lastname',
314  'ud.email'
315  );
316 
317  if(self::PRIVACY_MODE_RESPECT_USER_SETTING == $this->getPrivacyMode())
318  {
319  $fields[] = 'profpref.value profile_value';
320  $fields[] = 'pubemail.value email_value';
321  }
322 
323  return implode(', ', $fields);
324  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getUser()

ilUserAutoComplete::getUser ( )
Returns
ilObjUser

Definition at line 141 of file class.ilUserAutoComplete.php.

References $user.

Referenced by getSelectPart().

142  {
143  return $this->user;
144  }
+ Here is the caller graph for this function:

◆ getUserLimitations()

ilUserAutoComplete::getUserLimitations ( )

allow user limitations like inactive and access limitations

Returns
bool

Definition at line 517 of file class.ilUserAutoComplete.php.

References $user_limitations.

Referenced by getSelectPart().

518  {
520  }
+ Here is the caller graph for this function:

◆ isFieldSearchableCheckEnabled()

ilUserAutoComplete::isFieldSearchableCheckEnabled ( )

Searchable check enabled.

Returns
bool

Definition at line 159 of file class.ilUserAutoComplete.php.

References $searchable_check.

Referenced by getFields(), and setResultField().

160  {
162  }
+ Here is the caller graph for this function:

◆ isMoreLinkAvailable()

ilUserAutoComplete::isMoreLinkAvailable ( )
Returns
boolean

Definition at line 525 of file class.ilUserAutoComplete.php.

References $more_link_available.

Referenced by setResultField().

526  {
528  }
+ Here is the caller graph for this function:

◆ isUserAccessCheckEnabled()

ilUserAutoComplete::isUserAccessCheckEnabled ( )

Check if user access check is enabled.

Returns
bool

Definition at line 178 of file class.ilUserAutoComplete.php.

References $user_access_check.

179  {
181  }

◆ setLimit()

ilUserAutoComplete::setLimit (   $a_limit)

Definition at line 88 of file class.ilUserAutoComplete.php.

89  {
90  $this->limit = $a_limit;
91  }

◆ setMoreLinkAvailable()

ilUserAutoComplete::setMoreLinkAvailable (   $more_link_available)

IMPORTANT: remember to read request parameter 'fetchall' to use this function.

Parameters
boolean$more_link_available

Definition at line 535 of file class.ilUserAutoComplete.php.

References $more_link_available.

536  {
537  $this->more_link_available = $more_link_available;
538  }

◆ setPrivacyMode()

ilUserAutoComplete::setPrivacyMode (   $privacy_mode)
Parameters
int$privacy_mode

Definition at line 117 of file class.ilUserAutoComplete.php.

References $privacy_mode.

Referenced by __construct().

118  {
119  $this->privacy_mode = $privacy_mode;
120  }
+ Here is the caller graph for this function:

◆ setResultField()

ilUserAutoComplete::setResultField (   $a_field)

Set result field.

Parameters
string$a_field

Definition at line 227 of file class.ilUserAutoComplete.php.

References $GLOBALS, $ilDB, $ilLog, $query, $res, $result, ilUserSearchOptions\_isEnabled(), ilJsonUtil\encode(), ilSearchSettings\getInstance(), getLimit(), getOrderByPart(), getPrivacyMode(), getSelectPart(), isFieldSearchableCheckEnabled(), and isMoreLinkAvailable().

228  {
229  $this->result_field = $a_field;
230  }
+ Here is the call graph for this function:

◆ setSearchFields()

ilUserAutoComplete::setSearchFields (   $a_fields)

Set searchable fields.

Parameters
array$a_fields

Definition at line 187 of file class.ilUserAutoComplete.php.

188  {
189  $this->possible_fields = $a_fields;
190  }

◆ setSearchType()

ilUserAutoComplete::setSearchType (   $search_type)
Parameters
int$search_type

Definition at line 101 of file class.ilUserAutoComplete.php.

References $search_type.

Referenced by __construct().

102  {
103  $this->search_type = $search_type;
104  }
+ Here is the caller graph for this function:

◆ setUser()

ilUserAutoComplete::setUser (   $user)
Parameters
ilObjUser$user

Definition at line 133 of file class.ilUserAutoComplete.php.

References $user.

134  {
135  $this->user = $user;
136  }

◆ setUserLimitations()

ilUserAutoComplete::setUserLimitations (   $a_limitations)

allow user limitations like inactive and access limitations

Parameters
bool$a_limitations

Definition at line 508 of file class.ilUserAutoComplete.php.

509  {
510  $this->user_limitations = (bool) $a_limitations;
511  }

Field Documentation

◆ $limit

ilUserAutoComplete::$limit = 0
private

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

Referenced by getLimit().

◆ $more_link_available

ilUserAutoComplete::$more_link_available = false
private

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

Referenced by isMoreLinkAvailable(), and setMoreLinkAvailable().

◆ $possible_fields

ilUserAutoComplete::$possible_fields = array()
private

Definition at line 45 of file class.ilUserAutoComplete.php.

Referenced by getSearchFields().

◆ $privacy_mode

ilUserAutoComplete::$privacy_mode
private

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

Referenced by getPrivacyMode(), and setPrivacyMode().

◆ $result_field

ilUserAutoComplete::$result_field
private

Definition at line 50 of file class.ilUserAutoComplete.php.

◆ $search_type

ilUserAutoComplete::$search_type
private

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

Referenced by getSearchType(), and setSearchType().

◆ $searchable_check

ilUserAutoComplete::$searchable_check = false
private

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

Referenced by isFieldSearchableCheckEnabled().

◆ $user

ilUserAutoComplete::$user
private

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

Referenced by getUser(), and setUser().

◆ $user_access_check

ilUserAutoComplete::$user_access_check = true
private

Definition at line 40 of file class.ilUserAutoComplete.php.

Referenced by isUserAccessCheckEnabled().

◆ $user_limitations

ilUserAutoComplete::$user_limitations = true
private

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

Referenced by getUserLimitations().

◆ MAX_ENTRIES

◆ PRIVACY_MODE_IGNORE_USER_SETTING

const ilUserAutoComplete::PRIVACY_MODE_IGNORE_USER_SETTING = 2

Definition at line 30 of file class.ilUserAutoComplete.php.

◆ PRIVACY_MODE_RESPECT_USER_SETTING

const ilUserAutoComplete::PRIVACY_MODE_RESPECT_USER_SETTING = 1

◆ SEARCH_TYPE_EQUALS

const ilUserAutoComplete::SEARCH_TYPE_EQUALS = 2

◆ SEARCH_TYPE_LIKE

const ilUserAutoComplete::SEARCH_TYPE_LIKE = 1

Definition at line 15 of file class.ilUserAutoComplete.php.


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