1. Лучший говнокод

    В номинации:
    За время:
  2. JavaScript / Говнокод #17248

    +159

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    request.done(function(data){			 
    			 if (data){
                                            <...много кода с кучей вложенных if else ..>
    				    	noty({type: "success", text: 'Заказ взят с биржи'});
    				  	setTimeout(location.reload(), 2000);
    				  }
    		   	 } else if (data.error) {
    				 console.log(data);
    				 noty({type: "error", text: data.error["message"]});				
    			 }
    	});

    i had n1ce debug time

    heyzea1, 03 Декабря 2014

    Комментарии (4)
  3. PHP / Говнокод #17225

    +159

    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
    public function asSize($value, $decimals = null, $options = [], $textOptions = [])
        {
            if ($value === null) {
                return $this->nullDisplay;
            }
            list($params, $position) = $this->formatSizeNumber($value, $decimals, $options, $textOptions);
            if ($this->sizeFormatBase == 1024) {
                switch ($position) {
                    case 0:  return Yii::t('yii', '{nFormatted} {n, plural, =1{byte} other{bytes}}', $params, $this->locale);
                    case 1:  return Yii::t('yii', '{nFormatted} {n, plural, =1{kibibyte} other{kibibytes}}', $params, $this->locale);
                    case 2:  return Yii::t('yii', '{nFormatted} {n, plural, =1{mebibyte} other{mebibytes}}', $params, $this->locale);
                    case 3:  return Yii::t('yii', '{nFormatted} {n, plural, =1{gibibyte} other{gibibytes}}', $params, $this->locale);
                    case 4:  return Yii::t('yii', '{nFormatted} {n, plural, =1{tebibyte} other{tebibytes}}', $params, $this->locale);
                    default: return Yii::t('yii', '{nFormatted} {n, plural, =1{pebibyte} other{pebibytes}}', $params, $this->locale);
                }
            } else {
                switch ($position) {
                    case 0:  return Yii::t('yii', '{nFormatted} {n, plural, =1{byte} other{bytes}}', $params, $this->locale);
                    case 1:  return Yii::t('yii', '{nFormatted} {n, plural, =1{kilobyte} other{kilobytes}}', $params, $this->locale);
                    case 2:  return Yii::t('yii', '{nFormatted} {n, plural, =1{megabyte} other{megabytes}}', $params, $this->locale);
                    case 3:  return Yii::t('yii', '{nFormatted} {n, plural, =1{gigabyte} other{gigabytes}}', $params, $this->locale);
                    case 4:  return Yii::t('yii', '{nFormatted} {n, plural, =1{terabyte} other{terabytes}}', $params, $this->locale);
                    default: return Yii::t('yii', '{nFormatted} {n, plural, =1{petabyte} other{petabytes}}', $params, $this->locale);
                }
            }
        }

    Yii продолжает свой крестовый поход против логики. Вам нужно немного другое форматирование, получить именно килобайты вместо кибибайтов? Выставьте какую-то ссаную внутреннюю переменную в значение, отличное от 1024. Да, двойка подойдет, не ссы, ставь.

    Fike, 30 Ноября 2014

    Комментарии (1)
  4. PHP / Говнокод #17147

    +159

    1. 1
    2. 2
    3. 3
    static function beforeIblockElementAddOrUpdateResetResponseAuthor($fields){
        ...
    }

    n1ce22rus, 21 Ноября 2014

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

    +159

    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
    function get() {
      var a, g, d = app.vk.friend.OSS;
      1 > db.contacts.length && VK.api( "friends.get", {fields: "photo_rec,contacts"}, function ( j )
      {
        if ( j.response )
        {
          try
          {
            app.vk.friend.inited = !1;
            g = j.response.length;
            var e = [], b, f = null, m = null;
            for ( a = 0; a < g; a++ )
            {
              b = j.response[a].mobile_phone || "";
              var m = f = null, c = b.match( /\d/g );
              if ( !c || !(7 == c.length && "9" == c[0] || 10 == c.length || 11 == c.length) )
              {
                b = null;
              }
              b && 11 == c.length && (b = "bbbccccccc".replace( "a", c[0] ).replace( "b", c[1] ).replace( "b", c[2] ).replace( "b", c[3] ).replace( "c", c[4] ).replace( "c", c[5] ).replace( "c", c[6] ).replace( "c", c[7] ).replace( "c", c[8] ).replace( "c", c[9] ).replace( "c", c[10] ));
              b && 10 == c.length && (b = "bbbccccccc".replace( "b", c[0] ).replace( "b", c[1] ).replace( "b", c[2] ).replace( "c", c[3] ).replace( "c", c[4] ).replace( "c", c[5] ).replace( "c", c[6] ).replace( "c", c[7] ).replace( "c", c[8] ).replace( "c", c[9] ));
              b && (7 == c.length && "9" == c[0]) && (b = null);
              b && 10 == c.length && (f = c[0] + c[1] + c[2]);
              b && 11 == c.length && (f = c[1] + c[2] + c[3]);
              b && (e[e.length] = b);
              m = d[null != f ? 2 : 0];
              db.contacts[db.contacts.length] = {uid: j.response[a].uid, first_name: j.response[a].first_name, last_name: j.response[a].last_name, name: j.response[a].first_name + " " + j.response[a].last_name, photo: j.response[a].photo || j.response[a].photo_rec || j.response[a].photo_big, phoneOrig: j.response[a].mobile_phone || "", phone: b, mask: f, oper: m, oper_i: m == d[1] ? 2 : m != d[0] ? 1 : 0, app_status: 0}
            }
            var p, i = app.scnet.form.checkNumbers( e );
            g = i.SUBSCRIBER && i.SUBSCRIBER.length ? i.SUBSCRIBER.length : i.SUBSCRIBER ? 1 : 0;
            1 == g && (i.SUBSCRIBER = [i.SUBSCRIBER]);
            for ( a = 0; a < g; a++, p = null )
            {
              1 == i.SUBSCRIBER[a].SELF && (p = db.contacts.find( "phone", i.SUBSCRIBER[a].MSISDN )), p && (db.contacts.find( "phone", i.SUBSCRIBER[a].MSISDN ).oper = d[1], db.contacts.find( "phone", i.SUBSCRIBER[a].MSISDN ).oper_i = 2);
            }
            document.all ? setTimeout( app.vk.friend.getAppFri, 1E3 ) : document.all || app.vk.friend.getAppFri()
          }
          catch ( t )
          {}
        }
      } )
    }

    Здесь прекрасно всё, и как картины Босха можно рассматривать эту лапшу бесконечно.

    bodeaux, 19 Ноября 2014

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

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    jQuery(document).
    filter(function() { return window.top.document === this; }).
    ready(function() {
    jQuery(window.top.document).
    find('body').
    append('<div style="position:absolute;position:fixed;bottom:20px;left:10px;z-index:9999;padding:2px;padding-top:6px;border:2px #808080 solid;border-radius:9px;box-shadow:0 0 10px rgba(128,128,128,0.8);">'
    +'<img border="0" src="data:image/png;base64,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" /></div></div>'
    ....

    вот так делает img

    ryselis, 13 Ноября 2014

    Комментарии (26)
  7. PHP / Говнокод #17090

    +159

    1. 1
    $image_type = substr($image_data,strpos($image_data, '/')+1,strpos($image_data, ';')-(strpos($image_data, '/')+1));

    Выдирание типа из заголовка base64-закодированного изображения (data:image/jpeg;base64,......................)

    Anxizzz, 10 Ноября 2014

    Комментарии (13)
  8. PHP / Говнокод #16948

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if (AllowOperation(array(1,2,3,4,5,9,10,29), array(), array(), array(), -1, -1)) { 
            } else {
            	//скрывать определённые поля для дизайнера
    			$tplCommon->assign("DISPLAY_NONE", "style='display: none;'");  
            }

    В AllowOperation указываются идентификаторы групп пользователей, что забиты в БД.
    Таких AllowOperation(array(1,2,3,4,5,9,10,29). .), но с разными идентификаторами во всей системе больше 1000.

    pavel87, 27 Октября 2014

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

    +159

    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
    <script>
    	$(function() {
    		$('#current').load('current.php');
    	}
    </script>
    
    // Тем временем в current.php :
    <?
    $result = ... ; // данные как-то вытаскиваются из базы
    ob_start();?>
    <table><?
    foreach($result as $res) {?>
    <tr><td><?=$res[0]?></td><td><?=$res[1]?></td><td><?=$res[2]?></td></tr>
    <?}?>
    </table>
    <?$table = ob_get_clean();?>
    <script>
              $('#current').empty();
              $('#current').append('<?=str_replace(array("\r","\n"),"",$table)?>'); 
    </script>

    Извиняюсь за возможные опечатки: сократил, чтобы оставить только самую мякотку.

    clauclauclau, 23 Октября 2014

    Комментарии (1)
  10. PHP / Говнокод #16910

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    foreach (array(167, 163) as $low_rise_apartment_id)
    {
            $arParams["SEARCH_DATA"]["articletype"][] = $low_rise_apartment_id;
    }
                
    $arParams["SEARCH_DATA"]["articletype"] = array_unique($arParams["SEARCH_DATA"]["articletype"]);

    solnatus, 22 Октября 2014

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

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    var component_prop = {};
    // create property array
    for (var i = 0; i < object_data.properties.length; i++) {
        component_prop[object_data.properties[i].name] = object_data.properties[i].value;
    }
    // convert property arrays to JSON object for parameters on component create
    component_prop = JSON.parse(JSON.stringify(component_prop));

    может кто-то понимает этот танец?

    kissarat, 22 Октября 2014

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