$oUserCurrent=$this->User_GetUserCurrent();
if(!$oUserCurrent->isAdministrator() && !in_array($oUserCurrent->getId(),array(1,2,7))) echo 'Админ сказал пилить на йух'
Недавно столкнулся с подобной проблемой. Проект «переехал» с другой CMS.
Поэтому запросы в БД Пересчет количества в топиках
UPDATE `PREFIX_topic` t
SET t.topic_count_comment = (
SELECT count(c.comment_id) FROM `PREFIX_comment` c
WHERE c.target_id = t.topic_id AND c.comment_publish = 1
AND c.target_type = 'topic')
Пересчет количества в topic_read
UPDATE `PREFIX_topic_read` t
SET t.comment_count_last = (
SELECT count(c.comment_id) FROM `PREFIX_comment` c
WHERE c.target_id = t.topic_id')
строку «Hello, world» можно и в шаблоне прописать :)
в classes/actions/ActionLogin.class.php в protected function EventLogin()
protected function EventLogin() {
/**
* Если уже авторизирован
*/
if($this->User_GetUserCurrent()) {
Router::Location(Config::Get('path.root.web').'/');
}
$this->Viewer_AddHtmlTitle($this->Lang_Get('login'));
$this->Viewer_Assign('sMyVar', 'Store here any value');
}
Я в свое время убирал вывод топиков с типом torrent следующим способом:
В \classes\modules\topic\mapper\Topic.mapper.class.php
в функции BuildFilter
после проверки на новизну
$sWhere.=" AND t.topic_date_add >= '".$aFilter['topic_new']."'";
вставить
$sWhere.=" AND t.topic_type <> 'torrent'";
после
$sWhere.=" AND (".join(" OR ",(array)$aBlogTypes).")";
вставить
$sWhere.=" AND t.topic_type <> 'torrent'";
Думаю, зная где копаться, сможете догадаться по аналогии как и куда подставить id блога. Поэкспериментируйте.
По идее можно сделать через смарти.
Поправить topic_list.tpl (добавить условия).
Наглядный пример:
{if $sAction=='index' OR $sAction=='new' }
{if $oBlog->getId()!='id игнорируемного блога' OR $oBlog->getId()!='id игнорируемного блога' OR $oBlog->getId()!='id игнорируемного блога'}
код вывода топиков (из topic_list.tpl)
{/if}
{else}
код вывода топиков (из topic_list.tpl)
{/if}
Текущая версия смарти не поддерживает тег {php}, соответственно нужно вызывать код в экшене и передавать результат в шаблон.
Все это делает плагин SeoLib livestreetcms.com/addons/view/82/ + он ведет учет количества проданных ссылок, что позволяет максимально эффективно проводить переиндексацию сайта с максимальным числом страниц
Код на скидку в 30% — b0e66d22
7.Когда выходишь из профиля кидало не на главную страницу, а туда где ты был.
ActionLogin.class.php, EventExit()
if (isset($_SERVER['HTTP_REFERER'])) {
$sBackUrl=$_SERVER['HTTP_REFERER'];
if (strpos($sBackUrl,Router::GetPath('login'))===false) {
Router::Location($sBackUrl);
}
}
И так, у меня установлен плагин Blogs Autoconnect Plugin, и чтоб его заставить выводить список блогов по алфавиту, надо отредактировать Autoconnect.mapper.class.php
Топаем в /plugins/autoconnect/classes/modules/autoconnect/mapper/Autoconnect.mapper.class.php 37строка
Находим код
$sql = "SELECT
b.blog_id
FROM
".Config::Get('db.table.blog')." as b
WHERE
(b.user_owner_id = ? AND b.blog_type <> 'personal')
OR
(b.blog_type = 'open'
AND
b.user_owner_id <> ?
AND
b.blog_limit_rating_topic <= ?
)
OR
(b.blog_type = 'close'
AND
b.blog_id IN (SELECT bu.blog_id FROM ".Config::Get('db.table.blog_user')." AS bu WHERE bu.user_id = ? AND bu.user_role IN (?a))
AND
b.blog_limit_rating_topic <= ?
)
";
И в конце добавляем ORDER by b.blog_title asc
$sql = "SELECT
b.blog_id
FROM
".Config::Get('db.table.blog')." as b
WHERE
(b.user_owner_id = ? AND b.blog_type <> 'personal')
OR
(b.blog_type = 'open'
AND
b.user_owner_id <> ?
AND
b.blog_limit_rating_topic <= ?
)
OR
(b.blog_type = 'close'
AND
b.blog_id IN (SELECT bu.blog_id FROM ".Config::Get('db.table.blog_user')." AS bu WHERE bu.user_id = ? AND bu.user_role IN (?a))
AND
b.blog_limit_rating_topic <= ?
)
ORDER by b.blog_title asc
";
Всё. Сортировка по алфавиту готова.
PS. Для админа сортировка не работает. Я не стал париться. Но решение есть тут
Поэтому запросы в БД
Пересчет количества в топиках
Пересчет количества в topic_read
ну и в конфиге ls
Это так навскидку. Понятное дело, в шаблонах переделать все ссылки.
А вот в этот код добавляем id топика и добавляем в футер топика (literal добавлять не обязательно, главное фигурные скобки отбить пробелами):
2) {$oComment->getText()|strip_tags|trim|truncate:100:'...'|escape:'html'}
/home/buildcom/public_html/templates/skin/magic/comment.tpl
в
После
Добавил
Работает
то есть там реально показывается кто сейчас онлайн то есть активность была последние 15 минут
как оказывается я в своем шаблоне сделал такое дополнения, подставил условие
то есть тут проверка если активность последние 900сек то показывать, если нет таких то пусто в он-лайн :))
ха как я мог забыть, хотя как мне кажется я правее :) чем тут сделано… я или зазнался :)
Но дам прямую наводку:
В шаблоне начиная с topic_topic.tpl
заменить на
в classes/actions/ActionLogin.class.php в protected function EventLogin()
а в шаблоне напишите в нужном месте
но редактировать файлы движка моветон.
Для ленивых (как я сделал).
В engine/lib/external/Smarty/libs/plugins/function.sape.php
Пример использования:
можно просто {sape}
Думаю, зная где копаться, сможете догадаться по аналогии как и куда подставить id блога. Поэкспериментируйте.
Поправить topic_list.tpl (добавить условия).
Наглядный пример:
Как-то так.
в css прописать:
В topic_topic.tpl, topic_photoset.tpl, topic_link.tpl, topic_question.tpl добавить:
Ну если что сами подправьте.
Все это делает плагин SeoLib livestreetcms.com/addons/view/82/ + он ведет учет количества проданных ссылок, что позволяет максимально эффективно проводить переиндексацию сайта с максимальным числом страниц
Код на скидку в 30% — b0e66d22
Да и добавьте еще условие
если надо с определенного блога топики забирать (8ка — id блога).
И так, у меня установлен плагин Blogs Autoconnect Plugin, и чтоб его заставить выводить список блогов по алфавиту, надо отредактировать Autoconnect.mapper.class.php
Топаем в /plugins/autoconnect/classes/modules/autoconnect/mapper/Autoconnect.mapper.class.php 37строка
Находим код
И в конце добавляем ORDER by b.blog_title asc
Всё. Сортировка по алфавиту готова.
PS. Для админа сортировка не работает. Я не стал париться. Но решение есть тут