+30.30
Рейтинг
86.42
Сила

Алексей Лукин

Jevix. P вместо BR, возможно?

Приветствую всех.

У меня возник вопрос, можно ли перенос строк реорганизовать, т.е. вместо тегов br использовать параграфы?

UPD: Возможо.
Вот цитата с хабра:

Нашел решение.

Разрешаем тег p
Ставим cfgSetAutoBrMode(false);
В jevix.class.php в функции parse исправляем:

if($this->isAutoBrMode) {
    $this->text = preg_replace('/<br\/?>(\r\n|\n\r|\n)?/ui', $this->nl, $text);
} else {
    $this->text = preg_replace('/\n?(.+?)(?:\n\s*\n|\z)/s', "$1\n", $text);
}

Ищем толковых LiveStreet разработчиков


Веб-студия stfalcon.com ищет толковых LiveStreet разработчиков для постоянного сотрудничества на удаленной основе или на full time (в Хмельницкий офис).

Основные требования:
  • Опыт разработки на PHP — более 2-х лет
  • Опыт работы с движком LiveStreet, понимание его структуры и логики, умение разрабатывать плагины для этого движка
  • Хорошее знание JS фреймворков MooTools или jQuery
  • Хорошее знание SQL (MySQL). Навыки оптимизации запросов
  • Знание основных шаблонов проектирования
  • Умение работать с SVN или Git

Наши печеньки:
  • Хорошая з/п (зависит от квалификации разработчика)
  • Интересная работа с проектами на движке LiveStreet
  • Курсы английского (Хмельницкий)
  • Абонемент в бассейн/спортзал (Хмельницкий/Киев)

Если вы заинтересованы в сотрудничестве и отвечаете перечисленным требованиям, тогда напишите об этом мне в личку или на e-mail info@stfalcon.com с темой «LiveStreet разработчик»

Решение проблемы с ограничением длинны топика в 0.4.2

Натолкнулся на проблему, что не добавляется топик с ошибкой, что длинна топика не может превышать 15000 симоволов. Сам новичек, поэтому начал читать. Конечно сразу нашел ответ, что нужно изменить параметр в config.php

$config['module']['topic']['max_length'] = 50000;  // на 50000 символов


Изменил — не помогло, начал разбираться дальше. Открываем ActionTopic.class.php и находим блок


/**
		 * Проверяем есть ли содержание топика
		 */
		if (!func_check(getRequest('topic_text',null,'post'),'text',2,30000)) {
			$this->Message_AddError($this->Lang_Get('topic_create_text_error'),$this->Lang_Get('error'));
			$bOk=false;
		}



Собственно в нем и есть проблема:
1. Ограничение на на 15000, на 30000 символов
2. В классе жестко захардкодено это ограничение и настройки вообще никак не влияют

Чтобы исправить вторую проблему, и настройки начали работать надо блок изменить на:


/**
		 * Проверяем есть ли содержание топика
		 */
		if (!func_check(getRequest('topic_text',null,'post'),'text',2,Config::Get('module.topic.max_length'))) {
			$this->Message_AddError($this->Lang_Get('topic_create_text_error'),$this->Lang_Get('error'));
			$bOk=false;
		}


P.S.: Хотел в блог «Решение проблем, что чет мне не хватает»

Добавляем тэг irony на 0.4.2

Давно хотел сделать этот тэг на своем небольшом сайте, и вот,
при поддержке богов Хаоса и Раздора и под чутким руководством OnTheFly это получилось.



Первая пошаговая инструкция для дураков ls версии 0.4.2 и шаблона New, в которой написано, как мы создадим кнопку добавления тега, добавим ее в редактор, разрешим тэг, и добавим селектор в css и будем писать красненьким ;)
Читать дальше →

Правильный способ модификации enum в плагинах.

Проблема заключается в том, что некоторые плагины заменяют поле target_type таблицы comment, тем самым создавая свои новые типы комментариев, но затирая при этом уже добавленные. Разработчики упрощают себе жизнь, ограничиваясь строкой в dump.sql (пример из плагина «компании»)
ALTER TABLE `prefix_comment` 
	MODIFY target_type enum('topic','talk','company','clan') 
	DEFAULT 'topic';

В список риска попадает практически всё, где используется target_type enum: favourite, vote, comment_online.

При установки нескольких таких плагинов начинается бардак. Такие недоработки я заметил в следующих плагинах: «Компании», «Объявления», «Вопросы и ответы», «Места и события». Так делать нельзя. Программист разберется и исправит ошибку, но что делать обычным людям, далеким от php и sql, которые просто используют движок и несколько таких плагинов?

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

$oDb = $this->Database_GetConnect();
$sql = 'SHOW COLUMNS FROM  `'.Config::Get('db.table.comment').'`';
$aRows = $oDb->select($sql);
foreach ($aRows as $aRow) {
	if ($aRow['Field'] == 'target_type') break;
}

if (strpos($aRow['Type'], "'page'") === FALSE)
{
	// - Вносим изменение в поле target_type в таблице prefix_comment
	$aRow['Type'] =str_ireplace('enum(', "enum('page',", $aRow['Type']);
	$sql = "ALTER TABLE `".Config::Get('db.table.comment')."` 
		CHANGE `target_type` `target_type` " . $aRow['Type'] . " 
		NOT NULL DEFAULT 'topic'";
	$oDb->query($sql);
} 


Уважаемые разработчики, не поленитесь обновить свои плагины и внести изменения.

Хотел опубликовать в тематическом блоге, например в «Дополнительные модули и доработки для LiveStreet», но видимо не хватает кармы, это мой первый пост/комментарий вообще на livestreet.ru

PS. в sql запросах типа ALTER проще использовать MODIFY вместо CHANGE, т.к. первый не требует указывать название поля два раза.

Вывод RSS ленты на страницу авторизации сайта, работающего в закрытом режиме

Добрый день уважаемые единомышленники!

Моему сайту нет и месяца, соответственно на нем пока мало информации и пользователей. Сначала я использовал открытый режим работы сайта, но люди видя что на сайте пока мало людей видимо просто уходили с него и я решил использовать закрытый режим, т.е. материалы сайта доступны только после авторизации на сайте. Мне показалось что это может привлечь пользователя, попавшего на сайт. Т.е. ему будет интересно, а что там внутри? и зарегистрируется. Таким образом мне удалось привлечь некоторое количество людей.

Мой вопрос следующий, можно ли вывести на страницу авторизации сайта RSS ленту новых топиков, или комментариев с самого сайта? Я считаю, что это могло бы дополнительно привлечь людей. Есть ли идеи как этого добиться?

UPD. Пока писал этот топик, пришла мысль вывести на страницу авторизации блок «Прямой эфир», но я не знаю как сделать в нем так, чтобы по-умолчанию он показывал новые топики, а не комментарии, подскажите пожалуйста!

UPD2. Попробовал этот вариант, видимо потому, что сайт закрыт, блок появился, но ничего не выводит, можно ли как-то обойти это?

LS как блого-социальный движок (обсуждение)

Всем привет!

LS уже более двух лет, и со временем стали возникать вопросы — удобен ли функционал LS для реализации своей задачи (блого-социальный сайт) и соответствует ли он современным веяниям.
Многие проблемы/предложения уже обсуждались на этом сайта, но предлагаю попытаться их еще раз изложить и обсудить в одной теме. Попытайтесь писать только конструктив, а не набор пожеланий по функционалу.
Например, меня смущает деление топиков на коллективные/персональные и на хорошие/плохие/новые, возможно стоит пересмотреть такое представление информации.
Начнем? :)