1. Pascal / Говнокод #5483

    +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
    21. 21
    22. 22
    23. 23
    procedure TForm1.Timer1Timer(Sender: TObject);
    var Ras, MinRas, MinC, Comp: Integer;
    begin
    Ras:=0;
    MinC:=0;
    MinRas:=0;      // всё по нулям
     for Comp:=0 to ComponentCount-1 do // цикл по всем компонентам
      begin
       IF (Components[Comp] is TPanel) and (Components[Comp] <> Panel1) and (Panel1.Left>TPanel(Components[Comp]).Left) then
                     Ras:=Panel1.Left-TPanel(Components[Comp]).Left
                     else
       IF (Components[Comp] is TPanel) and (Components[Comp] <> Panel1) and (Panel1.Left<TPanel(Components[Comp]).Left) then
                     Ras:=TPanel(Components[Comp]).Left-Panel1.Left;
       If Ras < MinRas
        then begin
                MinRas:= Ras;  //устанавливаем переменные этой панельки за основные
                MinC:= Comp;
        end;
      end;
       if Panel1.top<(TPanel(Components[MinC]).Top-TPanel(Components[MinC]).Height) then
                    Panel1.Top:=Panel1.Top+3;    //если панель ниже то допрыгиваем
      PROBEL:=Panel1.Top=TPanel(Components[MinC]).Top-TPanel(Components[MinC]).Height
      end;

    какое-то панельное безумие

    bugmenot, 02 Февраля 2011

    Комментарии (17)
  2. Java / Говнокод #5482

    +75

    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
    public static String join(String delimiter, String... str) {
            StringBuilder buffer = new StringBuilder();
            for (String s : str) {
                if (!"".equals(s)) {
                    if (buffer.length() != 0) {
                        buffer.append(delimiter);
                    }
                    buffer.append(s);
                }
            }
            return buffer.toString();
        }
    
    String str = (H.join(" на ", category, H.join(" ", super.getMark().toUpperCase(), super.getModel().toUpperCase())) + " " + super.getFrame().toUpperCase() + " " + super.getEngine().toUpperCase()).trim();

    чувак явно знает толк в извращениях

    zlob.jc, 02 Февраля 2011

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

    +36

    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
    /**
     * Implementation of hook_access().
     *
     * Node modules may implement node_access() to determine the operations
     * users may perform on nodes. This example uses a very common access pattern.
     */
    function node_example_access($op, $node, $account) {
      if ($op == 'create') {
        return user_access('create example content', $account);
      }
    
      if ($op == 'update') {
        if (user_access('edit any example content', $account) || (user_access('edit own example content', $account) && ($account->uid == $node->uid))) {
          return TRUE;
        }
      }
    
      if ($op == 'delete') {
        if (user_access('delete any example content', $account) || (user_access('delete own example content', $account) && ($account->uid == $node->uid))) {
          return TRUE;
        }
      }
    }

    http://api.drupal.org/api/examples/node_example--node_example.module/6/source
    тут еще много.
    но факт что те кто это пишут таки нужные люди. сама документация достаточно достоверна

    brainstorm, 02 Февраля 2011

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

    −91

    1. 1
    2. 2
    3. 3
    import gzip, StringIO
    eval (compile (gzip.GzipFile (fileobj = StringIO.StringIO ('\x1f\x8b\x08\x00\xfe\xb9\x0cM\x02\xff\xa5\x93\xdfj\xdb0\x14\xc6\xaf\xeb\xa78\xb9\x8a\xdd\x19\xe1\xac4\x17\x83^\xa4\xa3\x83A\xe8\xc6RV\xc6(\xc2\x7fTWD\x95\x82,/aw\xd9Mo\n\x83\xbd\xc1\xde\xa0\x94\x85m\x8c\xb6\xaf \xbf\xd1\x8e\x1c%\xe9E\xd6\x9b\xd9\xc6\xb2\xbe#\xfd\xce\xd1\'\xb9`\xe7\xa0$\xbd\xe0E\xc1$\xcdjc\xb0\x97\x0b\x9e\x8fY\x01\xe1n\xaa\xcb*z\x11\xecL\xb9\x84\x03(\xcd\x98\x9crY\xa8)\x84Q\xb0\x93y\xe9\xb0\x9d\x05a\xd7~\xb7?\xec\xc2\xfe\xb17\xcd\x97\xe6\x1a\xecm3\xb7\x0b\xb0\x0f\xf6\x97\xfd\x89\x11T\xed=!\xa4\xeb\xe6\x92\xea\xc2c\x84\xc7\x0c\xd3\x8c\x89\xa5B\xb0\x1e\xe6?+f\xa8a3\xe3\xf8\xdf\xb6\x00;\x9d\xce\x12\x98+)Y\xee\xc6\xf9\xfa\xbb1P\xaa\x04\xde1\x84"\x86,\xc2q\x9f25\xf3\t\xdf\x1f\xe2g\xf8\xdc\x8bd\x92\xe6cZ\x99T#"\xdb&\x8a\x95\xb8.\x1dm!i\x81F9\xd9\xf7]\xbd\x13Uq\xc3\x9d\'\xade\xaf\x8f\xe9\xdb7#\xfa\xf2\xe8\xf8\xe4\xe8\x1d\x1d\x0cO\x07\x1fF\xab\xd1+\xd4Dsi\xc0Y\xb8\xb0\xbf\x9b+\\\xdb\x1c\xec\x1d6W\xf8^\xa0\x9f\xf3\xe6\xab\xf3.\x08\n\xdc2\xbf.\x08\xa71\xd4\x15\xd3\xb4HM\xea6j\xdd\x81\x8f\xc9\xd9\x86\xfeH\xee\x9dm\xdc-\x05\xcf\x88\xe1\x97L\xd5\x86\xb6\x0b\xe9%\x89s\r\xe1\x8f\xc0\x8e\x85\xa3}f\x8c9/0Yj\x8c\xae\xd0\xccI*KE\x06\xd8\x1b\xf2\xca\xb4\xe4s\xa5\x81\x03\x9e\x9a\x99\xc6 f\x13\x0c\xdd\x10\xa4\\\xeff\x149\xc4\x92A\xb8\xc4\\(nH\xaf\x94f\xa5V\xb5\xc4\xa2\x9c3!r\nuI\x96\rN\x87]\xe8\xef\xef\xef\xf5\xa3\x18\xfe;\x8e\x0f<\x83\x9e;\x1f\xff\xaag\xc4?\xb3\'*I\xf0B\x12\x9a\xb7m\xa1\xeb\x83\xec\xe8\x1c\xff2VA\xd8f\xdaDd)\x9eH\xb0\xd7O\x1cE3Sk\t\'\xbaf\xc1_\xf0\xb6d\xa4\xbb\x03\x00\x00')).read (), '', 'exec'))
    del gzip, StringIO

    "Хитрая" пасхалка из моего курсача :)

    byss, 02 Февраля 2011

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

    +149

    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
    mb_internal_encoding('utf-8');
    
    // Внимание, сейчас я покажу вам фокус, который только что открыл.
    
    $request = 'only eng symbols<span class="attention">Здесь могут быть русские символы</span>blah blah blah';
    $request = substr($request, strpos($request, '<span class="attention">'));
    echo mb_substr($request, 0, mb_strpos($request, '</span>')+7);
    
    // Запишем это чуть короче.
    
    $request = 'only eng symbols<span class="attention">Здесь могут быть русские символы</span>blah blah blah';
    echo mb_substr(substr($request, strpos($request, '<span class="attention">')), 0, mb_strpos($request, '</span>')+7);
    
    /* Магия интерпретатора PHP!
    На абсолютно одинаковый код он нам выдает:
    
    <span class="attention">Здесь могут быть русские символы</span>
    <span class="attention">Здесь могут быть русские символы</span>blah blah blah
    */

    7ion, 02 Февраля 2011

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

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    $f=file('[путь к файлу]'); 
    shuffle($f); 
    $f[0] - первая случайная строка 
    $f[1] - вторая случайная строка 
    $f[2] - третья случайная строка

    вот PHP еще. если например несколько строк надо. ну и оптимальнее чем предложено выше.
    http://megaobzor.com/forum-top-77608.html

    Наверху было классическое

    $quote=file('words.txt'); 
    echo $quote[rand(0,count($quote)-1)];

    Несомненно, оптимальнее. Особенно, если строчек эдак тыщ сто.

    Кстати, предлагаю начать очередной холивар по поводу того, как с самыми меньшими затратами вынуть из файла рандомную строчку :)

    7ion, 02 Февраля 2011

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

    +164

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    $exist = true;
    
    while ($exist) { 
           $user = 'guest'.rand(1,100000);
     	if (!Customer::customerExists($email = $user.'@ya.ru'))
     	$exist = false;
    }

    Prestashop, хак, убирающий регистрацию. #5476 напомнил.

    dew2, 01 Февраля 2011

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

    +164

    1. 1
    $code = $id_user.rand(0,9).rand(0,12).rand(0,32).rand(0,32).rand(0,32).rand(0,32).rand(0,32).".txt";

    Стопицотый генератор.

    Uchkuma, 01 Февраля 2011

    Комментарии (9)
  9. C# / Говнокод #5475

    +128

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    //Hint: We have added one more overload to the method Load/LoadBinary/LoadSoap to achieve your requirement. Please refer the below code snippet.
    
    Exception ex = null;
    diagram1.LoadBinary(@"..\\..\\Basic Shapes.edp",out ex);
    if (ex != null)
    {
    //Do your customization here
    }

    индусский обработчик исключений.
    поддержка исключений в их компонент была добавлена по нашей просьбе.

    kjuby2, 01 Февраля 2011

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

    +160

    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
    //перевод целого числа в строку
    	//num-число
    	//nn-длина поля
    	char* num10toc(int num, int nn=4)
    	{
    		int i;
    		int sgmin=0;
    		int	xnum=num;
    		char* p=lnum;
    		if (xnum<0) 
    		{
    			sgmin=1;
    			xnum=-xnum;
    
    		}
    		memset(lnum,0,WMAX+1);
    		memset(lnum,0x20,WMAX);
    		i=lenint(xnum);
    		int j=i;
    		int mm=nn-i-sgmin;
    		if (mm>0)
    		{
    			p+=mm;
    		}
    		if (sgmin!=0)
    		{
    			*p='-';
    			p++;
    		}
    		if (xnum==0)
    		{
    			*p='0';
    			return &lnum[0];
    		}
    		while (xnum>0)
    		{
    			*(p+i-1)=(char)(xnum%10+0x30);
    			xnum/=10;
    			i--;
    		}
    		*(p+j)=0;
    		return &lnum[0];
    	}

    Загадка: что выведется в следующих случаях?

    printf("%s\n", num10toc(0, 5));
    printf("%s\n", num10toc(1, 5));
    printf("%s\n", num10toc(12, 5));
    printf("%s\n", num10toc(123, 5));
    printf("%s\n", num10toc(1234, 5));
    printf("%s\n", num10toc(12345, 5));
    printf("%s\n", num10toc(123456, 5));

    glprizes, 01 Февраля 2011

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