/var/log/life.log
Блог программиста из солнечной Бурятии

Скрытие пункта меню по умолчанию

Случается так, что нет необходимости показывать в меню пункт по умолчанию, а бывает и необходимость убрать этот пункт меню. Но в Joomla обязательно должен быть пункт меню по умолчанию, чтобы избавится от показа оного, нужно в файле modules/mod_mainmenu/helper.php в начале цикла

1
2
3
4
while (count($rows) && !is_null($row = array_shift($rows)))
{
...
}

добавить

1
if ($row->id == 1) continue;

в данном случае 1 это ItemId пункта меню, который необходимо скрыть.
UPD:
Чтобы в Joomla 1.7 скрыть главную нужно после

1
2
3
4
{
    unset($items[$i]);
    continue;
}

Добавить

1
2
3
4
if ($item->id == 1){
    unset($items[$i]);
    continue;
}

c99madshell

Как оказалось функционала этого шелла мне недостаточно, да и были в нём баги. Баг в выставлении прав на файлы. Новые значения прав на файл вычислялись правильно, но в результате получалась строка вида “0xxx” и это строка передавалась как аргумент в функцию chmod. В то время как вторым параметром функции должно быть число, и php благополучно преобразовывал строку в число…в десятичной системе счисления, вот и вся проблема. После исправления ещё добавил рекурсивную возможность смены прав, т.к. пришлось работать с сайтом к которому не то-что по ssh нет доступа, но и по фтп, и у всех загружаемых файлов выставляются права 600, и соответственно если это картинки то просмотреть их невозможно, незнаю что за паранойя у админа. Также добавил возможность переименования файлов/папок, и заменил $HTTP_POST_FILES на $_FILES для загрузки файлов
[download id=”4″]

hack tools

По работе приходится часто что-то менять в скриптах либо в бд на сайтах, к которым есть доступ только по ftp, а phpmyadmin где-то в панели управления к которой не всегда есть доступ. В таких случаях помогают я полезных скрипта — MySQL RST/GHC Manager для работы с БД и c99madshell – Web Shell.
MySQL RST/GHC Manager – всем хорош, к тому же был переписан на post запросы Античатом, но были в нём недочёты: правка данных, если в них присутствовал символ ” ‘ ” и ‘ ” ‘, не происходила либо происходила не правильно, к тому же если в поле длинной более 40 символов был тег <textarea>, то гуи разъезжалось, всё это я поправил и сжал, так что размер его составляет 30кб против 113кб
[download id=”2″]
С c99madshell всё гораздо проще, там багов(вроде) нет, но доставляло неудобство то, что имена в левой части, а управляющие элементы в правой части экрана и на 21” мониторе сложновато определять к какому файлу относится действие, я добавил выделение цветом строки таблицы, на которую наведена мышь, стало гораздо удобнее, и чуток уменьшил размер
[download id=”3″]

anti iframer

Достался мне похаканый сайтик на joomla, который был жестоко проифрэймлен. Симптомы такие, во всех папках до 3-го уровня вложенности, где есть один из файлов index.html, index.php, default.php добавлен .htaccess и втсавлены iframe в эти файлы. Пришлось писать “удалятор” этих пакостей. Т.к. это joomal то index.html используются лишь для того, чтобы запретить просмотр содержимого каталогов на сайте, то их я просто очищаю, а из остальных пришлось гадость вырезать: Читать полностью »

Статистика

Несколько месяцев назад, местный провайдер перешёл на новое оборудование Juniper Sdx. Жить стало лучше, скорость во внутренней сети перестали резать. И поменялась статистика. Раньше хоть была бедноватая статистика, но в ней был тот необходимый минимальный набор функций. Посмотреть сколько когда и откуда скачано. В новой же статистике, посмотреть с каких ip шёл траффик посмотреть нельзя. Что не очень радовало, но когда я перешёл на анлим, то как-то эта функция стала ненужна. По этой же причине я в статистику и не заглядывал. Читать полностью »

Плагин для Juick для Psi+

На данный момент, плагин делает подсветку ника, номера сообщения и тегов в сообщениях пришедших с juick@juick.com и начинающихся с @username: .

скачать можно тут http://code.google.com/p/psi-dev/downloads/list?q=juickplugin
Необходимо скопировать в Psi+\plugins(.psi/plugins)
Исходный код:http://psi-dev.googlecode.com/svn/trunk/plugins/generic/juickplugin/
Скомпилированый плагин необходимо скопировать в ~/.psi/plugins
Для компиляции нужны исходнки psi+ – (исходники psi с наложенными патчами psi+), исходный код плагина должен быть в папке src/plugins/generic/juickplugins
Включить в Настройки->Модули, и перезапустить psi+.
Теперь на вкладке Настройки->Модули можно изменить цвет и стиль оформления:

Плагин корректно работает с psi+ версии 639 и выше.
Также опция options.html.chat.render должна быть установлена в true, найти её можно на вкладке дополнительно.

функция eval в java своими руками

Функция eval присуща скриптовым языкам, не смотря на то, что Java не является скриптовым языком и такого метода там нет, существует возможность реализовать её самим, Java предоставляет для этого инструменты. Определимся, что для этого нужно:
1) генерация кода для компиляции
2) компилирование в байт-код
3) загрузка байт-кода и его исполнение
Читать полностью »