Понадобилось мне как-то сделать так, чтобы владелец закрытого клуба мог пригласить в клуб любого пользователя, без добавления его в друзья
(тут еще один момент есть — удобнее будет сделать еще так, чтобы в закрытом клубе была ссылка на отправку сообщения админу клуба — но это совсем просто сделать)
открываем
\www\components\clubs\frontend.php
со строки 612 делаем так
-------------------------------------------------------------------
так было
так стало
-------------------------------------------------------------------
в строке 625 убираем !$_SESSION['user']['friends'] || — даем доступ для приглашения
пользователей в группу даже если нет друзей
так стало
Теперь находим файл
\www\core\classes\usrclass.php
добавляем новую функцию со строки 620
пробуем, радуемся!
Забыл сказать, движок сайта версия 1.8, другие не проверял.
Также соотвественно при обновлении движка сайта — нужно проделать эти операции заново.
(тут еще один момент есть — удобнее будет сделать еще так, чтобы в закрытом клубе была ссылка на отправку сообщения админу клуба — но это совсем просто сделать)
открываем
\www\components\clubs\frontend.php
со строки 612 делаем так
-------------------------------------------------------------------
так было
if ( !$inCore->inRequest('join') ){ // Получаем список друзей $friends = cmsUser::getFriends($user_id);
if ( !$inCore->inRequest('join') ){ // Получаем список друзей $friends = cmsUser::getUsers(); // это наша новая функция
в строке 625 убираем !$_SESSION['user']['friends'] || — даем доступ для приглашения
пользователей в группу даже если нет друзей
// Если нет друзей или все друзья уже в этом клубе, то выводим ошибку и возвращаемся назад // так было if (!$_SESSION['user']['friends'] || !$friends) { $inCore->addSessionMessage($_LANG['SEND_INVITE_ERROR'], 'error'); $inCore->redirect($back); }
// Если нет друзей или все друзья уже в этом клубе, то выводим ошибку и возвращаемся назад if (!$friends) { $inCore->addSessionMessage($_LANG['SEND_INVITE_ERROR'], 'error'); $inCore->redirect($back); }
\www\core\classes\usrclass.php
добавляем новую функцию со строки 620
// ============================================================================ // /** * Возвращает массив списка пользователей * @return Array */ public static function getUsers(){ $inDB = cmsDatabase::getInstance(); $usrlist = ''; $sql = "SELECT id, nickname FROM cms_users WHERE is_locked = 0 AND is_deleted = 0 ORDER BY nickname"; $rs = $inDB->query($sql); if (!$inDB->num_rows($rs)){ return; } while($u = $inDB->fetch_assoc($rs)){ $usrlist[] = $u; } return $usrlist; } // ============================================================================ //
Забыл сказать, движок сайта версия 1.8, другие не проверял.
Также соотвественно при обновлении движка сайта — нужно проделать эти операции заново.
Реклама #
fact 13 лет назад #
в закрытом клубе была ссылка на отправку сообщения админу клуба - но это совсем просто сделать) -
-вот с этого места поподробнее пожалуйста! Очень очень нужно!
EVV 13 лет назад #
Можно ли сделать, чтобы выбирались сразу несколько пользователей?
Слава 13 лет назад #
Крот 13 лет назад #
Крот 13 лет назад #
берем файл шаблона com_clubs_view_club.tpl (лежит либо в вашем шаблоне либо в default)
находим строки
2. Делаем отправку сообщения пользователю с закрытым профилем
аналогично в файле com_users_not_allow.tpl
находим
Хотя на самом деле я пока не знаю зачем все это нужно...
sepraga 13 лет назад #
Только как сделать, чтобы возможность выбора из всего списка пользователей сайта была и в настройках клуба.
Вот здесь:
Крот 13 лет назад #
в файле \components\clubs\frontend.php
строка 365
Кстати в результате всех моих изысков нашел еще баг, теперь уже и в клубах. Баг не смертельный - просто некрасивый.
Об этом будет в следующем блоге...
sepraga 13 лет назад #
После смены функции блок "мои друзья" стал пустым ... :(
Крот 13 лет назад #
вообщем надо еще в том же файле найти
проверьте пжл.
sepraga 13 лет назад #
Спасибо.
Thanatognozija 13 лет назад #
sepraga 10 лет назад #
Викторыч 10 лет назад #
И можно ли сделать так, чтобы человек после регистрации сразу становился членом определенного Клуба, чтобы не морочиться со вступлением потом?
Крот 10 лет назад #
проще клубы написать по новой
Викторыч 10 лет назад #
Шадринец 8 лет назад #