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

    +161

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    function tuc($mensaje)
    {
    	if (ereg("^[a-zA-Z0-9\-_]{1,255}$", $mensaje))
    	{
    		return $mensaje;
    	}else{
    		$mensaje='';
    		return $mensaje;
    	}
    }

    Evil_Wolf, 03 Июля 2010

    Комментарии (25)
  2. Куча / Говнокод #3636

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    Сделайте пожалуйста рейтинг для каждого участника, как на StackOverflow. 
    Рейтинг может быть основан на данных о кол-ве заплюсованных/заминусованных сообщений.
    Интересно -- у кого самый длинный и толстый рейтинг:) 
    Мне кажется -- будет весело.

    Анонимус, 03 Июля 2010

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

    +157

    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
    <?php foreach ($this->adverts as $advert): ?>
    <div class="advert_cover">
        <h3 class="advert_header">
            <div class="advert_date">Дата размещения: <?=$advert->getCreateDate()->format('d.m.Y H:i:s')?></div>
            <?=$advert->getHeader()?>
        </h3>
        <div class="advert_content">
            <div class="advert_text">
            <?php
            $advert_text = Helper_Format::getPreviewStr($advert->getText(), 300, '...');
            echo $this->getHelper('Helper_Format')->run(strip_tags($advert_text), 'nl2br', 'bb2html');
            ?>
            </div>
    
            <ul class="my-adverts--ul-advert-manager">
                <li class="edit_link"><a class="space_nowrap" title="Редактировать объявление" href="/my/adverts/edit/<?=$advert->getId()?>.xhtml">Редактировать</a></li>
                <li class="zoom_link"><a class="space_nowrap" title="Посмотреть, как объявление выглядит на сайте" href="/advert/<?=$advert->getId()?>.xhtml">Посмотреть</a></li>
                <?php if ($advert->getExpireRestrictionUpdateCreateDate()->invert): ?>
                <li class="up_link"><a title="Поднять объявление в результатах поиска. Данная функция гарантирует, что Ваше объявление увидят больше посетителей сайта <?=$_SERVER['HTTP_HOST']?>. Применять данную опцию можно не чаще чем через один час." href="/my/adverts/up/<?=$advert->getId()?>.xhtml">Поднять в результатах поиска</a>
                <?php else: ?>
                <li class="up_link"><span class="cursor_help space_nowrap" title="Для этого объявления данная функция будет доступна через <?=$advert->getExpireRestrictionUpdateCreateDate()->i?> мин.">Поднять в результатах поиска</span>
                <?php endif;?>
                </li>
                <?php if ($advert->getActive()): ?>
                <li class="lock_link"><a class="space_nowrap" title="Приостановить показ объявления на сайте (закрыть доступ для всех)" href="/my/adverts/active/<?=$advert->getId()?>.xhtml">Приостановить показ
                <?php else: ?>
                <li class="lock-open_link"><a class="space_nowrap" title="Возобновить показ объявления на сайте (открыть доступ для всех)" href="/my/adverts/active/<?=$advert->getId()?>.xhtml">Возобновить показ
                <?php endif;?>
                </a></li>
                <li class="delete_link"><a class="space_nowrap" title="Безвозвратно удалить объявление" onclick="return confirm('Вы действительно хотите удалить объявление &laquo;<?=$this->getHelper('Helper_Format')->run($advert->getHeader(), 'entDec', 'confirm')?>&raquo;?')" href="/my/adverts/delete/<?=$advert->getId()?>.xhtml">Удалить объявление</a></li>
            </ul>
    
            <div class="div-clear"></div>
        </div>
    </div>
    <?php endforeach; ?>

    шаблоны на PHP :)

    1234, 03 Июля 2010

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

    +167

    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
    //IF THE IMAGE TYPE IS MEMBER PUBLIC THEN SHOW IT!
    if ($type == "member-public") {
      show();
    }
    
    
    //IF THE IMAGE TYPE IS ANONYMOUS PUBLIC THEN SHOW IT!
    if ($type == "public") {
      show();
    }
    
    
    //IF THE IMAGE IS OF A GALLERY THEN:
    if ($type == "gallery") {

    Из имиджхостинг-движка Wussa. Не то чтобы очень яркий ГК, но сколько пафоса, сколько энергии!

    telnet, 03 Июля 2010

    Комментарии (11)
  5. JavaScript / Говнокод #3633

    +165

    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
    $(document).ready(function()
    	{
    	var flag=true;
    	$("#reg").click(function()
    		{
    			if(flag==true)
    			{
    				$("#reg2").slideUp();
    				flag=!flag;
    			}
    			else
    			{
    				$("#reg2").slideDown();
    				flag=!flag;
    			}
    	});
    });

    Новейшие технологии позволяют показывать элемент, если он скрыть и скрывать, если показан. Найдено здесь http://javascript.ru/forum/62011-post4.html

    eval, 03 Июля 2010

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

    +171

    1. 1
    2. 2
    3. 3
    4. 4
    // Remove empty tags (three times, just to be sure).
    html = html.replace( /<([^\s>]+)(\s[^>]*)?>\s*<\/\1>/g, '' ) ;
    html = html.replace( /<([^\s>]+)(\s[^>]*)?>\s*<\/\1>/g, '' ) ;
    html = html.replace( /<([^\s>]+)(\s[^>]*)?>\s*<\/\1>/g, '' ) ;

    найдено в коде FCKEditor - редактора для веб-интерфейса

    mozg_raka, 02 Июля 2010

    Комментарии (60)
  7. Java / Говнокод #3631

    +83

    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
    String error= "TYPE {" + ex.getType() + "} TEXT {" + ex.getText() + "} STACK {" + stringWriter.toString() + "} LOG {" + _localLog + "}";
    if(error.length()>3000)
    {
         error= "TYPE {" + ex.getType() + "} TEXT {" + ex.getText() + "} STACK {" +stringWriter.toString() + "} LOG {" +  "}";
    }
    if(error.length()>3000)
    {
         error= "TYPE {" + ex.getType() + "} TEXT {" + ex.getText() + "} STACK {" +stringWriter.toString().substring(0,Math.min(700, stringWriter.toString().length())) + "} LOG {" +_localLog.substring(0,Math.min(700, _localLog.length()))+  "}";
    }
    if(error.length()>3000)
    {
         error= "TYPE {" + ex.getType() + "} TEXT {" + ex.getText() + "} STACK {" +  "} LOG {" +  "}";
    }
    if(error.length()>3000)
    {
         error= error.substring(0,3000);
    }

    cdf_easy, 02 Июля 2010

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

    −133

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    Отбор = РегистрыСведений.БазыКонтрагентов.СрезПоследних(Дата,новый Структура("Производитель",Контрагент));
    Если Отбор.Количество()>0 Тогда
    	Для каждого ТекТМ из Отбор Цикл
    		Элемент.списокВыбора.Очистить();		
    		Для каждого ТекТМ из Отбор Цикл
    			Элемент.списокВыбора.ДОбавить(ТекТМ.ТорговаяМарка,ТекТМ.ТорговаяМарка);
    		КонецЦикла;	
    	КонецЦикла;			
    КонецЕсли;

    Сложно сказать что хотел сделать этим автор :)
    Может добавить последнюю строку из отбора? :D

    PayneBLADE, 02 Июля 2010

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

    +157

    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
    MYCString  myexport
    operator+(const MYCString& s, const char* pstr)
    {
      return MYCString(s, pstr);	// Use the special concatenation constructor
    }            
    
    MYCString myexport
    operator+(const char* c, const MYCString& s)
    {
      return MYCString(c) + s.data();
    }
    
    MYCString  myexport
    operator+(const MYCString& a, const MYCString& s)
    {
      return a + s.data();
    }

    Название класса изменено. Он встречается в одном большом проекте в библиотеке-заменителе STL )

    DarthBobr, 02 Июля 2010

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

    +116

    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
    public void Parse(string sqlScript)
    {
    	batches = new List<string>();
    	State state = State.WaitingGO;
    	StartNewBatch();
    	for(position = 0; position < sqlScript.Length; position++)
    	{
    		char c = sqlScript[position];
    		if(state == State.WaitingGO)
    		{
    			PutToBuffer(c);
    			if(IsWhiteSpace(c) || IsEndOfLineCharacter(c)) continue;
    			else if(c == 'g' || c == 'G') state = State.ReadingGO;
    			else
    			{
    				state = State.ReadingBatch;
    				FlushBuffer();
    			}
    		}
    		else if(state == State.ReadingGO)
    		{
    			PutToBuffer(c);
    			if(c == 'o' || c == 'O') state = State.ReadedGO;
    			else if(IsEndOfLineCharacter(c))
    			{
    				state = State.WaitingGO;
    				FlushBuffer();
    			}
    			else
    			{
    				state = State.ReadingBatch;
    				FlushBuffer();
    			}
    		}
    		else if(state == State.ReadedGO)
    		{
    			if(IsWhiteSpace(c) || IsEndOfLineCharacter(c))
    			{
    				state = State.WaitingGO;
    				FinishBatch();
    				StartNewBatch();
    			}
    			else
    			{
    				state = State.ReadingBatch;
    				PutToBuffer(c);
    				FlushBuffer();
    			}
    		}
    		else if(state == State.ReadingBatch)
    		{
    			PutToBatch(c);
    			if(IsEndOfLineCharacter(c)) state = State.WaitingGO;
    		}
    	}
    	if(state != State.ReadedGO) FlushBuffer();
    	FinishBatch();
    }
    
    private enum State
    {
    	WaitingGO,
    	ReadingGO,
    	ReadedGO,
    	ReadingBatch
    }

    Требовалось распарсить string с sql-текстом на отдельные транзакции (т.е. просто разбить текст по go).
    Функции для работы с Batch-ем не привожу и так уйма говнокода

    FedorFo, 02 Июля 2010

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