1. Java / Говнокод #4386

    +77

    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
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    @Entity
    @Table(name = "datastore")
    public final class Datastore
    {
     @SequenceGenerator(name="SEQ_GEN", sequenceName="entity_id_seq", allocationSize = 1)
     @Id  
     @GeneratedValue(strategy=GenerationType.SEQUENCE, generator = "SEQ_GEN")
     private long entityid;
     public float  capacity;
     public String name;
     public float  usage;
     public short vendor;
     public short state;
     public short health;
     public short vmson;
     public short vmsother;    
    
     @Transient private String uuid;
    
     @Override public String toString() {
      return String.format("Datastore{entityid=%d, capacity=%f, health=%d, name='%s', state=%d, usage=%f, vendor=%d, vmson=%d, vmsother=%d}", 
       entityid,
       capacity,
       health,
       name,
       state,
       usage,
       vendor,
       vmson,
       vmsother);
     }
    
     public long getEntityid() {
      return entityid;
     }
     public void setEntityid(long entityid) {
      this.entityid = entityid;
     }
     public float getCapacity() {
      return capacity;
     }
     public void setCapacity(float capacity) {
      this.capacity = capacity;
     }
     public String getName() {
      return name;
     }
     public void setName(String name) {
      this.name = name;
     }
     public float getUsage() {
      return usage;
     }
     public void setUsage(float usage) {
      this.usage = usage;
     }
     public short getVendor() {
      return vendor;
     }
     public void setVendor(short vendor) {
      this.vendor = vendor;
     }
     public short getState() {
      return state;
     }
     public void setState(short state) {
      this.state = state;
     }
     public short getHealth() {
      return health;
     }
     public void setHealth(short health) {
      this.health = health;
     }
     public short getVmson() {
      return vmson;
     }
     public void setVmson(short vmson) {
      this.vmson = vmson;
     }
     public short getVmsoff() {
      return vmsother;
     }
     public void setVmsoff(short vmsoff) {
      this.vmsother = vmsoff;
     }
     
     @Transient public void   setUuid(String value) { this.uuid = value; }
    }

    Вот так жесткие швейцарские кодеры объявляют persistent beans.
    Самый отжиг это не pubilc fields дублированные с getters/setters, а setter помеченный @Transient

    galak, 18 Октября 2010

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

    +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
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    <?
    # запускаем сессии
    session_start();
    # подключаем MySQL
    require "db.php";
    // Если существуют куки, то выполняем автовход!
    if(isset($_COOKIE['adminauto']))
    {$nik = $_COOKIE['adminnik'];
    $password = $_COOKIE['adminpassword'];
    $_SESSION['adminnik'] = $nik;
    $_SESSION['adminpassword'] = crc32(crypt(base64_encode(strrev(md5($password)))));
    }// Если переменные пустые, то запрещаем вход
    ....... Тут какое то говнишко 
    # если пользователь ввел данные, то проверяем их
    if(isset($go))
    {
    # принимаем данные через POST
    if (isset($_POST['nik'])) {$nik = $_POST['nik'];}
    if (isset($_POST['pass'])) {$pass = $_POST['pass'];}
    # проверяем нет ли пустых полей
    if(empty($nik) or empty($pass)) 
    {exit("<script language='javascript'>alert('Вы попытались получить доступ к Чату, но замечено, что Вы не ввели какое-то из полей, пожалуйста заполните их!');</script><head><meta http-equiv='refresh' content='0; URL=admin.php'></head>");}
    
    $result = mysql_query("SELECT nik,password FROM admin WHERE nik='$nik' and password='$pass'");
    if(mysql_num_rows($result) > 0) 
    { 
    
    $_SESSION['adminnik'] = $nik; 
    $_SESSION['adminpassword'] = crc32(crypt(base64_encode(strrev(md5($pass)))));}
    else {exit("<script language='javascript'>alert('Вы попытались получить доступ к Чату, но те данные которые Вы ввели, не совподают с правильными! Пожалуйста введите правильные!');</script><head><meta http-equiv='refresh' content='0; URL=admin.php'></head>");}}
    
    if( !isset($_SESSION['adminnik']) or !isset($_SESSION['adminpassword']) )  {
    echo "<br><br><br><br><br><br><br>
    <table bgcolor='#EAF3FF' width='300px' align='center' style='border:1px solid #000000; padding:10px;'>
    <tr><td><strong>Вход</strong></td></tr><br>
    <form method='post'><tr bgcolor='#F9F8FD'><td>
    <div style='font-size:11px; font-family:Verdana; color:#424242;'>Ваш ник:</div></td><td>
    <input style='border:1px solid #B3B9C3; font-size:12px;' type='text' name='nik'></td></tr>
    <tr bgcolor='#F9F8FD'><td>
    <div style='font-size:11px; font-family:Verdana; color:#424242;'>Ваш пароль:</div></td><td>
    <input style='border:1px solid #B3B9C3; font-size:12px;' type='password' name='pass'></td></tr><tr><td>
    <input type='checkbox' name='auto' cheked> Автовход<br>
    <input style='border:1px solid #000000; color:#3A4F6C; font-weight:700; padding:0px; background-color:#F0F5FA; margin-top:5px;' type='submit' name='go' value='Войти'></form>
    </td>
    </tr>
    </table>
    <br><table bgcolor='#EAF3FF' width='500px' align='center' style='border:1px solid #000000; padding:10px;'><tr align='center'><td><strong style='font-size:14px;'>Забыли пароль?</strong></td></tr><form method='post' action='newpass.php'><tr align='center'><td bgcolor='#F9F8FD' style='padding-bottom:7px;'><strong style='font-size:11px; font-family:Verdana;'>Введите Ваш email:   </strong><input type='text' name='email' style='border:1px solid #B3B9C3; font-size:11px; font-family:Verdana; padding:1px; margin-top:5px;'>  <input type='submit' style='border:1px solid #000000; color:#3A4F6C; font-weight:700; padding:0px; background-color:#F0F5FA; margin-top:5px;' name='newpass' value='Получить пароль!'></form></td></tr><tr><td align='center' style='font-size:11px; font-family:Verdana; color:#FF0000;'>* Вам на email будет выслан новый пароль!</td></tr></table>
    ";
    exit();
    }
    ?>

    Вот. это называется авто вход.

    Vasiliy, 18 Октября 2010

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

    +161

    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
    public function getOwnTimeFromTime($_site_end_time , $timeSyncOk = false)
    {
            $_site_end_time_msk = strtotime($_site_end_time);
            $_site_end = date('Y-m-d H:i:s', $_site_end_time_msk);
            
            $iter = 0;
            
            preg_match ("|(\d+)-(\d+)-(\d+)T(\d+):(\d+):(\d+)|usi",$_site_end_time, $_Time1);
    
            do {    
                $date2 = mktime($_Time1[4], $_Time1[5], $_Time1[6], $_Time1[2], $_Time1[3], $_Time1[1]);
                
                if ((($_site_end_time_msk - $date2) == 3*60*60) || (($_site_end_time_msk - $date2) == 4*60*60)) {
                    $timeSyncOk = true;
                }                                       
                $iter++;                    
                
            } while ($iter<=20 && $timeSyncOk==false);
                  
            if ($timeSyncOk==false) {
    
                $_site_end = date("Y-m-d H:i:s", parseDatetime($_site_end_time));
            }
            
            return $_site_end;
    }

    Шаманство

    minisot, 18 Октября 2010

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

    +172

    1. 1
    <td><?="ID"?>:</td>

    Пример из документации Bitrix
    http://dev.1c-bitrix.ru/api_help/main/general/admin.section/classes/cadminfilter

    Rpsl, 18 Октября 2010

    Комментарии (18)
  5. Java / Говнокод #4382

    +75

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    StringUtils.join(
                    Collections2.transform(Arrays.asList(ArrayUtils.toObject(data)),
                            new Function<Byte, String>() {
    
                                @Override
                                public String apply(final Byte from) {
                                    return "0x" + Integer.toHexString(from);
                                }
                            }), " ")

    data имеет тип byte[]

    в питоне это было бы ' '.join(map(hex, data))

    burdakovd, 18 Октября 2010

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

    +159

    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
    function randomPassword($length = 8, $seed = '') {
    	$password = "";
    	$possible = "0123456789";
    	$i = 0;
    	mt_srand(($seed == '') ? rand() : $seed);
    	while ($i < $length) {
    		$char = substr($possible, mt_rand(0, strlen($possible) - 1), 1);
    		if (!strstr($password, $char)) {
    			$password .= $char;
    			$i++;
    		}
    	}
    	return $password;
    }

    думаю пора создавать отдельный радел на сайте посвящённый высерам призванным генерировать пароли

    DrFreez, 18 Октября 2010

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

    +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
    class LinkedListVector{
        public int crd;
        public int length;
        LinkedListVector head;
        LinkedListVector next;
        LinkedListVector prev;
        LinkedListVector(){
            this.head=this;
            this.prev=this;
            this.next=this;
            this.length=0;
        }
        LinkedListVector(int val){
            LinkedListVector save=this.head.prev;
            this.prev=this.head.prev;
            this.next=this.head;
            this.next.prev=this;
            save.next=this;
            this.head.length++;
            this.crd=val;
        }
    }

    Эпичнейшая попытка реализовать двусвязный циклический список.

    kir_rik, 18 Октября 2010

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

    +124

    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
    namespace Test.Data
    {
        public class Connection
        {
            public static SqlConnection getConnection()
            {
                string server = "";
    
                if (!File.Exists(@"C:\ConnectionParameters.ini"))
                    LogFileAdministration.WriteMessage("The ConnectionParameters.ini file does not exist.");
    
                else
                {
                    StreamReader reader = new StreamReader(@"C:\ConnectionParameters.ini");
                    server = reader.ReadLine();
                    reader.Close();
                }
    
                return new SqlConnection(@"Data Source= " + server + "; Integrated Security=SSPI; Initial Catalog=Test");
            }
        }
    }

    Итальянский программист. Из Италии. Внезапно попросился на работу. Отослал резюме. Дали ему тестовое задание - намутить поиск по табличке, по ключевой фразе с пейджингом.
    Что из этого вышло - смотрим улыбаемся.

    ursus, 18 Октября 2010

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

    +164

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    srand(time(0));
    for (i = 0; i < 10000; i++) {
        sprintf(qtrc, "/tmp/%010d", rand());
        if (!mkdir(qtrc, 0700))
            goto okay;
    }
    logPanic("Cannot create $HOME\n");
    okay:

    Исходники KDM

    proDOOMman, 17 Октября 2010

    Комментарии (19)
  10. Pascal / Говнокод #4377

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    program test;
    var i : boolean;
    begin
    i := true;
    if i then while true do Writeln('WAR IS TRUE!!!')
    else Writeln('FALSE');
    end.

    Pascal...

    Мартин, 17 Октября 2010

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