Jump to content

Desti

Актив
  • Регистрация

  • В сети

Everything posted by Desti

  1. если стандартный шаблон переопределен программно, то это от темы не зависит. Да и личные сообщения не используют своих настроек формы сообщений
  2. {{if $maxFiles }}data-ipsUploader-maxFiles="{$maxFiles}"{{endif}} Что-то вообще очень странное творится.. Если в этом поле появляется 0, то значит условие {{if $maxFiles}} срабатывает неправильно (что вряд-ли) либо что весь шаблон где-то переопределен.
  3. После отключения всех плагинов и левых приложений загляните в таблички core_application и core_plugin, может там какая-то лажа затесалась. Еще можно проверить core_hooks, хаки там должны быть только от системных приложений. Я тут час времени убил за зависающее приложение chatbox, причем зависающее так, что вкладка браузера зависала. Оказалось у меня как-то создалась запись в badword (core_profanity) со словом '' (строка нулевой длины) и тупой скрипт чатбокса пытался заменить все вхождения в вводимом тексте. А их там, как вы понимаете, бесконечное множество с точки зрения JS. И JS там упакованный, то еще веселье. ЗЫ --- еще лучше - скопируйте весь форум (кодовую часть) в локал и поискам прошуршите по файлам на строку 'maxFiles'. Сравните с оригиналом.
  4. Можно просто поставить 100, всё равно количество файлов не учитывается, загрузки обсчитываются по общему объему и допустимому размеру одного файла. Ну а если кто копнет глубже, будет интересно, в чем проблема.
  5. Да это несложно найти. По фразе "Вам разрешено загрузить" находим ключ uploadMaxFilesErr, по этому ключу находим единственное применение в ips.ui.uploader.js в функции, которая вызывается при добавлении файла. message: ips.pluralize( ips.getString( 'uploadMaxFilesErr' ), options.maxFiles ) - теперь понятно, откуда ошибка. JS берет данные из html, значит их кто-то туда плюет. Ищем data-ipsUploader-maxFiles и находим 4 шаблона, где эта переменная используется. Например global/forms/uploads. В принципе этого достаточно, чтобы решить проблему, прибиваем эту конструкцию везде, где находим {{if $maxFiles }}data-ipsUploader-maxFiles="{$maxFiles}"{{endif}} Если копать дальше, то добираемся для helpers/forms/Editor и /Upload, куда это значение попадает из подсистем, использующих редактор с полем upload. 'maxFiles' => NULL, // Maximum number of files that can be uploaded Значение передается в опциях формы Upload - ищем, находим в promote.php: 'maxFiles' => 10, и в галерее $options['maxFiles'] = $maxNumberOfImages; Всё, больше нигде эта опция не задается вообще и я не знаю, откуда она берет ноль! Возможно это какой-то очень дурацкий баг, тем более, что такого понятия, как "количество файлов" вообще нет в настройках.
  6. Вот где оно живет.. Осталось найти, почему это дерьмо туда попадает.
  7. Очень загадочная ошибка.. Её генерит скрипт, который получает количество файлов из data-* полей. F12, правый клик на окне аттачей - "Посмотреть код", промотать чуть выше до выделенного на картинке и сделать скриншот. Естественно там, где эта ошибка появляется гарантированно.
  8. Desti posted пост в теме in Interface
    А... я же ее под dev mode запускаю, а он все ошибки отлавливает... Что за дурацкая система, без dev работает, с dev находит кучу ошибок
  9. Desti posted пост в теме in Interface
    Это у меня всё плохо или как? php7.4.последняя, форум 4.6.5.1, чатбокс не запускается, ошибки. Исправил, запустилось, но интересно, его кто-нить ставил на последнюю???
  10. Указать где? Значения вшиты (люблю IPS всё сильнее и сильнее) в \IPS\Helpers\Form\Password /* Password length */ if ( mb_strlen( $this->value ) < 3 AND ( $this->required OR (string) $this->value ) ) ... if ( $this->options['enforceMaxLimit'] and mb_strlen( $this->value ) > 72 ) ... так что ручками править или плагинчиком.
  11. Desti posted пост в теме in Флейм
    При чем тут он? Вместо него давно redis и он работает, но объекты классов не живут в кеше.
  12. ______ __ _____ ____
  13. Стили начинаются с cUserHovercard, легко находятся в админке в редакторе тем.
  14. этого не может быть. Единственная версия, почему это может происходить - права на файлы. Возможно вы заливаете файлы под другим пользователем.
  15. Идейка: добавить скрытых "покупателей". Например, человек может покупать, но не делает этого по причине возможных проблем с ипсом в дальнейшем. Админ создает группу скрытых покупателей, которых не надо просить, надо просто выбрать анонимного при создании темы. После заверщения сбора денег организатор отсылает сумму на карту покупателя, тот оплачивает покупку.
  16. Попробуйте бесплатно DontCountComments 1.0.0.xml
  17. Desti posted пост в теме in Флейм
    Домашний сервер (i5 какой-то, 16gb, ssd) \IPS\Db::i()->select( '*', 'forums_posts', array("pid=?") ) -> 0.000020980835 сек. \IPS\forums\Topic\Post::load() -> 0.003468036652сек. load / DB = 165.295454256230 $mysqli->query("SELECT * FROM forums_posts where pid=") -> 0.000183105469сек. load / mysqli = 18.940104142930 Форумный сервер (Xeon E5-2620, 64gb) \IPS\Db::i()->select( '*', 'forums_posts', array("pid=?") ) -> 0.000013828278сек. \IPS\forums\Topic\Post::load()-> 0.001410961151сек. load / DB = 102.034479708898 $mysqli->query("SELECT * FROM forums_posts where pid=") -> 0.000104904175сек. load / mysqli = 13.449999973786 Первая строка, скорее всего, из кеша, но всё равно ужас-ужас, ведь load тоже из кеша берет.
  18. Desti posted пост в теме in Флейм
    Хостинг провайдер "Патсталом", какой-то Core Quad c 4gb и debian 9 на работе.
  19. Desti posted пост в теме in Флейм
    Вы всё еще спрашиваете, почему IPS такой тормознутый? Время выполнения одинаковых по сути запросов.. В 4 с лишним раза медленнее.. \IPS\Db::i()->select( '*', 'forums_posts', array("pid=?", 471) ) -> 0,00078797340393066 сек. \IPS\forums\Topic\Post::load(471) -> 0,0033941268920898 сек.
  20. Штатно - вроде никак. Грубо - в файл applications/downloads/sources/File/Comment.php добавить функцию public static function incrementPostCount( \IPS\Node\Model $container = NULL ) { return FALSE; } Совсем нежно - кодовый плагинчик изобразить на класс \IPS\downloads\File\Comment на одноименную функцию.
  21. Не получится. Можно заблокировать хостинг-провайдеров, можно подключить проверку по спам-базам и базам IP, но от "честных" регистраций (с домашних провайдеров, с сотовых сетей) вы никак не спасетесь. Только жесткая модерация, запрет ЛC, блокировка сообщений по ключевым словам и ссылкам.
  22. Не думаю, что вам поможет форма в пустом приложении. Найду время, сделаю вам шаблончик для изучения.
  23. Это написанное за 5 минут приложение.
  24. Создайте простое приложение и тренируйтесь. Плагины не совсем то, что нужно для решения этой задачи. Это усложнение. Вам нужна форма ввода даты и поле ввода времени в простейшем формате типа часы / минуты. Что-то типа
  25. Чтобы создать что-то для исполнения в будущем, надо, во первых, создать форму, в которой указывается форум, время и дата, во вторых, создать табличку в базе (или хранить в Store) и записывать в нее данные из формы, в третьих, создать задачу, которая раз в минуту будет проверять табличку и при наступлении указанного времени закрывать форум. Тянет на целое приложение