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

    +47

    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
    # GET /dialog([0-9]+)
    Public Static Function Dialog($senderId){
        $user = Session::Restore();
        IF($user){
            $users = Collection::Get('users', 'UserModel');
            $sender = $users->Find( Query::Equal('id', $senderId) );
            IF(sizeof($sender) > 0){
                $sender = $sender[0];
                $profile_view = self::Profile($sender->id);
                $mails = Collection::Get('mail', 'MailModel');
                $in = $mails->Find( Query::All( Query::Equal( 'tid', $user->id ), Query::Equal('fid', $sender->id) ) );
                $out = $mails->Find( Query::All( Query::Equal( 'fid', $user->id ), Query::Equal('tid', $sender->id) ) );
                $dialog = array();
    
                ForEach($in as $inMsg){
                    IF(!$inMsg->read)
                    {
                        $inMsg->read = 1;
                        $inMsg->save();
                    }
                }
    
                ForEach( $in as $message ){
                    IF(!isset($dialog[$message->time]))
                        $dialog[$message->time] = array();
                    $dialog[$message->time][] = array('type'=>'in', 'message'=>$message);
                }
    
                ForEach( $out as $message ){
                    IF(!isset($dialog[$message->time]))
                        $dialog[$message->time] = array();
                    $dialog[$message->time][] = array('type'=>'out', 'message'=>$message);
                }
    
                ksort($dialog);
    
                $profile_view->Set('ProfileContent', 'dialog.php')->Set('dialog', $dialog);
                return $profile_view;
            }
            throw new ForbiddenException( l('Sender is not found') );
        }
        throw new ForbiddenException( l('User is not authenticated') );
    }

    d3n4, 18 Декабря 2012

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

    +153

    1. 1
    $("#datepicker1").datepicker("setDate", new Date((Math.round((new Date().getTime() / 1000)) - x2) * 1000));

    Из недавнего

    varg242, 18 Декабря 2012

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

    +82

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    var
      u: longint;
     
    begin
      u := $-80000000;
      writeln(u);
    end.

    Жуквери в Дельфи7. Компилируется.

    TarasB, 18 Декабря 2012

    Комментарии (77)
  4. Java / Говнокод #12303

    +65

    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
    public TransportEntry getTransportEntry(int transportId) {
    		TransportEntry result = null;
    		AbstractTransport transport = TransportManager.getInstance(getActivity()).getTransportById(transportId);
    
    		if (mTransports == null || transport == null)
    			return null;
    
    		int count = mTransports.size();
    		for (int i = 0; i < count; i++) {
    			final TransportEntry entry = mTransports.get(i);
    			if (entry.getTransportId() == transportId) {
    				// нашли нужный транспорт. вернем его, если что...
    				result = entry;
    				// если он еще и онлайн - то сразу возвращаем - самое подходящее
    				if (transport.isUserOnline(entry.getData()))
    					return result;
    			}
    		}
    		return result;

    Если что...

    dkunin, 17 Декабря 2012

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

    +62

    1. 1
    2. 2
    3. 3
    4. 4
    @Test(expectedExceptions = UnsupportedOperationException.class)
    public void testGetRooms() {
        dao.getRooms(null);
    }

    100% покрытие тестами

    madhead, 17 Декабря 2012

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

    +58

    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
    private function  _getOrderBy($orderField)
        {
            switch ($orderField)
            {
                case 'ProductID':
                    return 'ProductID';
                case 'ProductName':
                    return 'ProductName';
                case 'Per':
                    return 'Per';
                case 'Start':
                    return 'Start';
                case 'Qty':
                    return 'Qty';
                case 'OrderDetailsID':
                    return 'OrderDetailsID';
                case 'FIOUr':
                    return 'FIOUr';
                case 'AddressUr':
                    return 'AddressUr';
                case 'ZipCodeUr':
                    return 'ZipCodeUr';
                case 'OrderRealSupID':
                    return 'OrderRealSupID';
                case 'PayDate':
                    return 'PayDate';
                case 'SumPay':
                    return 'SumPay';
                case 'NumPlPor':
                    return 'NumPlPor';
                default:
                    return 'OrderID';
            }
        }
    
    //Вот еще чуть-чуть:
    
    private function  _getOrderType($orderType)
        {
            switch ($orderType)
            {
                case 'asc':
                    return 'asc';
                default:
                    return 'desc';
            }
        }

    Ну в общем, привожу пару этюдов из "коричневой" симфонии, которые используются для формирования SQL запроса. Код - прост, но говнист.

    SunnyMagadan, 17 Декабря 2012

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

    +42

    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
    function Utf2Win($s){ return Utf8($s,'w') ; }  
    function Win2Utf($s){ return Utf8($s,'u') ; }  
    function Utf8($s, $sTo = 'utf2win'){  
       $a = array();  
      for ($i=128; $i <= 191; $i++){  
       $a['utf'][] = ($i<144) ? chr(209).chr($i) : chr(208).chr($i);  
       $a['win'][] = ($i<144) ? chr($i + 112) : chr($i + 48) ;  
      }  
      $a['utf'][] = chr(208) . chr(129);  
      $a['win'][] = chr(168);  
      $a['utf'][] = chr(209) . chr(145);  
      $a['win'][] = chr(184);
    
      $a['utf'][] = chr(209) . chr(78);  
      $a['win'][] = chr(73);
    
      $a['utf'][] ='в„–';
      $a['win'][] = '№';
    
       if(in_array(strtolower($sTo), array('utf2win','w','cp1251','windows-1251')))  
         return str_replace($a['utf'], $a['win'], $s);  
       if(in_array(strtolower($sTo), array('win2utf','u','utf8','utf-8')))  
         return str_replace($a['win'], $a['utf'], $s);  
    } 
    
    function getfield_csv($string,$index)
    {
      $arr = explode(";",$string);
      return $arr[$index];
    }
    
    function read_csv($file)
    {
      $hFile = fopen($file,"r");
        $source_data_utf = fread($hFile,filesize($file));
      fclose($hFile);
      
      $source_data = Utf2Win($source_data_utf);
      
      $arr_source_data = explode("\r\n",$source_data);
      
      for($i=0;$i<count($arr_source_data);$i++)
      {
        $arr_source_data[$i] = str_replace(chr(239).chr(187).chr(191), "", $arr_source_data[$i]);
        $result[] = Array();
        $result[count($result)-1]['Ds'] = getfield_csv($arr_source_data[$i], 0);
        $result[count($result)-1]['Fkp'] = getfield_csv($arr_source_data[$i], 5);
        $result[count($result)-1]['Tgg'] = getfield_csv($arr_source_data[$i], 3);
        $result[count($result)-1]['Pol'] = getfield_csv($arr_source_data[$i], 4);
        $result[count($result)-1]['Tr'] = getfield_csv($arr_source_data[$i], 6);
      }
      return $result;
    }

    clauclauclau, 17 Декабря 2012

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

    +127

    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
    #include <stdio.h>
    
    int Sravn (int a, int b)
    {
    if (a=b)
    {return 1;}
    else 
    {return 0;}
    }
    
    int main()
    {
         int A[5]={1, 4, 7, 4, 4}, rez1, rez2, rez3, rez4, rez5;
         int i=0;
         rez1=Sravn(A[i], A[i+1])+Sravn(A[i], A[i+2])+Sravn(A[i], A[i+3])+Sravn(A[i], A[i+4]);
         rez2=Sravn(A[i+1], A[i])+Sravn(A[i+1], A[i+2])+Sravn(A[i+1], A[i+3])+Sravn(A[i+1], A[i+4]);
         rez3=Sravn(A[i+2], A[i])+Sravn(A[i+2], A[i+1])+Sravn(A[i+2], A[i+3])+Sravn(A[i+2], A[i+4]);
         rez4=Sravn(A[i+3], A[i])+Sravn(A[i+3], A[i+1])+Sravn(A[i+3], A[i+2])+Sravn(A[i+3], A[i+4]);
         rez5=Sravn(A[i+4], A[i])+Sravn(A[i+4], A[i+1])+Sravn(A[i+4], A[i+3])+Sravn(A[i+4], A[i+2]);
         if (rez1>rez2 && rez1>rez3 && rez1>rez4 && rez1>rez5)
         {printf ("/d", A[i]);}
         else if (rez2>rez1 && rez2>rez3 && rez2>rez4 && rez2>rez5)
         {printf ("/d", A[i+1]);}
         else if (rez3>rez2 && rez3>rez1 && rez3>rez4 && rez3>rez5)
         {printf ("/d", A[i+2]);}
         else if (rez4>rez2 && rez4>rez3 && rez4>rez1 && rez4>rez5)
         {printf ("/d", A[i+3]);}
         else if (rez5>rez2 && rez5>rez3 && rez5>rez1 && rez5>rez4)
         {printf ("/d", A[i+4]);}
         return 0;
         }

    Ищет в массиве наиболее часто повторяющийся элемент. Написано мною. Нифига не работает, но ошибок не выдает.

    MurMur, 16 Декабря 2012

    Комментарии (74)
  9. JavaScript / Говнокод #12298

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    findTariffPlans = function(setValue) {findTariffPlans(setValue, null)};
    
    findTariffPlans = function(setValue, closure) {
       // bla-bla-bla
    }

    "Я перегрузил"

    madhead, 16 Декабря 2012

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

    −163

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    SELECT news_tbl.*, users_tbl.*,
    GROUP_CONCAT(comments_tbl.comments_id) AS commentsid,
    GROUP_CONCAT(CONCAT ('<hr><h6>Navn: ', comments_tbl.name,'</h6>','<p>',comments_tbl.comment, '</p>') SEPARATOR '<br><br>') AS comments, 
    COUNT(comments_tbl.comments_id) AS comments_count
    FROM news_tbl
    LEFT JOIN comments_tbl ON comments_tbl.news_id = news_tbl.news_id
    LEFT JOIN users_tbl ON news_tbl.user = users_tbl.username
    GROUP BY news_tbl.news_id
    ORDER BY news_tbl.news_id DESC LIMIT 5

    Наткнулся на SO.

    Lowezar, 15 Декабря 2012

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