Definition at line 33 of file Subscriber.php.
 
◆ __construct()
      
        
          | ILIAS\OnScreenChat\Repository\Subscriber::__construct  | 
          ( | 
          protected ilDBInterface  | 
          $db,  | 
        
        
           | 
           | 
          protected ilObjUser  | 
          $user  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
 
◆ getDataByUserIds()
      
        
          | ILIAS\OnScreenChat\Repository\Subscriber::getDataByUserIds  | 
          ( | 
          array  | 
          $usrIds | ) | 
           | 
        
      
 
- Parameters
 - 
  
  
 
- Returns
 - array<int, array{public_name: string, profile_image: string}> 
 
Definition at line 93 of file Subscriber.php.
References $data, ilUserUtil\getNamePresentation(), ilWACSignedPath\getTokenMaxLifetimeInSeconds(), and ilWACSignedPath\setTokenMaxLifetimeInSeconds().
Referenced by ILIAS\OnScreenChat\Repository\Subscriber\getInitialUserProfileData().
   95         $usrIds = array_filter(array_map(
'intval', array_map(
'trim', $usrIds)));
   104         foreach ($usrIds as $usr_id) {
   105             $publicImage = $publicData[$usr_id][
'img'] ?? 
'';
   108             if (isset($publicData[$usr_id])) {
   110                 if (isset($publicData[$usr_id][
'login'])) {
   111                     $publicName = $login = $publicData[$usr_id][
'login'];
   114                 if (isset($publicData[$usr_id][
'public_profile']) && $publicData[$usr_id][
'public_profile']) {
   115                     $publicName = implode(
' ', array_filter(array_map(
'trim', [
   116                         (
string) ($publicData[$usr_id][
'firstname'] ?? 
''),
   117                         (
string) ($publicData[$usr_id][
'lastname'] ?? 
''),
   120                     if ($publicName === 
'') {
   121                         $publicName = $login;
   127                 'public_name' => $publicName,
   128                 'profile_image' => $publicImage
 
static setTokenMaxLifetimeInSeconds(int $token_max_lifetime_in_seconds)
 
static getNamePresentation( $a_user_id, bool $a_user_image=false, bool $a_profile_link=false, string $a_profile_back_link='', bool $a_force_first_lastname=false, bool $a_omit_login=false, bool $a_sortable=true, bool $a_return_data_array=false, $a_ctrl_path='ilpublicuserprofilegui')
Default behaviour is: 
 
static getTokenMaxLifetimeInSeconds()
 
 
 
 
◆ getInitialUserProfileData()
      
        
          | ILIAS\OnScreenChat\Repository\Subscriber::getInitialUserProfileData  | 
          ( | 
           | ) | 
           | 
        
      
 
- Returns
 - array<int, array{public_name: string, profile_image: string}> 
 
Definition at line 42 of file Subscriber.php.
References $res, ILIAS\OnScreenChat\Repository\Subscriber\getDataByUserIds(), and ILIAS\Repository\user().
   44         $conversationIds = [];
    46         $res = $this->db->queryF(
    47             'SELECT DISTINCT(conversation_id) FROM osc_activity WHERE user_id = %s',
    49             [$this->
user->getId()]
    51         while ($row = $this->db->fetchAssoc(
$res)) {
    52             $conversationIds[$row[
'conversation_id']] = $row[
'conversation_id'];
    55         $res = $this->db->queryF(
    56             'SELECT DISTINCT(conversation_id) FROM osc_messages WHERE user_id = %s',
    58             [$this->
user->getId()]
    60         while ($row = $this->db->fetchAssoc(
$res)) {
    61             $conversationIds[$row[
'conversation_id']] = $row[
'conversation_id'];
    64         if (0 === count($conversationIds)) {
    70         $in = $this->db->in(
'id', $conversationIds, 
false, 
'text');
    71         $res = $this->db->query(
'SELECT DISTINCT(participants) FROM osc_conversation WHERE ' . $in);
    72         while ($row = $this->db->fetchAssoc(
$res)) {
    73             $participants = json_decode((
string) $row[
'participants'], 
true, 512, JSON_THROW_ON_ERROR);
    75             if (is_array($participants)) {
    76                 $usrIds = array_unique(array_merge($usrIds, array_filter(array_map(
static function ($user): 
int {
    77                     if (is_array($user) && isset($user[
'id'])) {
    78                         return (
int) $user[
'id'];
 
getDataByUserIds(array $usrIds)
 
 
 
 
The documentation for this class was generated from the following file: