Добрый день граждане. Помогите с решением проблемы. Поставил себе IPS форум. Пользуюсь такой, а потом появилась потребность скрывать под хайд ссылочки. Да вот только не просто схайдить, а дать условие на отображение. Скрипты в шаре не дают таких возможностей. В самом популярном присутствует только такое. [_hide] тут текст [/hide] А нужно чтобы было такого плана [_hide условие]text[/hide] Условие одно, пишем ручками [_hide p=int] где p= < Это константа чтобы сработало условие, int количество постов. Заглянул в скрипт который популярный. И чего то приуныл. При попытке сделать нечто похожее получил какашку. Вот оригинал настроек [ATTACH] вот после моего криворукого вмешательства [ATTACH] Естественно нифига не работает. Помогите с настройкой. Код прячется тут if ( in_array("hide", $types) ) { $content = preg_replace('/\[hide\](.+?)\[\/hide\]/is', \IPS\Theme::i()->getTemplate( 'plugins', 'core', 'global' )->bim_hide_box("$1"), $content); } if ( self::bypassHiddenContent($this) ) { return $content; } # Hide content $msg = \IPS\Theme::i()->getTemplate( 'plugins', 'core', 'global' )->bim_hide_msg(self::$forceHide, $this->getUnHideAction()); preg_match_all('#<a[^>]+href=([\'"])(.+?)\1[^>]*>(.+?)<\/a>#', $content, $match); if ( in_array("hide", $types) ) { $content = preg_replace('/<!--startHideContent-->(.+?)<!--endHideContent-->/is', $msg, $content); } if ( in_array("HIDE-test", $types) ) { $content2 = preg_replace('/<!--startHideContent-->(.+?)<!--endHideContent-->/is', $msg, $content); } for ( $u = 0 ; $u < count( $match[0] ) ; $u++ ) { if ( in_array("images", $types) && mb_stripos($match[3][$u], "<img ") !== false ) { $content = str_replace( $match[0][$u], $msg, $content); } if ( in_array("links", $types) ) { if ( mb_strpos($match[0][$u], "external nofollow") !== FALSE ) { $content = str_replace( $match[0][$u], $msg, $content); } } if ( in_array("attachment", $types) && mb_stripos($match[2][$u], "attachment.php") !== false ) { $content = str_replace( $match[0][$u], $msg, $content); } } if ( in_array("images", $types) ) { $content = preg_replace('#<img((?!data-emoticon).)*src=([\'"])(.+?)\1[^>]*>#', $msg, $content); } if ( in_array("code", $types) ) { $content = preg_replace('/<pre class="ipsCode(.*?)">(.+?)<\/pre>/is', $msg, $content); } Прикрепляю полный скрипт Помогите пожалуйста в дополнении скрипта. Известные данные // загрузить текущего пользователя $memberTest = \IPS\Member::loggedIn(); // Имя echo $memberTest->name; //Репутация echo $memberTest->pp_reputation_points; //Посты echo $memberTest->member_post;
<script> alert('Пофиксите XSS в поиске'); </script> А теперь забейте в поиск: Test Theme Или (для ленивых): https://mmorpg-devs.ru/search/1383611/?q=Test Theme
Имена участников (разделяйте запятой).