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

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

    −129

    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
    #!/bin/bash
    EMAIL="Your email"
    PASSWORD="your password"
    USERAGENT="Mozilla/5.0 (X11; Linux i686; rv:2.0.1) Gecko/20110529 Firefox/4.0"
    
    curl -A "$USERAGENT" -c /tmp/vklogin.cookie -d "pass=$PASSWORD&email=$EMAIL" http://login.vk.com/?act=login -L | iconv -f cp1251 > /tmp/vklogin
    
    perl -e  "while(<STDIN>) {\$a=\$_; if(\$a =~ /^\s*<input[^>]*?name='([^']*)'[^>]*?value='([^']*)'\s*\/>/i) {print \"\$1=\$2&\";}}" < /tmp/vklogin > /tmp/vklogin.postdata
    POSTDATA="$(cat /tmp/vklogin.postdata)"
    
    curl -A "$USERAGENT" -d "$POSTDATA" -b /tmp/vklogin.cookie -c /tmp/vklogin.cookie http://vkontakte.ru/login.php -L -v 2>&1 | iconv -f cp1251 &> /dev/null
    
    echo 1 > /tmp/vklogin.mailid
    echo 1 > /tmp/vklogin.mailoutid
    
    while [ `cat /tmp/vklogin.mailid | wc -l` -gt 0 ]; do
        curl -A "$USERAGENT" -d "$POSTDATA" -b /tmp/vklogin.cookie -c /tmp/vklogin.cookie http://vk.com/mail -L | iconv -f cp1251 > /tmp/vklogin.mail
        cat /tmp/vklogin.mail |  perl -e "while(<STDIN>) {if (\$_ =~ /.*mail.deleteMsg\((\d*)/) {print \"\$1\n\";} }" > /tmp/vklogin.mailid
        for i in $(cat /tmp/vklogin.mailid); do
            curl -A "$USERAGENT" -d "act=a_delete&al=1&from=inbox&hash=1309098903_0eefa6ea250675f38e&id=$i"  -b /tmp/vklogin.cookie -c /tmp/vklogin.cookie http://vk.com/al_mail.php -L | iconv -f cp1251 
        done
    done
    
    while [ `cat /tmp/vklogin.mailoutid | wc -l` -gt 0 ]; do
        curl -A "$USERAGENT" -d "$POSTDATA" -b /tmp/vklogin.cookie -c /tmp/vklogin.cookie http://vk.com/mail?section=outbox -L | iconv -f cp1251 > /tmp/vklogin.mailout
        cat /tmp/vklogin.mailout |  perl -e "while(<STDIN>) {if (\$_ =~ /.*mail.deleteMsg\((\d*)/) {print \"\$1\n\";} }" > /tmp/vklogin.mailoutid
        for i in $(cat /tmp/vklogin.mailoutid); do
            curl -A "$USERAGENT" -d "act=a_delete&al=1&from=outbox&hash=1309103621_59302e5e1b1a924a70&id=$i"  -b /tmp/vklogin.cookie -c /tmp/vklogin.cookie http://vk.com/al_mail.php -L | iconv -f cp1251 
        done
    done
    rm /tmp/vklogin*

    Удаляет все сообщения на vk.com

    Наверное hash надо будет заменить.

    Tanger, 26 Июня 2011

    Комментарии (6)
  3. Pascal / Говнокод #7033

    +115

    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
    procedure info_();
      var
       i:integer;
       ActivityCategory,stroka,strok,stroka_sopr,http1100,http_sopr,tag,tag_sopr,until_date,date_:string;
       f1100,f_sopr,inf:textfile;
    begin  //главный
    clear();
    if form1.radioGroup1.ItemIndex=0 then begin
                                          http1100:='\\server1\Отдел 1\Program Files\Prof\profiki\1100\'+m+'.smc';
                                          http_sopr:='\\server1\Отдел 1\Program Files\prof\profiki\сопроводительное\'+m+'.smc';
                                          end;
    if form1.radioGroup1.ItemIndex=1 then begin
                                          http1100:='\\server1\Отдел 1\Program Files\Prof\banki\1100\'+m+'.smc';
                                          http_sopr:='\\server1\Отдел 1\Program Files\prof\banki\сопроводительное\'+m+'.smc';
                                          end;
    if form1.radioGroup1.ItemIndex=2 then begin
                                          http1100:='\\server1\Отдел 1\Program Files\Prof\YK\1100\'+m+'.smc';
                                          http_sopr:='\\server1\Отдел 1\Program Files\prof\YK\сопроводительное\'+m+'.smc';
                                          end;
    if form1.radioGroup1.ItemIndex=3 then begin
                                          http1100:='\\server1\Отдел 1\Program Files\Prof\NPF\1100\'+m+'.smc';
                                          http_sopr:='\\server1\Отдел 1\Program Files\prof\NPF\сопроводительное\'+m+'.smc';
                                          end;
    if form1.radioGroup1.ItemIndex=4 then begin
                                          http1100:='\\server1\Отдел 1\Program Files\Prof\REGISTRATOR\1100\'+m+'.smc';
                                          http_sopr:='\\server1\Отдел 1\Program Files\prof\REGISTRATOR\сопроводительное\'+m+'.smc';
                                          end;

    Пытался перенести в другую папку программу, после чего она по сути перестала работать, ругаясь ошибкой 63. Нашел ее исходники и увидел ЭТО... это лишь 5-10% всей процедуры, которая мало того, что ищет XML-файлы по определенному пути, так еще и парсит их...

    GhOsTMZ, 23 Июня 2011

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

    +147

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    char c;
    cin>>c;
    if (c == 'a') cout<<'a';
    if (c == 'b') cout<<'b';
    if (c == 'c') cout<<'c';
    //....
    if (c == 'z') cout<<'z';

    классика

    skim1776, 19 Июня 2011

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

    +128

    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
    public string GetUserCurrentStage(int stage)
     {
                string stageName = "";
                if (stage == 1)
                    stageName += "Initial Certification";
                else if (stage == 2)
                {
                    stageName += "Maintenance *";
                }
                else if (stage == 3)
                    stageName += "Recertification";
                else
                    return string.Empty;
                return stageName;
     }

    Когда платят за строчки кода...

    musuk, 17 Июня 2011

    Комментарии (6)
  6. PHP / Говнокод #6985

    +158

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    private function exportPTCsvFile(array $transactions, array $refunds, $fileName)
    	{
    		$csv[] = array('Date', 'Time Zone', 'Name',  'Type',  ' Status',  'Currency',  'Gross', 'Fee', 'Net', 'From Email Address', 'Transaction ID', ' Item Title', 'Deal ID', 'Deal City', 'Merchant ID', 'User ID', 'Purchase Date', 'CMS Transaction ID', 'CMS Quantity', 'CMS Amount', 'Kash Used', 'CC Digits', 'Coupon Link', 'Paymentech Response');
    
    		// headers...
    		
    		foreach ($csv as $titles) {
    		    print utf8_encode(implode(',', $titles))."\n";
    		}
                   // Rest of code...
    }

    kovel, 17 Июня 2011

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

    +125

    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
    protected string getUpdateNotesDE(string fieldNameAlias, string fieldName, string fieldValue, ASPxDateEdit newValue)
            {
                if (isSaveField("fieldName"))
                {
                    if (fieldValue != "")
                        return "Field " + locCom.getFieldAlias("payTFNDeclaredOn") + ", Old Value = " + Convert.ToDateTime(fieldValue).ToString("dd/MM/yyyy") + ", New Value = " + Convert.ToDateTime(newValue.Text).ToString("dd/MM/yyyy") + " ; ";
                    else
                        if (newValue.Text != "")
                            return "Field " + locCom.getFieldAlias("payTFNDeclaredOn") + ", Old Value = , New Value = " + Convert.ToDateTime(newValue.Text).ToString("dd/MM/yyyy") + " ; ";
                }
                return "";
    
            }
    
     protected Boolean isSaveField(string fieldName)
            {
                if (locCom.getVisible(fieldName))
                    return true;
                return false;
            }
    
     public bool getVisible(string fldName)
                {
                    Boolean showall = Convert.ToBoolean(System.Web.Configuration.WebConfigurationManager.AppSettings.Get("Show-all-fields"));
                    if (showall) return true;
    
                    if (fldAccess.Tables.Count == 0) return false;
    
                    foreach (System.Data.DataRow item in fldAccess.Tables[0].Rows)
                    {
                        if (item["fieldname"].ToString().Replace('@', 'a').Replace("%", "percent").Replace("$", "dollar").ToLower() == fldName.ToLower())
                            return Convert.ToBoolean(item["visible"]);
                    }
                    return false;
                }

    особенно доставляет
    protected string getUpdateNotesDE(string fieldName){
    if (isSaveField( !!! "fieldName" !!!)){}
    }

    valorkin, 15 Июня 2011

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

    −127

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    am=`cat $file | wc -l`
    for ((i=1;i<=$am;i++))
    do
        read z
        imsi=`echo $z | sed -e "s/^[0-9]*[ ]*//" `
    done < $file

    berezhinskiy, 14 Июня 2011

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

    +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
    <script type="text/php">
    
    $color_op = Style::munge_colour( "#565656" );
    
    $font_op = Font_Metrics::get_font("arial", "normal");
    $font_op2 = Font_Metrics::get_font("arial", "bold");
    
    {literal}
    #	$pdf->text($left_op, $top_op, $text00, $font_op, 16, $color_op);
    #	$pdf->text($left_op, $top_op + 20, $text22, $font_op, 16, $color_op);
    #	$pdf->text($left_op, $top_op + 40, $text33, $font_op, 16, $color_op);	
    
    	$pdf->text($left_op, $top_op, $text00, $font_op2, 16, $color_op);
    	$pdf->text($left_op+87, $top_op, $text01, $font_op2, 16, $color_op2);
    	$pdf->text($left_op+87+15, $top_op, $text02, font_op, 16, $color_op);
    	
    {/literal}
    </script>

    Кусок из шаблона Smarty.

    _tL, 09 Июня 2011

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

    +128

    1. 1
    return Mouse.GetState().LeftButton == ButtonState.Pressed ? _manager.Creatures.Where(el => el.Rectangle.Intersects(new Rectangle(Mouse.GetState().X, Mouse.GetState().Y, 2, 2))).FirstOrDefault() : null;

    dotnetdeveloper, 08 Июня 2011

    Комментарии (6)
  11. Python / Говнокод #6899

    −83

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    # In Django model
    def processed_description(self):
        text = self.description. \
               replace('<table', '<div class="table">'
                                 '<div class="bgtop"></div>'
                                 '<div class="overflow"><table'). \
               replace('</table>', '</table></div>'
                                   '<div class="bgbottom"></div>'
                                   '</div>'). \
               replace('<th', '<th width="50%" align="left"')
        return text

    Пользователь хочет редактировать контент в WYSIWYG-редакторе. Дизайнер хочет, чтобы таблицы выглядели красиво. Верстальщику для красоты нужны дополнительные div-ы. Что делает программист? Говнокодит!

    zag, 08 Июня 2011

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