+18.28
Рейтинг
45.76
Сила

Помечаем куски шаблонов в скомпилированой странице for 0.5.1

Навеяно топиком, хотя сам использую для верстки практически с момента выхода 05 версии, както не подумал что это может быть полезно и другим ;) исправляюсь )

Читать дальше →

Валидация данных в LiveStreet 0.6

В транковую версию LS на github.com добавлен новый функционал — валидация данных и полей сущностей. Этот функционал призван заменить функцию func_check(). За основу был взят функционал валидации Yii.

На данный момент доступны следующие типы валидации:
  • Boolean — проверка значения на булевый тип
  • Date — проверка значения на формат даты и времени
  • Email — проверка корректности емайл
  • Inline — валидация произвольным методом сущности или другого объекта
  • Number — проверка на числа
  • Required — проверка на пустое или конкретное значение
  • String — проверка строк на длину
  • Type — проверка на тип значения
  • Url — проверка на корректность URL


Как использовать

В сущности необходимо составить список правил валидации.
class PluginTest_ModuleMain_EntityTest extends Entity {

	protected $aValidateRules=array(
		array('login, name','string','max'=>7,'min'=>'3'),
		array('title','my','on'=>'register'),
	);

	public function ValidateMy($sValue,$aParams) {
		if ($sValue!='Мега заголовок') {
                    return 'Ошибочный заголовок';
                }
		return true;
	}
}


Читать дальше →

Удаление UTF-8 BOM из консоли

linux (debian tested)
find путь/к/лайвстриту/ -type f \( -name '*.tpl' -o -name '*.php' \) -exec sed -i '1 s/^\xef\xbb\xbf//' {} \;


freebsd (7.2 tested)
find ./ -type f \( -name '*.tpl' -o -name '*.php' \) -exec sed -i -e '1 s/^\xef\xbb\xbf//' {} \;


найти файлы с BOM
find ./ -type f \( -name '*.tpl' -o -name '*.php' \) -print0 | xargs -0r awk '/^\xEF\xBB\xBF/ {print FILENAME}{nextfile}'


sed почему-то иногда не отрабатывает, поэтому php, find, awk, xargs:
php -r "ob_start();
passthru('find ./ -type f \( -name \'*.tpl\' -o -name \'*.php\' \) -print0 | xargs -0r awk \'/^\xEF\xBB\xBF/ {print FILENAME}{nextfile}\'');
foreach(array_filter(explode(\"\n\",ob_get_clean())) as \$f){
	echo \"remove BOM from \$f...\n\";
	file_put_contents(\$f, substr(file_get_contents(\$f), 3));
};"

Бесплатный плагин «reCAPTCHA»

В прошлый раз когда я выложил инструкцию, как заменить стандартную каптчу на reCAPTCHA, меня заминусовали. Теперь я реализовал это в виде плагина — надеюсь теперь такого не будет (хотя морально уже готов). Плагин сделал по-аналогии с плагином «KeyCAPTCHA» — посредством делигатов дефолтного экшена и шаблона. С радостью приму замечания по коду, но сильно не ругайтесь — это мой первый плагин.

Спасибо за мотивацию — честно говоря не ожидал что поставите столько плюсов =) Решил сразу, не откладывая в долгий ящик, выпустить обновление плагина — а именно убрать поля пароля. Мне кажется они лишние. Лично я ни разу не вводил паролей на этом сайте (только при регистрации — аж 2 раза). Поэтому и решил заменить их на генерируемые автоматически. Включается/выключается в конфиге.

Плагин на GitHub

P.S: новая версия плагина и поддержка здесь: livestreet.ru/blog/addons/17444.html

Делаем "Фотоблоки"


Вводное:
Наверное многие знакомы с возможностью на таких ресурсах как LAM (Lookatme) создавать внутри поста фотоблоки куда помещаются некоторое количество фотографий (чтобы не делать чересчур длинной скатерти). Да, в ЛС уже существует подобная штуковина — Фотосеты, но как отдельный вид поста она не имеет смысла. Сегодня я расскажу вам как сделать эти самые «Фотоблоки».

Нам понадобятся:
1. LiveStreet версии 0.5-0.5.1
2. Шаблон на jQuery
3. Fotoramajs от Артема Поликарпова
4. Прямые руки

Присутпим:
1. Качаем архив с Fotoramajs отсюда fotoramajs.com/

2. Внутри вы обнаружите 2 файла: собственно сама библотека fotorama.js и файл стилей для настройки внешнего вида fotorama.css

3. Подключаем библиотеку (предварительно поместив её в папку js вашего шаблона) в header.tpl вашего шаблона, очень просто
<script type="text/javascript" src="{cfg name='path.static.skin'}/js/fotorama.js"></script>
и учитываем что у вас также уже должна быть подключена библотека jQuery.

Подключаем css файл
<link href="{cfg name='path.static.skin'}/css/fotorama.css" rel="stylesheet">

4. Теперь идем в настройки jevix.php (папка config) и разрешаем тег div
// вызов метода с параметрами
			array(
				array('cut','a', 'img', 'i', 'b', 'u', 's', 'video', 'em',  'strong', 'nobr', 'code', 'object', 'param', 'embed', 'ls', 'iframe','blockquote','div', 'p','h3','div'),
			),			


array(
				'div',
				array('class')
			),


5. Вуаля, все что нам теперь остается, зайти в редактор, создать новый пост, кликнуть на просмотр html кода (это если у вас tinyMCE), найти нужные вам фотографии (для незнающих тег img) и обьединить в следующий div

<div class="fotorama">
  <img src="1.jpg> <img src="2.jpg"> <img src="3.jpg">
</div>


PS: На все вопросы готов ответить в комментариях, хотя надеюсь они не возникнут :)

Newplugin - Создатель плагинов

Хочу поделится с Вами небольшим плагином — newplugin, который поможет Вам быстро создать каркас будущего плагина.
С помощью newplugin создание основы плагина отнимет всего пару секунд и можно сразу приступать к разработке необходимого функционала.
Читать дальше →

Интеграция LS с форумом phpBB 3.0.x

Что делает плагин:
При авторизации на LS в случае успеха пытается залогиниться на форум через базу форума, если такого юзера нет — добавляет его.
При авторизации на форуме ищет юзера в базе форума, если не находит пытается залогиниться на LS через базу LS, если авторизация прошла добавляет в базу форума и логинится, при добавлении в форум мыло берется из профиля юзера.

a еще...

Итоги конкурса на новый дизайн LiveStreet CMS

Завершился наш недавний конкурс на новый дефолтный дизайн LiveStreet CMS.
Из более чем 30 работ мы выбрали трех победителей.

1 место — 20 000 рублей + дефолтный шаблон в дистрибутиве LS
image

Читать дальше →

Плагин "Payment"


Представляем бесплатный плагин «Payment» — плагин позволяющий легко и просто интегрировать в другие плагины функционал приема платежей и оплаты товаров.

Поддерживаются платежные системы:
  • Webmoney
  • LiqPay (кредитки)
  • PayPro (PayPal)
  • Робокасса (Яндекс.Деньги и другие системы)

Читать дальше →