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

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

    +145

    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
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    <?php
    $tmp = mcc_get_contacts();
    if (!empty($tmp)) {
      $i = 0;
      foreach ($tmp as $k => $v) {
        if (empty($v['coords'])) {
          echo '<div class="s_adr" style="width: 275px;">' . "\r\n";
          echo 'г. <span>' . $v['city'] . '</span><br /><br />' . "\r\n";
          if (!empty($v['telfax'])) foreach ($v['telfax'] as $v_t) {
            echo 'Тел/факс: <span>' . $v_t . '</span><br />' . "\r\n";
          }
          if (!empty($v['tel'])) foreach ($v['tel'] as $v_t) {
            echo 'Телефон: <span>' . $v_t . '</span><br />' . "\r\n";
          }
          echo 'e-mail: <a href="mailto:' . $v['email'] . '">' . $v['email'] . '</a><br />' . "\r\n";
          echo '</div>' . "\r\n";
        } else {
          echo '<div class="s_cont">' . "\r\n";
          if ($i === 0) {
            echo '<div class="print-icon"><a href="#print" onclick="window.print(); return false;">Печать</a></div>' . "\r\n";
          }
          echo '<div class="map" id="map' . $k . '">' . $v['coords'] . '</div>' . "\r\n";
          echo '<div class="s_adr" >' . "\r\n";
          echo 'г. <span>' . $v['city'] . '</span><br /><br />' . "\r\n";
          echo '<p>';
          if (!empty($v['telfax'])) foreach ($v['telfax'] as $v_t) {
            echo 'Тел/факс: <span>' . $v_t . '</span><br />' . "\r\n";
          }
          if (!empty($v['tel'])) foreach ($v['tel'] as $v_t) {
            echo 'Телефон: <span>' . $v_t . '</span><br />' . "\r\n";
          }
          echo 'e-mail: <a href="mailto:' . $v['email'] . '">' . $v['email'] . '</a></p>' . "\r\n";
          echo '<p>';
          if (!empty($v['metro'])) {
            echo 'м. &quot;' . implode('&quot; / &quot;', $v['metro']) . '&quot;,<br />' . "\r\n";
          }
          echo $v['address'] . '</p>' . "\r\n";
          echo '</div>' . "\r\n";
          echo '</div>' . "\r\n";
          echo '<div class="hr"></div>' . "\r\n";
        }
        $i++;
      }
    }
    ?>
    
    <div class="hr"></div>
    
    <script src="<?php bloginfo('stylesheet_directory'); ?>/jquery-1.4.2.min.js" type="text/javascript"></script>
    <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=ABQIAAAAY78XWK5-Zy3qhkiV3w_m0hTPoZqTU4uhKIMSNHImBFQOd4WjahSr_Q8JwRSdhkeCWJkgoFFnVWj2Aw" type="text/javascript"></script>
    <script type="text/javascript"><!--
    $(document).ready(function(){
      var show_map = function(o, p3, p2, p1, p0, p4) {
        if (o.length) {
          o.empty().show();
    
          var s = $('<img class="print" />').attr('alt', '');
          s.attr('src', 'http://maps.google.com/staticmap?center=' + p0 + ',' + p1 + '&zoom=' + p4 + '&size=580x312&maptype=roadmap&markers=' + p2 + ',' + p3 + '&hl=ru&key=ABQIAAAAY78XWK5-Zy3qhkiV3w_m0hTPoZqTU4uhKIMSNHImBFQOd4WjahSr_Q8JwRSdhkeCWJkgoFFnVWj2Aw');
          o.next().after(s);
    
          var map = new GMap2(o.get(0));
          map.addControl(new GSmallMapControl());
          map.setCenter(new GLatLng(p0, p1), p4);
          var marker = new GMarker(new GLatLng(p2, p3));
          map.addOverlay(marker);
        }
      };
      if (GBrowserIsCompatible()) {
        $('div.map').each(function () {
          var p = $(this).text().split(',');
          show_map($(this), parseFloat(p[1]), parseFloat(p[0]), parseFloat(p[3]), parseFloat(p[2]), parseInt(p[4]));
        });
      }
    });
    //--></script>

    varg242, 01 Декабря 2011

    Комментарии (2)
  3. JavaScript / Говнокод #8663

    +148

    1. 1
    eval(' ~ function ( __ , ___ ) {  _  =  __ ( ___ ( "__",  "return __ ") ({}) ) } (eval, Function) ,  _[("_")] = _ ');

    не могу понять как работает =(

    __proto__, 28 Ноября 2011

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

    +136

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    <ui:param name="success_style" value="color:green;"/>
    <ui:param name="error_style" value="color:red;"/>
    
    <!-- some code -->
    
    <h:outputText rendered="#{model.successSubmitted}"
        value="#{membershipReportsLabels.serviceSucceed}"
        style="#{success_style}"/>
    
    <h:outputText rendered="#{model.unSuccessSubmitted}"
        value="#{membershipReportsLabels.serviceUnSucceed}"
        style="#{error_style}"/>

    Вроде jsf тут ещё не было. Яркое подтверждение того, что CSS придумали трусы.

    roman-kashitsyn, 25 Ноября 2011

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

    +147

    1. 1
    if(($c>0 or $pusto) <...>) ...

    Нашел тут в недрах компьютера своего какое-то говноподелие, открыл index.php, ужаснулся.
    Но тут мой взгляд остановился на переменной-флаге (наверное) с отличным названием.

    7ion, 24 Ноября 2011

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

    +71

    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
    public class AuthorizedUserObservervable implements Runnable {
    
        private long sleepTime = 1000;
        private HashMap<AuthorizedUserObserver, HashMap<AuthorizedUser, Integer>> observers = new HashMap<AuthorizedUserObserver, HashMap<AuthorizedUser, Integer>>();
        
        
        private void setSleepTime(long sleepTime) {
            this.sleepTime = sleepTime;
        }
        
        
        public void add(AuthorizedUserObserver auo) {
            HashMap<AuthorizedUser, Integer> userCache = new HashMap<AuthorizedUser, Integer>();
            for (AuthorizedUser user : auo.getUsers()) {
                userCache.put(user, null);
            }
            observers.put(auo, userCache);
        }
    
        public void beginObservation() {
            new Thread(this).start();
        }
    
        @Override
        public void run() {
            while (true) {
                try {
                    for (Map.Entry<AuthorizedUserObserver, HashMap<AuthorizedUser, Integer>> observer : observers.entrySet()) {
                        for (Map.Entry<AuthorizedUser, Integer> user : observer.getValue().entrySet()) {
                            int newPostsCount = user.getKey().getNewPostsCount();
                            if (user.getValue() == null || newPostsCount != user.getValue()) {
                                HashMap<AuthorizedUser, Integer> userCache = new HashMap<AuthorizedUser, Integer>();
                                userCache.put(user.getKey(), newPostsCount);
                                observers.put(observer.getKey(), userCache);
                                observer.getKey().notify(user.getKey(), newPostsCount);
                            }
                        }
                    }
    
    
                    Thread.sleep(sleepTime);
                } catch (InterruptedException ex) {
                    Logger.getLogger(UserObservervable.class.getName()).log(Level.SEVERE, null, ex);
                } catch (AuthenticationException e) {
                    Thread.currentThread().stop(e);
                }
            }
        }
    }

    Чего стоит гибкость.

    manyrus, 13 Ноября 2011

    Комментарии (2)
  7. ActionScript / Говнокод #8484

    −112

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    function READ_MAIL() {
    	if (mc_MESS._currentframe==1) {
    		if (mails_body.substr((mails_num - 1) * 9, 1) == "1") {// sys mail
    			GET_SYS_MAIL(mails_body.substr((mails_num - 1) * 9 + 1, 8))
    		}else if (mails_body.substr((mails_num - 1) * 9, 1) == "2") {// user mail
    			GET_USER_MAIL(mails_body.substr((mails_num - 1) * 9 + 1, 8))
    		}else if (mails_body.substr((mails_num - 1) * 9, 1) == "5") {//present
    			GET_PRESENT_MAIL(mails_body.substr((mails_num - 1) * 9 + 1, 8))
    		}
    	}
    }

    Читаем данные...

    kyzi007, 11 Ноября 2011

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

    +123

    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
    public static string ConvertToBinary( ushort value )
    {
    	StringBuilder builder = new StringBuilder( 19 );
    
    	int mask = (1 << 15);
    
    	for ( int j = 0; j < 4; j++ )
    	{
    		for ( int i = 0; i < 4; i++ )
    		{
    			builder.Append( ((value & mask) != 0) ? ("1") : ("0") );
    
    			mask = mask >> 1;
    		}
    
    		if ( j < 3 )
    		{
    			builder.Append( " " );
    		}
    	}
    
    	return builder.ToString();
    }

    ivan-petrov, 08 Ноября 2011

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

    +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
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    /// <summary>
    		/// Конвертирование String - Decimal
    		/// </summary>
    		/// <param name="text"></param>
    		/// <param name="value"></param>
    		/// <returns></returns>
    		public static decimal GetDecimal(this string text)
    		{
    			decimal number;
    			CultureInfo culture = null;
    
    			if (String.IsNullOrEmpty(text))
    				throw new ArgumentNullException("The input string is invalid.");
    
    			try
    			{
    				culture = CultureInfo.CurrentCulture;
    				number = decimal.Parse(text, culture);
    				return number;
    			}
    			catch
    			{
    			}
    
    			try
    			{
    				culture = culture.Parent;
    				number = decimal.Parse(text, culture);
    				return number;
    			}
    			catch
    			{
    			}
    
    			culture = CultureInfo.InvariantCulture;
    			try
    			{
    				number = decimal.Parse(text, culture);
    				return number;
    			}
    
    			catch (FormatException e)
    			{
    				throw new FormatException(String.Format("Unable to parse '{0}'.", text), e);
    			}
    		}

    Это финиш.

    fr0mrus, 02 Ноября 2011

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

    +159

    1. 1
    2. 2
    3. 3
    // this fucking motherfucker is because fucking popup (don't want to remake whole authorisatio system)
    		if (isset($_SERVER['HTTP_REFERER']) && !preg_match("/\/$/", $_SERVER['HTTP_REFERER']))
    			$_SERVER['HTTP_REFERER'] .= "/";

    И блядь по 10 таких кусков кода на 1 файл.

    testtest, 28 Октября 2011

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

    −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
    sub addOrUpdateContr {
    	my $doc   =  shift;
    
    	my( $id ) = $common->dbh->selectrow_array( 
    		qq|SELECT contrid FROM... | );
    
    	$id = $id || 0; 
    
    	if ( $id ) {
                 # вариант действий 1 ....
                 return $id;
    	}
    
    	if( !$id ) {
                 # вариант действий 2 (делает INSERT)....
                 return $id;
    	} else {
                 # вариант действий 3 ....
                 return $id;
    	}  
    
    	return $id;
    }

    Просто красивая функция.
    И то, что при названии addOrUpdateContr никакого апдэйта она не делает в ней далеко не самое замечательное.

    Mihard, 26 Октября 2011

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