1. Куча / Говнокод #16977

    +142

    1. 1
    <img title="(495) 980-68-49" alt="(495) 980-68-49" src="/images/phones/9c1fc37d7d851137eca84579f7346b66">

    Защита от граба данных
    Уровень: Бог

    http://www.plan1.ru/podolsk/magazinyi/salonyi-svyazi/

    dekameron, 29 Октября 2014

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

    +134

    1. 1
    2. 2
    3. 3
    4. 4
    {GENDER, select,
        male {He}
      female {She}
       other {They}

    https://github.com/SlexAxton/messageformat.js

    someone, 29 Октября 2014

    Комментарии (15)
  3. Perl / Говнокод #16965

    −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
    15. 15
    16. 16
    sub check_license {
        my ($license) = @_;
    
        my $is_valid = 0;
        if (-f $license) {
            open(my $fh, '<', $license);
            my $content = do { local $/ = undef; <$fh> };
            close($fh);
            $content =~ s/\r\n/\n/g;
    
            $is_valid = $content =~ /^-{5}BEGIN LICENSE-{5}$/m;
            $is_valid = $content =~ /^-{5}END LICENSE-{5}$/m;
        }
    
        return $is_valid;
    }

    Ну ок.

    Elvenfighter, 29 Октября 2014

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

    +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
    $(function() {
    			$('#diametr').on('change', function() {
    				window.location = '/catalog/<?=$arResult['SECTION']['CODE']?>/'+this.value+'/';
    			});
    			
    			$('#type_s').on('change', function() {
    				$('#size_s').find('option:enabled').prop("disabled", true);
    				$('#size_s').find('option[data-prop-material='+$(this).find('option:selected').data('propMaterial')+']').prop("disabled", false).first().prop("selected", true);
    				$('#size_s').trigger('change')
    			});
    			
    			$('#type_p').on('change', function() {
    				$('#size_p').find('option:enabled').prop("disabled", true);
    				$('#size_p').find('option[data-prop-type='+$(this).find('option:selected').data('propType')+']').prop("disabled", false).first().prop("selected", true);
    				$('#size_p').trigger('change')
    			});
    			
    			
    			$(document)
    				.on('change', '#size_s, #size_p', function() {
    					
    					$('#selected_prop').val('csone_19_'+$(this).find('option:selected').data('propId'));
    				})
    				.on('click', '.but_sita', function() {
    					console.log($(this).parent().find('select').first());
    					$(this).parent().find('select').first().trigger('change');
    				});
    			$('.but_sita').last().trigger('click');
    			
    			$('#additional_spoiler').on('click', function(e) {
    				e.preventDefault();
    				$('#additional').fadeIn();
    			});
    		});

    UncaughtException, 29 Октября 2014

    Комментарии (1)
  5. C++ / Говнокод #16963

    +140

    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
    virtual QModelIndex parent(const QModelIndex &child) const = 0;
    
        virtual QModelIndex sibling(int row, int column, const QModelIndex &idx) const;
        virtual int rowCount(const QModelIndex &parent = QModelIndex()) const = 0;
        virtual int columnCount(const QModelIndex &parent = QModelIndex()) const = 0;
        virtual bool hasChildren(const QModelIndex &parent = QModelIndex()) const;
    
        virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const = 0;
        virtual bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole);
    
        virtual QVariant headerData(int section, Qt::Orientation orientation,
                                    int role = Qt::DisplayRole) const;
        virtual bool setHeaderData(int section, Qt::Orientation orientation, const QVariant &value,
                                   int role = Qt::EditRole);
    
        virtual QMap<int, QVariant> itemData(const QModelIndex &index) const;
        virtual bool setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles);
    
        virtual QStringList mimeTypes() const;
        virtual QMimeData *mimeData(const QModelIndexList &indexes) const;
        virtual bool canDropMimeData(const QMimeData *data, Qt::DropAction action,
                                     int row, int column, const QModelIndex &parent) const;
        virtual bool dropMimeData(const QMimeData *data, Qt::DropAction action,
                                  int row, int column, const QModelIndex &parent);

    ну, вы поняли. они написали тысячи говнокода и говорят, что это круто.
    они написали говно-пример, и говорят, что это круто.
    а вы что думаете по этому поводу?

    FadeToBlack, 29 Октября 2014

    Комментарии (25)
  6. C++ / Говнокод #16957

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    Connection::Connection(const Options& opts): impl_(new Impl)
    {
        impl_->isInitialized = false;
        impl_->options = std::move(*opts.impl_);
       
        if (!options().lazyInit)
            conn();
    }

    Вся соль в строке 4: из объекта opts, переданного по константной ссылке, подло выжимают содержимое. Видимо, никто не пробовал создать два коннекта из одного объекта опций.

    roman-kashitsyn, 28 Октября 2014

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

    +158

    1. 1
    2. 2
    3. 3
    $element['yandex'] = 14;
    unset($element['yandex']);
    $element['yandex'] = 60;

    Разраб упоролся в каштан :)

    sautchenkov, 28 Октября 2014

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

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    for($i = 0; $i < $db->max; $i++) {
    	if($i==1) continue;
    	.....
    }

    Почему бы и нет

    UncaughtException, 28 Октября 2014

    Комментарии (10)
  9. Python / Говнокод #16954

    −99

    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
    @login_required
    def datadelivery_stats_report(request, campaign_id):
    
        try:
            start_date = extract_date_to_default_timezone(request, 'start_date')
        except ValidationError:
            return HttpResponseServerError("The %s parameter is invalid." % 'start_date')
        except AttributeError:
            return HttpResponseServerError("The %s parameter is invalid." % 'start_date')
        except KeyError:
            return HttpResponseServerError("The %s parameter is missing." % 'start_date')
    
        try:
            end_date = extract_date_to_default_timezone(request, 'end_date')
        except ValidationError:
            return HttpResponseServerError("The %s parameter is invalid." % 'end_date')
        except AttributeError:
            return HttpResponseServerError("The %s parameter is invalid." % 'end_date')
        except KeyError:
            return HttpResponseServerError("The %s parameter is missing." % 'end_date')

    Джанга такая джанга... Почему же нельзя выбросить ошибку валидации? 404 можно...

    kyzi007, 28 Октября 2014

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

    −124

    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
    Результат = Запрос.Выполнить();
    Если Результат.Выгрузить().Количество() <> 0 Тогда
    	Выборка = Результат.Выбрать();
    	Пока Выборка.Следующий() Цикл
    		... тут некий код... и внутри контрольный в голову...
    		Если ТЗ.Количество() <> 0 Тогда
    			Для Каждого Строка Из ТЗ Цикл
    				...
    			КонецЦикла;	
    		КонецЕсли;	
    		...
    	КонецЦикла;
    КонецЕсли;

    Видимо это такая "оптимизация", другого объяснения подобным проверкам (это не единичный случай) не нашел.

    Twilight_Sun, 27 Октября 2014

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