1. JavaScript / Говнокод #14209

    +153

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    if (/mail\/\?r=mail\/message_list/gim.test(location.href)) {
    		var ihoho = $($('form')[1]).parent().clone(true);
    		var myNickName = $($('li.sep_bl:has("a[href*=\'/mysite/\']")').find("a")[0]).prop("title");
    		eval('var prrtrns = /<b style="color:navy;">' + myNickName + '<\\/b>/gim;');
    		$($('form')[1]).parent().remove();
    		$($('.blue_wrap_block')[0]).after(ihoho);
    		var xls = $($($('form')[1]).find("input[type*='submit']")[0]);
    		xls.prop('type', 'button');
    		xls[0].setAttribute('onclick', 'var temp_tT = this.parentNode.parentNode.texttT.value; var rrr = this.parentNode.parentNode.r.value;var sid = this.parentNode.parentNode.sid.value;var CK = this.parentNode.parentNode.CK.value;var texttT = this.parentNode.parentNode.texttT.value;var Link_id = this.parentNode.parentNode.Link_id.value;var user = this.parentNode.parentNode.user.value;$.ajax({type:"POST",url: "http://spaces.ru/mail/?",data: {r:rrr,user:user,CK:CK,sid:sid,Link_id: Link_id,texttT:texttT},success:function(){document.forms[1].texttT.value = "";}});');
    		xls[0].setAttribute('name', 'okletsgo');
    		xls[0].setAttribute('style', 'display:none');
    		$('#navi').before("<script></script>");
    		document.forms[1].setAttribute('onkeypress', 'function lovly(e) { if (e.keyCode == 87 && e.altKey) document.forms[1].texttT = temp_tT; if (e.keyCode == 13 && !e.shiftKey && !e.ctrlKey) document.forms[1].okletsgo.click(); } lovly(event)');
    		$('.t-bg3').each(function(i) {
    					$(this).html($(this).html().replace(/<b style="color:darkmagenta;">Я<\/b>/gim, '<b style="color:navy;"><img src="http://spaces.ru/i//man_on.gif" alt="(ON)"/> <span style="text-decoration:underline">' + myNickName + '</span></b>').replace("<div class=\"overfl_hid service_links_block service_links_block_top clear\">", "<div style='display:none'>"));
    		}); //replace("<div class=\"left font0 avatar_wrap padd_right\">", '<div style="display:none">').
    		var reloadedMail = function(data) {
    			var dt = '';
    			$($(data).find("form")[1]).parent().each(function() {
    				dt = this.outerHTML;
    			});
    			data = data.replace(dt, "");
    			$(data).find('.t-bg3').each(function(i) {
    				if ($(this).html().replace(/Link_id=([0-9]+)/gim) != $($('.main').find('.t-bg3')[i]).html().replace(/Link_id=([0-9]+)/gim)) 
    				{
    					$($('.main').find('.t-bg3')[i]).html($(this).html().replace(/<b style="color:darkmagenta;">Я<\/b>/gim, '<b style="color:navy;"><img src="http://spaces.ru/i//man_on.gif" alt="(ON)"/> <span style="text-decoration:underline">' + myNickName + '</span></b>').replace("<div class=\"overfl_hid service_links_block service_links_block_top clear\">", "<div style='display:none'>"));
    					if ($(this).html().match(prrtrns) && settings.ajaxMailNotifications) {
    						$('#navi').before('<audio preload="auto" autoplay src="http://driverjs.webservis.ru/income.ogg"></audio>');
    					}
    				}
    			});
    		}
    		var reloadMail = function() {
    			$.ajax({
    				url: location.href,
    				success: reloadedMail
    			});
    			setTimeout(reloadMail, settings.ajaxTimeout);
    		}
    		reloadMail();
    	}

    Что? Разработчики сайта не сделали отправку/принятие сообщений на AJAX?!
    Поправим! Юзерскрипт порешает все.
    //P.S. ЭТО КАК-ТО работает. Правда.

    Efog, 10 Декабря 2013

    Комментарии (2)
  2. JavaScript / Говнокод #14207

    +148

    1. 1
    $('#navi').before('<audio autoplay src="http://driverjs.webservis.ru/income.wav"></audio>');

    Я, конечно, понимаю, что это нифига не форум программистов. Но все-таки, может найдется X-перт, который скажет мне, какого хера этот код работает, только если я предварительно зайду на адрес звука и нажму плей? Т.е. без кэшированного звука воспроизведения нет. Opera/Chrome/Firefox.

    Efog, 10 Декабря 2013

    Комментарии (43)
  3. JavaScript / Говнокод #14200

    +157

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    var infoDiv = "<div id='fastInfo' style='font-size:16px !important;padding: 6px;padding-bottom:10px; z-index:1000000;position:fixed;top:20%;width:3px;right:0;background:white;border: 1px solid green;border-right:0;'></div>";
    $('#navi').before(infoDiv);
    var ggwp = $('a[href*="user_info="]');
    $.each(ggwp, function(index, value) {
    	value.setAttribute("onmouseenter", "$('#fastInfo').animate({'width': '300px'}, 200);function received(data) { if ($($(data).find('.gradient_block1:has(\"table\")')[0]).html() == undefined) {dtxs = $($(data).find('.stnd_padd:has(\"table\")')[0]).html().replace('img', 'xuimg');} else {dtxs = $($(data).find('.gradient_block1:has(\"table\")')[0]).html().replace('img', 'xuimg');}	$('#fastInfo').html('<span style=\"font-size:small\">' + dtxs + '<hr style=\"border:0;height:1px;background-color:black;margin:6px;color:black\" /><div style=\"padding-left:13px\">' + $($(data).find('.bottom_link_block')[0]).html() + '</div><hr style=\"border:0;height:1px;background-color:black;margin:6px;color:black\" /><div style=\"padding-left:13px;font-size:small\">' + $($(data).find('.blue_border_bottom')[0]).html().replace(/padding-bottom:10px;/gim, ''));}$.ajax({'url': 'http://spaces.ru/anketa/?name=" + value.href.match(/user_info=([a-zA-Z0-9\-\_]+)/gim)[0].replace("user_info=", "") + "', success: received});");
    	value.setAttribute("onmouseleave", "$('#fastInfo').animate({'width': '3px'}, 200);function clrscr() {$('#fastInfo').html('');} setTimeout(clrscr, 200);");
    });

    Ребят, это диагноз?
    Навесить обработчик через .on/.bind/.live не смог.

    Efog, 09 Декабря 2013

    Комментарии (40)
  4. JavaScript / Говнокод #14178

    +147

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    if(window.SomeModeMap) // OK
      ...
    
    if(window.SomeModeMap && value instanceof window.SomeModeMap) // OK
      ...
    
    if(window.SomeModeMap && value instanceof window.SomeNodeMap) // WTF, Error
      ...

    Автодополнение - это уникальный инструмент для тиражирования опечаток.

    1024--, 04 Декабря 2013

    Комментарии (10)
  5. JavaScript / Говнокод #14154

    +157

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    that.add = function(rule, handler){
        if(typeof handler == 'function'){
            var ruleArray = rule.split('.'),
                  ruleLength = ruleArray.length;
            rule = stack;
            cm.forEach(ruleArray, function(str, i){
                rule = rule[str] && rule[str].constructor == Array && rule[str].push(handler) || (++i < ruleLength)? (rule[str] = {}) : (rule[str] = [handler]);
            });
        }
        return that;
    };

    Захотелось запихнуть всё в одну строку ) Вовремя остановился и переделал )

    SerDIDG, 28 Ноября 2013

    Комментарии (29)
  6. JavaScript / Говнокод #14149

    +154

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    {
        xtype: 'splitbutton',
        // ...
    
        handler: function () {
            this.wasMenuShown = this.wasMenuShown ? (this.hideMenu(), false) : (this.showMenu(), true);
        },
        menu: {
            xtype: 'menu',
            items: []
        }
    }

    По мотивам: http://govnokod.ru/12172

    Написал. Задумался (запостил сюда). Переписал.

    Elvenfighter, 27 Ноября 2013

    Комментарии (0)
  7. JavaScript / Говнокод #14147

    +166

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    function ghgh(){
            var arr = document.getElementsByClassName("rend");
    
    
            for (var i = 0; i < arr.length; i++){
                if(arr[i] !== undefined){
                var gfyuwegf = arr[i].getElementsByClassName("testblk");
                for(var k = 0; k < gfyuwegf.length; k++){
                    // hjf
                var klkl = gfyuwegf[k].innerHTML.split('/');
                console.info(klkl);
                        if(klkl[0] == ""){
                            //console.info("! == 0");
                            if(klkl[1] === "0"){
                                arr[i].getElementsByClassName("customer")[0].innerHTML += klkl[3]+" "+klkl[4];
                                arr[i].getElementsByClassName("subdiler")[0].innerHTML += klkl[3]+" "+klkl[4];
                                arr[i].getElementsByClassName("diler")[0].innerHTML += klkl[3]+" "+klkl[4];
                                arr[i].getElementsByClassName("vip")[0].innerHTML += klkl[3]+" "+klkl[4];
                        } else if(klkl[1] === "1"){
                                arr[i].getElementsByClassName("customer")[0].innerHTML += klkl[3]+" "+klkl[4];
                       } else if(klkl[1] === "3"){
                                arr[i].getElementsByClassName("subdiler")[0].innerHTML = klkl[3]+" "+klkl[4];
                        } else if(klkl[1] === "4"){
                                arr[i].getElementsByClassName("diler")[0].innerHTML = klkl[3]+" "+klkl[4];
                        } else if(klkl[1] === "5"){
                                arr[i].getElementsByClassName("vip")[0].innerHTML = klkl[3]+" "+klkl[4];
                        }
                    }else{
                        if(klkl[1] === "0"){
                            //
                                arr[i].getElementsByClassName("customer")[0].getElementsByClassName("customer-"+klkl[0])[0].innerHTML += klkl[3]+" "+klkl[4];
                                arr[i].getElementsByClassName("subdiler")[0].getElementsByClassName("subdiler-"+klkl[0])[0].innerHTML += klkl[3]+" "+klkl[4];
                                arr[i].getElementsByClassName("diler")[0].getElementsByClassName("diler-"+klkl[0])[0].innerHTML += klkl[3]+" "+klkl[4];
                                arr[i].getElementsByClassName("vip")[0].getElementsByClassName("vip-"+klkl[0])[0].innerHTML += klkl[3]+" "+klkl[4];
                        }else if(klkl[1] === "1"){
                                arr[i].getElementsByClassName("customer")[0].getElementsByClassName("customer-"+klkl[0])[0].innerHTML = klkl[3]+" "+klkl[4];
    
            }else if(klkl[1] === "3"){
                                arr[i].getElementsByClassName("subdiler")[0].getElementsByClassName("subdiler-"+klkl[0])[0].innerHTML = klkl[3]+" "+klkl[4];
    
            }else if(klkl[1] === "4"){
                                arr[i].getElementsByClassName("diler")[0].getElementsByClassName("diler-"+klkl[0])[0].innerHTML = klkl[3]+" "+klkl[4];
    
            }else if(klkl[1] === "5"){
                                arr[i].getElementsByClassName("vip")[0].getElementsByClassName("vip-"+klkl[0])[0].innerHTML = klkl[3]+" "+klkl[4];
    
            }
    
            }
            }
        }
            }
        };
        ghgh();

    Я минисериал придумал "Новый программист на старой работе".
    Пожалуй название ghgh для этой функции самое то.
     
    Код зафигачен прямо в html-шаблоне
    В проекте подключен жеквери.

    хуита, 27 Ноября 2013

    Комментарии (19)
  8. JavaScript / Говнокод #14130

    +153

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    App.ns.SomeClass.prototype = {
        addMessage: function(status, msg, timeDelay) {
            if (status === false || status === this.STATUS_ERROR) {
                status = this.STATUS_ERROR;
                delay = timeDelay || 5; // default delay of msg box for error is 5 seconds. 
            }
            if (!timeDelay) {
                // 1 character - 1/7 sec 
                delay = msg.length / 7;
                if ((delay < 3) && !(timeDelay)) {
                    delay = 3;
                } else if ((delay > 30) && !(timeDelay)) {
                    delay = 30;
                    }
            }
            // показываем messagebox
        }
    };

    Кручу-верчу, запутать хочу.

    Elvenfighter, 24 Ноября 2013

    Комментарии (4)
  9. JavaScript / Говнокод #14128

    +161

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    function foo(id) {
          document.getElementById('1').style.display='none';
          document.getElementById('46').style.display='none';
          document.getElementById('2').style.display='none';
          document.getElementById('53').style.display='none';
          document.getElementById('55').style.display='none';
          document.getElementById('56').style.display='none';
          document.getElementById('57').style.display='none';
          document.getElementById('58').style.display='none';
    if (document.getElementById(id).style.display == "none")
             {document.getElementById(id).style.display = "block"}
    else
             {document.getElementById(id).style.display = "none"}
    }

    Прислали с бывшей работы.
    %%Саша, я таки ушёл.%%

    хуита, 24 Ноября 2013

    Комментарии (11)
  10. JavaScript / Говнокод #14110

    +153

    1. 1
    http://froland.ru/samodel/myart_js1.html

    Я хотел бы это развидеть.

    nsauk, 20 Ноября 2013

    Комментарии (0)