Everything posted by Desti
-
Загрузка вложений
если стандартный шаблон переопределен программно, то это от темы не зависит. Да и личные сообщения не используют своих настроек формы сообщений
-
Загрузка вложений
{{if $maxFiles }}data-ipsUploader-maxFiles="{$maxFiles}"{{endif}} Что-то вообще очень странное творится.. Если в этом поле появляется 0, то значит условие {{if $maxFiles}} срабатывает неправильно (что вряд-ли) либо что весь шаблон где-то переопределен.
-
Загрузка вложений
После отключения всех плагинов и левых приложений загляните в таблички core_application и core_plugin, может там какая-то лажа затесалась. Еще можно проверить core_hooks, хаки там должны быть только от системных приложений. Я тут час времени убил за зависающее приложение chatbox, причем зависающее так, что вкладка браузера зависала. Оказалось у меня как-то создалась запись в badword (core_profanity) со словом '' (строка нулевой длины) и тупой скрипт чатбокса пытался заменить все вхождения в вводимом тексте. А их там, как вы понимаете, бесконечное множество с точки зрения JS. И JS там упакованный, то еще веселье. ЗЫ --- еще лучше - скопируйте весь форум (кодовую часть) в локал и поискам прошуршите по файлам на строку 'maxFiles'. Сравните с оригиналом.
-
Загрузка вложений
Можно просто поставить 100, всё равно количество файлов не учитывается, загрузки обсчитываются по общему объему и допустимому размеру одного файла. Ну а если кто копнет глубже, будет интересно, в чем проблема.
-
Загрузка вложений
Да это несложно найти. По фразе "Вам разрешено загрузить" находим ключ 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; Всё, больше нигде эта опция не задается вообще и я не знаю, откуда она берет ноль! Возможно это какой-то очень дурацкий баг, тем более, что такого понятия, как "количество файлов" вообще нет в настройках.
-
Загрузка вложений
-
Загрузка вложений
Очень загадочная ошибка.. Её генерит скрипт, который получает количество файлов из data-* полей. F12, правый клик на окне аттачей - "Посмотреть код", промотать чуть выше до выделенного на картинке и сделать скриншот. Естественно там, где эта ошибка появляется гарантированно.
- Chatbox FREE 4.3.0
- Chatbox FREE 4.3.0
-
Максимальное количество символов в Password
Указать где? Значения вшиты (люблю 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 ) ... так что ручками править или плагинчиком.
-
За что я не люблю IPS :)
При чем тут он? Вместо него давно redis и он работает, но объекты классов не живут в кеше.
-
Помогите найти!
______ __ _____ ____
-
Помогите найти!
Стили начинаются с cUserHovercard, легко находятся в админке в редакторе тем.
-
как обновить форум?
этого не может быть. Единственная версия, почему это может происходить - права на файлы. Возможно вы заливаете файлы под другим пользователем.
-
Совместные покупки плагинов и приложений
Идейка: добавить скрытых "покупателей". Например, человек может покупать, но не делает этого по причине возможных проблем с ипсом в дальнейшем. Админ создает группу скрытых покупателей, которых не надо просить, надо просто выбрать анонимного при создании темы. После заверщения сбора денег организатор отсылает сумму на карту покупателя, тот оплачивает покупку.
-
Учёт комментариев к файлам
Попробуйте бесплатно DontCountComments 1.0.0.xml
-
За что я не люблю IPS :)
Домашний сервер (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 тоже из кеша берет.
-
За что я не люблю IPS :)
Хостинг провайдер "Патсталом", какой-то Core Quad c 4gb и debian 9 на работе.
-
За что я не люблю IPS :)
Вы всё еще спрашиваете, почему IPS такой тормознутый? Время выполнения одинаковых по сути запросов.. В 4 с лишним раза медленнее.. \IPS\Db::i()->select( '*', 'forums_posts', array("pid=?", 471) ) -> 0,00078797340393066 сек. \IPS\forums\Topic\Post::load(471) -> 0,0033941268920898 сек.
-
Учёт комментариев к файлам
Штатно - вроде никак. Грубо - в файл applications/downloads/sources/File/Comment.php добавить функцию public static function incrementPostCount( \IPS\Node\Model $container = NULL ) { return FALSE; } Совсем нежно - кодовый плагинчик изобразить на класс \IPS\downloads\File\Comment на одноименную функцию.
-
Защита от двойных регистраций
Не получится. Можно заблокировать хостинг-провайдеров, можно подключить проверку по спам-базам и базам IP, но от "честных" регистраций (с домашних провайдеров, с сотовых сетей) вы никак не спасетесь. Только жесткая модерация, запрет ЛC, блокировка сообщений по ключевым словам и ссылкам.
-
Как закрывать форумы автоматически?
Не думаю, что вам поможет форма в пустом приложении. Найду время, сделаю вам шаблончик для изучения.
-
Как закрывать форумы автоматически?
Это написанное за 5 минут приложение.
-
Как закрывать форумы автоматически?
Создайте простое приложение и тренируйтесь. Плагины не совсем то, что нужно для решения этой задачи. Это усложнение. Вам нужна форма ввода даты и поле ввода времени в простейшем формате типа часы / минуты. Что-то типа
-
Как закрывать форумы автоматически?
Чтобы создать что-то для исполнения в будущем, надо, во первых, создать форму, в которой указывается форум, время и дата, во вторых, создать табличку в базе (или хранить в Store) и записывать в нее данные из формы, в третьих, создать задачу, которая раз в минуту будет проверять табличку и при наступлении указанного времени закрывать форум. Тянет на целое приложение