<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>JSToolbox - все о JavaScript &#187; Плагины</title>
	<atom:link href="http://www.jstoolbox.com/category/plaginy/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jstoolbox.com</link>
	<description>Блог о программировании вообще и о JavaScript в частности, уроки, статьи, заметки, база знаний.</description>
	<lastBuildDate>Mon, 07 Mar 2011 18:19:17 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Lighter.js &#8211; подсветка синтаксиса для Mootools</title>
		<link>http://www.jstoolbox.com/2009/05/02/lighterjs-podsvetka-sintaksisa-dlya-mootools/</link>
		<comments>http://www.jstoolbox.com/2009/05/02/lighterjs-podsvetka-sintaksisa-dlya-mootools/#comments</comments>
		<pubDate>Sat, 02 May 2009 20:50:28 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[MooTools]]></category>
		<category><![CDATA[Плагины]]></category>
		<category><![CDATA[подсветка синтаксиса]]></category>

		<guid isPermaLink="false">http://www.jstoolbox.com/?p=449</guid>
		<description><![CDATA[<p><a href="http://pradador.com/code/lighterjs/" title="Lighter.js">Lighter.js</a> - это скрипт для подсветки синтаксиса, который использует для своей работы библиотеку <a href="http://mootools.net" title="Mootools">Mootools</a>. Скрипт прост в использовании и настройке, имеет различные цветовые темы. Я создал небольшой демо пример, чтобы вы могли оценить его способности. <a href="http://jstoolbox.com/demo/lighter.php" title="Демо пример подсветки синтаксиса">Смотреть демо пример</a>.</p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://pradador.com/code/lighterjs/" title="Lighter.js">Lighter.js</a> &#8211; это скрипт для подсветки синтаксиса, который использует для своей работы библиотеку <a href="http://mootools.net" title="Mootools">Mootools</a>. Скрипт прост в использовании и настройке, имеет различные цветовые темы. Я создал небольшой демо пример, чтобы вы могли оценить его способности. <a href="http://jstoolbox.com/demo/lighter.php" title="Демо пример подсветки синтаксиса">Смотреть демо пример</a>.</p>
<p><span id="more-449"></span></p>
<p>Теперь о том, как подключить и использовать скрипт.</p>
<p>Во-первых нужно скачать и подключить необходимые скрипты:</p>
<pre class="prettyprint">
&lt;script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/mootools/1.2.1/mootools-yui-compressed.js">&lt;/script>
&lt;script type="text/javascript" src="source/Lighter.js">&lt;/script>
&lt;script type="text/javascript" src="source/Flame.js">&lt;/script>
&lt;script type="text/javascript" src="source/Flame.git.js">&lt;/script>
&lt;script type="text/javascript" src="source/Fuel.js">&lt;/script>
&lt;script type="text/javascript" src="source/Fuel.js.js">&lt;/script>
&lt;script type="text/javascript" src="source/Fuel.ruby.js">&lt;/script>
</pre>
<p>Сначала подключается файл библиотеки Mootools, затем исходники Lighter.js. Заметьте, что файлы с префиксом <em>Flame</em>, содержат темы для подсветки синтаксиса. То есть, если вы хотите иметь подсветку в стиле <a href="http://github.com">github.com</a>, то подключите файл <em>Flame.git.js</em>. Файлы с префиксом <em>Fuel</em> распознают исходный код языков. Это значит, что если вам нужно подсвечивать исходники на языках <em>Ruby</em> и <em>JavaScript</em>, то нужно подключить файлы <em>Fuel.ruby.js</em> и <em>Fuel.js.js</em>.</p>
<p>Блоки с подсвечиваемым кодом нужно отметить классом, в котором нужно указать язык программирования и тему подсветки:</p>
<pre class="prettyprint">
&lt;pre class="ruby:git">
// далее подсвечиваемый код
&lt;/pre>
</pre>
<p>Помимо этого, есть и другой способ указать скрипту тему и язык программирования &#8211; это указать в опциях вызова скрипта параметры <strong>Flame</strong> и <strong>Fuel</strong>.</p>
<p>Заключительный шаг &#8211; вызов функции <strong>light</strong>, в которую можно передать различные параметры работы скрипта:</p>
<pre class="prettyprint">
$$('pre').light({
    altLines: 'hover',
    mode: 'ol'
});
</pre>
<p>Здесь, в качестве параметров я передаю значение <em>hover</em> для парметра <strong>altLines</strong> для подсветки строк при наведении на них указателя мышки, <em>ol</em> для параметра <strong>mode</strong> для того, чтобы показывать номера строк. Все остальные опции можно узнать <a href="http://pradador.com/code/lighterjs/">здесь</a>.</p>
<p><a href="http://jstoolbox.com/demo/lighter.php" class="demo">Смотреть демо</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jstoolbox.com/2009/05/02/lighterjs-podsvetka-sintaksisa-dlya-mootools/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Диалоговые окна на jQuery</title>
		<link>http://www.jstoolbox.com/2009/01/06/dialogovye-okna-na-jquery/</link>
		<comments>http://www.jstoolbox.com/2009/01/06/dialogovye-okna-na-jquery/#comments</comments>
		<pubDate>Mon, 05 Jan 2009 22:13:53 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Плагины]]></category>
		<category><![CDATA[диалоговые окна]]></category>
		<category><![CDATA[плагин]]></category>

		<guid isPermaLink="false">http://www.jstoolbox.com/?p=331</guid>
		<description><![CDATA[<p>Некоторое время назад я <a href="http://www.jstoolbox.com/2008/09/29/dialog-alert-na-yui/" title="Диалог alert на YUI">писал</a> о том, как создать диалоговые окна для замены стандартных диалогов <strong>alert</strong>, <strong>confirm</strong>, <strong>prompt</strong> при помощи библиотеки <a href="http://developer.yahoo.com/yui">YUI</a>. Однако, учитывая то, что популярность библиотеки jQuery в разы превышает популярность YUI, то думаю вам больше прийдется по душе следующий <a href="http://abeautifulsite.net/notebook/87">плагин</a> (автор Cory S.N. LaViska), который может заменить стандартные, серые, ничем не примечательные, диалоговые окна на более красивые.</p>]]></description>
			<content:encoded><![CDATA[<p>Некоторое время назад я <a href="http://www.jstoolbox.com/2008/09/29/dialog-alert-na-yui/" title="Диалог alert на YUI">писал</a> о том, как создать диалоговые окна для замены стандартных диалогов <strong>alert</strong>, <strong>confirm</strong>, <strong>prompt</strong> при помощи библиотеки <a href="http://developer.yahoo.com/yui">YUI</a>. Однако, учитывая то, что популярность библиотеки jQuery в разы превышает популярность YUI, то думаю вам больше прийдется по душе следующий <a href="http://abeautifulsite.net/notebook/87">плагин</a> (автор Cory S.N. LaViska), который может заменить стандартные, серые, ничем не примечательные, диалоговые окна на более красивые.</p>
<p><span id="more-331"></span></p>
<p>В YUI сделать такие окна максимально просто, только потому, что там используются стандартный диалог этой библиотеки &#8211; <strong>SimpleDialog</strong>. С jQuery дело обстоит несколько сложнее, потому что в стандартной поставке таких диалогов нет. В данном плагине такое окно создается самостоятельно, плюс для нормального отображения требуется подключить CSS:</p>
<pre class="prettyprint">
&lt;!-- файлы библиотеки jQuery -->
&lt;script src="/path/to/jquery.js" type="text/javascript">&lt;/script>
&lt;script src="/path/to/jquery.ui.draggable.js" type="text/javascript">&lt;/script>
&lt;!-- файлы плагина -->
&lt;script src="/path/to/jquery.alerts.js" type="text/javascript">&lt;/script>
&lt;link href="/path/to/jquery.alerts.css" rel="stylesheet" type="text/css" media="screen" />
</pre>
<p>Файл <em>jquery.ui.draggable.js</em> подключать не обязательно. Он нужен для того, чтобы окошки можно было перетаскивать, хотя я честно говоря не понимаю, кому может понадобиться перетаскивать модальные окна <img src='http://www.jstoolbox.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>После подключения плагина нам будут доступны три функции <strong>jAlert</strong>, <strong>jConfirm</strong> и <strong>jPrompt</strong>:</p>
<pre class="prettyprint">
jAlert(message, [title, callback]);
jConfirm(message, [title, callback]);
jPrompt(message, [value, title, callback]);
</pre>
<p>А вот здесь уже заметно значительное отличие от стандартных окон &#8211; это количество параметров, обязательным является только первый. Также обратите внимание, что в отличии от стандартных, наши окна не возвращают никаких значений, а значит их нельзя использовать также, как и стандартные:</p>
<pre class="prettyprint">
&lt;a href="/some/link/here/" onclick="return confirm('текст')">&lt;/a>
</pre>
<p>Здесь, в случае если <strong>confirm</strong> вернет значение <em>false</em>, то будет отменено действие ссылки по умолчанию, т.е. броузер не перейдет по ссылке. Если же использовать наши окна, то все будет несколько сложнее:</p>
<pre class="prettyprint">
$(function(){
	$('a').click(function(e){
		e.preventDefault();
		var href = $(this).attr('href');
		jConfirm(
				'Подтвердите',
				'Заголовок',
				function(b){
					if (b){
						window.location = href;
					}
				}
			);
	});
});
</pre>
<p>Дело в том, что <strong>jConfirm()</strong>, также, как и другие функции плагина передает результат выполнения в callback, который нужно указать третьим параметром. Поэтому в примере я использовал <strong>preventDefault()</strong>, чтобы отменить значение по умолчанию, а потом в callback-е указываю, что нужно сделать, если пользователь ответил утвердительно.</p>
<p><a href="http://abeautifulsite.net/notebook_files/87/demo/" class="demo">Смотреть демо</a>&nbsp;<a href="http://abeautifulsite.net/notebook/87#download" class="download">Скачать</a></p>
<div class="postLinks">
<strong>Спонсор статьи:</strong><br />
Продвижение сайтов, <a href="http://cooper-design.com.ua/seo.html">раскрутка сайта Одесса</a><br/><br />
Университеты Одессы: <a href="http://dir.od.ua/ucheba/visshee_obrazovanie">одесская академия связи</a><br/><br />
<a href="http://alkogolya.net/">лечение наркомании</a>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.jstoolbox.com/2009/01/06/dialogovye-okna-na-jquery/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Новый плагин для Mootools &#8211; Request.Queue</title>
		<link>http://www.jstoolbox.com/2008/12/07/mootools-request-queue/</link>
		<comments>http://www.jstoolbox.com/2008/12/07/mootools-request-queue/#comments</comments>
		<pubDate>Sun, 07 Dec 2008 21:16:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[AJAX]]></category>
		<category><![CDATA[MooTools]]></category>
		<category><![CDATA[Плагины]]></category>
		<category><![CDATA[плагин]]></category>

		<guid isPermaLink="false">http://www.jstoolbox.com/?p=281</guid>
		<description><![CDATA[<p><a href="http://www.clientcide.com/code-snippets/ajax/new-plugin-requestqueue/">Request.Queue</a> - это новый плагин для библиотеки <a href="http://mootools.net">Mootools</a>, который позволяет последовательно отправлять AJAX запросы на сервер. Работает это так: пользователь создает некоторое количество запросов  <strong>Request</strong>, которые должны быть отправлены на сервер один за одним, затем добавляет их в очередь <strong>Request.Queue</strong>, после чего для каждого запроса вызывается метод <strong>send()</strong> в том порядке, в котором они должны быть отправлены.</p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.clientcide.com/code-snippets/ajax/new-plugin-requestqueue/">Request.Queue</a> &#8211; это новый плагин для библиотеки <a href="http://mootools.net">Mootools</a>, который позволяет последовательно отправлять AJAX запросы на сервер. Работает это так: пользователь создает некоторое количество запросов  <strong>Request</strong>, которые должны быть отправлены на сервер один за одним, затем добавляет их в очередь <strong>Request.Queue</strong>, после чего для каждого запроса вызывается метод <strong>send()</strong> в том порядке, в котором они должны быть отправлены.</p>
<p><span id="more-281"></span></p>
<p>Рассмотрим следующий пример:</p>
<pre class="prettyprint">
var num1 = new Request({ url: '/wiki/simple.php', data: {num: 1, sleep: 1}, method: 'get',
    onComplete: function(response){ console.log(response) } });
var num2 = new Request({ url: '/wiki/simple.php', data: {num: 2, sleep: 1}, method: 'get',
    onComplete: function(response){ console.log(response) } });
var num3 = new Request({ url: '/wiki/simple.php', data: {num: 3, sleep: 1}, method: 'get',
    onComplete: function(response){ console.log(response) } });
var myQueue = new Request.Queue();
// можно добавлять запросы по одному
myQueue.addRequest('num1', num1);
// ... или сразу несколько
myQueue.addRequests({ num2: num2, num3: num3 });
num1.send();
num2.send();
num3.send();
</pre>
<p>В этом примере очередь запросов будет отправлять по очереди запросы <em>num1</em>, <em>num2</em>, <em>num3</em>. Каждый из них будет отправляться только после того, как предыдущий завершился.</p>
<p>Стоит отметить, что <strong>Request.Queue</strong> может отправлять не только по одному запросу за раз, а и по нескольку, если указать для него опцию <strong>concurrent</strong> (по умолчанию равняется 1). Кроме этой опции, есть также <strong>stopOnFailure</strong> и <strong>autoAdvance</strong> (обе по умолчанию равны <em>true</em>). Первая приостанавливает отправку запросов при возникновении ошибки, при этом возобновить отправку запросов можно при помощи функции <strong>resume()</strong>. Если установить эту опцию в <em>false</em>, то запросы будут отправляться даже если один из них завершился с ошибкой. Вторая опция &#8211; <strong>autoAdvance</strong> автоматически отправляет следующий запрос. Если установить опцию в <em>false</em>, то отправить следующий запрос в очереди можно будет используя функцию <strong>runNext()</strong>.</p>
<p>Как вы уже видели из предыдущего примера, запросы можно добавлять при помощи функций <strong>addRequest()</strong> и <strong>addRequests()</strong>. Удалять запросы из очереди можно при помощи функции <strong>removeRequest()</strong>:</p>
<pre class="prettyprint">
var foo = new Request();
myRequestQueue.addRequest('fooRequest', foo);
myRequestQueue.removeRequest(foo);
// или
myRequestQueue.removeRequest('fooRequest');
</pre>
<p>Если вам нужно полностью очистить очередь запросов, то это можно сделать одной функцией &#8211; <strong>clear()</strong>:</p>
<pre class="prettyprint">
myRequestQueue.clear();
</pre>
<p>Также, объектам Request.Queue можно назначать следующие события:</p>
<ul>
<li>onRequestStart</li>
<li>onRequestEnd</li>
<li>onRequestSuccess</li>
<li>onRequestComplete</li>
<li>onRequestCancel</li>
<li>onRequestException</li>
<li>onRequestFailure</li>
</ul>
<p>Узнать подробнее о всех функциях и событиях можно в <a href="http://www.clientcide.com/docs/Request/Request.Queue" title="Документация к плагину Request.Queue">документации</a>. Скачать скрипт можно <a href="http://www.clientcide.com/js" title="Скачать скрипт">здесь</a> &#8211; просто отметьте в списке доступных для скачивания плагинов Request.Queue и жмите Download.</p>
<div class="postLinks"><strong>Спонсор статьи</strong>:<br/>Профессиональное <a href="http://netpeak.net/">продвижение сайтов</a>, раскрутка в поисковых системах, оптимизация интернет-магазинов.<br/><a href="http://www.vashsad.ua/rus/useful_clauses_landscape_5.html">Живая изгородь</a> своими руками на сайте &#8220;Ваш Сад&#8221;.<br/><a href="http://dvdray.com.ua/">Интернет-магазин dvd</a> &#8211; купить dvd-диски в киеве, продажа фильмов DVD почтой, dvd в украине.</div>
]]></content:encoded>
			<wfw:commentRss>http://www.jstoolbox.com/2008/12/07/mootools-request-queue/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Загрузка изображений в tinyMCE</title>
		<link>http://www.jstoolbox.com/2008/12/05/zagruzka-izobrazhenij-v-tinymce/</link>
		<comments>http://www.jstoolbox.com/2008/12/05/zagruzka-izobrazhenij-v-tinymce/#comments</comments>
		<pubDate>Thu, 04 Dec 2008 23:00:06 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[tinyMCE]]></category>
		<category><![CDATA[Плагины]]></category>
		<category><![CDATA[плагин]]></category>

		<guid isPermaLink="false">http://www.jstoolbox.com/?p=259</guid>
		<description><![CDATA[Недавно мне пришлось заниматься установкой и настройкой <a href="http://tinymce.moxiecode.com/" title="Редактор текста tinyMCE">tinyMCE</a> - мощного текстового редактора для веб сайтов. Однако, я совсем не предполагал, что столкнусь с проблемой добавления изображений в редактируемый текст. Как оказалось, в стандартной поставке tinyMCE есть только плагин, добавляющий изображения, которые уже загружены в какое-либо общедоступное место. То есть, можно указать ссылку, и tinymce добавит элемент <strong>&#60;img&#62;</strong> с этой ссылкой в документ. Однако заказчик проекта хотел загружать и управлять файлами изображений прямо из редактора, и его можно понять, ибо это очень неудобно - самостоятельно загружать изображения на сервер, а потом добавлять на них ссылку. После недолгих поисков мне удалось найти нужный мне плагин - <a href="http://j-cons.com/downloads/" title="Плагин для работы с изображениями в tinymce">ibrowser</a>, при помощи которого можно легко загружать файлы на сервер и управлять ими. Кроме того, этот плагин может работать не только с tinyMCE, но и с FCKEditor, HTMLArea и др.]]></description>
			<content:encoded><![CDATA[<p>Недавно мне пришлось заниматься установкой и настройкой <a href="http://tinymce.moxiecode.com/" title="Редактор текста tinyMCE">tinyMCE</a> &#8211; мощного текстового редактора для веб сайтов. Однако, я совсем не предполагал, что столкнусь с проблемой добавления изображений в редактируемый текст. Как оказалось, в стандартной поставке tinyMCE есть только плагин, добавляющий изображения, которые уже загружены в какое-либо общедоступное место. То есть, можно указать ссылку, и tinymce добавит элемент <strong>&lt;img&gt;</strong> с этой ссылкой в документ. Однако заказчик проекта хотел загружать и управлять файлами изображений прямо из редактора, и его можно понять, ибо это очень неудобно &#8211; самостоятельно загружать изображения на сервер, а потом добавлять на них ссылку. После недолгих поисков мне удалось найти нужный мне плагин &#8211; <a href="http://j-cons.com/downloads/" title="Плагин для работы с изображениями в tinymce">ibrowser</a>, при помощи которого можно легко загружать файлы на сервер и управлять ими. Кроме того, этот плагин может работать не только с tinyMCE, но и с FCKEditor, HTMLArea и др.</p>
<p><span id="more-259"></span></p>
<p>Теперь о том, как его установить и настроить.</p>
<p>1) Сначала <a href="http://j-cons.com/downloads/" title="Скачать ibrowser">скачайте ibrowser</a> и распакуйте дистрибутив в папку tiny_mce/plugins/ibrowser.</p>
<p>2) Затем, в файле конфигурации ibrowser/config.inc.php нужно указать на те директории, в которых будут храниться загружаемые файлы изображений:</p>
<pre class="prettyprint">
$cfg['ilibs'] = array (
	array (
		'value' => 'images/',
		'text' => 'Общие',
	),
	array (
		'value' => 'gallery/',
		'text' => 'Галерея',
	),
);
</pre>
</p>
<p>Для этих папок, а также для директорий ibrowser/scripts/phpThumb/cache и ibrowser/temp нужно установить права доступа 777, чтобы скрипт имел возможность записывать туда свои данные.</p>
<p>3) Далее нужно добавить скрипт tinyMCE и скрипт инициализации в веб страницу:</p>
<pre class="prettyprint">
&lt;script type="text/javascript" src="tiny_mce/tiny_mce.js">&lt;/script>
&lt;script type="text/javascript" src="tiny_mce_init.js">&lt;/script>
</pre>
<p>В файле <em>tiny_mce_init.js</em> я расположил код, который инициализирует редактор. Выглядит он следующим образом:</p>
<pre class="prettyprint">
tinyMCE.init({
	mode : "exact",
	elements : "elm1,elm2,elm3,elm4,elm5",
	theme : "advanced",
	skin : "o2k7",
	language : "en",
	plugins : "safari,pagebreak,style,table,advimage,advlink,emotions,iespell,media,searchreplace,print,contextmenu,paste,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,inlinepopups,ibrowser",

	theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,forecolor,backcolor|,charmap,emotions,iespell,media,|,sub,sup",
	theme_advanced_buttons2 : "styleselect,formatselect,fontselect,fontsizeselect",
	theme_advanced_buttons3 : "cut,copy,paste,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,code",
	theme_advanced_buttons4 : "tablecontrols,|,hr,removeformat,visualaid,|,fullscreen,image,ibrowser",
	theme_advanced_toolbar_location : "top",
	theme_advanced_toolbar_align : "left",
	theme_advanced_statusbar_location : "bottom",
	theme_advanced_resizing : true,
	height:340
});
</pre>
<p>Здесь указываются различные параметры настройки tinyMCE: внешний вид (скин), язык интерфейса, кнопки панели инструментов и прочее. В строке <em>plugins</em> перечислены плагины, которые необходимо использовать. Здесь я помимо прочих указал и <em>ibrowser</em>. Далее идет перечисление панелей инструментов и кнопок, которые будут там располагаться. Все это указывается в параметрах <em>theme_advanced_buttons*</em>, где цифра в конце указывает на номер ряда в панели инструментов. Кнопку, вызывающую диалоговое окно <em>ibrowser</em> я добавил в последний, четвертый ряд (theme_advanced_buttons4). В итоге, окно tinyMCE будет иметь следующий вид:</p>
<div class="entry_picture" style="width:453px"><img src="http://www.jstoolbox.com/wp-content/uploads/2008/12/ibrowser.png" alt="ibrowser" title="ibrowser" width="453" height="364" class="size-full wp-image-261" /></div>
<p>Если все выполнено правильно, то при нажатии на эту кнопку, откроется pop-up окно следующего содержания:</p>
<div class="entry_picture" style="width:500px"><img src="http://www.jstoolbox.com/blog/wp-content/uploads/2008/12/ibrowser-popup.png" alt="Окно плагина iBrowser" title="ibrowser-popup" width="500" height="359" class="size-full wp-image-264" /></div>
<p>Поскольку мне нужна была русифицированная версия плагина, то пришлось самому заняться локализацией. Переведенный мной файл можно скачать <a href="/download/ibrowser_ru.zip" title="Скачать локализацию для iBrowser">здесь</a>. Для русификации плагина, нужно скопировать файл локализации в папку /ibrowser/langs/, а затем в файле конфигурации config.inc.php установить переменную <strong>$cfg['lang']</strong> в значение <strong>ru</strong>. Исключением является окно приветствия, которое появляется сразу при открытии окна. Текст этого окна набран в файле <em>ibrowser.php</em>, так что либо переведите его сами, либо просто удалите, как это сделал я <img src='http://www.jstoolbox.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<div class="postLinks">
<strong>Спонсор статьи</strong>:<br/>Продажа мотоциклов, снегоходов, квадроциклов, скутеров: <a href="http://auto.slando.ru/moscow/174_1.html">мотоциклы бу</a><br/>Московский свадебный портал &#8211; все о свадьбе в Москве: <a href="http://www.nevesta.info/">свадебный сайт</a><br/>Семья &#8211; женский портал Украины: <a href="http://wwwomen.com.ua/tags/%F1%E5%EC%FC%FF">семья</a>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.jstoolbox.com/2008/12/05/zagruzka-izobrazhenij-v-tinymce/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>One-Click Upload &#8211; плагин для аплоада файлов на jQuery</title>
		<link>http://www.jstoolbox.com/2008/09/08/one-click-upload-plugin/</link>
		<comments>http://www.jstoolbox.com/2008/09/08/one-click-upload-plugin/#comments</comments>
		<pubDate>Mon, 08 Sep 2008 20:51:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[AJAX]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Плагины]]></category>
		<category><![CDATA[аплоад]]></category>
		<category><![CDATA[плагин]]></category>

		<guid isPermaLink="false">http://www.jstoolbox.com/2008/09/08/one-click-upload-plugin/</guid>
		<description><![CDATA[One-Click Upload &#8211; это плагин для jQuery, который способен заменить стандартный элемент формы для аплоада файлов, причем для этой цели можно использовать ссылки, изображения или любой другой элемент. После инициализации  выбранного элемента, по нажатию на него будет отображаться диалог выбора файлов, а сама загрузка файла на сервер будет происходить без перезагрузки страницы. Используя этот [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://code.google.com/p/ocupload/" title="One-Click Upload плагин">One-Click Upload</a> &#8211; это плагин для <a href="http://jquery.com" title="jQuery фреймворк">jQuery</a>, который способен заменить стандартный элемент формы для аплоада файлов, причем для этой цели можно использовать ссылки, изображения или любой другой элемент. После инициализации  выбранного элемента, по нажатию на него будет отображаться диалог выбора файлов, а сама загрузка файла на сервер будет происходить без перезагрузки страницы. Используя этот плагин вы сможете настроить внешний вид элементов для загрузки файлов так, как вам нужно, в отличие от стандартного поля для загрузки файлов, вид которых крайне трудно изменить (см. пример <a href="http://www.quirksmode.org/dom/inputfile.html">здесь</a>).</p>
<p><span id="more-219"></span></p>
<p>Однако основным недостатком остается тот факт, что в отличии от стандартных полей, плагин не предоставляет текстового поля, в котором отображается путь к выбранному файлу.</p>
<h3>Пример</h3>
<p>Для создания поля, воспользуемся простой ссылкой, а прогресс отправки файла будем показывать в элементе <em>span=progress</em>:</p>
<pre class="prettyprint">
&lt;a id="upload1" style="background: green; font-size: 24px; color: white;" href="#">Выберите файл&lt;/a>
&lt;span id="progress1">&lt;/span>
</pre>
<p>Далее инициализируем поле (определяем его по id):</p>
<pre class="prettyprint">
$('#upload1').upload({
	name: 'file',
	method: 'post',
	enctype: 'multipart/form-data',
	action: 'upload.php',
	onSubmit: function() {
		$('#progress1').text('Отправка файла...');
	},
	onComplete: function(data) {
		$('#progress1').text('Файл успешно отправлен');
	}
});
</pre>
<p>Ну и сохраняем его на стороне сервера (пример для PHP):</p>
<pre class="prettyprint">
&lt;?php
$uploaddir = '/var/www/uploads/';
$uploadfile = $uploaddir . basename($_FILES['file']['name']);

if (move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile)) {
    echo "File is valid, and was successfully uploaded.\n";
} else {
    echo "Possible file upload attack!\n";
}
?&gt;
</pre>
<p>Более подробно о плагине можно узнать на странице проекта <a href="http://code.google.com/p/ocupload/">Google Code</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jstoolbox.com/2008/09/08/one-click-upload-plugin/feed/</wfw:commentRss>
		<slash:comments>36</slash:comments>
		</item>
	</channel>
</rss>

