ILIAS  release_7 Revision v7.30-3-g800a261c036
All Data Structures Namespaces Files Functions Variables Modules Pages
ilBuddySystemLinkButton Class Reference

Class ilBuddySystemLinkButton. More...

+ Inheritance diagram for ilBuddySystemLinkButton:
+ Collaboration diagram for ilBuddySystemLinkButton:

Public Member Functions

 getUsrId ()
 
 setUsrId (int $usrId)
 
 getBuddyList ()
 
 getHtml ()
 
- Public Member Functions inherited from ilBuddySystemLinkButtonType
 getHTML ()
 

Static Public Member Functions

static getInstanceByUserId (int $usrId)
 

Protected Member Functions

 __construct (int $usrId)
 ilBuddySystemLinkButton constructor. More...
 

Protected Attributes

 $usrId
 
 $buddyList
 
 $lng
 
 $user
 

Detailed Description

Constructor & Destructor Documentation

◆ __construct()

ilBuddySystemLinkButton::__construct ( int  $usrId)
protected

ilBuddySystemLinkButton constructor.

Parameters
int$usrId
Exceptions
ilBuddySystemException

Definition at line 27 of file class.ilBuddySystemLinkButton.php.

References $DIC, $usrId, ilBuddyList\getInstanceByGlobalUser(), and user().

28  {
29  global $DIC;
30 
31  $this->usrId = $usrId;
32  $this->buddyList = ilBuddyList::getInstanceByGlobalUser();
33 
34  $this->user = $DIC['ilUser'];
35  $this->lng = $DIC['lng'];
36  }
static getInstanceByGlobalUser()
user()
Definition: user.php:4
global $DIC
Definition: goto.php:24
+ Here is the call graph for this function:

Member Function Documentation

◆ getBuddyList()

ilBuddySystemLinkButton::getBuddyList ( )

◆ getHtml()

ilBuddySystemLinkButton::getHtml ( )
Returns
string

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

References ilObjUser\_lookupPref(), ilBuddySystemRelationStateFactory\getInstance(), ilBuddySystem\getInstance(), getUsrId(), user(), and ilUtil\yn2tf().

75  : string
76  {
77  $this->lng->loadLanguageModule('buddysystem');
78 
79  if (!ilBuddySystem::getInstance()->isEnabled()) {
80  return '';
81  }
82 
83  $relation = $this->buddyList->getRelationByUserId($this->getUsrId());
84 
85  // The ILIAS JF decided to add a new personal setting
86  if (
87  $relation->isUnlinked() &&
88  !ilUtil::yn2tf(ilObjUser::_lookupPref($this->getUsrId(), 'bs_allow_to_contact_me'))
89  ) {
90  return '';
91  }
92 
93  $buttonTemplate = new ilTemplate(
94  'tpl.buddy_system_link_button.html',
95  true,
96  true,
97  'Services/Contact/BuddySystem'
98  );
99  $buttonTemplate->setVariable(
100  'BUTTON_HTML',
101  ilBuddySystemRelationStateFactory::getInstance()->getStateButtonRendererByOwnerAndRelation(
102  (int) $this->user->getId(),
103  $relation
104  )->getHtml()
105  );
106  $buttonTemplate->setVariable('BUTTON_BUDDY_ID', $this->getUsrId());
107  $buttonTemplate->setVariable('BUTTON_CSS_CLASS', 'ilBuddySystemLinkWidget');
108  $buttonTemplate->setVariable('BUTTON_CURRENT_STATE', get_class($relation->getState()));
109 
110  return $buttonTemplate->get();
111  }
user()
Definition: user.php:4
static _lookupPref($a_usr_id, $a_keyword)
static yn2tf($a_yn)
convert "y"/"n" to true/false
+ Here is the call graph for this function:

◆ getInstanceByUserId()

static ilBuddySystemLinkButton::getInstanceByUserId ( int  $usrId)
static
Parameters
int$usrId
Returns
ilBuddySystemLinkButton
Exceptions
ilBuddySystemException

Definition at line 43 of file class.ilBuddySystemLinkButton.php.

References $usrId.

Referenced by ilUsersGalleryGUI\addActionSection(), ilBuddySystemRelationsTableGUI\fillRow(), ilPublicUserProfileGUI\getEmbeddable(), and ilRepositoryUserResultTableGUI\initMultiCommands().

43  : self
44  {
45  return new self($usrId);
46  }
+ Here is the caller graph for this function:

◆ getUsrId()

ilBuddySystemLinkButton::getUsrId ( )

Implements ilBuddySystemLinkButtonType.

Definition at line 51 of file class.ilBuddySystemLinkButton.php.

References $usrId.

Referenced by getHtml().

51  : int
52  {
53  return $this->usrId;
54  }
+ Here is the caller graph for this function:

◆ setUsrId()

ilBuddySystemLinkButton::setUsrId ( int  $usrId)
Parameters
int$usrId

Definition at line 59 of file class.ilBuddySystemLinkButton.php.

References $usrId.

60  {
61  $this->usrId = $usrId;
62  }

Field Documentation

◆ $buddyList

ilBuddySystemLinkButton::$buddyList
protected

Definition at line 14 of file class.ilBuddySystemLinkButton.php.

Referenced by getBuddyList().

◆ $lng

ilBuddySystemLinkButton::$lng
protected

Definition at line 17 of file class.ilBuddySystemLinkButton.php.

◆ $user

ilBuddySystemLinkButton::$user
protected

Definition at line 20 of file class.ilBuddySystemLinkButton.php.

◆ $usrId

ilBuddySystemLinkButton::$usrId
protected

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