Нужно работать с базой данных:
1. Чтобы всем новым пользователям по умолчанию не активировались эти опции, нужно в таблице user, для нужных полей (они начинаются на «user_settings_notice_») для значения по умолчанию поставить 0
2. Чтобы изменить настройки уже существующих пользователей, необходимо в этих же полях для всех пользователей установить 0. Пример SQL запроса, который отключает все опции уведомления для всех пользователей:
Gосле второго десятка начинаешь уставать от таких вопросов
Еще раз что бы запомнили
Переменная {$sAction} в шаблоне содержит action
Переменная {$sEvent} в шаблоне содержит event
URL выглядит как _http://domain.ru/{$sAction}/{$sEvent}/{$aParams}
В вашем случае {if $sMenuItemSelect=='blog' && !($sAction=='blog' && $sEvent=='test')}
Вот у меня записка, себе, про фотосет — может, пригодится. Что-то отсюда, из поиска на этом сайте, что-то методом тыка, короче:
1. Фотосет. Если вы хотите дать пользователям возможность просматривать увеличенные фото из фотосета прямо в ленте топиков, не заходя на страницу самого топика фотосета, то нужно в файле topic_photoset.tpl удалить условие:
{if !$bTopicList}
не забудьте удалить закрывающий тег
{/if}
2. Вот какие опции надо вставить в файл templates/skin/simple/topic_photoset.tpl, чтобы фотосет не светил в глаза белым при смене картинок, что сказочно раздражает. После
Обращаю внимание на overlay_gallery: false, это убирает маленькие никчомные превьюшки с самой картинки в лайтруме (лайтрум — это, если непонятно, непосредственно черный экран с большой картинкой). И кто только придумал эту хрень — мешает же смотреть-то, да и на странице на сайте есть превью всех картинок! Но если все же превьюшки нужны еще и в лайтруме, то надо писать: true.
3. Файл со стилями для фотосета engine/lib/external/prettyPhoto/css/prettyPhoto.css я переписала весь, стандартный устаревший дизайн фотосета меня никак не устраивал: нарисовала стрелочки модные, лишнее выкинула (стрелки вперед-назад, например, там два раза повторяются), чего и вам советую сделать.
4. Изображение на странице топика-фотосета: в шаблоне прописан вызов с шириной 500, изменить можно здесь: templates/skin/simple/topic_photoset.tpl
5. Фотосеты везде (кроме комментариев, к огромному сожалению) — это плагин Lite Image, покупать на сайте Netlank'а. Плагин дает мультизагрузку, плюс слайдер к ней прикручен, плюс фотосет по клику на картинку, плюс размеры картинкам можно менять. Но предупреждаю сразу: если этот плагин поставить как есть, то у пользователей задымится голова: кнопок много, логики в их визуализации никакой, и ничерта, короче, непонятно — хотя функциональность полная, разве что мышкой картинки в окно загрузки нельзя таскать, а остальное — всё есть. Но придется самому продумывать дизайн (то есть визуальную организацию), иначе жопа.
6. На шестой вопрос выше исчерпывающе ответил kpoxas.
7. Теперь — кнопка (проходит у меня под кличкой «Кнопка-п**дец»). Голубая кнопка, зашитая во флеш-ролик, отображается как настоящий визуальный п**дец, голубая. Ей можно поменять цвет и шрифт, вот тут: engine/lib/internal/template/js/main.js. У меня вот какие опции сейчас (больше кнопка ничего не слушается всё равно):
Кстати, я тут на сайте видела, как ort не помню с кем спорил про страшную голубую кнопку — он утверждал, что ее можно изменить, а ему отвечали: да нифига!, а он говорил, что раз он смог ее, кнопку, изменить обычным порядком — то любой недурак может. Но как именно он это сделал, он так и не рассказал, ё.
8. Еще фотосет имеет мощный косяк при смене размеров для загрузки! Если сменить размеры (пункт 4.), то картинки (как раз те превью, размер которым изменен) не будут отображаться в уже опубликованных топиках-фотосетах на странице сайта, а будут только в лайтруме. Netlank написал инструкцию, как это исправить, советую прочитать, а еще проще — не менять размеры на уже работающих сайтах. :)
Глянул функционал плагина — впринципе, его суть можно реализовать одним хуком.
Попробую прикинуть:
1) Создайте файл HookCopyrightt.class.php в директории \classes\hooks\ со следующим содержимым
<?php
class HookCopyrightt extends Hook {
public function RegisterHook() {
$this->AddHook('template_copyrightt','CopyrighttLink',__CLASS__,-100);
}
public function CopyrighttLink() {
$sFilePath = Config::Get('path.root.web').'/list.txt';
$aPhrases = file($sFilePath);
$HZ1 = $aPhrases[rand(0,count($aPhrases)-1)];
if($oUser = $this->User_GetUserCurrent()){
$HZ2 = str_replace('%username%','<b>'.$oUser->getLogin().'</b>',$HZ1);
} else {$HZ2 = $HZ1;}
return $HZ2;
}
}
?>
2) Взять файл \plugins\greetings\templates\skin\default\list.txt (это файл с фразами) и переместить его в корень сайта
3) Теперь, если вам нужно, чтобы фразы выводились в хедере — вставте в \templates\skin\ВАШ_ШАБЛОН\header_top.tpl следующее
{hook run='copyrightt'}
Впринципе, можно в любое место вставлять — блоки, футер, хедер…
Теперь у нас пропала кнопка с комментами, но они по-прежнему грузятся в эфире. Идем дальше. В этом же файле ищем 24-ю строку с надписью
{$sStreamComments}
Меняем ее на
{$sStreamTopic}
Теперь, откуда же нам взять эту самую sStreamTopic?
Идем в файл \classes\blocks\BlockStream.class.php
И видим там следующее:
class BlockStream extends Block {
public function Exec() {
if ($aComments=$this->Comment_GetCommentsOnline('topic',Config::Get('block.stream.row'))) {
$this->Viewer_Assign('aComments',$aComments);
$sTextResult=$this->Viewer_Fetch("block.stream_comment.tpl");
$this->Viewer_Assign('sStreamComments',$sTextResult);
}
}
}
Путем нехитрых манипуляций (метод мультметра, сравнение файлов \include\ajax\stream_topic.php и \include\ajax\stream_comments.php) переназначаем в указанном файле переменные для шаблона. Приходим к
class BlockStream extends Block {
public function Exec() {
if ($oTopic=$this->Topic_GetTopicsLast(Config::Get('block.stream.row'))) {
$this->Viewer_Assign('oTopics',$oTopic);
$sTextResult=$this->Viewer_Fetch("block.stream_topic.tpl");
$this->Viewer_Assign('sStreamTopic',$sTextResult);
}
}
}
В итоге остается одна кнопка («Публикации»), которую неплохо бы переоформить (она же придумана как переключатель, а теперь переключать нечего), и при нажатии на которую обновляется поток топиков.
Для примера возьмем окно входа. Шаблон window_login.tpl вставляется в header.tpl
Само окно c id=«window_login_form» активируется в js\templates.js и подключается к обработке(onclick) для js-registration-form-show и js-login-form-show
на «кнопки» в header_top.tpl
на
1. Чтобы всем новым пользователям по умолчанию не активировались эти опции, нужно в таблице user, для нужных полей (они начинаются на «user_settings_notice_») для значения по умолчанию поставить 0
2. Чтобы изменить настройки уже существующих пользователей, необходимо в этих же полях для всех пользователей установить 0. Пример SQL запроса, который отключает все опции уведомления для всех пользователей:
prefix необходимо изменить на префикс ваших таблиц в базе данных.
Еще раз что бы запомнили
Переменная {$sAction} в шаблоне содержит action
Переменная {$sEvent} в шаблоне содержит event
URL выглядит как _http://domain.ru/{$sAction}/{$sEvent}/{$aParams}
В вашем случае {if $sMenuItemSelect=='blog' && !($sAction=='blog' && $sEvent=='test')}
1. Фотосет. Если вы хотите дать пользователям возможность просматривать увеличенные фото из фотосета прямо в ленте топиков, не заходя на страницу самого топика фотосета, то нужно в файле topic_photoset.tpl удалить условие: не забудьте удалить закрывающий тег
2. Вот какие опции надо вставить в файл templates/skin/simple/topic_photoset.tpl, чтобы фотосет не светил в глаза белым при смене картинок, что сказочно раздражает. После
надо вставить: потом будет скобка: Обращаю внимание на overlay_gallery: false, это убирает маленькие никчомные превьюшки с самой картинки в лайтруме (лайтрум — это, если непонятно, непосредственно черный экран с большой картинкой). И кто только придумал эту хрень — мешает же смотреть-то, да и на странице на сайте есть превью всех картинок! Но если все же превьюшки нужны еще и в лайтруме, то надо писать: true.
3. Файл со стилями для фотосета engine/lib/external/prettyPhoto/css/prettyPhoto.css я переписала весь, стандартный устаревший дизайн фотосета меня никак не устраивал: нарисовала стрелочки модные, лишнее выкинула (стрелки вперед-назад, например, там два раза повторяются), чего и вам советую сделать.
4. Изображение на странице топика-фотосета: в шаблоне прописан вызов с шириной 500, изменить можно здесь: templates/skin/simple/topic_photoset.tpl
Плюс надо в конфиге изменить:
5. Фотосеты везде (кроме комментариев, к огромному сожалению) — это плагин Lite Image, покупать на сайте Netlank'а. Плагин дает мультизагрузку, плюс слайдер к ней прикручен, плюс фотосет по клику на картинку, плюс размеры картинкам можно менять. Но предупреждаю сразу: если этот плагин поставить как есть, то у пользователей задымится голова: кнопок много, логики в их визуализации никакой, и ничерта, короче, непонятно — хотя функциональность полная, разве что мышкой картинки в окно загрузки нельзя таскать, а остальное — всё есть. Но придется самому продумывать дизайн (то есть визуальную организацию), иначе жопа.
6. На шестой вопрос выше исчерпывающе ответил kpoxas.
7. Теперь — кнопка (проходит у меня под кличкой «Кнопка-п**дец»). Голубая кнопка, зашитая во флеш-ролик, отображается как настоящий визуальный п**дец, голубая. Ей можно поменять цвет и шрифт, вот тут: engine/lib/internal/template/js/main.js. У меня вот какие опции сейчас (больше кнопка ничего не слушается всё равно): Кстати, я тут на сайте видела, как ort не помню с кем спорил про страшную голубую кнопку — он утверждал, что ее можно изменить, а ему отвечали: да нифига!, а он говорил, что раз он смог ее, кнопку, изменить обычным порядком — то любой недурак может. Но как именно он это сделал, он так и не рассказал, ё.
8. Еще фотосет имеет мощный косяк при смене размеров для загрузки! Если сменить размеры (пункт 4.), то картинки (как раз те превью, размер которым изменен) не будут отображаться в уже опубликованных топиках-фотосетах на странице сайта, а будут только в лайтруме. Netlank написал инструкцию, как это исправить, советую прочитать, а еще проще — не менять размеры на уже работающих сайтах. :)
Ну вот, вроде всё про фотосет.
Попробую прикинуть:
1) Создайте файл HookCopyrightt.class.php в директории \classes\hooks\ со следующим содержимым
2) Взять файл \plugins\greetings\templates\skin\default\list.txt (это файл с фразами) и переместить его в корень сайта
3) Теперь, если вам нужно, чтобы фразы выводились в хедере — вставте в \templates\skin\ВАШ_ШАБЛОН\header_top.tpl следующее
Впринципе, можно в любое место вставлять — блоки, футер, хедер…
если не ошиблась — должно сработать
Вместо
указываем путь на Ваш swf файл
Тогда предложу вот так, т.к. проверил и работает, но объяснить толково последний этап не смогу. Найдено методом мультиметра.
Итак, идем в файл шаблона: \templates\skin\new\block.stream.tpl
Комментируем десятую строку (ну или удаляем ее), вот эту:
Теперь у нас пропала кнопка с комментами, но они по-прежнему грузятся в эфире. Идем дальше. В этом же файле ищем 24-ю строку с надписью
Меняем ее на
Теперь, откуда же нам взять эту самую sStreamTopic?
Идем в файл \classes\blocks\BlockStream.class.php
И видим там следующее:
Путем нехитрых манипуляций (метод мультметра, сравнение файлов \include\ajax\stream_topic.php и \include\ajax\stream_comments.php) переназначаем в указанном файле переменные для шаблона. Приходим к
В итоге остается одна кнопка («Публикации»), которую неплохо бы переоформить (она же придумана как переключатель, а теперь переключать нечего), и при нажатии на которую обновляется поток топиков.