function parseUploadedPreferences($filename, $printFilename, $reviewer)
{
    global $Conf;
    if (($text = file_get_contents($filename)) === false) {
        return Conf::msg_error("Cannot read uploaded file.");
    }
    $printFilename = htmlspecialchars($printFilename);
    $text = cleannl($text);
    $lineno = 0;
    $successes = 0;
    $errors = array();
    $new_qreq = new Qobject();
    foreach (explode("\n", $text) as $line) {
        $line = trim($line);
        $lineno++;
        if ($line == "" || $line[0] == "#" || substr($line, 0, 6) == "==-== ") {
            /* do nothing */
        } else {
            if (preg_match('/^(\\d+)\\s*[\\t,]\\s*([^\\s,]+)\\s*([\\t,]|$)/', $line, $m)) {
                if (parse_preference($m[2])) {
                    $new_qreq["revpref{$m['1']}"] = $m[2];
                    $successes++;
                } else {
                    if (strcasecmp($m[2], "conflict") != 0) {
                        $errors[] = "<span class='lineno'>{$printFilename}:{$lineno}:</span> bad review preference, should be integer";
                    }
                }
            } else {
                if (preg_match('/^\\s*paper(?:id)?\\s*[\\t,]\\s*preference/i', $line)) {
                    /* header; no error */
                } else {
                    if (count($errors) < 20) {
                        $errors[] = "<span class='lineno'>{$printFilename}:{$lineno}:</span> syntax error, expected <code>paper,preference[,title]</code>";
                    } else {
                        $errors[] = "<span class='lineno'>{$printFilename}:{$lineno}:</span> too many syntax errors, giving up";
                        break;
                    }
                }
            }
        }
    }
    if (count($errors) > 0) {
        Conf::msg_error("There were some errors while parsing the uploaded preferences file. <div class='parseerr'><p>" . join("</p>\n<p>", $errors) . "</p></div>");
    }
    if ($successes > 0) {
        savePreferences($new_qreq);
    }
}
Exemplo n.º 2
0
function initMessaging($user_id)
{
    $save_inbox = addBox($user_id, 'Inbox');
    $save_trash = addBox($user_id, 'Trash');
    $save_sent = addBox($user_id, 'Sent');
    savePreferences($user_id, 1, $save_inbox, $save_trash, $save_sent);
}
Exemplo n.º 3
0
include "../include/common.php";
include "../config.php";
include "../include/db_connect.php";
include "../include/session.php";
include "../include/messaging.php";
if (isset($_SESSION['user_id'])) {
    $inform = array();
    if (isset($_REQUEST['action'])) {
        if ($_REQUEST['action'] == "prefs") {
            if (isset($_REQUEST['save_inbox']) && isset($_REQUEST['save_trash']) && isset($_REQUEST['save_sent'])) {
                $notify_email = isset($_REQUEST['notify_email']) && $_REQUEST['notify_email'] == "yes" ? 1 : 0;
                $save_inbox = $_REQUEST['save_inbox'];
                $save_trash = $_REQUEST['save_trash'];
                $save_sent = $_REQUEST['save_sent'];
                savePreferences($_SESSION['user_id'], $notify_email, $save_inbox, $save_trash, $save_sent);
                $inform['success'] = "Your preferences have been saved.";
            }
        } else {
            if ($_REQUEST['action'] == "button") {
                if (isset($_REQUEST['box_id'])) {
                    $box_id = $_REQUEST['box_id'];
                    deleteBox($_SESSION['user_id'], $box_id);
                    $inform['success'] = "Box deleted successfully.";
                } else {
                    if ($_REQUEST['name'] != "") {
                        $box_name = $_REQUEST['name'];
                        $res = addBox($_SESSION['user_id'], $box_name);
                        if ($res !== false) {
                            $inform['success'] = "New box {$box_name} added successfully.";
                        } else {