1. C# / Говнокод #5697

    +109

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    try
                {
                    splash.Close(new TimeSpan(0, 0, 0, 3, 0));
                }
                catch (Exception ex) { System.Diagnostics.Debug.WriteIf(false, ex.ToString()); }

    Вот так вот эксепшн обработал. Помню, недавно сказал такую вещь "В нашем игровом движке содержится лучший код, который я когда-либо писал" про свой игровой движок. Казалось бы, удобная имплементация, структура и принципы ООП правильно используются. Но потом я увидел ЭТО (см. выше). Надо больше спать, видимо... %)

    RaZeR, 16 Февраля 2011

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

    +115

    1. 1
    2. 2
    3. 3
    4. 4
    public bool SameTerritoryAsEditor(string terrName)
    {
       return _personService.GetTerritoryByUserIdentity(Thread.CurrentPrincipal.Identity.Name).Name.Equals(terrName);
    }

    Определяем принадлежность пользователя к определенной территории по её названию.

    St0rm, 16 Февраля 2011

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

    +128

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    public static Boolean GetAttBool(XmlNode node, string attName)
     {
         long value = GetAttLong(node, attName);
          return value == 1 ? true: false;
     }

    uaavg, 16 Февраля 2011

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

    +144

    1. 1
    Вопрос...

    Ребят, у меня такой вопрос, тут или посмейтесь, или скажите как правельней, сайт не для вопросов согласен, но помогите не говнакодить)))
    Ядро системы у меня, сканирует директории модулей и плагинов таким образом что у имени деректории есть префикс mod and plg где если это модуль то вот имя директории mod[news], нет оно всё не в куче разумеется, порядок соблюдаю разумеется, но и исправить метод можно не проблема, но я пишу это к чему, недавно готовый сайт выложил на хостинг на котором ранее небыл, и всё конечно идеально, за исключением одного нюанса, FTP менеджеры не могут сканировать директории в имене которых находятся знаки [ ] и только единственный менеджер может сканировать отлично это FAR... И у меня просьба, посмеятся какой я дурак если это реально проблема, или это плюсом, что важные директории проблемно прочитать? Работа системы проходит на ура хоть где не в этом вопрос, а именно имена директорий с знакоми [ ], и проблема их сканировать из "ВНЕ"... Стоит ли их переименовывать?

    nethak, 16 Февраля 2011

    Комментарии (31)
  5. ActionScript / Говнокод #5693

    −241

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    private function fürDieLuLz(event:String, params:StringHash):void
    {
    	if (ExternalInterface.available)
    		ExternalInterface.call(
    			"function(){window.fireEvent('" + event + 
    			"',JSON.stringify(" + params + "));}");
    }

    Я долго пытался объяснить человеку пишущему JS часть проекта, что не нужно перекодировать объекты каждый раз из JSON и обратно при общении с Флешем, если они все равно проходят через eval(). Но у человека ЧСВ победил все. В итоге пришел "главный инженер" и "решил", что "если мы раньше так делали, то мы будем так делать и дальше, и не волнует". В итоге родился этот шедевр. Я сегодня с утра для поднятия настроения показал этот код JS кодеру. Долго объяснял, что он делает. После чего он сказал, что больше не будет со мной разговаривать :)
    Я счастлив

    wvxvw, 16 Февраля 2011

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

    +122

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    catch (TargetInvocationException ex) {
         try {
              throw ex.InnerException;
         }
         catch (EndpointNotFoundException innerEx) {
              factory.Abort();
              throw new InvalidOperationException("Service unreachable", innerEx);
         }
    }

    Обработчик исключений %)

    Guid, 16 Февраля 2011

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

    +163

    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
    <?php
    
    if($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') {
    
    sleep(3);
    
    if($_POST[parent_id]) $parent_id = preg_replace('/\D+/i','', $_POST[parent_id]);
    else $parent_id = 0;
    
    $author = trim($_POST[author]);
    $comment = trim($_POST[comment]);
    
    
    
    if(!$author) $error[author] = 'Введите имя!';
    if(!$comment) $error[comment] = 'Напишите комментарий!';
    
    if($error)
    exit(json_encode($error));
    
    
    require_once 'blocks/bd.php';
    
    
    $sql = "INSERT INTO comments (parent_id, name, comment, date_add) VALUES ($parent_id, '$author', '$comment', NOW())";
    $result = mysql_query($sql);
    if(!$result)
    {
    $error[] = 'Произошла ошибка, комментарий не сохранен';
    exit(json_encode($error));
    }
    exit();
    }
    
    ?>

    qbasic, 16 Февраля 2011

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

    +175

    1. 1
    $("input[id='yearB']")

    striker, 16 Февраля 2011

    Комментарии (14)
  9. PHP / Говнокод #5689

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    public function search() {
        $ret = array();
        foreach($this->dir() as $file)
            if($file->folder())
                $ret = array_merge($ret,$file->search()->asArray());
            else
                $ret[] = $file;
        return new mod_file_list($ret);
    }

    Красота, в результате работы функции мы получаем объект, состоящий из массива объектов класса file (этот метод в этом классе)... "чудо-поиска" (хотя это вовсе и не поиск, а банальный список файлов всех дочерних папок), особенно будет забавно, если в списке будет несколько тысяч файлов...
    В этом классе в принципе много мест, которые наровят насоздавать кучу экземпляров этого же класса, вместо замены одной приватной переменной...

    GhOsTMZ, 15 Февраля 2011

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

    +162

    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
    public static function perform($table, $data, $action = 'insert', $parameters = '') {
    		reset($data);
    		if ($action == 'insert') {
    			$query = 'INSERT INTO ' . $table . ' (';
    			while (list($columns, ) = each($data)) {
    				$query .= $columns . ', ';
    			}
    			$query = substr($query, 0, -2) . ') values (';
    			reset($data);
    			while (list(, $value) = each($data)) {
    				switch ((string)$value) {
    					case 'now()':
    						$query .= 'NOW(), ';
    						break;
    					case 'null':
    						$query .= 'NULL, ';
    						break;
    					default:
    						$query .= '\'' . mysql_escape_string($value) . '\', ';
    						break;
    				}
    			}
    			$query = substr($query, 0, -2) . ')';
    		} elseif ($action == 'update') {
    			$query = 'UPDATE ' . $table . ' SET ';
    			while (list($columns, $value) = each($data)) {
    				switch ((string)$value) {
    					case 'now()':
    						$query .= $columns . ' = NOW(), ';
    						break;
    					case 'null':
    						$query .= $columns .= ' = NULL, ';
    						break;
    					default:
    						$query .= $columns . ' = \'' . mysql_escape_string($value) . '\', ';
    						break;
    				}
    			}
    			$query = substr($query, 0, -2) . ' WHERE ' . $parameters;
    		}
    
    		self::request($query);
    	}

    Вот так у нас вставляют в базу :)

    wmmorgun, 15 Февраля 2011

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