С Днём Программиста!

Поздравляю всех разработчиков с Днем Программиста!



Желаю не терять оптимизма, в таком нелегком деле как написание free-ware CMS-системы, плагинов и компонентов, адекватных заказчиков и не жадных покупателей готовых решений. Ну и само собой меньше багов и больше интересных идей, именно новые идеи сделают LS популярной системой.

Очередное анти-спам решение.

Благодаря этому и этому спам-боты на моем сайте себя не проявляют — они регистрируются, пытаются что-то постить, но реального вреда от них нет. Разве что они засоряют список пользователей, в особенности «Онлайн».
Это не сильно мешает, но иногда раздражает. Идея доотсеивать пользователей на основе их поведения зрела уже давно, но сесть и реализовать (хотя бы прототип) получилось только сейчас.

Подробности и инструкции под катом.

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

Борьба со спамом на стене

Мне тут сегодня утром немного проспамили стенку на сайте и пришлось в экстренном режиме добавлять ограничение по рейтингу для написания сообщений на стену (в стандартной поставке есть только лимит по времени).

Данное изменение добавил в плагин, который добавлял в каталог как один из этапов борьбы со спамом.
Если вкратце, то суть борьбы следуюшая:
— запрет создания постов людям с нулевым рейтингом (т.е. только что созданным);
— выдача небольшого числа рейтинга за заполнение профиля.

Ограничение прописывается в конфиге плагина:
$config['acl']['create']['wall']['limit_rating'] = 10;





Репозиторий на GitHub.
Сказать спасибо можно на ЯД 410011972198043.

Так же управление правилами постинга на стену доступны в плагине от ort :

Плагин «GMapPost» (edition «GeoPost»)

Хочу вам представить плагин «GMapPost» (Карта топиков) — переделанный «GeoPost».
Основное отличие от прародителя в том, что тут используется Google Maps. Но, также можно подключать и другие карты, типа OpenStreetMap, через Google Maps API (ImageMapType).

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

Летняя распродажа расширений

Буду краток: к окончанию лета организовал распродажу своих расширений за пол стоимости.

На сколько я понял, не все пользуются пунктом меню "Скидки" потому как покупают только «Maxone», который на главной.

PS: Не ради рекламы и плюсов — просто может оно действительно кому нужно.

PPS: Админам: Скидка действует только на базовую лицензию и не распространяется на остальные. В итоге базовая получается дешевле дополнительных и необходимо подгонять все проценты вручную + не забыть потом вернуть все на место. Так и задумывалось? Может добавить какой чекбокс в скидках «Распространяется на все лицензии»?

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


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

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

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

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

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


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

Шаблон «Сhaos to Block»

9 фото
image
Адаптивный шаблон для создания своего «супер» интернет журнала. Подойдет как для коллективной работы, так и для личного блога.


Показать все 9 фото →

Плагин "My Login"


Основной функционал плагина:
  • Позволяет пользователям менять логин;
  • Поддержка коротких ссылок для профилей пользователей (site.com/user1);
  • Поддержка поддоменов для профилей пользователей (user1.site.com);

То есть, плагин позволяет пользователю изменять свой логин. Эта функция доступна в настройках аккаунта. В совокупности с остальным функционалом плагина, мы получаем полезный инструмент для поднятия мини соц. сетей. Ведь, мы все этим занимаемся! ;D

Так же тут учтено то, чего нет в shortprofile: при регистрации или изменении логина не возможно выбрать такой логин, какой бы вёл на существующие разделы сайта, например, не можно зарегистрировать пользователя с логином blogs.

С ссылками на профиль дело обстоит так: мы можем включить одну из функций, или короткие URLs, или поддомены, или оставить как есть, используя при этом только функцию изменения логина. А можно и наоборот: включать только ссылки.

При этом, для работы поддоменов вы должны настроить сервер так, чтобы все запросы с поддоменов передавались на основной домен. То есть, нужно прописать alias вида *.site.com. Дальше скрипт всё сделает сам.

При всём этом, я постарался сделать плагин совместимым с NiceURL. Тут основным условием является, то что надо обязательно указывать в NiceURL постфикс для ссылок (.html, .htm или .php). А также, добавил фикс для того, чтобы подружить NiceURL и RusURLs, но для этого плагин «My Login» должен всегда быть выше в списке plugins.dat, чем NiceURL

Установка:
После активации плагина, получаем ошибку 404, и это нормально. Так происходит потому, что в плагине меняется адрес админки: site.com/admin на site.com/ls_admin. Это нужно для того, чтобы не было конфликта между коротким адресом профиля админа и админкой. То же самое происходит и при дезактивации.

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

Для правильной работы плагина нужно в config.local.php указать вручную `path.root.web` (настоящий адрес сайта, например: «site.com.ua»).

Настройка:
Плагин настраивается в config/config.php.
$config['functions'] = array(
    'change_login' => true, // изменение логина
    // тип ссылки на профиль
    'profile_type' => 'subdomain',   // 'default' - site.com/profile/admin/
                            // 'subdomain' - admin.site.com/
                            // 'short' - site.com/admin/
);

// не допустимые логины
$config['banned_logins'] = array(
    'www',
    'error',
);