За месяц Ноябрь, 2009

SMF ошибки форума в таблице _log_errors

SMF (Simple Machines Forum) ведет лог ошибок, который сохраняет в базе в таблице _log_errors

2: strpos() [<a href=’function.strpos’>function.strpos</a>]: Offset not contained in string<br />Файл: smfdir/Themes/default/BoardIndex.template.php (eval?)<br />Строка: 1

2: gzinflate() [<a href=’function.gzinflate’>function.gzinflate</a>]: data error
Файл: smfdir/Themes/default/BoardIndex.template.php (eval?)
Строка: 1

2: strpos() [<a href=’function.strpos’>function.strpos</a>]: Offset not contained in string<br />Файл: smfdir/Themes/default/Register.template.php (eval?)<br />Строка: 1

8: Undefined index: dhhag
Файл: smfdir/Themes/default/BoardIndex.template.php (eval?)
Строка: 1

И еще куча записей с аналогичной ошибкой в разных файлах. Что-то подсказывает - видимо, “не все в порядке”..
Заглядываем в первую строку и видим что-то вроде:

<?php /**/eval(base64_decode('aWY ... 7fX19')); ?>

Подобное безобразие творится и в остальных “ошибочных файлах”. Файлы в одном каталоге, кстати имеют одинаковую дату изменения. Видимо имеет место, массовое изменение файлов по ftp или скриптом. Наблюдаем… Не исключено, что вирус на локальном компьютере.

upd 10.12.2009
После такой зачистки ошибки smf-форума довольно долго не появляются. Похоже, все в порядке.
Кстати, видимо, эта “зараза” поддерживает “обновления”. То есть при обновлении форума на более новую версию, она переносится (возможно, изменяясь) в файлы новой версии. И периодически “обновляется” - “зараженные” файлы имели довольно свежую дату изменения, причем в каждом каталоге свою и “одну на всех”…

Опубликовано Ноябрь 26, 2009 | автор: levik  |  Комментарии (2) »

Управляем кофеваркой онлайн или IMPRESSA F90 @

Из серии невероятно, но факт… Попытка подключить кофеварку JURA IMPRESSA F90 к Интернету  средствами “от производителя” закончилась неудачей… Несмотря на декларирование такой возможности (в общем-то “кофеварку” позиционирют как единственную с подключением к Интернет)

Причина банальна - у производителя и представителей компании (пока все про Москву) не оказалось комплекта подключения.. Да и, по словам службы поддержки, Россия “не котируется” - наблюдается постоянная проблема подключения к серверам, которые расположены в Швейцарии.. Таким образом (брюки превращаются…) возможность подключения к интернету, чтобы “скачать рецепты с сервера производителя” оказывается всего-лишь очередной “заманухой” для дядь с большими понтами кошельками.

Если все по-порядку… читать о подключении Impressa F90 к Интернет

Опубликовано Ноябрь 19, 2009 | автор: levik  |  Нет комментариев »

All-In-One-SeoPack - Seo плагин для Wordpress

All-in-One SEO Pack после установки и активации работал слегка “кривовато” - в поле keywords вместо русских букв появлялись квадратики-кракозябры. Интуиция подсказывала, что проблемы с кодировкой, но “зрить в корень” проблемы хотелось не особо.. А уж тем более искоренять :)

Проще говоря, халявы захотелось… Ан нет, не тут-то было. Обновление до последней версии и плагина и самого вордпресса ни к чему не привели. Галочку “преобразовывать кракозябры в русские буквы” найти не получилось. Пришлось слегка углубляться..

Поиск по блогам-форумам подсказал, что такой эффект может возникать при параллельном использовании плагина all-in-one  seo pack с Simple Tags. Оставил только первый. Кракозябры, правда, никуда деваться не хотели.

Дальнейшие поиски оказались более успешными - я не одинок с этими кракозябрами.. Правда вариаций несколько - у кого-то квадратики только вместо заглавных букв, кто-то столкнулся с заменой букв (у на г).. Были и те, у кого, как у меня вся кириллица в кейвордсах заменялась квадратиками…

Но и решений, как оказалось хватает. Однако, если есть одно, которое устраивает… Надо ли продолжать поиски? :)

Скачал с сайта http://www.chanishvili.org/all-in-one-fix/ пофиксенную версию (хоть и с бородой, зато рабочую), установил и наслаждаюсь русскими ключевиками :) Возможно, когда-нибудь и обновлю.. Однако, что-то подсказывает, что будет это далеко не скоро..

ps. мониторим результаты установки плагина
pps. Автору - спасибо. :)

Опубликовано Ноябрь 12, 2009 | автор: levik  |  Комментарий (1) »

Virtuemart - скрываем пустые категории

При работе с интернет-магазином на базе Virtuemart после импорта из csv возможно появление пустых категорий, которые virtuemart не скрывает автоматически. Т.е. отображаются категории, в которых нет ни одного опубликованного товара (или вообще ни одного товара) - при заходе в такую категорию, естественно,  “ощущается пустота”.

Зачем нам отображение пустых категорий? В общем-то, если только для поисковиков.. чтоб наведывались. Однако для покупателей гораздо удобнее, если пустые категории не показываются.

В настройках Virtuemart (ни в глобальной конфигурации, ни в настройках категорий) пункта-галочки “скрывать пустые категории” (или отображать) я не нашел. Может плохо искал?

Как настроить virtuemart  чтобы он не показывал пустые категории?

Ничего более простого, как “опубликовывать только категории с товаром” я не придумал. Итак, проходим по категориям “снизу”, начиная с товаров, и .. опубликовываем их. Предварительно все категории распубликовываем. Если в магазине имеются умышленно скрытые категории (своеобразный склад временно неиспользуемых товаров), их можно просто добавить в исключения

Ближе к практике:

CREATE TEMPORARY TABLE `jos_tmp_category` (
`category_id` int(11) NOT NULL,
`lvl` int (2) not null,
PRIMARY KEY (`category_id`)
);

insert into `jos_tmp_category`
select distinct c.category_id, 1
FROM jos_vm_category c
INNER JOIN jos_vm_product_category_xref pc ON c.category_id = pc.category_id
INNER JOIN jos_vm_product p ON pc.product_id = p.product_id
WHERE p.product_publish = 'Y';

replace into `jos_tmp_category`
select distinct cc.category_parent_id, 2
FROM jos_vm_category_xref cc
inner join `jos_tmp_category` t
on t.category_id = cc.category_child_id and t.lvl=1;

replace into `jos_tmp_category`
select distinct cc.category_parent_id, 3
FROM jos_vm_category_xref cc
inner join `jos_tmp_category` t
on t.category_id = cc.category_child_id and t.lvl=2;

– …
– пока количество “затронутых” рядов перестанет изменяться

update jos_vm_category set category_publish='N';
update jos_vm_category set category_publish='Y'
where category_id in (select `category_id` from jos_tmp_category);

После таких запросов к базе virtuemart не будет отображать пустые категории (а если точнее, то пустые категории станут скрытыми). В универсальный хак-мод все это не переросло, а вот после “зашивания” в simple csv import сайт стал “скрывать категории” сразу после обновления товаров.

Опубликовано Ноябрь 4, 2009 | автор: levik  |  Комментарии (2) »