Current time: 11-16-2024, 03:08 PM Hello There, Guest! (LoginRegister)


Thread Closed 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[TICKET/PATCH]: Mailboxquota im GUI einstellen.
Author Message
TheCry Away
Member
***

Posts: 851
Joined: Oct 2008
Reputation: 21
Post: #26
RE: [TICKET/PATCH]: Mailboxquota im GUI einstellen.
Morgen.. Smile
Das sieht doch richtig gut aus..
Mein Ansatz bezüglich der Änderung ohne das Passwort zu ändern wäre eine neue Funtkion in der domain_edit.php
Code:
if (preg_match('/update_forward/', $_POST['uaction']) == 1 || isset($_POST['mail_forward'])) {
        // The user only wants to update the forward list, not the password
        if ($_POST['pass'] === '' && $_POST['pass_rep'] === '') {
            return true;
        }
    }
Hier brauch man ja auch kein Passwort zu ändern wenn man den Forward einstellen will.
Ich würde das schon mal auf
Code:
if (preg_match('/update_forward/', $_POST['uaction']) == 1 || isset($_POST['mail_forward']) || isset($_POST['mail_quota_edit'])) {
        // The user only wants to update the forward list, not the password
        if ($_POST['pass'] === '' && $_POST['pass_rep'] === '') {
            return true;
        }
    }
und in dem Template eine Checkbox mit der gleichen Funktion wie bei Mailforward einbauen! Nur wenn man das klickt wird das auch geändert!
Die Checkbox müsste dann den Namen "mail_quota_edit" haben.
Ist lediglich ein Ansatz!

Gruß
Sascha


Edit..
Warum eigentlich die Änderungen in der domain_edit.php?
Wenn ich die bei mir einpflege bekomme ich unter anderem einen Fehler wegen undefinded "quota".
Ich finde das man das mailbox_quota nur für den Benutzer nimmt.
Das quota ist massgebend!!!
Ausserdem funktioniert das schon 1a und würde das nur noch im Notfall anfassen!
Ohne es jetzt getestet zu haben!

Von Deiner Anleitung wäre dann ab
Code:
ca. Zeile 214:

vor:
Code:
$pass=encrypt_db_password($pass);

einfügen:
bis
Code:
Zeile 241:

nach:
Code:
}

einfügen:
Code:
}
hinfällig!

Dieses Funktion sollte nur für den Quotaupdate genutzt werden. Einfach unter die Funktion von "update_email_forward" setzen.
Code:
function update_email_quota(&$tpl, &$sql) {
    if (!isset($_POST['uaction'])) {
        return false;
    }
    if (!isset($_POST['mail_quota_edit'])) {
        return true;
    }
    $dmn_name = $_SESSION['user_logged'];
    $query = "
                SELECT
                        `mailbox_quota`
                FROM
                        `domain`
                WHERE
                        `domain_name` = ?
        ";

    $rs = exec_query($sql, $query, array($dmn_name));
    $maxquota = $rs->fields['mailbox_quota'];
    $mail_id = $_GET['id'];
    $mail_quota = clean_input($_POST['mail_quota']*1024*1024);
    
    if($maxquota < $mail_quota)
    {
        set_page_message(tr('Quota is more then your maximum!'));
        return false;
    }else{
    $query = "UPDATE `mail_users` SET `quota` = ? WHERE `mail_id` = ?";
    $rs = exec_query($sql, $query, array($mail_quota, $mail_id));
    $status = Config::get('ITEM_CHANGE_STATUS');
    check_for_lock_file();
    write_log($_SESSION['user_logged'] . ": change mail quota: $mail_account");
    return true;
    }
}

Dann am Ende
Code:
if (update_email_pass($sql) && update_email_forward($tpl, $sql)) {
in
Code:
if (update_email_pass($sql) && update_email_forward($tpl, $sql) && update_email_quota($tpl, $sql)) {
ändern.

Ich muss gleich noch einmal weg... Deswegen hoffe ich das sie funktioniert!
Konnte die Sache also nicht testen.
Du müsstest noch die Checkbox (genauso wie bei Forward, Erst wenn angeklickt kann man editieren) erstellen. Der Name muss "mail_quota_edit" lauten.
(This post was last modified: 03-15-2009 09:23 PM by TheCry.)
03-15-2009 08:34 PM
Find all posts by this user
Thread Closed 


Messages In This Thread
RE: [TICKET/PATCH]: Mailboxquota im GUI einstellen. - TheCry - 03-15-2009 08:34 PM

Forum Jump:


User(s) browsing this thread: 2 Guest(s)