// action=dtcemail_edit_redirect&redirect1=&redirect2=&submit=Ok
 // action=dtcemail_edit_redirect&redirect1=&redirect2=&submit=Ok
 case "dtcemail_edit_redirect":
     if (isValidEmail($_REQUEST["redirect1"])) {
         $redir1 = $_REQUEST["redirect1"];
     } else {
         $redir1 = "";
     }
     if (isValidEmail($_REQUEST["redirect2"])) {
         $redir2 = $_REQUEST["redirect2"];
     } else {
         $redir2 = "";
     }
     $q = "UPDATE {$pro_mysql_pop_table} SET redirect1='{$redir1}',redirect2='{$redir2}' WHERE id='{$user}' AND mbox_host='{$host}' LIMIT 1;";
     $r = mysql_query($q) or die("Cannot execute query \"{$q}\" ! line: " . __LINE__ . " file: " . __FILE__ . " sql said: " . mysql_error());
     writeDotQmailFile($user, $host);
     break;
 case "dtcemail_vacation_msg":
     if ($_REQUEST["use_vacation_msg"] == "yes") {
         $use_vacation_msg = "yes";
     } else {
         $use_vacation_msg = "no";
     }
     $q = "UPDATE {$pro_mysql_pop_table} SET vacation_flag='{$use_vacation_msg}',vacation_text='" . addslashes($_REQUEST["vacation_msg_txt"]) . "'\n\tWHERE id='{$user}' AND mbox_host='{$host}' LIMIT 1;";
     $r = mysql_query($q) or die("Cannot execute query \"{$q}\" ! line: " . __LINE__ . " file: " . __FILE__ . " sql said: " . mysql_error());
     $q = "UPDATE {$pro_mysql_cronjob_table} SET qmail_newu='yes',gen_qmail='yes' WHERE 1";
     $r = mysql_query($q) or die("Cannot execute query \"{$q}\" ! line: " . __LINE__ . " file: " . __FILE__ . " sql said: " . mysql_error());
     break;
 case "dtcemail_spambox":
     if ($_REQUEST["spam_mailbox_enable"] == "yes") {
         $spambox_enable = "yes";
Example #2
0
function emailAccountsEditCallback($id)
{
    global $cyrus_used;
    global $pro_mysql_pop_table;
    $q = "SELECT * FROM {$pro_mysql_pop_table} WHERE autoinc='{$id}';";
    $r = mysql_query($q) or die("Cannot query {$q} line: " . __LINE__ . " file " . __FILE__ . " sql said:" . mysql_error());
    $n = mysql_num_rows($r);
    if ($n != 1) {
        die("Cannot find created email line " . __LINE__ . " file " . __FILE__);
    }
    $a = mysql_fetch_array($r);
    $crypted_pass = crypt($a["passwd"], dtc_makesalt());
    $q = "UPDATE {$pro_mysql_pop_table} SET crypt='{$crypted_pass}',quota_couriermaildrop=CONCAT(1024000*quota_size,'S,',quota_files,'C') WHERE autoinc='{$id}';";
    $r = mysql_query($q) or die("Cannot query {$q} line: " . __LINE__ . " file " . __FILE__ . " sql said:" . mysql_error());
    if (!$cyrus_used) {
        writeDotQmailFile($a["id"], $a["mbox_host"]);
    }
    updateUsingCron("gen_qmail='yes', qmail_newu='yes'");
    if ($cyrus_used) {
        // login to cyradm
        $cyr_conn = new cyradm();
        $error = $cyr_conn->imap_login();
        if ($error != 0) {
            die("imap_login Error {$error}");
        }
        if (!$a["quota_size"]) {
            die("invalid quota");
        }
        $result = $cyr_conn->setmbquota("user/" . $a["fullemail"], $a["quota_size"]);
    }
    return "";
}