19 declare(strict_types=1);
    46         array $contextObjects = []
    50         $this->
ctrl = $DIC[
'ilCtrl'];
    51         $this->
lng = $DIC[
'lng'];
    52         $this->
user = $DIC[
'ilUser'];
    53         $this->
http = $DIC->http();
    55         $this->ui_factory = $DIC->ui()->factory();
    56         $this->ui_renderer = $DIC->ui()->renderer();
    58         $tableId = 
ilStr::subStr($type . 
'_cml_' . md5(implode(
'_', $contextObjects)), 0, 30);
    59         $this->
setId($tableId);
    63         if ($this->context === 
'mail') {
    65             $this->mailing_allowed = $DIC->rbac()->system()->checkAccess(
'internal_mail', $mail->getMailObjectReferenceId());
    71         $this->
lng->loadLanguageModule(
'crs');
    72         $this->
lng->loadLanguageModule(
'buddysystem');
    75         if ($type === 
'crs') {
    76             $mode[
'checkbox'] = 
'search_crs';
    77             $mode[
'short'] = 
'crs';
    78             $mode[
'long'] = 
'course';
    79             $mode[
'lng_type'] = $this->
lng->txt(
'course');
    80             $mode[
'view'] = 
'crs_members';
    81         } elseif ($type === 
'grp') {
    82             $mode[
'checkbox'] = 
'search_grp';
    83             $mode[
'short'] = 
'grp';
    84             $mode[
'long'] = 
'group';
    85             $mode[
'lng_type'] = $this->
lng->txt(
'group');
    86             $mode[
'view'] = 
'grp_members';
    92         $this->
ctrl->setParameter($a_parent_obj, 
'view', $mode[
'view']);
    95             $this->
http->wrapper()->query()->has(
'ref') &&
    96             $this->
http->wrapper()->query()->retrieve(
'ref', $this->
refinery->kindlyTo()->string()) !== 
''    98             $this->
ctrl->setParameter(
   101                 $this->
http->wrapper()->query()->retrieve(
'ref', $this->
refinery->kindlyTo()->string())
   105         if ($this->
http->wrapper()->post()->has($mode[
'checkbox'])) {
   106             $ids = $this->
http->wrapper()->post()->retrieve(
   112                 $this->
ctrl->setParameter(
   122         $this->
setRowTemplate(
'tpl.mail_search_objects_members_row.html', 
'components/ILIAS/Contact');
   125         $this->
addColumn($this->
lng->txt(
'login'), 
'members_login', 
'22%');
   126         $this->
addColumn($this->
lng->txt(
'name'), 
'members_name', 
'22%');
   127         $this->
addColumn($this->
lng->txt($mode[
'long']), 
'members_crs_grp', 
'22%');
   129             $this->
addColumn($this->
lng->txt(
'buddy_tbl_filter_state'), 
'status', 
'23%');
   131         $this->
addColumn($this->
lng->txt(
'actions'), 
'', 
'10%');
   133         if ($this->context === 
'mail') {
   134             if ($this->mailing_allowed) {
   140             $this->
lng->loadLanguageModule(
'wsp');
   143         $this->
lng->loadLanguageModule(
'buddysystem');
   150         if ($this->
http->wrapper()->query()->has($key)) {
   151             $value = $this->
http->wrapper()->query()->retrieve($key, $trafo);
   154         if ($this->
http->wrapper()->post()->has($key)) {
   155             $value = $this->
http->wrapper()->post()->retrieve($key, $trafo);
   161     protected function fillRow(array $a_set): void
   163         $trafo = $this->
refinery->custom()->transformation(
function ($value): 
string {
   164             if (is_string($value)) {
   173                 $this->
refinery->kindlyTo()->listOf(
   176                         $this->
refinery->kindlyTo()->string()
   184         $this->
ctrl->setParameter($this->parent_obj, 
'search_members', $a_set[
'members_id']);
   185         $this->
ctrl->setParameter(
   187             'search_' . $this->mode[
'short'],
   190         $this->
ctrl->setParameter($this->parent_obj, 
'view', $this->mode[
'view']);
   193         if ($this->context === 
'mail') {
   194             if ($this->mailing_allowed) {
   198                         $this->
lng->txt(
'mail_member'),
   199                         $this->
ctrl->getLinkTarget($this->parent_obj, 
'mail')
   206                     $this->
lng->txt(
'wsp_share_with_members'),
   207                     $this->
ctrl->getLinkTarget($this->parent_obj, 
'share')
   214                 $a_set[
'members_id'] !== $this->
user->getId() &&
   218                 $this->
ctrl->setParameterByClass(ilBuddySystemGUI::class, 
'user_id', $a_set[
'members_id']);
   222                         $this->
lng->txt(
'buddy_bs_btn_txt_unlinked_a'),
   223                         $this->
ctrl->getLinkTargetByClass(ilBuddySystemGUI::class, 
'request')
   229             $drop_down = $this->ui_factory
   232                 ->withLabel($this->
lng->txt(
'actions'));
   233             $action_html = $this->ui_renderer->render($drop_down);
   235         $this->tpl->setVariable(
'CURRENT_ACTION_LIST', $action_html);
   237         foreach ($a_set as $key => $value) {
   238             $this->tpl->setVariable(strtoupper($key), $value);
 
readonly GlobalHttpState $http
 
setFormAction(string $a_form_action, bool $a_multipart=false)
 
addCommandButton(string $a_cmd, string $a_text, string $a_onclick='', string $a_id="", string $a_class="")
 
Interface Observer  Contains several chained tasks and infos about them. 
 
static stripSlashes(string $a_str, bool $a_strip_html=true, string $a_allow="")
 
setSelectAllCheckbox(string $a_select_all_checkbox, bool $a_select_all_on_top=false)
 
static _lookupPref(int $a_usr_id, string $a_keyword)
 
static subStr(string $a_str, int $a_start, ?int $a_length=null)
 
getRequestValue(string $key, \ILIAS\Refinery\Transformation $trafo, $default=null)
 
readonly Refinery $refinery
 
readonly ILIAS UI Renderer $ui_renderer
 
static http()
Fetches the global http state from ILIAS. 
 
setDefaultOrderField(string $a_defaultorderfield)
 
setRowTemplate(string $a_template, string $a_template_dir="")
Set row template. 
 
setDefaultOrderDirection(string $a_defaultorderdirection)
 
setTitle(string $a_title, string $a_icon="", string $a_icon_alt="")
 
static getInstanceByGlobalUser(ilObjUser $user=null)
 
__construct( $a_parent_obj, string $type='crs', string $context='mail', array $contextObjects=[])
 
__construct(Container $dic, ilPlugin $plugin)
 
readonly ILIAS UI Factory $ui_factory
 
addColumn(string $a_text, string $a_sort_field="", string $a_width="", bool $a_is_checkbox_action_column=false, string $a_class="", string $a_tooltip="", bool $a_tooltip_with_html=false)
 
static yn2tf(string $a_yn)
 
addMultiCommand(string $a_cmd, string $a_text)