Exemplo n.º 1
0
function messages_getMessages($caveID, $deletebox, $box)
{
    global $params, $config;
    $template = @tmpl_open('templates/' . $config->template_paths[$params->SESSION->user['template']] . '/messagebox.ihtml');
    // Nachrichten löschen
    $deleted = 0;
    if (is_array($deletebox)) {
        if (!empty($params->POST->mail_and_delete)) {
            $deleted = messages_mailAndDeleteMessages($deletebox);
        } else {
            $deleted = messages_deleteMessages($deletebox);
        }
    }
    if ($deleted > 0) {
        tmpl_set($template, '/STATUS_MESSAGE/status_message', $deleted . " Nachricht(en) erfolgreich gelöscht.");
    }
    // verschiedene Boxes werden hier behandelt... //
    $boxes = array(BOX_INCOMING => array('boxname' => "Posteingang", 'von_an' => "Absender"), BOX_OUTGOING => array('boxname' => "Postausgang", 'von_an' => "Empfänger"));
    if (!isset($boxes[$box])) {
        $box = BOX_INCOMING;
    }
    tmpl_set($template, 'CHANGEBOX/BOX', array(array('name' => "Posteingang", 'value' => BOX_INCOMING, 'selected' => $box == BOX_INCOMING ? "selected" : ""), array('name' => "Postausgang", 'value' => BOX_OUTGOING, 'selected' => $box == BOX_OUTGOING ? "selected" : "")));
    tmpl_set($template, 'CHANGEBOX/HIDDEN', array(array('arg' => "modus", 'value' => MESSAGES)));
    tmpl_set($template, 'boxname', $boxes[$box]['boxname']);
    tmpl_set($template, '/von_an', $boxes[$box]['von_an']);
    /////////////////////////////////////////////////
    tmpl_set($template, 'newmessagelinkparams', "?modus=" . NEW_MESSAGE . "&box=" . $box);
    // get row_count
    $row_count = 50;
    // errechne offset
    $offset = isset($params->POST->offset) ? intval($params->POST->offset) : 0;
    switch ($box) {
        default:
        case BOX_INCOMING:
            $message_count = messages_getIncomingMessagesCount();
            break;
        case BOX_OUTGOING:
            $message_count = messages_getOutgoingMessagesCount();
            break;
    }
    // offset "normalisieren"
    if ($offset < 0) {
        $offset = 0;
    }
    if ($offset > $message_count - 1) {
        $offset = $message_count;
    }
    // Nachrichten einlesen und ausgeben
    $nachrichten = array();
    switch ($box) {
        default:
        case BOX_INCOMING:
            $nachrichten = messages_getIncomingMessages($offset, $row_count);
            break;
        case BOX_OUTGOING:
            $nachrichten = messages_getOutgoingMessages($offset, $row_count);
            break;
    }
    tmpl_set($template, '/MESSAGE', $nachrichten);
    // vor-zurück Knopf
    if ($offset - $row_count >= 0) {
        tmpl_set($template, '/PREVIOUS', array('offset' => $offset - $row_count, 'box' => $box, 'modus' => MESSAGES));
    } else {
        tmpl_set($template, '/PREVIOUS_DEACTIVATED/dummy', ' ');
    }
    if ($offset + $row_count <= $message_count - 1) {
        tmpl_set($template, '/NEXT', array('offset' => $offset + $row_count, 'box' => $box, 'modus' => MESSAGES));
    } else {
        tmpl_set($template, '/NEXT_DEACTIVATED/dummy', ' ');
    }
    // Anzeige welche Nachrichten man sieht
    tmpl_set($template, array('message_min' => $offset + 1, 'message_max' => min($offset + $row_count, $message_count), 'message_count' => $message_count));
    /////////////////////////////////////////////////
    tmpl_set($template, '/HIDDEN', array(array('arg' => "modus", 'value' => MESSAGES), array('arg' => "box", 'value' => $box)));
    return tmpl_parse($template);
}
Exemplo n.º 2
0
function messages_getMessages($caveID, $deletebox, $box)
{
    global $params, $config;
    $template = tmpl_open($params->SESSION->player->getTemplatePath() . 'messagebox.ihtml');
    // Nachrichten löschen
    $deleted = 0;
    // checkboxes checked
    if (is_array($deletebox)) {
        // mail and delete
        if (isset($params->POST->mail_and_delete)) {
            $deleted = messages_mailAndDeleteMessages($deletebox);
        } else {
            if (isset($params->POST->delete)) {
                $deleted = messages_deleteMessages($deletebox);
            }
        }
    }
    // delete all
    if (isset($params->POST->delete_all)) {
        $deleted = messages_deleteAllMessages($box, $params->POST->messageClass);
    }
    // show number of deleted messages
    if ($deleted > 0) {
        tmpl_set($template, '/STATUS_MESSAGE/status_message', sprintf(_('%d Nachricht(en) erfolgreich gelöscht.'), $deleted));
    }
    // flag messages
    if (isset($params->POST->flag)) {
        messages_flag($params->POST->id);
    }
    // unflag messages
    if (isset($params->POST->unflag)) {
        messages_unflag($params->POST->id);
    }
    // verschiedene Boxes werden hier behandelt... //
    $boxes = array(BOX_INCOMING => array('boxname' => _('Posteingang'), 'von_an' => _('Absender')), BOX_OUTGOING => array('boxname' => _('Postausgang'), 'von_an' => _('Empfänger')));
    if (!isset($boxes[$box])) {
        $box = BOX_INCOMING;
    }
    $classes = array();
    foreach (MessageClass::getMessageClasses() as $id => $text) {
        if ($id != 1001) {
            $classes[] = array('id' => $id, 'text' => $text);
        }
    }
    tmpl_set($template, array('/boxname' => $boxes[$box]['boxname'], '/von_an' => $boxes[$box]['von_an'], '/MESSAGECLASS' => $classes));
    /////////////////////////////////////////////////
    // get row_count
    $row_count = 50;
    // errechne offset
    $offset = isset($params->POST->offset) ? intval($params->POST->offset) : 0;
    switch ($box) {
        default:
        case BOX_INCOMING:
            $message_count = messages_getIncomingMessagesCount();
            break;
        case BOX_OUTGOING:
            $message_count = messages_getOutgoingMessagesCount();
            break;
    }
    // offset "normalisieren"
    if ($offset < 0) {
        $offset = 0;
    }
    if ($offset > $message_count - 1) {
        $offset = $message_count;
    }
    // Nachrichten einlesen und ausgeben
    $nachrichten = array();
    switch ($box) {
        default:
        case BOX_INCOMING:
            $nachrichten = messages_getIncomingMessages($offset, $row_count);
            break;
        case BOX_OUTGOING:
            $nachrichten = messages_getOutgoingMessages($offset, $row_count);
            break;
    }
    tmpl_set($template, '/MESSAGE', $nachrichten);
    // vor-zurück Knopf
    if ($offset - $row_count >= 0) {
        tmpl_set($template, '/PREVIOUS', array('offset' => $offset - $row_count, 'box' => $box, 'modus' => MESSAGES));
    } else {
        tmpl_set($template, '/PREVIOUS_DEACTIVATED/dummy', ' ');
    }
    if ($offset + $row_count <= $message_count - 1) {
        tmpl_set($template, '/NEXT', array('offset' => $offset + $row_count, 'box' => $box, 'modus' => MESSAGES));
    } else {
        tmpl_set($template, '/NEXT_DEACTIVATED/dummy', ' ');
    }
    // Anzeige welche Nachrichten man sieht
    tmpl_set($template, array('message_min' => $message_count == 0 ? 0 : $offset + 1, 'message_max' => min($offset + $row_count, $message_count), 'message_count' => $message_count));
    /////////////////////////////////////////////////
    tmpl_set($template, '/HIDDEN', array(array('arg' => "modus", 'value' => MESSAGES), array('arg' => "box", 'value' => $box)));
    return tmpl_parse($template);
}