kosen 3 Опубликовано: 30 мая 2007 Рассказать Опубликовано: 30 мая 2007 Тем, кто ставил этот хак - _http://4dle.ru/2007/02/03/page,1,1,vyvod_stranicy_pravil.html возможно будет полезно использовать небольшое дополнение... когда на кнопку "Согласен" ставится задержка на активацию... Т.е. изначально кнопка "Согласен" недоступна для нажатия... и на ней производится отсчет в обратном порядке (в секундах) когда она станет активной и на неё можно будет нажать... До этого времени юзеру ничего не остаётся делать, как ПРОЧИТАТЬ ПРАВИЛА... Делается это так... В файле хака pre_register.php вместо вот этого кода: <center><input type=\"button\" onclick=\"document.location='/index.php?do=register'\" class=\"bbcodes_poll\" value=\"Согласен\"></a> <input type=\"button\" onclick=\"document.location='/index.php'\" class=\"bbcodes_poll\" value=\"Не согласен\"></a></div>"; надо поставить вот этот: <center> <input type=\"button\" value=\"Согласен\" id=\"rules_read\" class=\"bbcodes_poll\" onclick=\"document.location='/index.php?do=register'\" disabled=\"true\"> <input type=\"button\" onclick=\"document.location='/index.php'\" class=\"bbcodes_poll\" value=\"Не согласен\"></a></div> <script type=\"text/javascript\"> <!-- var secs = 35; // Время в секундах var wait = secs * 1000; document.getElementById('rules_read').disabled=true; for(i=1;i<=secs;i++) { window.setTimeout(\"update(\" + i + \")\", i * 1000); } window.setTimeout(\"timer()\", wait); function update(num) { if(num == (wait/1000)) { document.getElementById('rules_read').value = \"Согласен\"; } else { printnr = (wait/1000)-num; document.getElementById('rules_read').value = \"Прочтите правила (\" + printnr + \")\"; } } function timer() { document.getElementById('rules_read').disabled=false; } //--> </script>"; Здесь - var secs = 35; // Время в секундах устанавливается временная задержка... Пример Вы можете посмотреть здесь - _http://www.senkai.ru/index.php?do=pre_register Цитата Ссылка на сообщение Поделиться на других сайтах
Tong 0 Опубликовано: 30 мая 2007 Рассказать Опубликовано: 30 мая 2007 javascipt disable Цитата Ссылка на сообщение Поделиться на других сайтах
kosen 3 Опубликовано: 30 мая 2007 Рассказать Опубликовано: 30 мая 2007 Автор а у меня работает пример - _http://www.senkai.ru/index.php?do=pre_register Цитата Ссылка на сообщение Поделиться на других сайтах
NoBoddy 0 Опубликовано: 30 мая 2007 Рассказать Опубликовано: 30 мая 2007 kosen, Tong говорит о том, что если у пользователя отключен яваскрипт, то твой код не будет работать Цитата Ссылка на сообщение Поделиться на других сайтах
kosen 3 Опубликовано: 30 мая 2007 Рассказать Опубликовано: 30 мая 2007 Автор NoBoddy, Тогда - не судьба... Цитата Ссылка на сообщение Поделиться на других сайтах
Tong 0 Опубликовано: 30 мая 2007 Рассказать Опубликовано: 30 мая 2007 kosen, у меня он постоянно отключен просто и у моих друзей тоже (firefox+noscript), так что точно не судьба Цитата Ссылка на сообщение Поделиться на других сайтах
kosen 3 Опубликовано: 30 мая 2007 Рассказать Опубликовано: 30 мая 2007 Автор Эт точно... Получается, на многих сайтах некоторые вещи тебе недоступны... С другой стороны - вопрос безопасности, судя по всему... хотя момент спорный... Цитата Ссылка на сообщение Поделиться на других сайтах
Wow-man 8 Опубликовано: 27 июня 2007 Рассказать Опубликовано: 27 июня 2007 перезалейте, пожалуйста архивчик, а то у автора модул то ли за неуплату, то ли прост ов дауне сайт!! Цитата Ссылка на сообщение Поделиться на других сайтах
lifestar 18 Опубликовано: 28 июня 2007 Рассказать Опубликовано: 28 июня 2007 А по моему это совершенно не нужная вещь. Вот скажите мне - что даёт этот мод? Правила всё равно не читают)) Цитата Ссылка на сообщение Поделиться на других сайтах
Wow-man 8 Опубликовано: 28 июня 2007 Рассказать Опубликовано: 28 июня 2007 А по моему это совершенно не нужная вещь. Вот скажите мне - что даёт этот мод? Правила всё равно не читают)) хороший дисклаймер, кто не послушался - его вина! перезальет кто-нибудь или нет Цитата Ссылка на сообщение Поделиться на других сайтах
Rebz 0 Опубликовано: 19 июля 2007 Рассказать Опубликовано: 19 июля 2007 ..перезалейте, пожалуйста. od-news.ru или как там.. сайт постоянно в дауне, точнее в разработке. Цитата Ссылка на сообщение Поделиться на других сайтах
kosen 3 Опубликовано: 22 июля 2007 Рассказать Опубликовано: 22 июля 2007 (изменено) Автор Вот код файла с внесенной модификацией на кнопку "Согласен" <?php /* ===================================================== Plugin For DataLife Engine 4.x-5.x ----------------------------------------------------- http://od-news.ru/ ----------------------------------------------------- Copyright (c) 2006-2007 Orenlab Daily News ===================================================== Данный код защищен авторскими правами ===================================================== Файл: pre_register.php ----------------------------------------------------- Назначение:вывод правил при регистрации пользователя ===================================================== */ if(!defined('DATALIFEENGINE')) { die("Hacking attempt!"); } $pre_register .= "<div align=\"left\" valign=\"top\" class=\"news\"> <h3 align=\"center\">Ваши правила сайта</h3> <p> Текст правил <br> Текст правил <br> Текст правил <br> Текст правил <br> Текст правил <br> Текст правил <br> <center> <input type=\"button\" value=\"Согласен\" id=\"rules_read\" class=\"bbcodes_poll\" onclick=\"document.location='/index.php?do=register'\" disabled=\"true\"> <input type=\"button\" onclick=\"document.location='/index.php'\" class=\"bbcodes_poll\" value=\"Не согласен\"></a></div> <script type=\"text/javascript\"> <!-- var secs = 35; // Время в секундах var wait = secs * 1000; document.getElementById('rules_read').disabled=true; for(i=1;i<=secs;i++) { window.setTimeout(\"update(\" + i + \")\", i * 1000); } window.setTimeout(\"timer()\", wait); function update(num) { if(num == (wait/1000)) { document.getElementById('rules_read').value = \"Согласен\"; } else { printnr = (wait/1000)-num; document.getElementById('rules_read').value = \"Прочтите правила (\" + printnr + \")\"; } } function timer() { document.getElementById('rules_read').disabled=false; } //--> </script>"; $tpl->load_template('static.tpl'); $tpl->set('{description}', "Правила сайта"); $tpl->set('{static}', $pre_register); $tpl->compile('content'); $tpl->clear(); /* Вывод сгенерированного контента */ ?> Установка модуля (из ридми) Модуль «pre_register» Назначение: Вывод страницы правил при регистрации пользователей. Установка: 1. Выключаем работу сайта в админке. 2. Копируем файл pre_register.php в папку /engine/modules/ 3. Открываем файл engine.php находим: case "pm" : include ENGINE_DIR.'/modules/pm.php'; break; Ниже добавляем: case "pre_register" : include ENGINE_DIR.'/modules/pre_register.php'; break; 4. В файле /engine/init.php ищем строку (для версий 4,0-5,0) : $link_regist = $PHP_SELF."?do=register"; Заменяем на: $link_regist = $PHP_SELF."?do=pre_register"; Ниже в этотом же файле находим еще одну строку: $link_regist = $PHP_SELF."?do=register"; И так же меняем на: $link_regist = $PHP_SELF."?do=pre_register"; 5. В вашем шаблоне main.tpl находим <a href="имя_вашего_домена/?do=register"> их обычно две (не считая линк на панели авторизации) И меняем на: <a href="имя_вашего_домена/?do=pre_register"> Для версий с 5.0: В файле /engine/init.php ищем строку $link_regist = ($config['ajax']) ? $PHP_SELF."?do=register\" onclick=\"DlePage('do=register'); return false;" : $PHP_SELF."?do=register"; И меняем на : $link_regist = ($config['ajax']) ? $PHP_SELF."?do=pre_register\" onclick=\"DlePage('do=pre_register'); return false;" : $PHP_SELF."?do=pre_register"; Все, если все сделали правильно, теперь все ссылки на регистрацию ведут на Вашу страницу правил. Не забудьте после установки и проверки работы включить сайт в админцентре. Изменено 22 июля 2007 пользователем kosen Цитата Ссылка на сообщение Поделиться на других сайтах
Wow-man 8 Опубликовано: 23 июля 2007 Рассказать Опубликовано: 23 июля 2007 kosen, блин, ты как раз запостил это в тот момент, когда я сам допёр что где менять но всеравно спасибо Цитата Ссылка на сообщение Поделиться на других сайтах
CannabiS 0 Опубликовано: 23 июля 2007 Рассказать Опубликовано: 23 июля 2007 kosen, спасибо большое!! Цитата Ссылка на сообщение Поделиться на других сайтах
Гость Опубликовано: 23 июля 2007 Рассказать Опубликовано: 23 июля 2007 <#thank#> Цитата Ссылка на сообщение Поделиться на других сайтах
orenlab 0 Опубликовано: 27 июля 2007 Рассказать Опубликовано: 27 июля 2007 Да, поражаюсь я иногда, ведь модуль скачало огромное количество человек, а вот поделится смог только один. Сайт в дауне, так как нету поппросту денег на проплату хостинга, провайдер вырубил сервера от сети. Закончил я уже практически писать новую гораздо более умну версию мода. Текст правил в нем добавляется и редактируется через админ центр через стандартный редактор DLE (BBCODE или WYSING), хранится в БД, для вывода на сайт используется один запрос, но мод кэшируется..., и еще много чего интересного, но остался ряд мелких багов, не исправив которые я не могу выложить мод в паблик, так что ждите как говорится кому нужен. P.S.: мод будет абсолютно бесплатный, и с открытым исходным кодом. Цитата Ссылка на сообщение Поделиться на других сайтах
kosen 3 Опубликовано: 27 июля 2007 Рассказать Опубликовано: 27 июля 2007 Автор orenlab.ru, это дело хорошее... подождём... потестим... Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.