1. PHP / Говнокод #1682

    +156

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    class DbSimple_Generic_Database extends DbSimple_Generic_LastError
    {
    ...
        /**
         * Virtual protected methods
         */
        function ____________PROTECTED() {} // for phpEclipse outline
    ...
    }

    ой какая красотень у нас будет в аутлайне теперь...

    Smoke, 25 Августа 2009

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

    +130

    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
    public static LanguageConfiguration GetLanguageByUrl()
            {
                string requestHost = HttpContext.Current.Request.Url.Host.ToLower();
    
                foreach (LanguageConfiguration language in languages.Values)
                  foreach (DomainConfiguration domain in language.Domains)
                        if (domain.Name.Equals(requestHost))
                            return language;
                
                return languages[LanguageCodes[0]];
            }
    
            public static List<string> LanguageCodes
            {
                get
                {
                    //caching languages
                    if (languages == null)
                    {
                        languages = new Dictionary<string, LanguageConfiguration>();
                        if (languagesConfiguration.Languages.Count > 0)
                            foreach (LanguageConfiguration language in languagesConfiguration.Languages)
                                languages.Add(language.Code, language);
                        else
                            languages.Add(String.Empty, new LanguageConfiguration());
                    }
                    return  new List<string>(languages.Keys);
                }
            }

    "Сначала отрежь, потом отмерь".

    Cyxapb, 25 Августа 2009

    Комментарии (0)
  3. C++ / Говнокод #1680

    +50

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    int i, j;
    for (i = j = 0; i < 4; i++)
    	if (frame & (0x8 >> i))
    	{
    		if (i < 2 && p.value < double(frames1[j]) && !(i && j) ||
    			i > 1 && p.value > double(frames1[j]))
    			p.value.attr = 1 + i;
    		j++;
    	}

    Как вам цикл до 4 с тремя проверками на значение счётчика? :)

    Dimarius, 25 Августа 2009

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

    +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
    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
    $id_country = 0;
    $id_region = 0;
    $id_city = 0;
    $zip_code = 0;
    if(isset($_REQUEST["id_country"]))
    {
        $id_country=$_REQUEST["id_country"];
    }
    if(isset($_REQUEST["id_region"]))
    {
        $id_region=$_REQUEST["id_region"];
    }
    if(isset($_REQUEST["id_city"]))
    {
        $id_city=$_REQUEST["id_city"];
    }
    if(isset($_REQUEST["zip_code"]))//проверка zip кода
    {
        $zip_code=$_REQUEST["zip_code"];
    }
    
    $id_country=strip_tags(trim(strval($_REQUEST["id_country"])));
    $id_region=strip_tags(trim(strval($_REQUEST["id_region"])));
    $id_city=strip_tags(trim(strval($_REQUEST["id_city"])));
    $zip_code=strip_tags(trim(strval($_REQUEST["zip_code"])));
    
    ..........................
    //переходим на Шаг 2 решистрации
    header("location: ./registration.php?sel=2");
    ..........................

    Индусы среди нас!

    Bartelby, 25 Августа 2009

    Комментарии (22)
  5. PHP / Говнокод #1678

    +150.9

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    //$arr - array with arbitrary keys
    
    end($arr);
    do {
           if( <some condition> ) {
                <something of no importance>
                unset($arr[key($arr)]);
            }
            else {
                <something of no importance>
            } 
    } while( prev($arr) !== false );

    Предполагалось, что на входе будет непустой массив. Потом он будет пролистан с конца (это необходимо) и из него по некоторому условию исключаются элементы. При этом после первого исключения итератор оказывается вне массива и prev() возвращает false (в самом массиве false не размещён заведомо).

    interested, 25 Августа 2009

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

    +47.9

    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
    IsSimpleAssign = ( !isIfWhileForReturn&&
                        ( _currString->ecoString )->IsAtOncePresent( equalsSign )&&
                        ( _currString->ecoString )->IsAtOncePresent( star ) &&
                        ( _currString->ecoString )->IsAtOncePresent( amper ) &&
    
                        ( ( ( _currString->ecoString )->GetCharPos( amper ) <
                        ( _currString->ecoString )->GetCharPos( star ) ) ||
                        ( ( _currString->ecoString )->GetCharPos( amper ) >
                        ( _currString->ecoString )->GetCharPos( star ) ) ) &&
    
                        ( ( ( _currString->ecoString )->GetCharPos( equalsSign ) <
                        ( _currString->ecoString )->GetCharPos( star ) ) &&
                        ( ( _currString->ecoString )->GetCharPos( amper ) <
                        ( _currString->ecoString )->GetCharPos( equalsSign ) )
    
                        ||
                        ( ( _currString->ecoString )->GetCharPos( equalsSign ) >
                        ( _currString->ecoString )->GetCharPos( star ) ) &&
                        ( ( _currString->ecoString )->GetCharPos( amper ) >
                        ( _currString->ecoString )->GetCharPos( equalsSign ) ) )
    
                        );

    где-то в недрах рукописного парсера

    gilya, 25 Августа 2009

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

    +132.8

    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
    //------------------------------------------------------------
    // Copyright (c) Microsoft Corporation.  All rights reserved.
    //------------------------------------------------------------
    
       private void AddDesigner()
            {
                Lazy<HostSurfaceFactory, IDesignerMetadataView> exportSurfaceFactory = fileNewDialog.GetHostFactory();
                HostControl hc = new HostControl();
                if (designerCounts.ContainsKey(exportSurfaceFactory.Metadata.ItemType))
                    designerCounts[exportSurfaceFactory.Metadata.ItemType]++;
                else
                    designerCounts.Add(exportSurfaceFactory.Metadata.ItemType, 1);
                string siteName = exportSurfaceFactory.Metadata.ItemType + designerCounts[exportSurfaceFactory.Metadata.ItemType].ToString();
                HostSurface hostSurface = exportSurfaceFactory.Value.CreateNew(siteName);
                hc.InitializeHost(hostSurface);
                string fileName = siteName + "." + exportSurfaceFactory.Metadata.FileExtension;
                TabPage tabpage = new TabPage(fileName + " - Design");
                tabpage.Tag = exportSurfaceFactory.Metadata.Language;
                hc.Parent = tabpage;
                hc.Dock = DockStyle.Fill;
                this.tabControl1.TabPages.Add(tabpage);
                this.tabControl1.SelectedIndex = this.tabControl1.TabPages.Count - 1;
                this.outputWindow.Writeline("Opened new host.");
                this.toolbox.DesignerHost = hostSurface.DesignerHost;
                this.solutionExplorer.AddFileNode(fileName);
                SetupMenus(hostSurface);
            }

    Пример из MEF. Написан неким Dinesh Chandnani.

    Gru, 25 Августа 2009

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

    −118.3

    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
    if ( $in{s} )
    {
    
    #	максимальная вложенность =3 - сформируем строку для чекбокса по-простому 
    	my %ha = db_select_row [ 'id', 'title', 'parent_id' ], "catalog_section", "id=$in{s}			AND `object_id`=1";
    	if (%ha)    																				          		    ¦
    	{           																				          			¦
    		$selected_only[ $ha{parent_id} ] = 'selected';    										          			
    	}    																						              		¦
    	     																						          			¦
    	my %parent = db_select_row [ 'title', 'parent_id' ], "catalog_section",  "id=$ha{parent_id}		AND `object_id`=1";
    	my %parent2 = db_select_row [ 'title', 'parent_id' ], "catalog_section", "id=$parent{parent_id}	AND `object_id`=1";
    	my $only_title = $ha{title};
    
    	$only_title = "$parent{title} &mdash; $only_title"  if %parent;
    	$only_title = "$parent2{title} &mdash; $only_title" if %parent2;
    	$only_this_cat_string = "";
    
    	if ( %parent || %parent2 )
    	{
    
    		#%ha
    		$only_this_category_text = qq~
    			<span>
    				<input type="checkbox" name="only_this_cat" id="only_this_cat" $checked_only onchange="checkSelect();">
    				<label for="only_this_cat">Искать только в разделе &laquo;$only_title&raquo;</label>
    			</span>~;
    
    	}
    }

    по-простому

    nolka4, 25 Августа 2009

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

    +155.8

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function ValidatorEnable(val, enable) 
    {
        val.enabled = (enable != false);
        ValidatorValidate(val);
        ValidatorUpdateIsValid();
    }

    Обратите внимание на третью строку!
    (Сначала кажется, что она ничего не делает, но на самом деле она переводит тип в boolean), но обычно пишут все-таки
    val.enabled = !!enable

    Trams, 25 Августа 2009

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

    +160

    1. 1
    foreach($query->result_array() as $row) $res[] = $row;

    P.s на сайте не работает галочка "принять рецензию" в 4 хроме, а в 6 ие(который я включил, чтобы здесь накласть) не видно текстареи, но вроде работает :)

    xscript, 24 Августа 2009

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