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

Сергей Цепелев

Как заставить работать ссылки авторизации через социальные сети встроенные в шаблон?

Как заставить работать («оживить») ссылки авторизации через социальные сети, которые были вставлены в шаблон его автором, но не активные т.к. никуда не ведут и сделаны в декоративных целях (демо дизайна) на примере плагина AutoOpenId?

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

Плагин «Черный список» (обновление 27.10.2015)

Описание

Проверка E-Mail и IP пользователей на наличие в базах спамеров (stopforumspam.org, botscout.com, fspamlist.com). Проверка осуществляется при регистрации и авторизации пользователей.

GitHub: github.com/wasja1982/livestreet_blacklist

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

[Примочка] Вступаем / покидаем блог прямо в ленте топиков

Известно, что вступить в блог можно:
— со страницы топика (сайдбар)
— со страницы блога
— со страницы списка блогов

Захотелось, чтобы вступить в блог можно было прямо из ленты топиков — без лишних телодвижений.
Почему бы не добавить соответствующую кнопку в infobox?:
Читать дальше →

Плагин «Файловый архив» (обновление 10.08.2014)

Описание

Плагин добавляет новый тип топика «Файл».
Позволяет запрещать скачивание файлов для неавторизованных пользователей.
Ведет учет количества скачиваний файла.

GitHub: github.com/wasja1982/livestreet_filearchive

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

Интересное решение на неявном преобразовании типов

Задача, собственно, проста: ненавязчиво напоминать пользователю когда он последний раз читал топик надписью в заголовке о количестве дней, прошедших с момента последнего его прочтения. Делается так:
{$numberOfDays = ($smarty.now|date_format:"%Y%m%d"-0)-($oTopic->getDateRead()|replace:"-":""-0)}
{if ($numberOfDays != 0) }
    <div style="font-size: 10px; display: inline; color: #d3d3d3;">
        (Прочитано {$numberOfDays} дней назад)
    </div>
{/if}

Комментировать дальше не буду, но на вопросы отвечу).

Загрузка картинок на фтп-сервер.

поюзал поиск. ничего дельного не нашел.
Есть плагины для загрузки фото на серверы амазон s3, имаджешок и т.д.
А можно ли переопределить функции движка, чтобы он загружал фото на облачное хранилище типа Selectel.ru вместо папки uploads?
или опять только через плагин?

Full Cache. Простое Frontend кеширование без Nginx

Цель. Снизить нагрузку при большом потоке незарегистрированных пользователей.
Причины нагрузки.
1) Даже при включении бэкенд кеша любого вида(memcache, file, xcache) движок все же ест память, так как структуру данных он выстраивает в любом случае. При большом количестве плагинов растет количество классов и экземпляров этих классов, которые загружаются в память. В данном случае использование бэкенд кеша увеличивает скорость работы за счет кеширования результатов запросов в базу данных. Но размер потребляемой памяти остается тот же. Например, у меня страница топика ела 19 Мб, а список — 30мБ. При этом частично помогает, например, использование ссылок на объекты с помощью & при переборе, а не их копий. Но все же это крошки.
2) Даже при полном кеше БД все же выполняются несколько запросов, таких как получение данных о сессии или update таблицы просмотров. Под нагрузкой и при использовании InnoDb базы «update запрос» может очень сильно тормозить.
Ресурсы и методы
Собственно смысл прост. Он состоит в том, чтобы один раз генерировать страницу, а потом отдавать ее сразу.
Проверять на существование и отдавать кеш надо будет перед запуском движка, что разгрузит потребляемую память.

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

Установка Livestreet с нуля (Debian): nginx + mysql + php-fpm + apc + memcached + sphinx

Возможно, этот гайд даже кому-нибудь понадобится.

0) Итак, у нас имеется свежепоставленный Debian с настроенным ssh-доступом и юзер с правами, достаточными для работы sudo.
Здесь и далее "#" в начале команды означает, что ее необходимо запускать с правами root-пользователя (например, с помощью sudo)
1) Пакеты будем ставить из репозитория dotdeb, поэтому для начала добавим его в sources.list:
# nano /etc/apt/sources.list

дописываем в конец файла
deb http://packages.dotdeb.org stable all

Далее импортируем ключ dotdeb'а:
wget http://www.dotdeb.org/dotdeb.gpg -O - -q | sudo apt-key add -

Обновляем список пакетов
# apt-get update

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

Боевой курс новичка или "всем новеньким - сюда"

Это краткое FAQ.

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

Как создать свой вид топика, используя систему плагинов

3 года назад было написано Руководство: Как создать свой вид топика на LiveStreet. В то время ещё не было системы плагинов, и всё делалось «топорно», что в последствии затрудняло обновление движка, т.к. приходилось свои куски кода вставлять опять. С появлением системы плагинов LiveStreet стал более гибким и легко обновляемым. Передо мной встала задача создать новый вид топика, и я решил сделать это плагином. Но в процессе выяснилось, что то ли я чего-то не знаю, толи этого нет.

Напишу, что и как я делал, заодно задам вопросы, может быть на них решение уже есть. Надеюсь, совместно у нас получится сделать каркас нового типа топика в форме плагина.
Читать дальше →