1. Список говнокодов пользователя wvxvw

    Всего: 202

  2. Куча / Говнокод #11599

    +141

    1. 1
    2. 2
    3. 3
    4. 4
    http://www.ubuntu.com/download/desktop
    1. Открыть страницу в Firefox/Google-Chrome.
    2. Сверху над кнопкой "Download" сменить с 32 бит на 64 бит.
    3. Посмотреть внимательно на URL, откуда будет загружатся имидж.

    Код, который это делает трудно понять без контекста.

    wvxvw, 16 Августа 2012

    Комментарии (48)
  3. Java / Говнокод #11490

    +79

    1. 1
    String url = m_launchUrl.replaceAll(" ", "%20");

    Percent-encode по-Адобовски.

    http://svn.apache.org/repos/asf/incubator/flex/trunk/modules/debugger/src/java/flash/tools/debugger/concrete/PlayerSession.java

    wvxvw, 29 Июля 2012

    Комментарии (117)
  4. Куча / Говнокод #11423

    +121

    1. 1
    (reverse (butlast ...))

    Родное :)

    wvxvw, 16 Июля 2012

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

    +148

    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
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    ISQ.Translation.Infra.extractJobIdFromText=function(k){
        var d;
        var g=k.toLowerCase();
        var j=g.indexOf("<"+ISQ.Translation.Infra.jobIdMarkerTag);
        if(j===-1){
    	j=g.indexOf("< "+ISQ.Translation.Infra.jobIdMarkerTag)
        }
        if(j===-1){
    	if(ISQ.Widget&&ISQ.Widget.Log){
    	    ISQ.Widget.Log.add("ISQ.Translation.Infra.extractJobIdFromText: Couldnt parse jobIdMarker from text! "+k,ISQ.Widget.Log.statusEnum.RED)
    	}
    	return{id:-1,text:k}
        }
        var b=k.indexOf(">",j);
        if(b===-1){
    	if(ISQ.Widget&&ISQ.Widget.Log){
    	    ISQ.Widget.Log.add("ISQ.Translation.Infra.extractJobIdFromText: jobIdMarker tag is invalid!",ISQ.Widget.Log.statusEnum.RED)
    	}
    	return{id:-1,text:k}
    
        }
        b+=1;
        var h=g.substring(j,b);
        var e=h.indexOf(ISQ.Translation.Infra.jobIdMarkerTag);
        if(e===-1){
    	if(ISQ.Widget&&ISQ.Widget.Log){
    	    ISQ.Widget.Log.add("ISQ.Translation.Infra.extractJobIdFromText: jobIdMarker tag is invalid!",ISQ.Widget.Log.statusEnum.RED)
    	}
    	return{id:-1,text:k}
        }
        e+=ISQ.Translation.Infra.jobIdMarkerTag.length;
        var f="";
        var a;
        do
        {
    	if(e>h.length){
    	    break
    	}
    	a=h.charAt(e++);
    	if(a.charCodeAt(0)<48||a.charCodeAt(0)>57){
    	    break
    	}
    	f+=a
        }
        while(true);
        d=parseInt(f);
        if(isNaN(d)){
    	if(ISQ.Widget&&ISQ.Widget.Log){
    	    ISQ.Widget.Log.add(
    		"ISQ.Translation.Infra.extractJobIdFromText: jobIdMarker tag is invalid: could not parse id#",
    		ISQ.Widget.Log.statusEnum.RED)
    	}
    	return{id:-1,text:k}
        }
        var i;
        if(j===0){
    	i=k.substring(b)
        }
        else
        {
    	i=k.substring(0,j);
    	if(b<k.length){
    	    i+=k.substring(b)
    	}
        }
        return{id:d,text:i}
    };

    Закомммммммммммментировал!

    wvxvw, 04 Июня 2012

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

    +151

    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
    ISQ.Widget.ContactForm.clickEventHandler=function(a){
        switch(a.result){
        case ISQ.Forms.clickEventEnum.SUBMIT:
    	ISQ.Widget.Log.add("contactForm submit");
    	ISQ.Widget.ContactForm.send(a.formElements);
    	ISQ.Widget.ContactForm.close(true);
    	break;
        case ISQ.Forms.clickEventEnum.CANCEL:
    	if(ISQ.Cnf.limited){
    	    break
    	}
    	ISQ.Widget.Log.add("contactForm cancel");
    	if(a.query!==""){
    	    ISQ.Widget.HTML.queryField.value=a.query
    	}
    	ISQ.Widget.ContactForm.canceled=true;
    	ISQ.Widget.ContactForm.close();
    	break;
        case ISQ.Forms.clickEventEnum.ERROR:
    	ISQ.Widget.Log.add("contactForm input error");
    	break
        }
    };

    Если честно, то тут автор даже удивил. Как-то раньше ни разу не пришлось два брейка в одном кейсе делать, все как-то одним обходился.

    wvxvw, 04 Июня 2012

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

    +152

    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
    ISQ.Widget.Query.keyUpHandler=function(c){
        var b=c||window.event;
        if(!ISQ.Widget.userActive){
    	return
        }
        if(typeof(b.keyCode)!="unknown"&&ISQ.Widget.Query.ignoreKeyCodes[b.keyCode]){
    	return false
        }
        if(ISQ.Cnf.limited&&ISQ.Widget.state!==ISQ.Widget.enumState.contactForm){
    	return false
        }
        if(ISQ.Widget.state===ISQ.Widget.enumState.customLink){
    	ISQ.Widget.state=ISQ.Widget.enumState.questions
        }
        ISQ.Widget.Query.clearQuestionTrail();
        var a=_query(false);
        if(ISQ.Widget.Query.lastQueryWritten!=a){
    	ISQ.Widget.Query.analyzeQuery(a)
        }
        return false
    };

    По поводу уверенных программистов (явно задел на будущее, а вдруг добаят).

    wvxvw, 04 Июня 2012

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

    +155

    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
    ISQ.Data.checkString=function(e,f){
        var d=true;
        switch(f){
        case"email":
    	var a=/^[\w-_\&.]+\@([\w-_]+\.[\w-_]+){1,3}$/;
    	var g=new RegExp("[~!#$%^&*()=''\"\\/><?[]{}|]","g");
    	return(e.search(g)===-1)&&(e.match(a))&&(e!=="");
    	break;
        case"number":
    	var b=/^[-]?[0-9]+\.?[0-9]?$/;
    	return b.test(e);
    	break;
        case"username":
    	var c=new RegExp(".+@.+");
    	return(c.test(e));
    	break;
        case"url":
    	var c=new RegExp("^https?://([a-zA-Z0-9]+.){1,}[a-zA-Z0-9]+");
    	return(c.test(e));
    	break
        }
        return d
    }
    
    // Функция универсальной валидации.
    // (Но незадолго до того было еще и)
    
    ISQ.Data.getEmailAddress=function(e){
        var a=/[\w-_\&.]+\@[\w-_]+\.+[\w-_.]+/g;
        var d=e.match(a);
        if(d===null||d.length===0){
    	return null
        }
        var f=new RegExp();
        f.compile("[~!#$%^&*()=`'\"\\/><?[]{}|]","g");
        var b=new Array();
        for(var c=0;c<d.length;++c){
    	if(d[c].search(f)===-1){
    	    b.push(d[c])
    	}
        }
        return b
    }

    Еще одна творческая работа.

    wvxvw, 03 Июня 2012

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

    +158

    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
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    ISQ.Http.detectBroswer=function(){
        var b=navigator.appVersion;
        var f=navigator.userAgent;
        var a=0;
        ISQ.Http.browser={};
        if(navigator.appVersion.indexOf("Android")!==-1){
    	ISQ.Http.browser.app="android";
    	var c=navigator.appVersion.indexOf("Version/")+8;
    	var g=navigator.appVersion.substring(c,navigator.appVersion.indexOf(" ",c));
    	ISQ.Http.browser.version=parseInt(g);
    	ISQ.Http.browser.isMobile=true;
    	ISQ.Http.browser.usesViewport=true;
    	ISQ.Http.browser.isAndroid=true
        }
        else
        {
    	if(navigator.appVersion.indexOf("iPhone")!==-1){
    	    var g=navigator.appVersion.substring(0,navigator.appVersion.indexOf(" "));
    	    ISQ.Http.browser.app="safari";
    	    ISQ.Http.browser.version="iphone "+parseInt(g);
    	    ISQ.Http.browser.isMobile=true;
    	    ISQ.Http.browser.usesViewport=true;
    	    ISQ.Http.browser.isIPhone=true
    	}
    	else
    	{
    	    if(navigator.appVersion.indexOf("iPad")!==-1){
    		var g=navigator.appVersion.substring(0,navigator.appVersion.indexOf(" "));
    		/* identical to iPhone */
    	    }
    	    else
    	    {
    		if((a=b.indexOf("MSIE "))!==-1){
    		    ISQ.Http.browser.app="ie";
    		    a+=5;
    		    /* version check skipped */
    		}
    		else
    		{
    		    if(b.indexOf("Chrome")!==-1){
    			ISQ.Http.browser.app="chrome";
    			ISQ.Http.browser.version="0"
    		    }
    		    else
    		    {
    			if((a=b.indexOf("Safari"))!==-1){
    			    /* version check skipped */
    			}
    			else
    			{
    			    if((a=f.indexOf("Firefox/"))!==-1){
    				ISQ.Http.browser.app="ff";
    				/* version check skipped */
    			    }
    			    else
    			    {
    				if(f.indexOf("Opera/")!==-1){
    				    ISQ.Http.browser.app="opera";
    				    var c=f.indexOf("Version/");
    				    if(c===-1){
    					var d=f.indexOf(" ",6);
    					ISQ.Http.browser.version=f.substring(6,d)
    				    }
    				    else
    				    {
    					/* version check skipped */
    				    }
    				    ISQ.Http.browser.isOpera=true
    				}
    				else
    				{
    				    if(f.contains("Symbian")){
    					ISQ.Http.browser.app="symbian";
    					ISQ.Http.browser.version=1;
    					ISQ.Http.browser.full=ISQ.Http.browser.app+
    					    ISQ.Http.browser.version
    				    }
    				    else
    				    {
    					ISQ.Http.browser.app="ie";
    					ISQ.Http.browser.version="7.0;";
    					ISQ.Http.browser.isIE7=true
    				    }
    				}
    			    }
    			}
    		    }
    		}
    	    }
    	}
        }
        ISQ.Http.browser.full=ISQ.Http.browser.app+ISQ.Http.browser.version;
        f=null;
        b=null
    }

    Неизвестный автор ISQ фреймворка определяет браузер.
    Яваскрипт, Визуал Студио; Частное собрание сочинений.

    wvxvw, 03 Июня 2012

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

    +163

    1. 1
    2. 2
    3. 3
    ISQ.Html.scrollBarWidth=function(){
        return 17
    };

    С одной стороны, конечно, проблематично посчитать, но возможно же...

    wvxvw, 01 Июня 2012

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

    +160

    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
    ISQ.Tools.reverseArray=function(a){
        var d=a.length;
        for(var b=0;b<a.length;++b){
    	var e=0;
    	for(var c=1;c<d;++c){
    	    var f=a[e];
    	    a[e]=a[c];
    	    a[c]=f;
    	    ++e
    	}
    	--d
        }
    };

    Все тот же автор... зачем он все это делал - ума не приложу.

    wvxvw, 01 Июня 2012

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