<?php
class HookIndex extends Hook {
public function RegisterHook() {
$this->AddHook('init_action','InitAction',__CLASS__,1000);
}
public function InitAction() {
if (Config::Get('path.root.web')==trim(Router::GetPathWebCurrent(),'/')) {
Router::Action('top','topic',array('24h'));
return;
}
}
}
Можно вот так примитивно, как я сделал у себя на сайте:
<p><label for="rules_agree"><input type="checkbox" id="rules_agree" name="rules_agree" class="checkbox" /> я прочитал <a href="/page/help/rules" title="Правила сайта" target="_blank">правила</a> и согласен их соблюдать</label><br />
<span class="note">Все знают, что русские быстрее всех читают пользовательское соглашение, тем не менее мы просим внимательно прочитать наши правила перед тем, как поставить галочку выше.</span></p>
и потом на submit'е обработчик:
{literal}onClick="if(!register.rules_agree.checked){alert('Необходимо принять правила сайта для дальнейшей регистрации.'); return false;}"{/literal}
Глянул функционал плагина — впринципе, его суть можно реализовать одним хуком.
Попробую прикинуть:
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'}
Впринципе, можно в любое место вставлять — блоки, футер, хедер…
самый элементарный пример на дивах, само собой название дивов и классов можно поменять на свое усмотрение.
<script>
$(document).ready(function(){
$('.add').each(function(){
var add=$(this);
add.hide();
$("#"+add.attr('rel')).add(function(){
add.toggle(0);
});
});
});
</script>
<div id="menu"> див или класс на который нужно навести </div>
<div rel="menu" class="add">то что должно появиться при наведении на див или класс</div>
add — класс дива к которому применяется эффект появления, в класс можно занести меню или любую другую информацию.
По старой доброй традиции — отвечаю сам себе =)
Хотя, тут кто-то интересовался как сделать отступы — я сделал. Рассказываю.
Хотя вконтакт давит посты с ссылками — он совершенно не против ссылки в тексте (и даже услужливо делает её кликабельной). Так что делаем так:
1. в config.php плагина пишем такой $config['pattern']:
$config['pattern'] = '%topic_title% (от %author%) %topic_text%';
2. В Vkfeed.class.php заменяем:
case 'topic_text':
$aReturn=strip_tags($oTopic->getText());
break;
на
case 'topic_text':
$aReturn="\n".$oTopic->getUrl()."\n..............................................................................\n".strip_tags($oTopic->getTextShort());
break;
У меня на стену постится обрезаная cut'ом новость, кому это не нужно, во втором пункте замените strip_tags($oTopic->getTextShort()) на strip_tags($oTopic->getText())
Конечно, мне всё же хочется, чтобы работалссылки через attachment, так что если кто знает как решить мою проблему нормальным способом — буду очень благодарен.
т.е. не прописывать текст прямо в шаблоне?
Тогда от себя добавлю — прописывайте языковые переменные не в стандартном языковом файле (/templates/language/russian.php), а в язіковом файле шаблона (/templates/skin/new-jquery/config/language/russian.php)
и потом на submit'е обработчик:
{count($aBlogsOwner)} — кол-во созданных блогов
{count($aBlogAdministrators)} — кол-во администрируемых блогов
{count($aBlogModerators)} — кол-во модерируемых блогов
{count($aBlogUsers)} — кол-во читаемых блогов
Это был код для профиля (whois.tpl & sidebar.tpl). На страницах site.ru/people/ тоже самое, только oUserProfile заменить везде на oUser
я не нашел в нем чего-то привлекательного.
зато есть неточности:
awesomescreenshot.com/02edze33
вам же говорят что не работает awesomescreenshot.com/0b5dzy0e
awesomescreenshot.com/0c7e031d
awesomescreenshot.com/0dee0b8f
awesomescreenshot.com/00ee0m6d
ну и так далее.
Заменить на
лишнее равно там было.
Попробую прикинуть:
1) Создайте файл HookCopyrightt.class.php в директории \classes\hooks\ со следующим содержимым
2) Взять файл \plugins\greetings\templates\skin\default\list.txt (это файл с фразами) и переместить его в корень сайта
3) Теперь, если вам нужно, чтобы фразы выводились в хедере — вставте в \templates\skin\ВАШ_ШАБЛОН\header_top.tpl следующее
Впринципе, можно в любое место вставлять — блоки, футер, хедер…
add — класс дива к которому применяется эффект появления, в класс можно занести меню или любую другую информацию.
Хотя, тут кто-то интересовался как сделать отступы — я сделал. Рассказываю.
Хотя вконтакт давит посты с ссылками — он совершенно не против ссылки в тексте (и даже услужливо делает её кликабельной). Так что делаем так:
1. в config.php плагина пишем такой $config['pattern']:
2. В Vkfeed.class.php заменяем:
на
3. В Topic.class.php заменяем
на
В итоге сообщения на стене получатся такого вида:
У меня на стену постится обрезаная cut'ом новость, кому это не нужно, во втором пункте замените strip_tags($oTopic->getTextShort()) на strip_tags($oTopic->getText())
Конечно, мне всё же хочется, чтобы работалссылки через attachment, так что если кто знает как решить мою проблему нормальным способом — буду очень благодарен.
Тогда от себя добавлю — прописывайте языковые переменные не в стандартном языковом файле (/templates/language/russian.php), а в язіковом файле шаблона (/templates/skin/new-jquery/config/language/russian.php)