Запрет редактировать посты, где есть комменты

LiveStreet
Иногда люди которые дрочили не один год, у которых не одна сотня постов, из-за чего-то обижаются. Батхер или трололо. Или может они из инета сваливают в реал, искать девочек и менять жизнь. Короче такая хуйня всегда происходит. Еще с времен форумов :) Сам когда-то злился и от обиды «вытирал все присутствие себя», лет 7 назад, на каком-то phpbb форуме :)))

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

То вот, решение, уже готовое под плагин.
Скачать и активировать: 2me.be/z/topicblock.zip

Иногда важно, чтобы люди увидели ЛС

LiveStreet
Этим способом, можно ЗАЕБАТЬ СУКА ЛЮДЕЙ :)
Появление окна при начальной загрузке браузера, куки удаляются при закрытии.


В случае наличия сообщений выдает предупреждения. Необходимо включить обновление для новых писем.


Как включить обновление значков при появлении сообщений?
Правим код в конфиге:
// Модуль Talk
$config['module']['talk']['reload']     = true;

*это увеличит нагрузку на сервер.

Скачать и активировать: 2me.be/z/message.zip

про ограничение длинны топика

LiveStreet
Длинна топика не может превышать 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;
                }

меняем на
/**
                 * Проверяем есть ли содержание топика
                 */
                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;
                }

Красивый номер инвайтов

LiveStreet
Кому не нравится код инвайтов вида 5884804e763972972042b1fccd6f1d13.
Можно сделать красивые номера вида Y8EC-HRF-9I5.

Для этого открываем файл include/function.php и находим там функцию func_generator (81 строка). Не будем ее менять, так как она используется в других местах, а сделаем под ней свою:
/**
 * генерирует код инвайта
 */
function func_generator_invite() {
        $allowable_characters = "ABCDEFGHIJKLMNPQRSTUVWXYZ123456789";
        $ps_len = strlen($allowable_characters);
        mt_srand((double)microtime()*1000000);
        $pass = "";
        for($i = 0; $i < 12; $i++) {
                if(($i == 4) || ($i == 8)) {
                        $pass .= '-';
                } else {
                        $pass .= $allowable_characters[mt_rand(0,$ps_len-1)];
                }
        }
        return $pass;
}


Затем идем в файл classes/modules/user/User.class.php и находим функцию GenerateInvite (строка 444) и меняем там строку:
$oInvite->setCode(func_generator(32));

на
$oInvite->setCode(func_generator_invite());


Чтобы пользователи могли вводить код в любом регистре сделаем небольшое изменение в файле classes/modules/user/mapper/User.mapper.class.php изменив функцию GetInviteByCode (строка 444). Меняем строку:
if ($aRow=$this->oDb->selectRow($sql,$sCode,$iUsed)) {

на
if ($aRow=$this->oDb->selectRow($sql,strtoupper($sCode),$iUsed)) {

Набор плагинов, которые нужны на любом LS я считаю

LiveStreet
Все они проверены мной(а мусорного говна я отсеял много), с последней версией livestreet 0.4.2
Так что, думаю в течении 2011 будут актуальны, потом может уже нет(если двигло координально изменится) :)
Плагины, не затрагивающие изменение самого двигла, могут работать очень долго, просто к сведенью. Я пару полезных фич откапывал, еще трех летней давности.

  • Адсенс. Собсно все описано, картинкой.
    Скачать и активировать, вот и все: 2me.be/z/adsense.rar
  • Происходит, автоматическое подключение блогов при создании топика. Т.е. пользователю, не нужно сначала вступать в блог, чтобы писать в него. Но если у вас от 100 коллективных блогов, например, то он не подойдет, ибо при написании любого топика, пользователю сразу вся сотня предложится для выбора.
    Скачать и активировать: 2me.be/z/autoconnect.rar
  • Автоматически вставляет тег cut, если длина топика превышает заданный параметр. Если люди нубы, не знают что такое «под кат», то это как раз пригодится.
    Скачать и активировать: 2me.be/z/autocut.rar
  • Автозаполнение города, в профиле, при регистрации.
    Скачать и активировать: 2me.be/z/autotown.rar
  • Добавляет возможность вставлять видео, через код
    <iframe>
    , сейчас это новый код ютуба, да вконтактиве всякие и вимедии.
    Скачать и активировать: 2me.be/z/exvideo.rar
    *алсо можно вставлять через тег
    <video>
    который в LS, прямо по ID видосов, или через ссылки вида youtu.be и прочих коротких.
  • Возможность использовать Граватары. Ну, кто не знает — gravatar.com
    Скачать и активировать: 2me.be/z/gravatar.rar
  • Приветствия. Ну, как у меня вверху цитаты появляются. Хотя конечно с лепры же стырено.
    Скачать и активировать: 2me.be/z/greetings.rar
    Настройка текста тута: plugins/greetings/templates/skin/default/list.txt Тексты разделяются, просто — каждая отдельная строка выводится.
  • Расширенное залитие картинок. Добавление первьюшек и предпросмотра. Ну вот описывал уже.
    Скачать и активировать: 2me.be/z/imgpreview.rar
  • Листинг страниц с бегунком, как у меня тут внизу. Портит индексацию, т.е. по странично роботы не ходят.
    Скачать и активировать: 2me.be/z/lspage.rar
  • Автозаполнение поиска. Ну, вводите в поиск что-то, не успели дописать слово, а оно уже высветилось, если оно есть в базе.
    Скачать и активировать: 2me.be/z/searchautocompleter.rar
  • Кстати, про поиск. Он в livestreet по умолчанию не работает. Нужно устанавливать aceadminpanel и потом еще acemysearch. Тогда все ок будет. Но во первых, этот модуль доп админки не прошит доконца, видел как из-за нее находили дырки. Во вторых, короче это еще и ресурс жрет, на говно тарифах типо виртуального хостинга или мелких vps с 128 памяти, будет не очень. (вообще, vps покупайте от 1гб всегда, к слову)
    Поэтому я советую заюзать поиск от гугла. Делать его тута.
    Или замутить поиск от яндекса. Делается вот так.

    Еще, об этом модуле админки. С помощью него вы можете удалять/банить пользователей. Делать списки инвайтов и еще пару плюшек. Но сразу хочу предупредить, в LS структура по ID в базе. Тут расчитано на то, что тут нихуя не удаляется никогда, а просто рейтингом сносится в минусы, если мозолит глаза на главной. (рейтинги в конфиге двигла настриваются, там дохуя по разному можно структуры придумывать). Поэтому у вас могут возникнуть проблемы, если вы начнете удалять юзеров. Например коллективные лс собьются, если было лс на 3 человека, а одного из них удалили, то вывод этих трех id, в модуле лс, конечно проебался. И у чела будет глючный лс ящик, и он даже не сможет удалить такие лаго лс и отлистать в прошлое. Или например, в январе я случайно всех users удалил :) У меня везде комменты пропали, ибо вывод комментов идет с id коментатора. Ну короче совет — продумайте зарание структуру коллективных блогов, их тоже лучше не удалять. :)
  • Похожие записи. Например, откройте любую запись, и вы увидете похоже записи в сайдбаре. Они берутся из критериев: метки, автор, блоги. Находится схожесть короче.
    Скачать и активировать: 2me.be/z/similar.rar
  • Спойлер. Ну собсно добавляется тег спойлер.
    лалала, вот такой.
    Я люблю Олесю Петько.

    Скачать и активировать: 2me.be/z/spoiler.rar
  • Поток. Ну, вот такой короче. (это просто модуль, выводящий все посты, где были самые свежие комментарии, в самый верх естесно)
    Скачать и активировать: 2me.be/z/stream.rar
  • Все метки. Добавляет страницу, где будет абсолютно все метки, а не токо самые популярные, как в сайдбаре.
    Скачать и активировать: 2me.be/z/tags.rar
  • Добавляет, в сайдбар, где Блоги / Комментарии, еще блок Твиттор. В конфиге указывается аккуант и кол-во выводимых постов.
    Скачать и активировать: 2me.be/z/twitterfeed.rar
  • OpenId — регистрация через vkontakte, facebook, rambler, yandex, google, twitter.
    Скачать и активировать: 2me.be/z/openid.rar
    Потом настройка в /plugins/openid/config/config.php
    Для авторизаций, нам нада регнуть свой домен в приложениях тех систем.
    Для rambler, yandex, google не нужно. А вот для facebook, vkontakte, twitter нужно.
    Итак. Вконтакте — vkontakte.ru/apps.php?act=add&site=1, Фб — facebook.com/developers/createapp.php, twitter — dev.twitter.com/apps/new.
    Потом соответсвенно заполняем полученные ID в конфиге и секретные ключи.
    Еще отмечу, для твитора важно сделать так. А в FB, нужно указать домен в настройках. т.е. не важно где у вас установлен LS, поле домен должно быть — корневой домен, а не поддомен или там /blog и еще что-то. Вот.
  • Комментирование, через VK и FB.
    Скачать и активировать: 2me.be/z/vkfb-comments.rar
    Опять, как и с OpenId — создать приложения в соц сетях. И настроить конфиг.
  • OpenId через Loginza.
    Скачать и активировать: 2me.be/z/loginza_plugin_ls_1.0.0.zip
  • Добавление в профиль, полей для джебберов, скайпов и прочего.
    Скачать и активировать: 2me.be/z/social.rar
  • Возможность добавлять к постам подпись.

    Скачать и активировать: 2me.be/z/topicsignature.rar
    Настройка, в конфиге config/config.php
    А саму подпись(для админа), делать тута: plugins\topicsignature\templates\skin\default\sign_admin.tpl

{literal}код{/literal}

LiveStreet
Наверняка у вас будет проблема, с вставками в стиль, каких-либо элементов.

Например код яндекс метрики.

Нада. В фаиле стиля обрамиь через {literal}
например /templates/skin/new/header.tpl
<body onload="prettyPrint()">

{literal}
<!-- Yandex.Metrika -->

её код

<!-- /Yandex.Metrika -->
{/literal}

{hook run='body_begin'}

Если надо вставить в другое место, то просто вставляем в теги {literal}код_счетчика{/literal}

обязательно сделать когда установите дефолт ls

LiveStreet
  • Скопировать все содержимое файла comment.tpl и вставить его в файл comments_tree.tpl, вместо строки
    {include file='comment.tpl'}  

    тоже самое сделать, с topic_list.tpl + topic.tpl

    Итого — full time на топиках с 1000+ комментариев будет без тормозов.
  • Удалить нахуй у себя файл /engine/lib/external/CSSTidy-1.3/css_optimiser.php
  • И еще вот это.
    Найти в файле /engine/modules/text/Text.class.php
    213 строчку:
    return array($sTextShort,$sTextNew,$sTextCut);

    Заменить ее на строчку:
    return array($sTextShort,$sTextNew,$sTextCut? htmlspecialchars($sTextCut): null);

RSS в livestreet

LiveStreet
Спорю многие не знали ;)
Что тут можно подписаться на записи, которые попадают на главную. alice2k.me/rss/index/
Можно подписаться отдельно, на записи, с кого-то коллективного блога. alice2k.me/rss/blog/ongoing/
А так же можно подписаться на бурление комментов, в какой-то записи. alice2k.me/rss/comments/696/
Это думаю многие знали.
Но вот, что можно подписаться на метку. Уверен не знали.
Например на метку маст-си или inukami alice2k.me/rss/tag/Inukami/