Перейти к содержанию

Налик

Пользователи
  • Постов

    82
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные Налик

  1. siv1987 accop Спасибо)

    //Открыть сообщение core_search_index
    //$post = \IPS\forums\Topic\Post::load(272);
    //$post->unhide(TRUE);
    
    //Открыть топик forums_topics
    $topic = \IPS\forums\Topic::load(60);
    $topic->unhide(FALSE);

    Первый код открывает сообщение, но при этом топик в списке тем остается скрытым.

    Второй код открывает топик и сообщение, как раз то что нужно.

    По названию переменных все логично, спасибо большое! :)

    Только честно говоря не понял какое булевое значение подавать правильно, хоть TRUE, хоть FALSE - открывают сообщение/топик.

    $topic->unhide(FALSE);
  2. Здравствуйте. Каким кодом можно опубликовать скрытую тему?

    Что-то типа

    \IPS\content\show($id);

     

    В конечном итоге хочу написать скрипт, который будет смотреть все скрытые темы на форуме и публиковать их если наступило время открытия.

    q.png.b8abf9c73e4cbd5618513781489c7221.png

  3. Здравствуйте. 

    Установлен Invision Community v4.3.4 NULLED, при просмотре контента пользователя который не разместил ни одного поста на форуме появляется ошибка "Сайт ***.ru выполнил переадресацию слишком много раз."

    error1.thumb.png.f4caef48f6db2be5273614e80657824e.png

    error.png.b36bf517d9cfc2b4f9deb22eeda8467c.png

    error3.thumb.gif.9a0a1fe9d846e5911d17fdfd0b2a347d.gif

    Плагины и приложения все отключал, не помогает. 

    Может знает кто в чем проблема?

  4. 4 часа назад, alexxis сказал:

    Так Automation Rules поможет: там php код, введённый вами самостоятельно, сможет сработать как после регистрации, так и подтверждения почты

    Спасибо, попробую)

     

    1 час назад, wasder12 сказал:

    Какую функцию гадать должны?

    Да сделал внешнюю базу для авторизации, но при этом использую и внутренюю. После регистрации пользователей хочу заносить информацию о регистрации ещё и во внешнюю базу)

    Правда тут проблемка получается, во внешней базе используется шифрование пароля md5, а во внутренней бог пойми какое и изменить на md5 не получается. В АЦП не нашёл такой настройки для внутренней базы, а хотел в файлах ручками поправить, да не могу найти файл отвечающий за регистрацию. 

  5. Здравствуйте. Вопрос по Invision Community v4.3.4.

    После того как пользователь зарегистрируется нужно выполнить функцию php и после того как пользователь подтвердит свою почту нужно выполнить еще одну функцию. 

    Может быть есть готовое решение которое позволяет выполнить некий код после регистрации/подтверждения пользователя?

    Если нету, подскажите пожалуйста какие файлы отвечают за регистрацию пользователей?

  6. 1 минуту назад, Hundmann сказал:

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

    Пробовал естественно. Пишет  У вас нет прав для общения в чате.

  7. 8 часов назад, soka сказал:

    $id = \IPS\Request::i()->id

    только надо учитывать что этот плагин "php-код" должен отработать только на странице пользователя, иначе \IPS\Request::i()->id может имеет другое значение.
    Если это плагин класса IPS\core\modules\front\members\profile то там уже загружен пользователь в $this->member

    Да плагин php-код будет работать только на страницах профиля пользователя, я думаю это должно сработать, спасибо)

    А скажите пожалуйста, есть ли документация на IPS 4.x для работы с кодом? А то сейчас мой единственный источник это метод тыка и копание исходников разных модулей и этот форум)

  8. В данный момент реализовал привязку к url, всё работает. Но насколько этот способ правильный не знаю. Если парсить html, то тоже не известно насколько это будет правильно..

    $text = $_SERVER['REQUEST_URI']; //получить текущий url
    $pattern = "|profile/(.+?)-|is"; //регулярка (получить текст между фразами "profile/" и "-") 
    preg_match($pattern, $text, $out); //парсер
    $id = $out[1]; //Получить id пользователя
    
    $member = \IPS\Member::load( $id ); //Получить инфо о пользователе

     

    Может есть какая нибудь готовая функция?

  9. Здравствуйте. Установил плагин php code, вставил на страницу пользователя и набрасал php-код. Мне собственно теперь нужно при переходе в профиль пользователя подставлять его id, это наверное нужно парсить html? Получать инфо о пользователе хочу так:

    $member = \IPS\Member::load( $id );

     

  10. Я у себя сделал магазин за репутацию) т.к. модуль баллов не нашел.. 

    В магазине выбираем электронный товар за соответствующую стоимость и если репутации хватает - она списывается с акка, а в личных сообщениях и на почту указанную при регистрации приходит сообщение о приобретении товара и собственно сам товар (я продаю электронные ключи). Решил сделать такой магазинчик бонусов для популизации форума :)

  11. 14 часов назад, ram108 сказал:

    Человек хочет отправлять личные сообщения пользователю $member.

    Именно. Задачу решил, сообщения отправляются, но возникли проблемы:

    1. Сообщение не помечается как "новое", а выглядит будто уже было прочитано.

    2. Не приходит уведомление о том, что пришло новое сообщение. 

    3. На иконке (конвертике) сообщений нет оповещение о том, что пришло новое сообщение.

    Вот код:

    // загрузить информацию о текущем пользователе
    $member = \IPS\Member::loggedIn();
    _sendPM($member, "Тема сообщения","Содержание сообщения");
    
    	function _sendPM( $member, $title, $message )
    	{
    
            /* Setup pm title and msg */
            $msgTitle = \IPS\Member::loggedIn()->language()->addToStack( $title );
            $msgPost  = \IPS\Member::loggedIn()->language()->addToStack( $message );
            \IPS\Member::loggedIn()->language()->parseOutputForDisplay( $msgTitle );        
            \IPS\Member::loggedIn()->language()->parseOutputForDisplay( $msgPost );  
           
            /* Отправитель */
    		try
    		{
    		    $admin = \IPS\Member::load( 1 );
    			$pmSender = $admin;
    		}
    		catch( \OutOfRangeException $ex )
    		{
                return; 
    		} 
            
            /* Проверка существования отправителя */
            if( !$pmSender->member_id )
            {
                return;
            }            
            /* Создать разговор */        
       		$conversation = \IPS\core\Messenger\Conversation::createItem( $member, $member->ip_address, \IPS\DateTime::ts( time() ) );
            $conversation->title = $msgTitle;
            $conversation->is_system = TRUE;
            $conversation->save();
    
     		/* Авторизация админа */       
    		$c_members[] = $member->member_id;
            $c_members[] = $pmSender->member_id;
    		$conversation->authorize( $c_members );        
    
            /* Добавить сообщение в БД */ 
    		$message = \IPS\core\Messenger\Message::create( $conversation, $msgPost, TRUE, NULL, NULL, $pmSender );
    		$conversation->first_msg_id = $message->id;
    		$conversation->save(); 
    
            /* Отправить уведомление */    
    		$notification = new \IPS\Notification( \IPS\Application::load('core'), 'private_message_added', $conversation, array( 	   $conversation, \IPS\Member::loggedIn() ) );
    		$notification->send();
    	}

     

  12. Всем привет!

    Установлен IPS Community site 4.1.15

    Как кодом можно отправить пользователю системное сообщение?

    Вот так я получаю информацию о пользователе:

    $member = \IPS\Member::loggedIn();

    Теперь этому пользователю нужно отправить личное сообщение.  Как это можно сделать?

  13. А как изменить имя пользователя не прибегая к mysql вставкам?

    Тиа таких:

    <?php
    // загрузить текущего пользователя
    $member = \IPS\Member::loggedIn();
     
    // Имя
    echo $member->name;
    
    //Репутация
    echo $member->pp_reputation_points;
    
    $sql = "UPDATE `core_members` SET `name` = 'NewName' WHERE `core_members`.`member_id` = 1;";
    ?>

     

  14. В 31.10.2016 в 20:02, slimer сказал:

    $member = \IPS\Member::load( $id );

    А как узнать id текущего пользователя? Я зарегистрирован как Admin, но почему-то 

    код 

    echo $member->name;

    выдает имя как Гость. А если вставлю вместо $id цифру 1, то уже выдает мой ник. 

  15. 1 минуту назад, Redneck сказал:

    при вставке видео через кнопку, при просмотре с мобильника будет бить разметку страницы форума. Если ставить через ссылку, то при просмотре тем видео будет уменьшено в размерах и разметка не пострадает.

    Да это я в курсе, читал) Спасибо за инфо)

    1 минуту назад, Redneck сказал:

    Для ВК ничего такого я не видел

    Ну ладно, фик с ним) спасибо)

  16. 5 минут назад, Redneck сказал:

    а зачем вам кнопки, если ИПС поддерживает многие ресурсы. Для вставки видео с Ютуба достаточно вставить ссылку в пост и она будет автоматически преобразована в видео.

    Для особо тупых :D И кстати ссылки в вк она не преобразовывает, только если копировать код для вставки через "Источники"

  17. 2 минуты назад, Redneck сказал:

    админка - внешний вид - редактор - настройки редактора - добавить кнопку - указываете zip архив и загружаете

    Ох спасибо) намучался с этим плагином, в инструкции-то написано одно.. пошел на хостинг устанавливать в разные папки распакованный архив, а оно вон как все просто))

    А не подскажите, есть аналогичные плагины для вставки видео не только с ютюба, а и с ВК и других видео-хостингов?

    Имеется ввиду именно кнопочный вариант. 

×
×
  • Создать...