ConversationModel::counts PHP Метод

counts() публичный Метод

public counts ( $Column, $From = false, $To = false, $Max = false )
    public function counts($Column, $From = false, $To = false, $Max = false)
    {
        $Result = array('Complete' => true);
        switch ($Column) {
            case 'CountMessages':
                $this->Database->query(DBAModel::getCountSQL('count', 'Conversation', 'ConversationMessage', $Column, 'MessageID'));
                break;
            case 'CountParticipants':
                $this->SQL->update('Conversation c')->set('c.CountParticipants', '(select count(uc.ConversationID) from GDN_UserConversation uc where uc.ConversationID = c.ConversationID and uc.Deleted = 0)', false, false)->put();
                break;
            case 'FirstMessageID':
                $this->Database->query(DBAModel::getCountSQL('min', 'Conversation', 'ConversationMessage', $Column, 'MessageID'));
                break;
            case 'LastMessageID':
                $this->Database->query(DBAModel::getCountSQL('max', 'Conversation', 'ConversationMessage', $Column, 'MessageID'));
                break;
            case 'DateUpdated':
                $this->Database->query(DBAModel::getCountSQL('max', 'Conversation', 'ConversationMessage', $Column, 'DateInserted'));
                break;
            case 'UpdateUserID':
                $this->SQL->update('Conversation c')->join('ConversationMessage m', 'c.LastMessageID = m.MessageID')->set('c.UpdateUserID', 'm.InsertUserID', false, false)->put();
                break;
            default:
                throw new Gdn_UserException("Unknown column {$Column}");
        }
        return $Result;
    }