OpenStreetBugs — лёгкий способ сообщить об ошибке в OpenStreetMap

OpenStreetBugs — лёгкий способ сообщить об ошибке в OpenStreetMap

Вы, конечно, знаете о свободной карте OpenStreetMap. Это настоящая народная карта, создаваемая такими же людьми как и вы! Это такой же opensource-проект как Linux и как Википедия. Конечно же, как и в других картах, в OpenStreetMap имеются ошибки, но в отличие от тех же Яндекс.Карт, где ошибки не исправляются годами из-за сложной бюрократической процедуры (я уже не говорю о намеренных ошибках), в OpenStreetMap всё гораздо проще и лучше для всех нас...
Подробнее..

CloudMade Navigation поддерживает ограничения манёвров

CloudMade Navigation поддерживает ограничения манёвров

Не так давно CloudMade выделил несколько приоритетных направлений, среди которых оказалась и навигация. Решено было создать специальный проект Navi Studio, который объединял бы в себе несколько более мелких сервисов и позволял пользоваться ими, для создания полноценного навигационного программного обеспечения. В Navi Studio вошли: Работа закипела и уже появилось несколько приложений использующих данный проект. Но полноценной навигации без соблюдения правил ПДД не существует, а потому данному вопросу было также уделено не мало времени...
Подробнее..

Удали себя из интернет-социума — «Web 2.0 Suicide Machine»

Удали себя из интернет-социума — «Web 2.0 Suicide Machine»

Недавно наткнулся в сети на один занимательный интернет-сервис, именующийся Web 2.0 Suicide machine . Предназначен он для того, чтобы позволить людям, обремененным «социальной жизнью в интернете», в пару кликов удалить свои аккаунты на Facebook (в данный момент сервис блокирован администрацией по IP), Twitter, Linkedin и Myspace. В общем-то судя по количеству положительных отзывов и «успешных очищений» — пипл хавает зависимые от социальных сетей успешно пользуются сервисом и довольны...
Подробнее..



Регистрация без ботов

Веб разработка - Хаки для dle

регистрация без ботов



Версии DLE: 8.x

Лирика: Все мы знаем - ссылки регистрации не прячутся под ЧПУ (независимо от настройки ЧПУ), что, конечно, некрасиво, но терпимо, но вот то, что об этом осведомлен каждый тупой бот - вызывает гораздо больше раздражений...

Описание: Данный хак позволяет не только скрыть все ссылки регистрации под ЧПУ, но и обезопасить себя от ботов.
По мотивам Хака «Прячем ссылки регистрации под ЧПУ»

Красиво и безопасно.. О чем еще мечтать?


Действий немного. Начнем:

!!!ВНИМАНИЕ!!!
В данном примере к ссылкам регистрации будет добавлено значение _999 , которое можно изменить в зависимости от фантазии, но обязательно по всему тексту хака.


1. В файле .htaccess, после строчки:
RewriteEngine On

Вставить:

#Регистрация без ботов
RewriteRule ^register(/?)+$ index.php?do=register_rtiavto [L]
RewriteRule ^register/validating/(.*)(/?)+$ index.php?do=register_rtiavto&doaction=validating&id=$1 [L]
RewriteRule ^register/validating/nextstep/(.*)(/?)+$ index.php?do=register_rtiavto&doaction=validating&step=2&id=$1 [L]





2. В файле \engine\init.php,

I. вместо строчки:
$link_regist = ($config['ajax']) ? $PHP_SELF . ?do=register onclick= DlePage('do=register'); return false; : $PHP_SELF . ?do=register ;

Вставить:
$link_regist = ($config['ajax']) ? $config['http_home_url'] . register/ onclick= DlePage('do=register_999'); return false; : $config['http_home_url'] . register/ ;


II. вместо строчки:
$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=register_999 onclick= DlePage('do=register_999'); return false; : $PHP_SELF . ?do=register_999 ;





3. В файле \engine\engine.php

I. вместо строки:
case register :

Вставить:
case register_999 :


II. вместо строки:
elseif ($do == 'register') $nam_e = $lang['title_register'];

Вставить:
elseif ($do == 'register_999') $nam_e = $lang['title_register'];





3. В файле \engine\modules\register.php

I. вместо строки:
$row['template'] = str_replace( {%validationlink%} , $config['http_home_url'] . index.php?do=register&doaction=validating&id= . $idlink, $row['template'] );

Вставить:
$row['template'] = str_replace( {%validationlink%} , $config['http_home_url'] . register/validating/{$idlink}/ , $row['template'] );


II. вместо строки:
$tpl->copy_template = <form method= post name= registration onsubmit= if (!check_reg_daten()) {return false;}; id= registration action= . $config['http_home_url'] . index.php?do=register >n .
tpl->copy_template . <input name= submit_reg type= hidden id= submit_reg value= submit_reg /> </form> ;

Вставить:
$tpl->copy_template = <form method= post name= registration onsubmit= if (!check_reg_daten()) {return false;}; id= registration action= . $config['http_home_url'] . register/ >n .
$tpl->copy_template . <input name= submit_reg type= hidden id= submit_reg value= submit_reg /> </form> ;




III. вместо строки:

msgbox( $lang['all_info'], $lang['confirm_ok'] . <br /><br /><a href= . $config['http_home_url'] . index.php?do=register&doaction=validating&step=2&id= . rawurlencode( $_REQUEST['id'] ) . > . $lang['reg_next'] . </a> );

Вставить:
msgbox( $lang['all_info'], $lang['confirm_ok'] . <br /><br /><a href= . $config['http_home_url'] . register/validating/ .rawurlencode($_REQUEST['id']) . /nextstep/ . > . $lang['reg_next'] . </a> );


IV. вместо строки:
<input name= do type= hidden id= do value= register />;

Вставить:
<input name= do type= hidden id= do value= register_999 />;





4. В файле \engine\modules\static.php

I. вместо строки:
if( $_GET['page'] == dle-rules-page ) if( $do != register ) {

Вставить:
if( $_GET['page'] == dle-rules-page ) if( $do != register_999 ) {


II. вместо строки:
$tpl->set( '{ACCEPT-DECLINE}', <form method= post name= registration id= registration action= . $config['http_home_url'] . index.php?do=register ><input type= submit class= bbcodes value= {$lang['rules_accept']} />   <input type= button class= bbcodes value= {$lang['rules_decline']} onclick= history.go(-1); return false; /><input name= dle_rules_accept type= hidden id= dle_rules_accept value= yes /></form> );

Вставить:
$tpl->set( '{ACCEPT-DECLINE}', <form method= post name= registration id= registration action= . $config['http_home_url'] . register/ ><input type= submit class= bbcodes value= {$lang['rules_accept']} />   <input type= button class= bbcodes value= {$lang['rules_decline']} onclick= history.go(-1); return false; /><input name= dle_rules_accept type= hidden id= dle_rules_accept value= yes /></form> );




Идем по ссылке http://www.sitename.ru/register/ и наслаждаемся результатом.

В принципе, можно объединить два хака: мой и «Прячем ссылки регистрации под ЧПУ».
Если кому будет интересно, то могу выложить, но думаю, что идея понятна из вышенаписанного.

Проверено на версии 8.5, но будет работать и на более ранних.
Всем спасибо и удачи!

 


Читайте:


Добавить комментарий


Защитный код
Обновить

News image

LiveCycle: хорошее подспорье для разработчиков

Adobe LiveCycle Enterprise Suite, последняя версия которого вышла в ноябре, представляет собой набор веб-сервисов, которые позволяют организациям ст...

News image

Microsoft анонсировала новые технологии для веб-разработчиков

Компания Microsoft объявила о том, что на ежегодной технологической конференции для веб-разработчиков и дизайнеров MIX 09 в Лас-Вегасе анонсировала ...

News image

Что такое AJAX API для Google Переводчика?

Благодаря AJAX API для Google Переводчика можно переводить и определять язык блоков текста на веб-странице, используя только JavaScript. Кроме того,...

News image

2 млн. разработчиков на iPhone

Ни для кого не секрет, что Apple не любит Flash. Они всячески противится внедрению Flash-приложений на iPhone или IPod Touch, несмотря на все уговор...

News image

Adobe представила второе поколение Air

Компания Adobe представила второе поколение кросс-платформенной технологии Air (Adobe integrated runtime), сообщается в блоге компании. Новая версия...

Топ технологий:

News image

Оздана новая система беспроводной связи - она в 10

Ученые из Национального тайваньского университета разработали новую систему беспроводной передачи данных, которая позволит передавать инф...

News image

Как взломали Twitter

В Интернетах, наряду с iPad, сканерами в аэропортах и войне между Google и Apple, уже второй день подряд активно обсуждается тема взлома и...