Rest in peace bro

RIP 1 RIP 2 RIP 3

Рок из Подворотен... или как стать звездой за пять минут.

Дано: детище Кнабенгофа http://pilot.spb.ru/rip
Задача: спасти утопающих

И так. Погнали.

Ищем утопленника - Дельфы, 495 голосов.

Смотрим код, вникаем в суть. Среди прочей ереси находим кусок, который отвечает за голосовалку:

$(document).ready( function(){
    var _data='act=time';
    $.ajax({
        type: 'POST',
        url: '/modules/vote_request.php',
        data: _data,
        async: false,
        success: function(data){
            $(".vote_check").html(data);
        },
    });
});//end ready
function refresh_captcha() {
    var span_captcha = document.getElementById('span_captcha');   
    span_captcha.removeChild(span_captcha.getElementsByTagName('img')[0]);
    var captcha_img = document.createElement('img');
    captcha_img.src = '/kcaptcha?'+Math.random();
    span_captcha.appendChild(captcha_img);
}
function vote(ahref){
    $("span .hidd").remove();
    var container = $(ahref).parent();      
    container.css({position: 'relative', display: 'block'});
    var win = $('#hiddenwin');      
    $(container).append(win.html());
    var el = $(container).find(".hidd").show();
    var form = el.find('form')[0];
    $('.vote_check').click(function() {
        var id = $(this).attr('id');
        $(form['votenew']).val(id);
    });
    $(form['keystring']).focus();
    el.find('.cancel').click(function(){el.parent().css({position: ''});el.remove();})
    el.find('.ОК').click(function() {
        var keystring = $(form['keystring']).val();
        var id_vote = $(form['votenew']).val();
        var _data='act=vote&id_vote='+id_vote+'&capt='+keystring;
        $.ajax({
            type: 'POST',
            url: '/modules/vote_request.php',
            data: _data,
            async: false,
            success: function(data){
                //alert(data);
            },
        });
    })
}

Смешно? Смешно:) Всё тлен.

Ок. Кликаем на ссылку Голосовать. Вводим капчу. Дальше... если нажмём OK, отработает обработчик события click, который заботливо весит функция vote... уйдёт post запрос к скрипту vote_request.php ... после чего произойдёт стандартный сабмит формы с get запросом к http://pilot.spb.ru/rip/ - глупость...

Рефреш нам не интересен; иначе, будет больше лишних телодвижений. Мы ленивы.

Ищем кнопку OK, добавляем return false в событие onclick...

<input type="submit" value="ОК" class="ОК" onclick="return false;">

Отлично! Теперь можно втыкать в кнопарь. Пока палец не отсохнет.

Но, ещё раз, мы ленивы - на этом всё строится. Не хреново было бы, если бы... оно само в себя тыкало с определённой периодичностью.

Да без проблем! В стиле тру хацкер:)

<input type="submit" value="ОК" id="def" class="ОК" onclick="setTimeout(function(){document.getElementById('def').click();}, 5); return false;">

Идём курить... Задача выполнена. Дельфы - 6294.

А, да, и не забываем передать привет создателю сайта с пятнадцатилетним стажем:)

З.Ы. Когда-нить Дима покажет, как нагнать коней на весна.фм... Там замес интересней:)

Хак

0 комментариев

Только авторизованные пользователи могут оставлять комментарии.

Пожалуйста, Авторизуйтесь или Зарегистрируйтесь