<?xml version='1.0' encoding='UTF-8'?>
<rss version='2.0'>
	<channel>
		<title>cotonti.com : Дополнение для плагинов (ExtDev Helper: show/hide)</title>
		<link>https://www.cotonti.com</link>
		<description>Neueste Themenbeiträge</description>
		<generator>Cotonti</generator>
		<language>en</language>
		<pubDate>Mon, 20 Apr 2026 19:40:19 -0000</pubDate>

		<item>
			<title>Dayver</title>
			<description><![CDATA[Полезное решение. Вот например для плагина карты сайта AN Sitemap думаю было бы самое то
]]></description>
			<pubDate>Sa, 06 Okt 2012 11:05:18 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/de/forums?m=posts&q=7146&d=0#post35739]]></link>
		</item>
		<item>
			<title>Trustmaster</title>
			<description><![CDATA[<p>
	Я до сих пор старался избегать таких сложных конфигов и это даже как-то получалось :) Но если удача меня покинет, то это неплохой вариант :)</p>
]]></description>
			<pubDate>Fr, 05 Okt 2012 04:35:25 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/de/forums?m=posts&q=7146&d=0#post35738]]></link>
		</item>
		<item>
			<title>Macik</title>
			<description><![CDATA[<p>
	:)  </p>
<p>
	Исходники <a href="https://github.com/macik/cot-extdev_showhide" rel="nofollow">https://github.com/macik/cot-extdev_showhide</a></p>
]]></description>
			<pubDate>Do, 04 Okt 2012 19:22:46 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/de/forums?m=posts&q=7146&d=0#post35737]]></link>
		</item>
		<item>
			<title>esclkm</title>
			<description><![CDATA[<p>
	мило! скоро ты совсем убьешь конфиги!)</p>
]]></description>
			<pubDate>Do, 04 Okt 2012 18:17:14 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/de/forums?m=posts&q=7146&d=0#post35734]]></link>
		</item>
		<item>
			<title>Macik</title>
			<description><![CDATA[<p>
	Написал небольшое дополнение для разработчиков. Для удобства оформил в виде плагина, хотя можете использовать в своем проекте просто скопировав часть кода (это просто - об этом ниже).</p>
<p>
	<strong>Что это и для чего:</strong> Это расширение интерфейса настройки плагинов. Если в плагине используется масса настроек, то ориентроваться в них, когда они отображены единой таблицей бывает не просто. Тем более иногда возникают ситуации, когда часть параметров актуальна только в случае выбора конкретного режима или значения. </p>
<p>
	Для этого и служит данное расширение - оно позволяет скрывать и отображать часть параметров в зависимости от того, какие значения вы выбираете.</p>
<p>
	Пример: абстрактный плагин имеет 2 режима работа (режим «все пользователи»/режим « только модератор»), в зависимости от выбранного режима вам надо настроить дополнительные параметры. Естественно в стандартном варианте все параметры всегда будут у вас на экране, что не улдобно. А запустив скрипт вы будете иметь возможность видеть только параметры «для модератора», когда выбран режим «модератор» и видеть параметры «для пользователей», когда выбран режим «пользователи».</p>
<p>
	<strong>Вот тут демка</strong>: <a href="http://static.galaxyhost.org/cotonti/showhide.swf.html" rel="nofollow">http://static.galaxyhost.org/cotonti/showhide.swf.html</a> (экшен начинается с ~7-8 секунды)</p>
<p>
	Реализуется вся эта магия одним JS скриптом (который подгружается на странице настроек плагина) и специальными правилами именования переменных плагина (тех, что располагаются в *.setup.php файле).</p>
<p>
	<strong>Как использовать в своем проекте (2 варианта)</strong></p>
<p>
	1. установить данный плагин в систему, выбрать в его настройках режим «global», переименовать переменные в своем плагине согласно правилам.</p>
<p>
	2. взять JS файл (extdev_showhide.js) из этого плагина и подключить на странице настроек вашего плагина, переименовать переменные в своем плагине согласно правилам.</p>
<p>
	 </p>
<p>
	<strong>Правила именования переменных:</strong></p>
<p>
	для примера. наш плагин может опционально работать с библиотекой jQueryUI, и в настройках плагина присутствует параметр «путь к библиотеке jQueryUI». <br />
	Вот так в таком случае могу выглядеть параметры в setup файле:</p>
<p>
	 </p>
<div>
	<pre class="brush:plain;">
jqueryui=01:radio:0,1:1:Use jQueryUI
jquery_path=02:string::./js/jqueryui.js:Path to jQueryUI lib
</pre>
	<p>
		Естественно, когда мы не используем библиотеку jQueryUI, параметр «путь к библиотеке jQueryUI» нам не нужен, и мы будем его скрывать.</p>
</div>
<p>
	Для этого изменим наименования параметров особым образом: к имени управляющего параметра добавим префикс «_#sh», а к зависимым параметрам (тем, которые будут скрываться/отображаться) добавим префикс «_sh_$», где вместо знака $ надо указать значение главного параметра при выборе которого данный параметр будет отображен. В нашем случае это «1». Получим такой вариант:</p>
<pre class="brush:plain;">
jqueryui_#sh=01:radio:0,1:1:Use jQueryUI
jquery_path_sh_1=02:string::./js/jqueryui.js:Path to jQueryUI lib
</pre>
<p>
	 Теперь второй параметр («путь к библиотеке») в таблице настроек будет отображаться только в том случае, если параметр «jqueryui_#sh» включен.</p>
<p>
	-----------------</p>
<p>
	Плюс такого расширения в его простой интеграции, просто подгрузить 1 js скрипт и переименовать параметры плагина.</p>
<p>
	Если внедряете в уже готовый плагин надо добавить 1-2 строки для переименовывания параметров к вашим стандартным именам:</p>
<pre class="brush:php;">
	$my_plug_cfg = $cfg['plugin']['my_plug'];
	$my_plug_cfg = array_combine(preg_replace("/_#?sh\d*(_.*)?/", '', array_keys($my_plug_cfg)), array_values($my_plug_cfg));
</pre>
<p>
	--------</p>
<p>
	Чуть позже выложу код на ГитХаб.</p>
<p>
	 </p>
]]></description>
			<pubDate>Do, 04 Okt 2012 16:33:24 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/de/forums?m=posts&q=7146&d=0#post35733]]></link>
		</item>
	</channel>
</rss>