» » » Убираем "Обновить, если не виден код" [DLE 9.x - 10.x]

Ошибка добавление новости
Вы зашли на сайт как незарегистрированный пользователь.
Для добавления новости Вам требуется зарегистрироваться либо войти на сайт под своим именем.
Ошибка добавление вопроса
Вы зашли на сайт как незарегистрированный пользователь.
Для добавления вопроса Вам требуется зарегистрироваться либо войти на сайт под своим именем.

Убираем "Обновить, если не виден код" [DLE 9.x - 10.x]

 Robot    2014.02.13    DLE хаки     1614 
Убираем "Обновить, если не виден код" [DLE 9.x - 10.x]


Название: Убираем "Обновить, если не виден код"
Автор: ПафНутиЙ, Dmitry Dark5ider
CMS: DLE 9.x - 10.x

Описание:
Меня категорично раздражает надпись под капчей "обновить, если не виден код", в общем для тех, кто хочет ее изменить или сделать по щелчку на изображении как я - показываю как это сделать.

Есть два пути решения данной задачи:

1) Jquery от ПафНутиЙ:

Вставить код в любой css файл:
#dle-captcha {
    cursor: pointer;
}   
#dle-captcha a {
    display: none;
}



jQuery:
jQuery(document).ready(function($) {
    $("#dle-captcha").attr({"title":"Кликните на картинку для показа другого кода"}).addClass("ttp");
    $("#dle-captcha").on("click", "img", function(){
      $("#dle-captcha a").trigger("click");
      $('input[name=sec_code]').val('').focus();
      return false;
    }); 
});



2) Делается путем правки php файлов, от Dmitry Dark5ider:

Вот список файлов, где она (капча) фигурирует:

1. engine/ajax/addcomments.php
2. engine/modules/addnews.php
3. engine/modules/feedback.php
4. engine/modules/lostpassword.php
5. engine/modules/pm.php
6. engine/modules/register.php
7. engine/modules/show.full.php


1. Найти:
document.getElementById('dle-captcha').innerHTML = '<img src=\"' + dle_root + 'engine/modules/antibot.php?rand=' + timeval + '\" border=0><br /><a onclick=\"reload(); return false;\" href=\"#\">{$lang['reload_code']}</a>';



Заменить на:
document.getElementById('dle-captcha').innerHTML = '<a onclick=\"reload(); return false;\" href=\"#\"><img src=\"' + dle_root + 'engine/modules/antibot.php?rand=' + timeval + '\" border=0></a>';



Файлы 2 и 7. Найти:
$tpl->set( '{sec_code}', "<span id=\"dle-captcha\"><img src=\"" . $path['path'] . "engine/modules/antibot.php\" alt=\"${lang['sec_image']}\" /><br /><a onclick=\"reload(); return false;\" href=\"#\">{$lang['reload_code']}</a></span>" );



Заменить на:
$tpl->set( '{sec_code}', "<span id=\"dle-captcha\"><a onclick=\"reload(); return false;\" href=\"#\"><img src=\"" . $path['path'] . "engine/modules/antibot.php\" alt=\"${lang['sec_image']}\" /></a></span>" );



Найти:
document.getElementById('dle-captcha').innerHTML = '<img src="{$path['path']}engine/modules/antibot.php?rndval=' + rndval + '" width="120" height="50" alt="" /><br /><a onclick="reload(); return false;" href="#">{$lang['reload_code']}</a>';



Заменить на:
document.getElementById('dle-captcha').innerHTML = '<a onclick="reload(); return false;" href="#"><img src="{$path['path']}engine/modules/antibot.php?rndval=' + rndval + '" width="120" height="50" alt="" /></a>';



В файле 3. Найти:
$tpl->set( '{code}', "<span id=\"dle-captcha\"><img src=\"" . $path['path'] . "engine/modules/antibot.php\" alt=\"${lang['sec_image']}\" /><br /><a onclick=\"reload(); return false;\" href=\"#\">{$lang['reload_code']}</a></span>" );



Заменить на:
$tpl->set( '{code}', "<span id=\"dle-captcha\"><a onclick=\"reload(); return false;\" href=\"#\"><img src=\"" . $path['path'] . "engine/modules/antibot.php\" alt=\"{$lang['sec_image']}\" /></a></span>" );



Найти:
document.getElementById('dle-captcha').innerHTML = '<img src="{$path['path']}engine/modules/antibot.php?rndval=' + rndval + '" width="120" height="50" alt="" /><br /><a onclick="reload(); return false;" href="#">{$lang['reload_code']}</a>';



Заменить на:
document.getElementById('dle-captcha').innerHTML = '<a onclick="reload(); return false;" href="#"><img src="{$path['path']}engine/modules/antibot.php?rndval=' + rndval + '" width="120" height="50" alt="" /></a>';



В файле 4. Найти:
$tpl->set( '{code}', "<span id=\"dle-captcha\"><img src=\"" . $path['path'] . "engine/modules/antibot.php\" alt=\"{$lang['sec_image']}\" border=\"0\" /><br /><a onclick=\"reload(); return false;\" href=\"#\">{$lang['reload_code']}</a></span>" );



Заменить на:
$tpl->set( '{code}', "<span id=\"dle-captcha\"><a onclick=\"reload(); return false;\" href=\"#\"><img src=\"" . $path['path'] . "engine/modules/antibot.php\" alt=\"{$lang['sec_image']}\" /></a></span>" );



Найти:
document.getElementById('dle-captcha').innerHTML = '<img src="{$path['path']}engine/modules/antibot.php?rndval=' + rndval + '" border="0" width="120" height="50" alt="" /><br /><a onclick="reload(); return false;" href="#">{$lang['reload_code']}</a>';



Заменить на:
document.getElementById('dle-captcha').innerHTML = '<img src=\"' + dle_root + 'engine/modules/antibot.php?rand=' + timeval + '\" border=0><br /><a onclick=\"reload(); return false;\" href=\"#\">{$lang['reload_code']}</a>';



В файле 5. Найти:
$tpl->set( '{sec_code}', "<span id=\"dle-captcha\"><img src=\"" . $path['path'] . "engine/modules/antibot.php\" alt=\"${lang['sec_image']}\" border=\"0\" /><br /><a onclick=\"reload(); return false;\" href=\"#\">{$lang['reload_code']}</a></span>" );



Заменить на:
$tpl->set( '{sec_code}', "<span id=\"dle-captcha\"><a onclick=\"reload(); return false;\" href=\"#\"><img src=\"" . $path['path'] . "engine/modules/antibot.php\" alt=\"${lang['sec_image']}\" /></a></span>" );



Найти:
document.getElementById('dle-captcha').innerHTML = '<img src="{$path['path']}engine/modules/antibot.php?rndval=' + rndval + '" border="0" width="120" height="50" alt="" /><br /><a onclick="reload(); return false;" href="#">{$lang['reload_code']}</a>';



Заменить на:
document.getElementById('dle-captcha').innerHTML = '<a onclick=\"reload(); return false;\" href=\"#\"><img src=\"' + dle_root + 'engine/modules/antibot.php?rand=' + timeval + '\" border=0></a>';



В файле 6. Найти:
$tpl->set( '{reg_code}', "<span id=\"dle-captcha\"><img src=\"" . $path['path'] . "engine/modules/antibot.php\" alt=\"{$lang['sec_image']}\" /><br /><a onclick=\"reload(); return false;\" href=\"#\">{$lang['reload_code']}</a></span>" );



Заменить на:
$tpl->set( '{reg_code}', "<span id=\"dle-captcha\"><a onclick=\"reload(); return false;\" href=\"#\"><img src=\"" . $path['path'] . "engine/modules/antibot.php\" alt=\"${lang['sec_image']}\" /></a></span>" );



Найти:
document.getElementById('dle-captcha').innerHTML = '<img src="{$path['path']}engine/modules/antibot.php?rndval=' + rndval + '" width="120" height="50" alt="" /><br /><a onclick="reload(); return false;" href="#">{$lang['reload_code']}</a>';



Заменить на:
document.getElementById('dle-captcha').innerHTML = '<a onclick="reload(); return false;" href="#"><img src="{$path['path']}engine/modules/antibot.php?rndval=' + rndval + '" width="120" height="50" alt="" /></a>';



И в JS для удаления всего из инпута для ввода при щелчке:
jQuery(document).ready(function($) {
  $( "#dle-captcha" ).click(function() {
	$('input[name=sec_code]').val('').focus();
  });
});



Готово. Если вы хотите поменять на что то свое, допустим поставив иконку рефреша вместо надписи, то тут простой html и вставьте нужный вам img, а главное в двух местах как и в замене: первая - это при выводе страници, вторая - при ajax обновлении изображения.
Другие новости по теме:
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Гости
That's a brilliant answer to an insiterteng question


5 мая 2015 13:08
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.