getPermission('admin.chat.canManageSuspensions')) { return; } $target = $parameters['data']['user']; $parameters['data']['suspensions'] = [ ]; $suspensionList = new \chat\data\suspension\SuspensionList(); $suspensionList->getConditionBuilder()->add('(expires IS NULL OR expires > ?)', [ TIME_NOW ]); $suspensionList->getConditionBuilder()->add('revoked IS NULL'); $suspensionList->getConditionBuilder()->add('userID = ?', [ $target->userID ]); $suspensionList->sqlOrderBy = 'expires ASC, time ASC'; $suspensionList->readObjects(); $suspensions = array_filter($suspensionList->getObjects(), function (Suspension $suspension) { return $suspension->isActive(); }); $parameters['data']['suspensions'] = array_values(array_map(function ($suspension) { $room = \chat\data\room\RoomCache::getInstance()->getRoom($suspension->roomID); $suspension = $suspension->jsonSerialize(); if ($room) { $suspension['room'] = [ 'title' => $room->getTitle() , 'link' => $room->getLink() ]; } return $suspension; }, $suspensions)); } }