Posts posted by Exception
-
-
6 часов назад, by_ix сказал:
ну либо мне так везёт всегда, либо вам.
после каждой обновы и деф, и свой шаблон остаётся со старыми правками.
при обнове на 4.6 вообще всё вручную пришлось сносить в деф шаблоне, потому что из-за старых правок, некоторое новое криво оторбажалось. 😐
сделай бэкап форума и разверни его на поддомене с новой бд, там и обновишься, и посмотришь, что слетит.
я так понял, движок при обновлении добавляет\изменяет только не тронутые тобой шаблоны темы. Если хочешь чистую с правками по версии, то нужно создать новую дефолтную тему.
20 часов назад, the.bunin сказал:потому что сыкотно обновляться, как послетает все 😂
Я тебя умоляю, бахнул пиваса для храбрости или водочки как @SlawkA, сделал бэкап, да как накатил обнову!
-
-
-
7 часов назад, WaNted сказал:
Глянь \IPS\Content\Search\Result::preDisplay
там вроде везде уже отформатированный текст выводит. Я нашел обходной путь, так как в public function indexData() вызывается searchIndexContent(), я просто в IPS\Content в эту функцию запилил \IPS\Text\Parser::removeElements( $content, array( 'div[class=my_spoiler]' ) );
-
-
Через truncated тоже удаляет только в приложении страниц
/** * Removes HTML and optionally truncates content * * @param bool $oneLine If TRUE, will use spaces instead of line breaks. Useful if using a single line display. * @param int|null $length If supplied, and $oneLine is set to TRUE, the returned content will be truncated to this length * @return string * @note For now we are removing all HTML. If we decide to change this to remove specific tags in future, we can use \IPS\Text\Parser::removeElements( $this->content() ) */ static public function truncate( $content, $oneLine=false, $length=500 ) { $content = static::removeElements( $content, array( 'div[class=my_spoiler]' ) ); return parent::truncate( $content, $oneLine, $length ); }
у меня уже мозг плавится, не понимаю как удалить в профиле и т.д.
-
-
/** * Remove specific elements, useful for cleaning up content for display or truncating * * @param string $value The value to parse * @param array|string $elements Element to remove, or array of elements to remove. Can be in format "element[attribute=value]" * @return string */ public static function removeElements( $value, $elements=array( 'blockquote', 'img', 'a' ) ) { array_push($elements, 'div[class=my_spoiler]'); return parent::removeElements( $value, $elements ); }
я попробовал добавить элемент глобально, он удаляет его в приложении страниц (главная страница со списком статей), но не удаляет в профиле, страниц с результатами поиска и т.д.
-
-
-
Edited by ZIKURIK
42 минуты назад, SlawkA сказал:Respected привет. сделал бы объявление о PHP 8
что если будете обновляться, то 8 версия пыха все таки нужна.
4.6 возможно еще не полностью поддерживает php 8, об этом говорят их постоянные фиксы кода для php 8
1 минуту назад, Respected сказал:На php7 тоже работает корректно.
+
на php 7.4 работает все как надо -
1 час назад, Adrg сказал:
Все гораздо проще, мемберы должны грузить не думая, скины, видео, архивы, цель это архивы, обычно ставят простые пароли и задача что бы в них не покопались, также есть свой файлообмен,, как просто файлами, также отгрузка лицензий и много что представляет коммерческую ценность для рынка серого трафика, Амазон может взбрыкнуть и отказать в сервисе, что уже происходит на дружественных форумах. То есть вся "помойка " с громким названием S3, ведомая и неисполнительная, их соглашение говорит, что если у вас лицо не бритое, то уже нельзя такие фото грузить и они в праве отказать. Все про-пиндосовское одно большое Г-но. Маркетинг у них на высоте как всегда, но мы то с вами умные люди что бы на такую техническую реализацию вестись.
В моем понимании, например, завести акк на _https://imgur.com и автоматом туда медиа отправлять с форума, как например делают XenForo.
Кто такой плагин напишет неплохо заработает.
в таком случае можно поднять собственный CDN сервер,
-
-
3 минуты назад, Respected сказал:
Движок указанной функцией обрезает теги, например здесь system/Content/Search/Index
/* Strip spoilers */ $content = $object->searchIndexContent(); if ( preg_match( '#<div\s+?class=["\']ipsSpoiler["\']#', $content ) ) { $content = \IPS\Text\Parser::removeElements( $content, array( 'div[class=ipsSpoiler]' ) ); } /* Take the HTML out of the content */ $content = trim( str_replace( \chr(0xC2) . \chr(0xA0), ' ', strip_tags( preg_replace( "/(<br(?: \/)?>|<\/p>)/i", ' ', preg_replace( "#<blockquote(?:[^>]+?)>.+?(?<!<blockquote)</blockquote>#s", " ", preg_replace( "#<script(.*?)>(.*)</script>#uis", "", ' ' . $content . ' ' ) ) ) ) ) );
тогда какой он удаляет то, что находится в ipsSpoiler ?
-
какая функция удаляет например ipsSpoiler из контента на страницах профиля, поиска и т.д.? Либо я туплю, но функция public static function removeElements в IPS\Text\Parser ничего не удаляет
-
-
43 минуты назад, Desti сказал:
А как в одном плагине-приложении два языка в дистрибутив запихнуть?
я пока смотрел нашел много вариантов, но это такое себе на самом деле, потому что средствами ips такого не сделать, например в js можно подтягивать разные ключи или собственные фразы в зависимости от например var language = $('html').attr('lang'); или при помощи php сделать собственную систему, но это будет зря потраченное время
-
-
Как правильно инициализировать кастомную языковую строку (Англ+Рус) в js? У меня есть допустим кастомная строка добавленная в язык ручным способом через Языки, и есть переводимое текстовое поле в плагине.
Например так я не могу сделать, js не подхватывает строку:ips.templates.set('core.editor.ultrahide', "\ {{#lang}}editor_mycustomlangkey{{/lang}}\ ");
или я пытаюсь вывести строку через ips.getSetting('editor_mycustomlangkey') заранее добавив хук в диспетчер \IPS\Output::i()->jsVars но так выводится строка с двумя переводами через запятую, т.е. это явно не подходит.
ips.getString('editor_mycustomlangkey') так-же не подхватывает языковые строки -
1 час назад, SlawkA сказал:
Nahimovets привет.
мне интересно, а на скрине где я пометил это обязательно?
и нет в коде закрывающего тега внизу. я всего лишь предполагаю.
https://invisioncommunity.com/developers/docs/development/plugins/code-hooks-r42/
-
Edited by ZIKURIK
8 часов назад, Riddick сказал:ZIKURIK добавлю...
Ошибки нет..., пересчет всем участникам их сообщений сделан, но количество после создания темы или ответа в тему не меняется.
В общем вернул все как было, будем ждать обновление.
У меня после исправления и дополнительного перерасчета контента все работает как надо. С значками проблем не было, выдаются в зависимости от условий. Ранг пересчитывается моментально при добавлении контента (увеличение очков). Видимо проблема у вас индивидуальная.
-
{{$record_id = 1; $db_id = 1; $db_class = '\IPS\cms\Records'.$db_id;}} {{$record_loaded = $db_class::load($record_id);}} {$record_loaded->customFieldDisplayByKey('base_conn', 'display')|raw}
$record_id - id записи из нужной базы, откуда будет брать данные
$db_id - id базы данных
код на работоспособность не проверял -
Вроде нашел где ошибка, можно не делать действий которые выше, а делаем так:
Идем по адресу: мойсайт\applications\forums\sources\Topic открываем файл ArchivedPost.php
ищем строку 126: return \IPS\Db::i()->select( 'COUNT(*)', 'forums_posts', $where )->first();
изменяем forums_posts на forums_archive_posts
сохраняем. Пробуем пересчитать контент -
Edited by ZIKURIK
1 час назад, Artemka сказал:Так и не исправили эту ошибку IPS-овцы
Подтверждаю, ошибка имеется
Если нету форумного архива с постами пользователей, можно временно выключить перерасчет постов из архива
мойсайт\system\Member\ открываем файл Member.php
ищем строку 3809:
public function recountContent()
чуть ниже ищем строку 3812:
foreach ( \IPS\Content::routedClasses( $this, TRUE, FALSE ) as $class )
изменяем с TRUE на FALSE
сохраняем
Пробуем пересчитать контент
это как временное решение, позже посмотрю в чем заключается ошибка если это прям кому то очень нужно
Invision Community 4 Nulled
in Releases Invision Community
это вроде как уже исправленная версия