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

WaNted

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

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

  • Посещение

  • Победитель дней

    17

Весь контент WaNted

  1. $price = 50; if ( $topicData['approved'] AND $this->memberData['points'] >= $price ) { $this->DB->update( 'topics', array( 'last_post' => IPS_UNIX_TIME_NOW ), 'tid=' . $topicData['tid'] ); $this->DB->update( 'members', array( 'points' => $this->memberData['points'] - $price ), 'member_id=' . $this->memberData['member_id'] ); }
  2. Ну так а где проверка на наличие поинтов перед поднятием? Зачем еще одно подключение к базе? Есть же $this->DB
  3. В Password Verification Code проверятся пароль, нужно вернуть TRUE в случае совпадения.
  4. Создайте метод авторидации через внешнюю базу данных в админке и укажите там метод хеширования пароля.
  5. Начиная с какой-то (4.3 вроде) версии соль не используется. password_hash и password_verify
  6. \IPS\Theme::i()->getTemplate эта функция возвращает уже скомпилированный шаблона (html) сразу же в content и естественно кэшируется. {template="phtml" group="plugins" location="global" app="core"} шорткод той же самой функции, только тут уже шаблон компилируется в момент вывода, то что Вам нужно.
  7. Кэшируется не плагин, а все шаблоны в IPS со всеми изменениями которые вносят хуки.
  8. Вот уберите и убедитесь что всё будет работать как надо. Кэшируется код шаблона, который парсится в обычный php, выполняются все функции и в итоге выводится чистым html. В Вашем случае всегда будет выполняться функция _test() в момент вывода.
  9. Использование expression там бессмысленно. public static function _test() {{$time = \IPS\coore\modules\front\system\plugins::_test();}}
  10. Можно создать хук класса \IPS\core\modules\front\system\plugins и там статическую функцию, после чего вызывать её в шаблоне \IPS\core\modules\front\plugins::functionName(). Либо подумать как вызвать функцию которая находиться в том же классе что и hookData. находится*
  11. Всё правильно. Шаблон это функция, expression лишь выполняет и выводит результат функции php внутри шаблона. До этого вы передавали результат time() напрямую в content, что в итоге кэшировалось. Что бы такого не было, в Вашем случае, нужно динамические данные получать в самом шаблоне.
  12. 'content' => \IPS\Theme::i()->getTemplate( 'plugins', 'core', 'global' )->phtml( $params ) В самом шаблоне phtml: {expression="time()"}
  13. $secret_key = 'secret_key'; $content = \IPS\Theme::i()->getTemplate( 'plugins', 'core', 'global' )->phtml( $secret_key );
  14. {template="phtml" group="plugins" location="global" app="core" params="$secret_key"}
  15. Скачайте и вытащите из архива папку applications/cms и загрузите на свой форум. Приложение должно появиться в админке, там нужно будет его установить.
  16. require_once 'init.php'; // init.php вашего форума $member = \IPS\Member::load( $member_id ); // $member_id - id пользователя, фотографию которого нужно получить echo '<img src="' . $member->photo . '" alt="' . $member->name . '">'; // выводим
  17. $this->members_pass_hash = password_hash( $password, PASSWORD_DEFAULT ); if ( password_verify( $password, $member->members_pass_hash ) === TRUE ) { return TRUE; }
  18. Готового решения нет. Вам скорее нужен метод processAfterCreate.
×
×
  • Создать...