+0.44
Рейтинг
5.60
Сила

Илья

Приветственный мессадж для новых пользователей

Чтобы Ваш сайт засверкал и засиял доброжелательностью и человеколюбием, вы можете организовать рассылку приветсвенного сообщения в инбокс (private message) каждому вновь зарегистрированному пользователю, где можете написать все что хотите, от радостного «Привет %username%!» до маленького экскурса по всем фичам и секретам работы сайта.

Хак сделан LS мафией (Benone & Lora GT) :)
Демо смотрите на "Новой Музыке".
Читать дальше →

Добавляем ссылку на пользователя.

Добавим в комментариях к записи возможность оставить ссылку на профиль любого пользователя.



1. В файле /classes/modules/sys_text/Test.class.php



В строке (51):

		$this->oJevix->cfgAllowTags(array('cut','a', 'img', 'i', 'b', 'u', 's', 'video', 'em',  'strong', 'nobr', 'li', 'ol', 'ul', 'sup', 'abbr', 'sub', 'acronym', 'h4', 'h5', 'h6', 'br', 'hr', 'pre', 'code', 'object', 'param', 'embed'));


добавляем в конце:


, 'user'


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

Доработка RSS потока

В RSS до cut

Почти сразу, как поставил движок, передо мной встал вопрос: как отдавать в rss долько до кут? Не хотелось мне отдавать полные топики в ленту, т.к. материалы можно почитать на сайте, а школьникам лентяям отрезать возможность что-то полезное оттуда грабить.

Теперь это решение кажется уже довольно простым. Достаточно в экшене ActionRss.class.php в одной из функций (например RssGood) изменить одну строку на:

$item['description']=$oTopic->getTextShort();


Последние материалы блога в rss

Тут же вылезла проблема, что прочитав анонс пользователю ну совершенно некуда кликнуть. Что согласитесь — форменный бардак. Решил, что нужны «читать далее» и «последние посты топика». Теперь в rss канале футер анонса выглядит так:



Тут порядок такой. В том же файле в той же функции вставлем после:

foreach ($aTopics as $oTopic){


Этот код:

$aFooter="";
$aMyBlogId=$oTopic->getBlogId();
$aMyResult=$this->Topic_GetTopicsByBlogGood($this->Blog_GetBlogById($aMyBlogId),0,1,3);
$aMyTopics=$aMyResult['collection'];
foreach ($aMyTopics as $oMyTopic){
  $aFooter=$aFooter.'<li><a href='.$oTopic->getUrl().'>'.$oMyTopic->getTitle().'</a></li>';
}


А ту переменную, что мы уже меняли выше, заменяем на:

$item['description']=$oTopic->getTextShort().'

<a href='.$oTopic->getUrl().'>читать полностью</a>

<b>Последнее из блога:</b> <a href='.$oTopic->getBlogUrlFull().'>'.$oTopic->getBlogTitle().'</a><br /><br /><ul>'.$aFooter.'</ul>';


Вот собственно и все. У кого есть мысли по поводу развития темы дополнений в rss, пишите — обсудим.

Рабочий пример как обычно можно увидеть на TechFuture RSS — в данном случае в rss хороших топиков.

UPD: Исправлены ошибки, дополнен код.

Последние топики автора (доработка блока "Данные автора топика")

Первая статья — Блок с данными автора на странице топика

Одним из пунктов, что я себе ставил задумывая этот блок — это список последних постов автора. Собственно сегодня тот день, когда это реализовалось.


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

"Обоснуй оценку"

Идея может пригодиться для некоторых локализаций, авторы которых хотят искоренить троллей и жесткое минусование по принципу — «у него уже есть минус, вот ему еще один».

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


Ближе к делу.
Есть предложение сделать опциональную возможность в движке не позволять пользователям просто так ставить оценки, а обязательно требовать написать комментарий. К примеру, я захотела оценить другой комментарий или топик (не важно "+" или "-") и жму на стрелку. В этот момент по аяксу появляется окно, в котором предложение комментарием объяснить "А за что?".

Таким образом оценки будут более обдуманными, а пользователи сообщества будут с каждым разом все лучше различать «что такое хорошо, а что такое плохо?»(с)

Блок с данными автора на странице топика

Помнится еще в начале своего прибывания на Хабре долго не мог понять, почему чтоб отметить автора необходимо сделать столько движений? Как не нравилось мне это — так и не нравится. Что собственно и стало причиной доработки, которой с вами делюсь. По ходу пьессы буду комментировать, что и к чему в итоге привело.

Задача: вывести при просмотре топика блок с информацией об авторе топика в сайдбаре справа следующего вида:


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

Отображение блока на странице со статьей

Собственно необходимо отображать дополнительный блок только на странице вида site.ru/blog/blog_name/bla-bla.html — т.е. непосредственно на странице статьи. При добавлении в экшен classes\actions\ActionBlog.class.php блок видно и на странице блога, списка блогов и т.д.

Вопрос: что делать? ;)

Ответ: Использовать в шаблоне блока конструкцию типа:

{if $oUserCurrent}        
{if $oTopic}
содержимое шаблона
{/if}
{/if}

Песочница и другие варианты

Думаю, многие со мной согласятся в том, что контроль количества аудитории социальной сети — это один из возможных способов улучшить ее качество. В большинстве случаев разработчики делают сеть закрытой и внедряют систему инвайтов (Как Лепра, Хабр и некоторые другие проекты).

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

Не так давно, на Хабре внедрили "Песочницу", куда каждый может написать без указания личности, показав свой уровень и интеллект, с возможностью получить инвайт от любого члена сообщества, который посчитает, что вы достойный человек. Уверена, что это отличная идея, которую следует перенять и реализовать в этом движке.

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

Также существует третий вариант (он близок к первому, но имеет определенные особенности) — проведение тематического конкурса за инвайты. Его можно также применять и для спонсируемых или партнерских программ лояльности. К примеру, на Хабре есть ФППП, когда кто-то из спонсоров предлагает написать топик на определенную тему и получить определенный бонус. А в нашем случае можно в параллель разыгрывать инвайты для не зарегистрированных пользователей и бонусы для зарегистрированных. Можно даже создавать блоги песочницы для каждой из акций.

Статистика Google Analytics в LiveStreet

Давно задавался вопросом импортирования данных статистики из google analytics в нормальном виде и решил его для себя. Сейчас решил внедрить эту возможность в движок Livestreet и поделиться с общественностью. Замечу, что в код лезть не пришлось и все действия достаточно просты.



Смотрим пример и устанавливаем.
Читать дальше →