$database->setUserStatus($room->id);
    }
    /* Get Messages from Database */
    $messages = $database->getMessages(array('messageIdEnd' => $request['messageIdEnd'], 'messageIdStart' => $request['messageIdStart'], 'messageDateMin' => $request['messageDateMax'], 'messageDateMax' => $request['messageDateMax'], 'messageLimit' => $request['messageLimit'], 'showDeleted' => $request['showDeleted'], 'messageTextSearch' => $request['search'], 'archive' => $request['archive'], 'longPolling' => $request['longPolling'], 'userIds' => $request['userIds'], 'roomIds' => $request['roomId'], 'messageIds' => $request['messageIds']), array($request['sortBy'] => $request['sortOrder']))->getAsArray(true);
    /* Process Messages */
    if (count($messages) > 0) {
        if (count($messages) > $request['messageHardLimit']) {
            if (isset($request['messageIdEnd'])) {
                array_splice($messages, 0, -1 * $request['messageHardLimit']);
            } else {
                array_splice($messages, $request['messageHardLimit']);
            }
        }
        foreach ($messages as $id => $message) {
            if (isset($message['iv'], $message['salt'])) {
                $message = fim_decrypt($message, 'text');
            }
            switch ($request['encode']) {
                case 'plaintext':
                    break;
                    // All Good
                // All Good
                case 'base64':
                    $message['text'] = base64_encode($message['text']);
                    break;
            }
            $xmlData['getMessages']['messages']['message ' . (int) $message['messageId']] = array('messageData' => array('roomId' => (int) $room->id, 'messageId' => (int) $message['messageId'], 'messageTime' => (int) $message['time'], 'messageText' => $message['text'], 'flags' => $message['flag']), 'userData' => array('userName' => $message['userName'], 'userId' => (int) $message['userId'], 'userGroup' => (int) $message['userGroup'], 'avatar' => $message['avatar'], 'socialGroups' => $message['socialGroups'], 'userNameFormat' => $message['userNameFormat'], 'defaultFormatting' => array('color' => $message['defaultColor'], 'highlight' => $message['defaultHighlight'], 'fontface' => $message['defaultFontface'], 'general' => (int) $message['defaultFormatting'])));
        }
    }
}
/* Update Data for Errors */
Beispiel #2
0
    if (isset($request['parentalAge'])) {
        $user['parentalAge'] = $request['parentalAge'];
    }
    if (isset($request['parentalFlags'])) {
        $user['parentalFlags'] = implode(',', $request['parentalFlags']);
    }
    if ($file['parentalAge'] > $user['parentalAge']) {
        $parentalBlock = true;
    } elseif (fim_inArray(explode(',', $user['parentalFlags']), explode(',', $file['parentalFlags']))) {
        $parentalBlock = true;
    }
}
if ($request['userId'] && $request['userId'] !== $file['userId']) {
    $parentalBlock = false;
    // Disable the parental block if the user themself uploaded the image.
}
if ($parentalBlock) {
    $file['contents'] = '';
    // TODO: Placeholder
    header('Content-Type: ' . $file['fileType']);
    echo $file['contents'];
} else {
    if ($file['salt']) {
        $file = fim_decrypt($file, 'contents');
    } else {
        $file['contents'] = base64_decode($file['contents']);
    }
    header('Content-Type: ' . $file['fileType']);
    echo $file['contents'];
    //  print_r($file); var_dump($user);
}