+23.14
Рейтинг
79.20
Сила

Владимир

Аналоги livestreet cms

Мне нравится лайвстрит. Но с отсутствием поддержки, оперативными фиксами уязвимостей и багов, не говоря уже о новом функционале, есть повод искать альтернативу.

Моя цель была найти опенсорс CMS с большим, желательно международным сообществом и группой разработчиков. По этим и некоторым другим параметрам подходит MODX. Так же есть и другие варианты. Подробности под катом.
Читать дальше →

Плагин Mistakes для граммар наци :)

Все чаще на сайтах встречаю орфографические ошибки, опечатки. В последнее время этим грешат и новостные издания где, по идее, должны быть редакторы.

Я и сам часто допускаю ожибки и опечадки :)

Есть конечно Orphus, но он больше годится для личного блога и мало подходит для коллективного.

Данный плагин предназначен для совместной проверки статей на LiveStreet сайтах читателями.

Если читатель встретил в тексте статьи ошибку он может выделить ее, нажать Ctrl+Enter и вписать пару слов комментария. После этого автору статьи будет отправлено личное сообщение от читателя с описанием ошибки.



Можно настроить возможность сообщать об ошибках незарегистрированными пользователями.

Идея навеяна периодическим нытьем на хабре авторов статьи о том, что сообщения об ошибках лучше направлять в личку, а не в комментарии.

https://github.com/wyfinger/livestreet_mistakes

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


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

Как вынести количество публикаций каждого пользователя на страницу пользователей

Данный топик — расширенный ответ на вопрос, заданный в этом топике т.к. мне уже не первый раз задают этот вопрос.

Нужно в файле сущности пользователя \classes\modules\user\entity\User.entity.class.php (например, после 453 строки) дописать метод:
/**
 * Возвращает количество созданных пользователем топиков и комментариев
 *
 * @return int
 */
public function getPublicationsCount() {
  $iCountTopicUser = $this->Topic_GetCountTopicsPersonalByUser($this->getId(), 1);
  $iCountCommentUser = $this->Comment_GetCountCommentsByUserId($this->getId(), 'topic');
  return $iCountTopicUser + $iCountCommentUser;
}


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

Переопределения в плагине для LS 2.0

Здравствуйте, не получается переопределить шаблон в плагине. С переопределением модулей и экшенов проблем нет, переопределил нормально в $aDelegates и $aInherits, а вот шаблон не хочет.

пишу так:

public $aDelegates = array(
        'template' => array(
            'blocks.tpl' => '_blocks.tpl'
        ),
    );


но загружается tbl из папки активного шаблона, а не из плагина. В плагине tpl лежит в папке:
application/plugins/my_plugin/templates/skin/default/blocks.tpl

Имя активного шаблона отлично от default, но я пробовал и так:
application/plugins/my_plugin/templates/skin/my_template/blocks.tpl


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

Как можно проверить активирован ли плагин прямо в шаблоне?

Задавали как-то вопрос, решил продублировать ответ, может кому-то будет интересно.

Для этого можно использовать проверку на наличие кода плагина в массиве активированных плагинов $aPluginActive, который заполняется при инициализации модуля Viewer:

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

Сайт портфолио на фреймворке LS

Надо было сделать небольшой сайт портфолио, не долго думая взял за основу LS, знаком с ней с 0.4 версии.

Сейчас уже версия за единицу перевалила.
Очень порадовали изменения в последней версии.

В общем смарганил небольшой плагин, постарался сделать максимум все через AJAX, всякие там драг-и-дропы. В итоге получился вот такая вот пепяка.

Буду его развивать дальше.
В планах прикрутить «блог», благо все есть уже в движке, ну и дизайн титула там и прочего еще допилить надо.

Еще раз, огромное спасибо создателям этого замечательного движка!!
Ну и вообще респект идеологам MVC!

ссылка на сайт — dlvdesign.ru

Видео работы админки


P.S. По мере работы над сайтом буду делиться впечатлениями, но в личном блоге -> livestreet.ru/blog/17531.html

Краудсорсинговая документация

Пришла идея сделать документацию для разработчиков. Судя по всему, такая необходимость давно назрела. К сожалению, документация быстро устаревает, а бывает и совсем исчезает. Чтобы такого не произошло и её существование не сильно зависело от меня — решил разместить её на GitHub — оттуда уж точно никуда не денется. Надеюсь на вашу помощь в написании.

В общем, вот — livestreet.net

Стандарты написания кода экосистемы LiveStreet

Предлагаю вниманию сообщества и, в первую очередь, разработчиков первую версию стандартов по написанию кода для LiveStreet окружения:

  • github.com/psnet/ls-coding-standarts — этот документ регламентирует стандарт написания кода для экосистемы LiveStreet.

Также для тех, кто пишет плагины, будет удобной инструкция по подготовке плагина к выпуску и публикации в каталоге дополнений LiveStreet:


Ваши предложения, рекомендации можно направлять в пулреквесты, создание исюшек на гите или просто комментированием здесь.

Данных документов ранее не существовало, что вводило в некоторое замешательство новых разработчиков, которые не всегда сразу понимали с какой стороны подходить к написанию кода.

кросс пост из гида.

Возможность предпросмотра при публикации без тегов.

Ситуация такая:
Пользователь пишет топик, идет творческий процесс… Вот он после первого абзаца (вставки картинки и т.п.) решил воспользоваться предпросмотром. Получает alert — "Необходимо заполнить теги..." (так настроено в конфиге). Заполняет теги и тем самым отвлекается от сути топика.

Предложение:
Сделать возможность предпросмотра без заполненных тегов, если нет тегов — то над предпросмотром выводим фразу типа "Внимание! Перед публикацией не забудьте заполнить теги" или "Внимание! публикация возможна только при наличии тегов". Если теги уже есть — то такое сообщение не выводим.

Вопрос:
Пока я не задумывался о реализации. Может у кого был подобный опыт?

UPD: Решение, позволяющее не вводить теги при предпросмотре (by AlikMis )
в файле \classes\actions\ActionAjax.class.php в строке 987
$oTopic->_Validate(array('topic_title','topic_text','topic_tags','topic_type'),false);
убираем 'topic_tags',