ILIAS  trunk Revision v12.0_alpha-377-g3641b37b9db
ILIAS\Contact\BuddySystem\MailRecipientSearch\MailRecipientSearchProvider Class Reference
+ Inheritance diagram for ILIAS\Contact\BuddySystem\MailRecipientSearch\MailRecipientSearchProvider:
+ Collaboration diagram for ILIAS\Contact\BuddySystem\MailRecipientSearch\MailRecipientSearchProvider:

Protected Member Functions

 getFromPart ()
 
- Protected Member Functions inherited from ILIAS\Mail\RecipientSearch\LegacyUserSearchBasedProvider
 getSelectPart ()
 
 getFromPart ()
 
 getWherePart (string $search_query)
 
 getOrderByPart ()
 
 getQueryConditionByFieldAndValue (string $field, $a_str)
 
 getFields ()
 

Additional Inherited Members

- Public Member Functions inherited from ILIAS\Mail\RecipientSearch\LegacyUserSearchBasedProvider
 current ()
 
 key ()
 
 rewind ()
 
- Public Member Functions inherited from ILIAS\Mail\RecipientSearch\RecipientSearchProvider
 __construct (protected string $quoted_term, protected string $term)
 
 valid ()
 
 next ()
 
 __destruct ()
 
- Protected Attributes inherited from ILIAS\Mail\RecipientSearch\RecipientSearchProvider
ilDBInterface $db
 
ilDBStatement $res = null
 
array $data = null
 
int $user_id = 0
 

Detailed Description

Definition at line 25 of file MailRecipientSearchProvider.php.

Member Function Documentation

◆ getFromPart()

ILIAS\Contact\BuddySystem\MailRecipientSearch\MailRecipientSearchProvider::getFromPart ( )
protected

Reimplemented from ILIAS\Mail\RecipientSearch\LegacyUserSearchBasedProvider.

Definition at line 27 of file MailRecipientSearchProvider.php.

27 : string
28 {
29 $joins = [];
30
31 $joins[] = implode(' ', [
32 'INNER JOIN buddylist',
33 'ON ((',
34 'buddylist.usr_id = usr_data.usr_id AND',
35 'buddylist.buddy_usr_id = ' . $this->db->quote($this->user_id, 'integer'),
36 ') OR (',
37 'buddylist.buddy_usr_id = usr_data.usr_id AND',
38 'buddylist.usr_id = ' . $this->db->quote($this->user_id, 'integer'),
39 '))',
40 ]);
41
42 $joins[] = implode(' ', [
43 'LEFT JOIN usr_pref profpref',
44 'ON profpref.usr_id = usr_data.usr_id',
45 'AND profpref.keyword = ' . $this->db->quote('public_profile', 'text'),
46 ]);
47
48 $joins[] = implode(' ', [
49 'LEFT JOIN usr_pref pubemail',
50 'ON pubemail.usr_id = usr_data.usr_id',
51 'AND pubemail.keyword = ' . $this->db->quote('public_email', 'text'),
52 ]);
53
54 return 'usr_data ' . implode(' ', $joins);
55 }

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