Jump to content

Desti

Актив
  • В сети

  • Количество сообщений

    2 149
  • Reputation

    1,2k Desti's Reputation

Everything posted by Desti

  1. Ну, видимо, добавить эту строчку после сохранения формы.
  2. Нет, номер топика будет определяться при генерации страницы. Но если на каждую строку генерить пару data-controller и data-action, то в исходниках будет много лишнего хлама, поэтому data-controller выносят за пределы цикла перебора топиков и получается что-то типа <div class="..." data-controller="forums.front.forum.hovercard"> <a href="..." title="Отметить тему прочитанной" data-action="markTopicRead" data-topicid="3322"">Отметить тему прочитанной</a> <a href="..." title="Отметить тему прочитанной" data-action="markTopicRead" data-topicid="3323">Отметить тему прочитанной</a> <a href="..." title="Отметить тему прочитанной" data-action="markTopicRead" data-topicid="3324">Отметить тему прочитанной</a> <a href="..." title="Отметить тему прочитанной" data-action="markTopicRead" data-topicid="3325">Отметить тему прочитанной</a></div> Обработчик должен понимать, откуда ему брать данные. Если этот атрибут живет в родительском диве, то он доступен в скрипте по this.scope.attr('data-topicID'), а если в ссылке, то по $( e.currentTarget ).attr('data-topicID'), т.е. надо будет немного изменить JS, чтобы он брал нужные данные для работы со списком.
  3. \IPS\Data\Cache::i()->clearAll() - не?
  4. topicId должен динамически присваиваться в шаблоне, а controller статичен ...data-topicID='{$topic->tid}'... В предложенном виде это нормально для всплывающего окна, но для больших списков не гут, лучше перенести data-topiciID в ссылку, а в общем диве оставить только controller.
  5. Для того, чтобы сработал скрипт, вы должны в родительском диве прописать (data-controller=) скрипт, который будет вызываться при нажатии на ссылку и передать в него параметры (например, data-topicid - номер темы). А в ссылке в свойстве data-action прописать название функции, которая должна вызваться. Если не прописать скрипт, будет просто переход по ссылке, что и происходит. <div class="..." data-controller="forums.front.forum.hovercard" data-topicid="3322"> <a href="..." title="Отметить тему прочитанной" data-action="markTopicRead">Отметить тему прочитанной</a> </div>
  6. Или ограничить гостям и новичкам (группа 7, например) {{ if \IPS\Member::loggedIn()->inGroup (array(2,7)) and ...
  7. Есть шаблон downloads->front->view->view, дальше просто вместо кнопки {template="downloadButton" group="view" app="downloads" params="$file"} вставляем {{if \IPS\Member::loggedIn()->group['g_id'] == 2 and $file->filesize() > 50000000}} Молодой исчо, вали отседова {{else}} {template="downloadButton" group="view" app="downloads" params="$file"} {{endif}}
  8. Проще скриптом (создать файлик в корневой директории, назвать, например, upd.php) Адреса для удаления записать в отдельный файлик emails.txt, один адрес на строку, тоже положить в корень. Вызвать http://ваш домен.ru/upd.php Предупреждаю, все такие операции надо делать только с копией таблицы базы. После преобразования и проверки переименовать таблицы. <?php \define('REPORT_EXCEPTIONS', TRUE); $_SERVER['SCRIPT_FILENAME'] = __FILE__; require_once 'init.php'; \IPS\Session\Front::i(); $h = \fopen("./emails.txt", "r"); $limit = 0; $in = array(); if ($h) { while (!feof($h)) { $a = rtrim(fgets($h, 256)); if($a !== '') { $in[] = $a; $limit++; } if($limit==50) { \IPS\Db::i()->update( 'core_members_copy', array('allow_admin_mails' => 0), \IPS\Db::i()->in('email', $in)); $in = array(); $limit = 0; } } fclose($h); if($limit) { \IPS\Db::i()->update( 'core_members_copy', array('allow_admin_mails' => 0), \IPS\Db::i()->in('email', $in)); } }
  9. форум пустой, поэтому прокатило, на рабочем надо добавлять поле в таблицу, как я написал в первом сообщении. Команда пытается из одной таблицы скопировать данные в другую, а полей разное количество, вот и лезет ошибка row count.
  10. Вот буквально час назад обновлял тестовый с 4.5 на 4.6, вылезла эта ошибка. В базе на этот момент две таблицы, core_achievements_log_milestones и core_achievements_log_milestones_new, я удалил таблицу без new и переименовал с new, нажал retry и всё поехало без ошибок.
  11. Скачать новый (полный) пакет в кабинете, залить, запустить апгрейд, выбрать только новое приложение. Вроде так.
  12. Добавить в таблицу `core_achievements_log_milestones` поле `milestone_type` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT 'subject',
  13. Desti posted пост в теме in Interface
    Еще, судя по всему, надо добавить (в файле п.1 ) строку public static $commentClass = 'IPS\tutorials\Article\Comment'; Я пока до конца не понял, что они там наколбасили, но хуже в любом случае не будет
  14. Desti posted пост в теме in Interface
    В общем так: 1. добавить (source/../Category.php) параметр в функцию, должно быть так: public function getLastCommentTime( \IPS\Member $member = NULL ) 2. В заголовке класса добавить после use \IPS\Node\Colorize; строку use \IPS\Node\Statistics; 3. В modules/admin/tut../tools.php в функции doCreateTopics() вместо строк $select = \IPS\Db::i()->select( '*', много букав)); $total = $select->count( TRUE ); вставить $select = \IPS\Db::i()->select( '*', 'tutorials_articles', array( implode( ' AND ', $where ) ), 'a_id ASC', array( is_array( $data ) ? $data['done'] : 0, $cycle )); $total = \IPS\Db::i()->select( 'count(*)', 'tutorials_articles', array( implode( ' AND ', $where ) ), 'a_id ASC', array( is_array( $data ) ? $data['done'] : 0, $cycle ))->first(); а в функции rebuildTopicsCycle() заменить похожую конструкцию на $select = \IPS\Db::i()->select( '*', 'tutorials_articles', $_SESSION['tutorials_rebuild_topics'], 'a_id ASC', array( is_array( $data ) ? $data['done'] : 0, $cycle ) ); $total = \IPS\Db::i()->select( 'count(*)', 'tutorials_articles', $_SESSION['tutorials_rebuild_topics'], 'a_id ASC', array( is_array( $data ) ? $data['done'] : 0, $cycle ) )->first(); Вроде больше ошибок не попалось, на последней версии работает и паблик и админка. Будут еще ошибки - пишите, поковыряюсь.
  15. Desti posted пост в теме in Interface
    Там всего пара ошибок, но сейчас нет времени разбираться. В одной функции не хватает параметра и еще одна неопределенная функция, видимо куда-то переместили.
  16. Desti posted пост в теме in Interface
    на данный момент ничего не изменилось, 2.5.2 на инвижине
  17. Desti posted пост в теме in Interface
    pending approval - ожидает утверждения
  18. Герои есть, кнопки "скачать" нет, только Install
  19. Грохните мою регистрацию, плиз..
  20. Нормально зарегился (если вы про fivex.ru). У форума своя защита нормально работает, отключение mod_security ни на что не повлияет.
  21. Хостер скажет добавить в .htaccess строчки <IfModule mod_security.c> SecFilterEngine Off SecFilterScanPOST Off </IfModule>
  22. В настройках ftp надо поставить крыжик на "Show hidden files" - "Показывать скрытые файлы".
  23. Да, есть такое. И, в основном, молодежь этим грешила.
  24. У меня одно время такое лайкодрочерство было, я думал, как почикать, но не смог придумать критериев, по которым надо отлавливать их. Формально любой пользователь имеет право поставить лайк и даже если это перекрестные лайки, доказать ничего невозможно, особенно если интервал большой. Отлавливал вручную, по плюсам на бессмысленных сообщениях, показательно порол, постепенно сошло на нет.
  25. Напрямую Ни один переводчик не сможет перевести "щелкни в ацп-шке на апликухи, там форумы, правой кнопой на карандашик и будет тебе счастье". Для иностранцев приходится писать на "переводимом" русском.