0.00
Рейтинг
0.00
Сила

Плагин «Знание языков»


Не давно был у меня «интересный заказ», и вот после него остались некоторые наработки. Одна из них, это плагин «Знание языков», который позволяет пользователям указывать языки которые они знаю, и после они будут отображаться в его профиле.

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

Плагин «Дополнительная работа с изображениями»

Плагин немного улучшает встраивание изображений в топики и коментарии. На данный момент реализован следующий дополнительный функционал для изображений:

— изображания становятся кликабельными, при клики открывается полный размер;
— при загрузке изображения в топик/комментарий создается preview-версия с заданым размером, которое и помещается в топик/комменатарий.


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

Меняем компрессор js

Нет, нет — это инструкция не для владельцев Мерседеса.
Речь идет о библиотеке JSMin для сжатия js-файлов.
Я заглянул на репозитарий либы на github, где черным по-белому по-русски написано что мол проект больше не поддерживается, и что не стоить использовать, ведь есть более достойные инструменты, среди которых есть JShrink.

Итак:
Читать дальше →

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

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

Нужно в файле сущности пользователя \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;
}


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

Плагин "Journal Page"

Давно подумывал сделать плагин, который выводил бы блоки с топиками из указанных блогов (для каждого блога отдельный блок с его топиками): просто иногда хочется разнообразить вывод топиков и такой плагин был бы очень кстати.

С последним же релизом плагина «Main Page» данная идея переросла в нечто большее, появилось немного свободного времени и в результате получился плагин «Journal Page».

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

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

Плагины бесплатно

В преддверии Нового года раздаем бесплатно плагины:

TwitterRead



Демо на mvpclub.ru/

Feedbacks



Демо на al.alushta.us/

InstaGrab



Демо на in-crimea.com/

Всех с наступающим! Процветания и благополучия.

RBAC - управление правами на основе ролей

В новой версии появился новый модуль Rbac — модуль управления правами на основе ролей и разрешений (RBAC).
Суть его сводится к тому, что теперь в админке можно создавать различные роли, давать ролям необходимые права (разрешения) и назначать эти роли пользователям. Роли могут наследовать от других ролей. Таким образом можно очень гибко настраивать систему управления правами.



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

Центральный крон

В новой версии мы реализовали механизм центрального крона. Суть в том, что для выполнения периодических задач достаточно в cron на сервере добавить только один скрипт, а периодические задачи добавлять уже в специальном интерфейсе.



В системный cron на сервере необходимо добавить скрипт — /application/utilities/cron/main.php с периодом 1 раз в 2 минуты.
Далее в специальном интерфейсе в админке можно управлять списком задач. По умолчанию созданы две задачи — очистка старого кеша и рассылка отложенных емайл сообщений. Там же можно в ручном режиме добавить новую задачу, в качестве вызываемого метода указывается полный синтаксис вызова метода модуля.

Центральный крон может работать в двух режимах — последовательное выполнение задач и параллельное (fork). Параллельный режим пока работает в тестовом режиме, т.к. до конца не протестирован. Выставляется режим в конфиге: $config['module']['cron']['use_fork'] = false;

Плагины могут добавлять в крон свои задачи. Для этого в главной файле плагина достаточно прописать специальные вызовы при активации и деактивации плагина.

public function Activate() {
    $this->Cron_CreateTask('Тестовая задача','PluginArticle_Main_RunTest',6,$this);
    return true;
}

public function Deactivate() {
    $this->Cron_RemoveTasksByPlugin($this);
    return true;
}