+83.57
1171 читатель, 3018 топиков

Sidebar

Добавил страницу в профили пользователя, через плагин, подскажите каким образом вывести туда sidebar профиля… Пытался через конфиг, но не получилось, есть еще способы?

Форма с заполнением в топике.

Добрый день, как можно в топик вставить через редактор (или иным способом) форму для заполнения? Например: нужно, чтобы в топике всегда был определённый формат ну, скажем, заявления (или ещё чего) и чтобы была не произвольная форма, а регламентированная, которую я создал, пользователь только заполняет поля и нажимает вставить, и форма вставляется в его топик. В том формате, который я задал в форме заполнения. Как в форме обратной связи, типа.

[РЕШЕНО] Вставка видео по прямой ссылке.

Добрый день, всем пользователям движка!

У меня такой вопрос, у меня есть вэб-камера и белый IP-адрес, я настроил видео вэб-сервер и вэбкамера транслирует по адресу, типа _http://111.222.111.222:8080_ и спокойно её видно с любого места через браузер.

ВОПРОС:

Как мне её по этой прямой ссылке вставить в топик? Чтобы было онлайн трансляция?

Как запросить приглашение в закрытый блог

Как можно самому запросить приглашение в закрытый блог, что бы не создатель закрытого блога, а сторонний пользователь сам мог попроситься в закрытый блог без переписки письмами.

Короче, хотелось бы, чтобы пользователь нажав в закрытом блоге кнопке «читать» или сделать кнопку «хочу читать», у создателя закрытого блога бы приходило сообщение, что такой-то пользователь хочет присоединиться к блогу и тогда администратор блога решал бы сам, присоединить его или нет.

А сейчас только создатель закрытого блога может пригласить в блог, инициатива только у создателя блога.

Возможно такое настроить?

Текст к фото в фотосете

Подскажите как заставить обрезать текст, который идет к описанию фото, если символов больше 100…
Я добавил этот текст к фоткам, а если текста много он перекрывает картинку…

Как удалить/скрыть/запретить возможность создавать персональные и закрытые топики и блоги?

Как удалить/скрыть/запретить возможность создавать персональные и закрытые топики, блоги. Оставить только коллективные блоги, которые можно создать только админу и модератору.
(блоги может создать только админ, а топики все пользователи и писать в уже существующие блоги).
С помощью настройки конфига или плагином или как-то еще?

Не работает кнопка "Вступить в блог"

Помогите, у меня не работает кнопка «вступить в блог» (в закрытый блог) при нажатии ничего не происходит, так же не работает приглашение в блог на закладке редактирования блога «пользователи», при поиске пользователя и нажании на «ентер» ничего не происходит. Я понимаю, что что-то с java-скриптами, но где искать? И так на любом шаблоне.

Вопрос по плагину userads

Приветствую! Если кто знает есть старенький плагин userads, собственно вопрос.
В плагине добавления формы useads идете через хук в topic.

Не могу понять как сделать проверку этих полей и выдать ошибку к примеру.

catalog.livestreetcms.com/addon/view/243/ сам плагин

HookUserads.class
class PluginUserads_HookUserads extends Hook
{

    public function RegisterHook()
    {
        if (($oUserCurrent = $this->User_GetUserCurrent() and $oUserCurrent->isAdministrator())) {
            $this->AddHook('template_menu_settings_settings_item', 'MenuSettingsTpl');
        }
        $this->AddHook('init_action', 'InitAction');

        $this->AddHook('check_topic_fields', 'CheckTopicFields');
        $this->AddHook('topic_edit_before', 'TopicEditBefore');

        $this->AddHook('template_form_add_topic_topic_end', 'TopicForm');
        $this->AddHook('template_form_add_topic_question_end', 'TopicForm');
        $this->AddHook('template_form_add_topic_link_end', 'TopicForm');
        $this->AddHook('template_form_add_topic_photoset_end', 'TopicForm');

        $this->AddHook('template_topic_show_userads', 'TopicShowEnd');
    }

    public function InitAction()
    {
        if (Router::GetAction() == 'settings' and Router::GetActionEvent() == 'userads') {
            Router::Action('userads_settings', 'settings');
        }
    }

    public function CheckTopicFields($aVar)
    {
        $_REQUEST['userads'] = getRequest('userads');
        return $aVar;
    }

    public function TopicForm()
    {
        $iTopicId = (int)Router::GetParam(0);
        $aLinks = array();
        $oTopic = $this->Topic_GetTopicById($iTopicId);
        $positions = Config::Get('config.userads.positions');

        if(!empty($oTopic)){
            $aLinks = $oTopic->getLinkArray();
        }
        foreach($positions as $pos){
            $aLinks ["link"][$pos] = !empty($aLinks ["link"][$pos]) ? $aLinks ["link"][$pos] : '';
            $aLinks ["text_img"][$pos] = !empty($aLinks ["text_img"][$pos]) ? ($aLinks ["text_img"][$pos]) : '';
            $aLinks ["is_image"][$pos] = (!empty($aLinks ["is_image"][$pos])) ? 1 : 0;
        }

        $oViewer = $this->Viewer_GetLocalViewer();
        $oViewer->Assign('positions', $positions);
        $oViewer->Assign('aLinks', $aLinks);
        return $oViewer->fetch(Plugin::GetTemplatePath('userads') . 'topic.form_end.tpl');

    }

    public function TopicEditBefore($aVars)
    {
        if (getRequest('userads')) {
            $aLinks = getRequest('userads', array());

            $positions = Config::Get('config.userads.positions');

            foreach($positions as $pos){
                $aLinks ["link"][$pos] = strip_tags(str_replace('http://', '',$aLinks["link"][$pos]));
                $aLinks ["text_img"][$pos] = strip_tags(str_replace('http://', '',$aLinks["text_img"][$pos]));
                $aLinks ["is_image"][$pos] = (!empty($aLinks ["is_image"][$pos])) ? 1 : 0;
            }

            $aVars['oTopic']->setLinks(serialize($aLinks));
        }
        return $aVars;
    }

    public function TopicShowEnd($Vars)
    {
        $oTopic = @$Vars ['topic'];
        $positions = Config::Get('config.userads.positions');
        $position = (!empty($Vars ['position'])) ? $Vars ['position'] : $positions[0];
        //рекламный блок топика
        $aLinks = $oTopic->getLinkArray();
        //если нет рекламных блоков у топика берем их из настроек пользователя
        if(!is_array($aLinks)
            || count($aLinks) == 0
            || empty($aLinks["link"][$position])
            || empty($aLinks["text_img"][$position])
        ){
            $defLinks = $this->PluginUserads_Userads_GetUseradsSettingsByUser($oTopic->getUser()->getId());
            //если рекламные блоки в настройках пользователя не созданы закругляемся, либо присваиваем их текущим блокам
            if(!is_array($defLinks)
                || count($defLinks) == 0
                || empty($defLinks["link"][$position])
                || empty($defLinks["text_img"][$position])
            ){
                return;
            }
            else{
                $aLinks = $defLinks;
            }
        }
        //рейтинг создателя топика
        $userRating = (float)$oTopic->getUser()->_getDataOne('user_rating');
        //минимальный рейтинг
        $minRating =  (float)Config::Get('config.userads.rating');
        //если рейтинга не хватает закругляемся
        if($userRating < $minRating){
            return;
        }
        //массив рекламного блока соответствующего позиции
        $link = array();
        $link["link"] = (!empty($aLinks["link"][$position])) ? $aLinks["link"][$position] : '';
        $link["text_img"] = !empty($aLinks["text_img"][$position]) ? ($aLinks ["text_img"][$position]) : '';
        $link["is_image"] = (!empty($aLinks["is_image"][$position])) ? 1 : 0;
        if(empty($link["link"]) || empty($link["text_img"])){
            return;
        }

        //вывод
        $oViewer = $this->Viewer_GetLocalViewer();
        $oViewer->AppendStyle(Plugin::GetTemplateWebPath('userads') . 'css/style.css');
        $oViewer->Assign('position', $position);
        $oViewer->Assign('link', $link);
        return $oViewer->fetch(Plugin::GetTemplatePath('userads') . 'topic.show_end.tpl');
    }

    public function MenuSettingsTpl()
    {
        return $this->Viewer_Fetch(Plugin::GetTemplatePath('userads') . 'menu.setting.item.tpl');
    }
}

Суть проверки нужна простая
if(!empty($aLinks["link"]["top"]) & !empty($aLinks["link"]["bottom"]))
{
$this->Message_AddError($this->Lang_Get('plugin.userads.userads_topic_error'), $this->Lang_Get('attention'));
}


Буду признателен за любые подсказки :)