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) RSS

    • Как-то вообще не по-людски, ForEach с большой, а return с маленькой.
      Ответить
    • >ForbiddenException
      Запрещенное прерывание. Его нельзя кидать.
      Ответить
      • если его кинуть, выброситься исключение ThrowingForbiddenExceptionException
        Ответить
      • >Запрещенное прерывание
        ForbiddenAbortException

        ForbiddenInterruptException at IRQ 1
        Ответить
      • Результат http://cs417522.userapi.com/v417522682/1935/K15QgeIJKKM.jpg
        Ответить
        • ахаха =) открываю и вижу что стиль ошибок от Play 2, потом понимаю что там PHP, и вспоминаю что такое делал Denfer, потом смотрю на фон рабочего стала и понимаю что это ты XD
          Привет! XD
          Ответить
          • Читаю судьбу по фону рабочего стола и моноширинному шрифту.
            Lucida Console... Ох, касатик, позолоти ручку, всё расскажу
            Ответить
            • LucidFox породила себя под этим именем в честь шрифта LucidConsole? Ей вроде и линукс нравился.

              Имхо LucidConsole не делает консоль ясной и солнечной. Скорее Ms Comic Sans с раскрашиванием текста в зеленый.
              Ответить
          • пхахах привет :з
            Ответить
    • Он быстро сделал бутерброды с икрой, приготовил гренки и кофе. Налил сок. Вчера, благодаря питомцу, он впервые в жизни завтракал в спальне. Сегодня они сделают это вместе.
      Ответить

    Добавить комментарий