<?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>adminlog.ru</title>
	<atom:link href="http://adminlog.ru/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://adminlog.ru</link>
	<description>admin logs for admins</description>
	<lastBuildDate>Mon, 14 May 2012 10:29:19 +0000</lastBuildDate>
	<language>ru</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>natd не работает сеть</title>
		<link>http://adminlog.ru/?p=931</link>
		<comments>http://adminlog.ru/?p=931#comments</comments>
		<pubDate>Mon, 14 May 2012 10:27:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[FreeBSD]]></category>

		<guid isPermaLink="false">http://adminlog.ru/?p=931</guid>
		<description><![CDATA[Заг &#8211; специально для поисковиков, поскльку скорее всего именно так можно описать проблему. Например мы перенастроили на гейте сеть на другой шлюз, переключились на резервный интерфейс. Перенастраиваем natd прописываем нужный интерфейс в rc.conf natd_interface="xl1" И здесь же меняем шлюз по умолчанию. Далее правим rc.firewall (например нат у нас с дивертом): ${fwcmd} add divert natd all [...]]]></description>
			<content:encoded><![CDATA[<p>Заг &#8211; специально для поисковиков, поскльку скорее всего именно так можно описать проблему. Например мы перенастроили на гейте сеть на другой шлюз, переключились на резервный интерфейс.<br />
Перенастраиваем natd прописываем нужный интерфейс в rc.conf</p>
<pre><code>natd_interface="xl1"</code></pre>
<p>И здесь же меняем шлюз по умолчанию.</p>
<p>Далее правим rc.firewall (например нат у нас с дивертом):</p>
<pre><code>${fwcmd} add divert natd all from any to any via ${oif2}</code></pre>
<p>Делаем /etc/netstart и &#8230; ничего не работает.</p>
<p>Просто мы забыли перезапустит natd. Идем в /etc/rc.d и делаем:</p>
<pre><code>./natd restart</code></pre>
<p>Нат перезапустися с учетом конфигурации на новом интерфейсе.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminlog.ru/?feed=rss2&#038;p=931</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Очистка бинарного лога mysql</title>
		<link>http://adminlog.ru/?p=924</link>
		<comments>http://adminlog.ru/?p=924#comments</comments>
		<pubDate>Sat, 05 May 2012 10:22:28 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[MYSQL]]></category>

		<guid isPermaLink="false">http://adminlog.ru/?p=924</guid>
		<description><![CDATA[По дефолту mysql ведет бинарный лог &#8211; все транзкции пишутся в файл, и в далнейшем мы имеем возможность восстановить состояние базы на определенный момент. Есть при этом неприятный момент &#8211; бинарный лог бстро занимает свободное прострнство на диске. При этом удалять руками файлы типа mysqld-bin.00000Х не стоит &#8211; mysql следит за состоянием бинарного лога. Итак [...]]]></description>
			<content:encoded><![CDATA[<p>По дефолту mysql ведет бинарный лог &#8211; все транзкции пишутся в файл, и в далнейшем мы имеем возможность восстановить состояние базы на определенный момент. Есть при этом неприятный момент &#8211; бинарный лог бстро занимает свободное прострнство на диске. При этом удалять руками файлы типа mysqld-bin.00000Х не стоит &#8211; mysql следит за состоянием бинарного лога.</p>
<p>Итак если лог заниимает слишком много места добавляем в /etc/my.cnf строку в секцию [mysqld]:</p>
<pre><code>expire_logs_days=60</code></pre>
<p>Псл этого перезапускаем сервер. Все логи старше 60 дней сервер потрёт.</p>
<p>Проверяем состояние переменной:</p>
<pre><code>mysql&gt; show variables like "%exp%";
+--------------------------+-------+
| Variable_name            | Value |
+--------------------------+-------+
| expire_logs_days         | 60    |
| ft_query_expansion_limit | 20    |
+--------------------------+-------+</code></pre>
<p>Если логи не потрелиcь (или если не хотим перезапускать сервис) &#8211; делаем:</p>
<pre><code>mysql&gt; flush logs;</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://adminlog.ru/?feed=rss2&#038;p=924</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Очистка портов</title>
		<link>http://adminlog.ru/?p=918</link>
		<comments>http://adminlog.ru/?p=918#comments</comments>
		<pubDate>Thu, 03 May 2012 11:29:25 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[FreeBSD]]></category>

		<guid isPermaLink="false">http://adminlog.ru/?p=918</guid>
		<description><![CDATA[Периодически возникает желание пройтись по дереву портов и очистить те порты в которых забыл сделать make clean. Если сделать make clean в корне (/usr/ports) &#8211; начнется нудный процесс прохода по всем портам. Нашел в сети строку: find /usr/ports/ -name 'work' -type d -exec make clean -C "{}/../" \; Найдет все порты с каталогом work и [...]]]></description>
			<content:encoded><![CDATA[<p>Периодически возникает желание пройтись по дереву портов и очистить те порты в которых забыл сделать make clean. Если сделать make clean в корне (/usr/ports) &#8211; начнется нудный процесс прохода по всем портам. Нашел в сети строку:</p>
<pre><code>find /usr/ports/ -name 'work' -type d -exec make clean -C "{}/../" \;</code></pre>
<p>Найдет все порты с каталогом work и запустить в них make clean.</p>
<p>PS: Вот ещё полезная строчка:</p>
<pre><code>du -hd 1 /var</code></pre>
<p>Покажет какой каталог занимает сколько места (глубина прохода 1).</p>
]]></content:encoded>
			<wfw:commentRss>http://adminlog.ru/?feed=rss2&#038;p=918</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>autobackupmysql.sh автоматизируем бэкап Mysql</title>
		<link>http://adminlog.ru/?p=913</link>
		<comments>http://adminlog.ru/?p=913#comments</comments>
		<pubDate>Fri, 16 Mar 2012 10:51:39 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[MYSQL]]></category>

		<guid isPermaLink="false">http://adminlog.ru/?p=913</guid>
		<description><![CDATA[Процесс резервного копирования разделяют на два типа &#8211; условно скажем &#8211; на физический и логический. Физический применим в таблицам типа myisam &#8211; когда мы можем просто заблокировать таблицы и скопировать файлы (MYD, MYI, frm). Этот тип выполняется к примеру скриптом mysqlhotcopy. /usr/home/mysqlhotcopy.sh -u user -p pass --allowold --keepold --quiet database /path_to_back Для &#171;логического&#187; бэкапа (бэкапа [...]]]></description>
			<content:encoded><![CDATA[<p>Процесс резервного копирования разделяют на два типа &#8211; условно скажем &#8211; на физический и логический. Физический применим в таблицам типа myisam &#8211; когда мы можем просто заблокировать таблицы и скопировать файлы (MYD, MYI, frm). Этот тип выполняется к примеру скриптом mysqlhotcopy. </p>
<p><code>/usr/home/mysqlhotcopy.sh -u user -p pass --allowold --keepold --quiet database /path_to_back</code></p>
<p>Для &laquo;логического&raquo; бэкапа (бэкапа который генерирует логическую труктуру таблиц и запросы к базе, способные воссоздать таблицы) используется mysqldump.</p>
<p><code>mysqldump -uUSER -pPASS --databases base_name &gt; /path_to_back/database.sql</code></p>
<p>Собственно для второго типа бэкапа есть скрипт autobackupmysql.sh &#8211; клон скрипта automysqlbackup.sh. Есть в портах, требует bash.</p>
<p>Поскольку в сети информации описывающей этот скрипт не нашел &#8211; пишем для себя.</p>
<p><span id="more-913"></span><br />
Ставим из портов:</p>
<pre><code>#cd /usr/ports/databases/autobackupmysql
#make install clean</code></pre>
<p>В итоге получаем скрипт autobackupmysql.sh в /usr/local/sbin. В самом скрипте  &#8211; инструкции по использованию. Если у нас есть конфиг /usr/local/etc/autobackupmysql.conf<br />
значения переменных скрипт возьмет из конфига. Создаем:</p>
<p><code>#touch /usr/local/etc/autobackupmysql.conf</code></p>
<p>Пишем в файл:</p>
<pre><code>USERNAME='user'
PASSWORD='pass'
DBHOST='localhost'
DBNAMES="base_name"
BACKUPDIR="/backup"
MAILCONTENT="log"
MAXATTSIZE="4000"
MAILADDR="your@mail.com"</code></pre>
<p>Или файл конфига не создаем а правим значения переменных прямо в скрипте.</p>
<p>Запускаем.</p>
<p><code>#autobackupmysql.sh</code></p>
<p>И получаем ошибку:</p>
<pre><code>###### WARNING ######
Errors reported during AutoBackupMySQL execution.. Backup failed
Error log below..
/usr/local/sbin/autobackupmysql.sh: line 556: [: 5: unary operator expected</code></pre>
<p>Правим скрипт &#8211; добавляем символы [ ] в строку 556.<br />
Было:</p>
<pre><code># Weekly Backup
if [ $DNOW = $DOWEEKLY ]; then</code></pre>
<p>Стало:</p>
<pre><code># Weekly Backup
if [[ $DNOW = $DOWEEKLY ]]; then</code></pre>
<p>Запускаем ещё раз. Скрипт создаст папки daily, weekly, monthly, и дампы указанных нами баз с точными временными метками. Кроме этого &#8211; пришлет отчет о проделанной работе на почту.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminlog.ru/?feed=rss2&#038;p=913</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Не собирается glib с ошибкой ./de.po:15: keyword “msgctxt”</title>
		<link>http://adminlog.ru/?p=910</link>
		<comments>http://adminlog.ru/?p=910#comments</comments>
		<pubDate>Tue, 13 Mar 2012 14:08:43 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[FreeBSD]]></category>

		<guid isPermaLink="false">http://adminlog.ru/?p=910</guid>
		<description><![CDATA[Поймал ошибку при сборке glib (установка mc). ./de.po:15: keyword "msgctxt" unknown ./de.po:15:8: parse error Посоветовали обновить gettext. Помогло.]]></description>
			<content:encoded><![CDATA[<p>Поймал ошибку при сборке glib (установка mc).</p>
<pre><code>./de.po:15: keyword "msgctxt" unknown
./de.po:15:8: parse error</code></pre>
<p>Посоветовали обновить gettext. Помогло.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminlog.ru/?feed=rss2&#038;p=910</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Не собирается порт ./m4.texinfo: Unknown command.</title>
		<link>http://adminlog.ru/?p=905</link>
		<comments>http://adminlog.ru/?p=905#comments</comments>
		<pubDate>Tue, 13 Mar 2012 12:07:06 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[FreeBSD]]></category>

		<guid isPermaLink="false">http://adminlog.ru/?p=905</guid>
		<description><![CDATA[Столкнулся с ошибкой в процессе апгрейда портов с помощью portupgrade. Попробовал обновить порты на которые ругался portupgrade руками, что-то поломал и получил не собирающиеся порты с ошибками типа: ./m4.texinfo:3499 Unknown command. Нашел в сети способ который оказался более менее универсальным. Переходим в директорию порта, создаем файл Makefile.local: #cd /usr/ports/devel/m4 #touch Makefile.local В Makefile.local вставляем строки: [...]]]></description>
			<content:encoded><![CDATA[<p>Столкнулся с ошибкой в процессе апгрейда портов с помощью portupgrade. Попробовал обновить порты на которые ругался portupgrade руками, что-то поломал и получил не собирающиеся порты с ошибками типа:</p>
<p><code>./m4.texinfo:3499 Unknown command.</code></p>
<p>Нашел в сети способ который оказался более менее универсальным.<br />
<span id="more-905"></span></p>
<p>Переходим в директорию порта, создаем файл Makefile.local:</p>
<pre><code>#cd /usr/ports/devel/m4
#touch Makefile.local</code></pre>
<p>В Makefile.local вставляем строки:</p>
<pre><code>BUILD_DEPENDS+= ${LOCALBASE}/bin/makeinfo:${PORTSDIR}/print/texinfo
CONFIGURE_ENV= MAKEINFO="${LOCALBASE}/bin/makeinfo --no-split"</code></pre>
<p>Если раньше порт мы пытались собрать (а мы пытались) &#8211; чистим. И снова пытаемся собрать:</p>
<pre><code>#make clean
#make</code></pre>
<p>Все должно собраться как надо.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminlog.ru/?feed=rss2&#038;p=905</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Нет сигнала вызова (нет гудка) при входящем вызове на TD500</title>
		<link>http://adminlog.ru/?p=902</link>
		<comments>http://adminlog.ru/?p=902#comments</comments>
		<pubDate>Fri, 02 Mar 2012 21:28:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[УАТС]]></category>
		<category><![CDATA[Panasonic TD 500]]></category>

		<guid isPermaLink="false">http://adminlog.ru/?p=902</guid>
		<description><![CDATA[Столкнулся с проблемой &#8211; при входящем вызове на АТС нет сигнала &#171;вызов&#187; (длинные гудки) при соединении. При звонках на внутренние линии (с внутренних) &#8211; все ок. Проблема оказалась в настроках 4.1 &#8211; свойства транковой линии: PBX Ringback Tone for Incoming Calls from PRI Line &#8211; должно стоять в Enabled.]]></description>
			<content:encoded><![CDATA[<p>Столкнулся с проблемой &#8211; при входящем вызове на АТС нет сигнала &laquo;вызов&raquo; (длинные гудки) при соединении. При звонках на внутренние линии (с внутренних) &#8211; все ок. Проблема оказалась в настроках 4.1 &#8211; свойства транковой линии:</p>
<p>PBX Ringback Tone for Incoming Calls from PRI Line &#8211; должно стоять в Enabled.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminlog.ru/?feed=rss2&#038;p=902</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Восстановление баз mysql из бинарных логов</title>
		<link>http://adminlog.ru/?p=898</link>
		<comments>http://adminlog.ru/?p=898#comments</comments>
		<pubDate>Thu, 01 Mar 2012 14:11:42 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[MYSQL]]></category>

		<guid isPermaLink="false">http://adminlog.ru/?p=898</guid>
		<description><![CDATA[Грохнул по нечаяности базу (говорили мне не используй phpmyadmin делай все руками) :) Надо восстанавливать. В бэкапе &#8211; неверно настроенная кодировка &#8211; следовательно в таблицах &#8211; знаки вопроса вместо букв. Хорошо что бинарный лог не отключен, и имеется полный набор логов. Для работы с бинарными логами нам понадобится утилита mysqlbinlog. Формат команды такой: mysqlbinlog -s [...]]]></description>
			<content:encoded><![CDATA[<p>Грохнул по нечаяности базу (говорили мне не используй phpmyadmin делай все руками) :)<br />
Надо восстанавливать. В бэкапе &#8211; неверно настроенная кодировка &#8211; следовательно в таблицах &#8211; знаки вопроса вместо букв. Хорошо что бинарный лог не отключен, и имеется полный набор логов.<br />
<span id="more-898"></span><br />
Для работы с бинарными логами нам понадобится утилита mysqlbinlog. Формат команды такой:</p>
<pre><code>mysqlbinlog -s -D -d mydatabase -t /var/db/mysq-bk/mysql-bin.000032 &gt; /home/recover.sql</code></pre>
<p>-s &#8211; подавляет служебную информацию<br />
-D &#8211; запрещает писать в бинарный лог &#8211; чтобы процесс не зацикливался<br />
-d database &#8211; целевая база &#8211; если мы хотим вытащить из лога только то что относится к восстанавливаемой базе<br />
-t &#8211; по идее указывает начальный файл бинарного лога и говорит продолжать обработку последующих логов. У меня эта фича не сработала и мне пришлось строить исходный sql файл последовательно перебирая все логи:</p>
<pre><code>mysqlbinlog -s -D -d base -t /var/db/mysq-bk/mysql-bin.000001 &gt; /home/recover.sql
mysqlbinlog -s -D -d base -t /var/db/mysq-bk/mysql-bin.000002 &gt;&gt; /home/recover.sql
...
mysqlbinlog -s -D -d base -t /var/db/mysq-bk/mysql-bin.0000XX &gt;&gt; /home/recover.sql</code></pre>
<p>По идее есть возможность указать начальную и конечную временные метки с которой надо отбирать запросы &#8211; у меня не сработало &#8211; может руки кривые, но можно отследить последние манипляции с базой по дате создания файлов бинлогов и последние не включать в целевой файл (у нас в примере &#8211; recover.sql) а сделать ещё один файлик &#8211; recover2.sql и после заливать их в базу по одному:</p>
<pre><code>mysq&gt;use base
mysql&gt;source /home/recover.sql;
mysq&gt;source /home/recover.sql;</code></pre>
<p>Ну и просмотреть файлы на предмет инструкций типа drop database &#8211; при наличии &#8211; удалить. </p>
<p>Что-то все равно может побиться &#8211; правильно настраивайте сервер с самого начала &#8211; кодировки, дефолтные, сессии, колейшн таблиц и т.д. &#8211; иначе можно получить часть не читаемых данных (у меня побились комментарии в jComments на джумле) благо проект полумертвый.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminlog.ru/?feed=rss2&#038;p=898</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flash баннеры в Joomla, undefined, clickTag и link1</title>
		<link>http://adminlog.ru/?p=893</link>
		<comments>http://adminlog.ru/?p=893#comments</comments>
		<pubDate>Wed, 29 Feb 2012 14:35:53 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Joomla]]></category>
		<category><![CDATA[flash]]></category>

		<guid isPermaLink="false">http://adminlog.ru/?p=893</guid>
		<description><![CDATA[Попалась задача &#8211; опубликовать flash баннер рекламодателя в Joomla! 1.5. В принципе, если ссылка прописана в баннере кодом: on (release) { getURL("http://yoursite.com/", "_blank"); } то проблем нет &#8211; достаточно загрузить swf через медиаменеджер в джумле, добавить рекламодателя, создать новый баннер, выбрать закачанный файл и (обязательно!) указать размеры баннера в соответствующих полях (ширина и высота) в [...]]]></description>
			<content:encoded><![CDATA[<p>Попалась задача &#8211; опубликовать flash баннер рекламодателя в Joomla! 1.5. В принципе, если ссылка прописана в баннере кодом:</p>
<pre><code>on (release) {
getURL("http://yoursite.com/", "_blank");
}</code></pre>
<p>то проблем нет &#8211; достаточно загрузить swf через медиаменеджер в джумле, добавить рекламодателя, создать новый баннер, выбрать закачанный файл и (обязательно!) указать размеры баннера в соответствующих полях (ширина и высота) в админке. Но если в баннере ссылка прописана кодом в которой ссылка прописана переменной &#8211; такой метод не сработает.<br />
<span id="more-893"></span></p>
<p>Обычно, если баннер готовится к публикации в системе медийной банерообменной сети типа AdRiver или GoogleAdwords в баннер прописывают код типа:</p>
<pre><code>on (release) {
       getURL(_root.link1, "_blank");
}</code></pre>
<p>где link1 &#8211; имя переменной содержащей линк на целевой сайт. Для баннеров подготовленных для google код примерно такой:</p>
<pre><code>on (release) {
if (clickTAG.substr(0,5) == "http:") {
getURL(clickTAG,"_blank");
}
}</code></pre>
<p>Здесь переменная &#8211; clickTAG. Теперь наша задача передать значению переменной наш целевую ссылку. В Joomla есть возможность описать флеш баннер пользовательским кодом. Воспользуемся этой возможностью. Публикуем флеш баннер как обычно &#8211; то есть указываем файл swf, размеры. Смотрим в браузере исходный код страницы того что получилось, находим код описывающий баннер:</p>
<pre><code>&lt;object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" border="0" width="240" height="400"&gt;
&lt;param name="wmode" value="opaque"&gt;
&lt;param name="movie" value="http://yoursite.com/images/banners/banner240.swf"&gt;
&lt;embed wmode="opaque" src="http://yoursite.com/images/banners/banner240.swf" loop="true" pluginspage="http://www.macromedia.com/go/get/flashplayer" type="application/x-shockwave-flash" width="240" height="400"&gt;
&lt;/embed&gt;
&lt;/object&gt;</code></pre>
<p>Теперь в добавляем в описание embed переменную (link1 или clickTAG и т.д.) и ссылку куда должен вести клик по баннеру. Должно получиться примерно так:</p>
<pre><code>&lt;object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" border="0" width="240" height="400"&gt;
&lt;param name="wmode" value="opaque"&gt;
&lt;param name="movie" value="http://yoursite.com/images/banners/banner240.swf?link1=http://site_to_go.com""&gt;
&lt;embed wmode="opaque" src="http://yoursite.com/images/banners/banner240.swf?link1=http://site_to_go.com" loop="true" pluginspage="http://www.macromedia.com/go/get/flashplayer" type="application/x-shockwave-flash" width="240" height="400"&gt;
&lt;/embed&gt;
&lt;/object&gt;</code></pre>
<p>Вставляем этот код как пользовательский код баннера. Больше ничего заполнять не надо. Сохраняем и получаем рабочий баннер. Внимательно &#8211; с кэшированием! Для того чтобы удостовериться что после сохранения браузер отдал вам нужный код &#8211; смотрим исходный код страницы в браузере.</p>
<p>PS: Для IE важно чтобы путь к целевой странице был прописан и в теге param</p>
<p>Вот так: </p>
<p><code>&lt;param name="movie" value="http://yoursite.com/images/banners/banner240.swf?link1=http://site_to_go.com""&gt;</code></p>
<p>То есть если в param и в embed разные мувики &#8211; то ИЕ покажет тот что в param movie</p>
]]></content:encoded>
			<wfw:commentRss>http://adminlog.ru/?feed=rss2&#038;p=893</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flash перекрывает выпадающее меню в Joomla! 1.5</title>
		<link>http://adminlog.ru/?p=887</link>
		<comments>http://adminlog.ru/?p=887#comments</comments>
		<pubDate>Tue, 28 Feb 2012 12:22:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Joomla]]></category>

		<guid isPermaLink="false">http://adminlog.ru/?p=887</guid>
		<description><![CDATA[На Joomla! 1.5 cтолкнулся с неприятностью &#8211; flash ролик (баннер) перекрывает выпадающее меню &#8211; получается что меню оказывается снизу &#8211; под баннером. Попытки решить с помощью z-index не увенчались успехом. Оказалось все просто &#8211; надо было доработать модуль mod_banners. Правим /modules/mod_banners/helper.php В конце добавляем код: &#60;param name=\"wmode\" value=\"opaque\"&#62; И параметр wmode=\"opaque\" внутрь &#60;embed&#62; Должно получиться [...]]]></description>
			<content:encoded><![CDATA[<p>На Joomla! 1.5 cтолкнулся с неприятностью &#8211; flash ролик (баннер) перекрывает выпадающее меню &#8211; получается что меню оказывается снизу &#8211; под баннером. Попытки решить с помощью z-index не увенчались успехом.</p>
<p>Оказалось все просто &#8211; надо было доработать модуль mod_banners.<br />
<span id="more-887"></span><br />
Правим /modules/mod_banners/helper.php</p>
<p>В конце добавляем код:</p>
<p><code>&lt;param name=\"wmode\" value=\"opaque\"&gt;</code></p>
<p>И параметр <code>wmode=\"opaque\"</code> внутрь <code>&lt;embed&gt;</code></p>
<p>Должно получиться что-то вроде:</p>
<pre><code>$html = "&lt;object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs
/flash/swflash.cab#version=6,0,0,0\" border=\"0\" width=\"$width\" height=\"$height\"&gt;
                                                &lt;param name=\"wmode\" value=\"opaque\"&gt;
                                                &lt;param name=\"movie\" value=\"$imageurl\"&gt;
                                                &lt;embed wmode=\"opaque\" src=\"$imageurl\" loop=\"true\" pluginspage=\"http://www.macromedia.com/go/get/flashpl
ayer\" type=\"application/x-shockwave-flash\" width=\"$width\" height=\"$height\"&gt;
                                                &lt;/embed&gt;</code></pre>
<p>Ещё на заметку &#8211; по умолчанию Joomla! 1.5 не проигрывает ролики в цикле &#8211; и если вы не озаботились поставить в конец ролика что то вроде &#8211; <code>_root.gotoAndPlay(1);</code> то ролик проиграется один раз и остановится.<br />
Правим переменную <code>loop=\"true\"</code> &#8211; ставим в true. По дефолту &#8211; false.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminlog.ru/?feed=rss2&#038;p=887</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

