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

    +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
    var firstpostime = 1417254005;var numpos = 1; //номер посещения
    var sredvrem  = 0; //среднее время на каждой странице
    var lasdo15sek = 0;
    
    function debug444(ff) {
    	console.log(ff);
    	//alert(ff);
    }
    var newTxt="!!";
    var oldTxt=document.title;
    function migalka(){
        if(document.title==oldTxt){
            document.title=newTxt;
        }else{
            document.title=oldTxt;
        }
    } 
    function neuspeli() {
    	var element55577 = document.createElement('div');
    	element55577.innerHTML = '<img style="width:1px;height:1px;" src="http://rbcall.com/neuspeli.php?&tel='+document.getElementById('wi_tele233').value+'&site=47&user=159">', 
    	element55577.id = 'wi_r223';
    	document.body.appendChild(element55577);
    	document.getElementById("superjalobal").style.display='block';
    } 
    
    function jduzvonka() {
    	if (zvonim == 1) { return true; }
    	if(document.getElementById("wi_tele233").value.length>=8 || document.getElementById("wi_tele233").value == 400){
    		wiyacall();
    		
    		insertscript(document.getElementById("wi_tele233").value);
    		
    	} else { 
    		document.getElementById("wi_tele233").style.border="1px solid red"; 
    	}
    }
    
    ...... и весь скрипт такой

    http://rbcall.com/ ROBOCALL - технологии будущего (они же: технологии ИИ)

    xjester0, 29 Ноября 2014

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

    +164

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if (jq('#' + id).attr('checked')) {
        jq('#' + id).attr('checked', true);
    } else {
        jq('#' + id).attr('checked', false);
    }

    Чужой код, года 11, переписываю, натыкаюсь на такое вот повсеместно

    tagrim, 28 Ноября 2014

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

    +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
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    var action = $(this).attr("action");
    var id_taxi = $('#id_taxi').val();
    var id_car = $('#id_car').val();
    var car_number = $('#number-car').val();
    var car_code = $('#number-car-code').val();
    <....>
    if ( action == "add" ){
        var url = '/api/4/*****/service/taxi/addAvto';
        var data_send={ 'id_taxi':id_taxi, 'car_number':car_number, 'model':model, 'color':color, 'licence_number': licence_number, 'id_type_car_body': id_type_car_body, 'type_car_comfort' : comfort, 'car_options' : option, 'isActive': is_active };
    
    }else if ( action == "edit"  ){
        var url = '/api/4/****/service/taxi/updateAvto';
        var data_send={ 'id_car': id_car, 'car_number':car_number, 'model':model, 'color':color, 'licence_number': licence_number,'id_type_car_body': id_type_car_body,  'type_car_comfort' : comfort, 'car_options' : option, 'isActive': is_active};
    
    }
    <...>
    var request = $.ajax({
      url: url,  
      type: "POST",
      dataType: 'json',
      data: data_send
    });

    Сабмитим формы.
    И так на всем проекте, 3к строк JS кода, которые подобным образом описывают ВСЕ формы на проекте.
    web service architecture, йобана

    heyzea1, 27 Ноября 2014

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

    +156

    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
    var move_container_after = function(toMove, toAfter) {
    	  $(toMove).insertAfter(toAfter);
    };
    
    var move_container_before = function(toMove, toBefore) {
    	  $(toMove).insertBefore(toBefore);
    };
    
    move_container_before(".toggle.basic1-tog", ".basic1 .store-order-item-group-action-list");
    move_container_after(".toggle.basic1rn-tog", ".basic1rn .store-order-item-description");
    
    move_container_before(".toggle.basic3-tog", ".basic3 .store-order-item-group-action-list");
    move_container_after(".toggle.basic3rn-tog", ".basic3rn .store-order-item-description");
    
    move_container_before(".toggle.bundle1-tog", ".bundle1 .store-order-item-group-action-list");
    move_container_after(".toggle.bundle1rn-tog", ".bundle1rn .store-order-item-group-action-list");
    
    move_container_before(".toggle.bundle12-tog", ".bundle12 .store-order-item-group-action-list");
    move_container_after(".toggle.bundle12rn-tog", ".bundle12rn .store-order-item-group-action-list");
    
    move_container_before(".toggle.bundle3-tog", ".bundle3 .store-order-item-group-action-list");
    move_container_after(".toggle.bundle3rn-tog", ".bundle3rn .store-order-item-group-action-list");
    
    move_container_before(".toggle.bundle6-tog", ".bundle6 .store-order-item-group-action-list");
    move_container_after(".toggle.bundle6rn-tog", ".bundle6rn .store-order-item-group-action-list");
    
    move_container_before(".toggle.desktop1-tog", ".desktop1 .store-order-item-group-action-list");
    move_container_after(".toggle.desktop1rn-tog", ".desktop1rn .store-order-item-description");
    
    move_container_before(".toggle.desktop12-tog", ".desktop12 .store-order-item-group-action-list");
    move_container_after(".toggle.desktop12rn-tog", ".desktop12rn .store-order-item-description");
    
    move_container_before(".toggle.desktop3-tog", ".desktop3 .store-order-item-group-action-list");
    move_container_after(".toggle.desktop3rn-tog", ".desktop3rn .store-order-item-description");
    
    move_container_before(".toggle.desktop6-tog", ".desktop6 .store-order-item-group-action-list");
    move_container_after(".toggle.desktop6rn-tog", ".desktop6rn .store-order-item-description");
    
    move_container_before(".toggle.desktopbus12-tog", ".desktopbus12 .store-order-item-group-action-list");
    move_container_after(".toggle.desktopbus12rn-tog", ".desktopbus12rn .store-order-item-description");   
    
    move_container_before(".toggle.desktopbus6-tog", ".desktopbus6 .store-order-item-group-action-list");
    move_container_after(".toggle.desktopbus6rn-tog", ".desktopbus6rn .store-order-item-description");
    
    move_container_before(".toggle.premium1-tog", ".premium1 .store-order-item-group-action-list");
    move_container_after(".toggle.premium1rn-tog", ".premium1rn .store-order-item-description");
    
    move_container_before(".toggle.premium12-tog", ".premium12 .store-order-item-group-action-list");
    move_container_after(".toggle.premium12rn-tog", ".premium12rn .store-order-item-description");
    
    move_container_before(".toggle.premium3-tog", ".premium3 .store-order-item-group-action-list");
    move_container_after(".toggle.premium3rn-tog", ".premium3rn .store-order-item-description");
    
    move_container_before(".toggle.premium6-tog", ".premium6 .store-order-item-group-action-list");
    move_container_after(".toggle.premium6rn-tog", ".premium6rn .store-order-item-description");
    
    move_container_before(".toggle.premiumbus12-tog", ".premiumbus12 .store-order-item-group-action-list");
    move_container_after(".toggle.premiumbus12rn-tog", ".premiumbus12rn .store-order-item-description");
    
    move_container_before(".toggle.premiumbus6-tog", ".premiumbus6 .store-order-item-group-action-list");
    move_container_after(".toggle.premiumbus6rn-tog", ".premiumbus6rn .store-order-item-description");

    "Перенос" формы, для каждого ID, в HTML есть соответствующее колово форм подобного типа

    <div class="toggle basic1-tog">Auto Renew: Off
    <form method="POST" action="https://sites.fastspring.com/store/api/order">
    <input type="hidden" name="operation" value="update"/>
    <input type="hidden" name="destination" value="checkout"/>
    <input type="hidden" name="product_1_path" value="/basicsubscription1monthrn"/>
    <input type="hidden" name="product_2_path" value="/basicsubscription1month"/>
    <input type="hidden" name="product_2_quantity" value="0"/>
    <input type="submit" value="Turn On"/>
    </form>
    </div>
    <div class="toggle basic1rn-tog">Auto Renew: On
    <form method="POST" action="https://sites.fastspring.com/store/api/order">
    <input type="hidden" name="operation" value="update"/>
    <input type="hidden" name="destination" value="checkout"/>
    <input type="hidden" name="product_1_path" value="/basicsubscription1month"/>
    <input type="hidden" name="product_2_path" value="/basicsubscription1monthrn"/>
    <input type="hidden" name="product_2_quantity" value="0"/>
    <input type="submit" value="Turn Off"/>
    </form>
    </div>

    IRIDON, 25 Ноября 2014

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

    +155

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    function in_array(value, array)
    {
        if (is_array(array)){
            for(var i = 0; i < array.length; i++)
            {
                if(array[i] == value) return true;
            }
            return false;
        }
    
    }

    от создателей http://govnokod.ru/17149

    heyzea1, 25 Ноября 2014

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

    +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
    function updateClock()
    {
        var date = new Date();
        var day = date.getDate();
        var month = date.getMonth() + 1;
        var year = date.getFullYear();
        var hours = date.getHours();
        var minutes = date.getMinutes();
        var seconds = date.getSeconds();
        var dateTimeString = day + "." + month + "." + year + " " + hours + ":" + minutes + ":" + seconds;
        $('#clock').html("Сейчас " + dateTimeString);
    }

    Трибьют классике.

    pushistayapodmyshka, 24 Ноября 2014

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

    +157

    1. 1
    2. 2
    3. 3
    4. 4
    formatDate: function (oSignDate) {
      "use strict";
      return oSignDate.getFullYear().toString() + (1 + oSignDate.getMonth()).toString() + oSignDate.getDate().toString() + "T" + oSignDate.getHours().toString() + oSignDate.getMinutes().toString() + oSignDate.getSeconds().toString() + (oSignDate.getTimezoneOffset() > 0 ? "-" : "+") + ("0000" + (-1 * oSignDate.getTimezoneOffset() / 60) * 100).toString().substr(-4, 4);
    }

    Представление даты в формате YYYYMMDDThhmmss±hhmm

    Yaruson, 24 Ноября 2014

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

    +156

    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
    var old = 47;
    
            function getRate() {
                $.ajax({
                      url: "http://query.yahooapis.com/v1/public/yql?q=select%20%2a%20from%20yahoo.finance.xchange%20where%20pair%20in%20%28%22USDRUB%22%29&env=store://datatables.org/alltableswithkeys",
                      dataType: "text"
                }).done(function(msg) {
                    var value = /<Rate>(.+)<\/Rate>/.exec(msg)[1];
                    //$("#p-rate").html(/<Rate>(.+)<\/Rate>/.exec(msg)[1]);
                    $("#p-rate").html(value);
                    if(value > old) $("#p-message").html("МНЕ ОТ ЭТОГО ТОЛЬКО ЛУЧШЕ! ТОЛЬКО НА ПОЛЬЗУ!");
                    else if(value < old) $("#p-message").html("СКАЛЕН! СКАЛЕН!");
                    else $("#p-message").html("МНОГОХОДОВОЧКА!");
                    old = value;
                });
            }
    
            setInterval(getRate,1500);

    gost, 24 Ноября 2014

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

    +161

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    # coffee script
    d = 1 - Math.pow(d,n) * Math.pow((1/d -1),n)
    
    // java script
    d = 1 - Math.pow(d, n) * Math.pow(1 / d(-1), n);

    почему не любят кофескрипт, выпуск -дцатьпервый. потому что нельзя просто скопипастить формулу и не поймать Uncaught TypeError: number is not a function

    makc3d, 22 Ноября 2014

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

    +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
    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
    if ((new Date(2014, 0, 1)).getHours() != 0 || new Date(2015, 0, 7).getHours() != 0) {
      // Переопределяем конструктор
      Date = (function (NativeDate) {
        var NewDate = function (Y, M, D, h, m, s, ms) {
          var length = arguments.length;
          var date = length === 1 && String(Y) === Y ? // isString(Y)
              new NativeDate(NewDate.parse(Y)) :
                  length >= 7 ? new NativeDate(NativeDate.UTC(Y, M, D, h, m, s, ms)) :
                  length >= 6 ? new NativeDate(NativeDate.UTC(Y, M, D, h, m, s)) :
                  length >= 5 ? new NativeDate(NativeDate.UTC(Y, M, D, h, m)) :
                  length >= 4 ? new NativeDate(NativeDate.UTC(Y, M, D, h)) :
                  length >= 3 ? new NativeDate(NativeDate.UTC(Y, M, D)) :
                  length >= 2 ? new NativeDate(NativeDate.UTC(Y, M)) :
                  length >= 1 ? new NativeDate(Y) :
              new NativeDate();
          if (length == 0) {
            date = new NativeDate(+date - date.getTimezoneOffset() * 60000);
          }
          date.constructor = NewDate;
          return this instanceof NativeDate ? date : date.toString();
        };
    
        if (NativeDate.now) {
          NewDate.now = function () {
            return new NewDate().getTime();
          };
        }
        if (NativeDate.UTC) {
          NewDate._UTC = NativeDate.UTC;
          NewDate.UTC = function (Y, M, D, h, m, s, ms) {
            var _date = new NewDate(NewDate._UTC.apply(this, arguments));
            return +_date - _date.getTimezoneOffset() * 60000;
          };
        }
        NewDate.prototype = NativeDate.prototype;
        NewDate.prototype.constructor = NewDate;

    И так далее, "фикс" для кривых таймзон в JS на винде http://habrahabr.ru/post/243685/

    asavartsov, 21 Ноября 2014

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