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

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

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


Для этого открываем файл \templates\skin\synio\infobox.info.blog.tpl и начиная с 19 строки делаем так:
<div class="infobox-actions">

	<!-- Добавленный код -->
	<script>
		jQuery(function($){
			ls.lang.load({lang_load name="blog_leave,blog_join"});
		});
	</script>
	{if $oUserCurrent and $oUserCurrent->getId() != $oBlog->getOwnerId()}
		<button type="submit" class="button button-mini button-action-join{if $oBlog->getUserIsJoin()} active{/if}" id="blog-join" data-only-text="1" onclick="ls.blog.toggleJoin(this, {$oBlog->getId()}); return false;">{if $oBlog->getUserIsJoin()}{$aLang.blog_leave}{else}{$aLang.blog_join}{/if}</button>
	{else}
		<button type="submit" class="button button-mini disabled" id="blog-join" data-only-text="1" onclick="ls.blog.toggleJoin(this,{$oBlog->getId()}); return false;">{$aLang.blog_join}</button>
	{/if}
	<!-- Конец добавленного кода -->

	<a href="{$oBlog->getUrlFull()}">{$aLang.infobox_blog_url}</a>
	<a href="{router page='rss'}blog/{$oBlog->getUrl()}/">{$aLang.infobox_blog_rss}</a>
</div>

в файле \templates\skin\synio\css\infobox.css дописываем строку:
.infobox .infobox-action .button { float: right; }

Теперь инфобокс выглядит так:


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

P.S.: хотел назвать «Печенькой», но это слово защищено авторскими правами :)
Привет nakahiro !

2 комментария

avatar
Привет lifecom ! Можешь назвать и «Печенькой» я не против :)
avatar
Спасибо автору за примочку. Реализовал у себя.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.