Current time: 12-23-2024, 09:52 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: #11
RE: [HowTo]: Mailboxquota im GUI einstellen.
Von FISA4 musst Du alles übernehmen bis auf den Punkt:
Quote:nach:
Code:
require '../include/ispcp-lib.php';

einfügen:
Code:
include '../include/ispcp-mailquota.php

Und die Datei ispcp-mailquota.php ist jetzt hinfällig!
03-13-2009 07:49 PM
Find all posts by this user
BeNe Offline
Moderator
*****
Moderators

Posts: 5,899
Joined: Jan 2007
Reputation: 68
Post: #12
RE: [HowTo]: Mailboxquota im GUI einstellen.
In der GUI habe ich jetzt das Feld aber keinen Wert dafür:
Code:
Mailbox Quota [MB]      {VL_MAIL_QUOTA}

Hier ein diff der Datei:
PHP Code:
--- /root/trunk2diff/gui/reseller/domain_edit.php       2009-03-13 10:14:03.000000000 +0000
+++ /var/www/ispcp/gui/reseller/domain_edit.php 2009-03-13 10:03:47.000000000 +0000
@@ -65,+65,@@
                                
'TR_SQL_USERS' => tr('SQL users limit <br /><i>(-1 disabled, 0 unlimited)</i>'),
                                
'TR_TRAFFIC' => tr('Traffic limit [MB] <br /><i>(0 unlimited)</i>'),
                                
'TR_DISK' => tr('Disk limit [MB] <br /><i>(0 unlimited)</i>'),
+                               
'TR_MAIL_QUOTA' => tr('Mailbox Quota [MB]'),
                                
'TR_USER_NAME' => tr('Username'),
                                
'TR_UPDATE_DATA' => tr('Submit changes'),
                                
'TR_CANCEL' => tr('Cancel'),
@@ -
118,+119,@@
 function 
load_user_data($user_id$domain_id) {
        
$sql Database::getInstance();

-       global 
$domain_name$domain_ip$php_sup;
+       global 
$domain_name$domain_ip$php_sup$mailquota;
        global 
$cgi_supp $sub$als;
        global 
$mail$ftp$sql_db;
        global 
$sql_user$traff$disk;
@@ -
154,+155,@@
                ) = 
generate_user_props($domain_id);;

        
load_additional_data($user_id$domain_id);
+
 } 
//End of load_user_data()

 // Load additional data
@@ -216,+218,22 @@
        
$data $res->FetchRow();

        
$username $data['admin_name'];
+
+       
//Mailbox Quotas
+        // Get domain data
+        $query = <<<SQL_QUERY
+        SELECT
+            quota
+        FROM
+            mail_users
+        WHERE
+            domain_id = ?
+SQL_QUERY;
+
+        
$res = exec_query($sql$query, array($domain_id));
+        
$data = $res->FetchRow();
+
+        
$mailquota = $data['quota']/1024/1024;
 } //End of load_additional_data()

 // Show user data
@@ -224,7 +242,7 @@
        global 
$cgi_supp , $sub$als;
        global 
$mail$ftp$sql_db;
        global 
$sql_user$traff$disk;
-       global 
$username;
+       global 
$username$mailquota;
        // Fill in the fields
        
$domain_name = decode_idna($domain_name);

@@ -276,6 +294,7 @@
                                'VL_SQL_USERS' => 
$sql_user,
                                'VL_TRAFFIC' => 
$traff,
                                'VL_DOM_DISK' => 
$disk,
+                               'VL_MAIL_QUOTA' => 
$mailquota,
                                'VL_USER_NAME' => 
$username
                        )
                );
@@ -283,7 +302,7 @@

 // Check input data
 function check_user_data(&
$tpl, &$sql$reseller_id$user_id) {
-       global 
$sub$als$mail$ftp$sql_db$sql_user$traff$disk$sql$domain_ip$domain_php$domain_cgi;
+       global 
$sub$als$mail$ftp$sql_db$sql_user$traff$disk$sql$domain_ip$domain_php$domain_cgi$mailquota;

        
$sub = clean_input($_POST['dom_sub']);
        
$als = clean_input($_POST['dom_alias']);
@@ -296,6 +315,7 @@
        // 
$domain_ip = $_POST['domain_ip'];
        
$domain_php = $_POST['domain_php'];
        
$domain_cgi = $_POST['domain_cgi'];
+       
$mailquota = clean_input($_POST['mailboxquota']);

        
$ed_error = '';

@@ -329,6 +349,12 @@
        if (!ispcp_limit_check(
$disk, null)) {
                
$ed_error .= tr('Incorrect disk quota limit!');
        }
+       if (!ispcp_limit_check(
$mailquota, null)) {
+                
$ed_error .= tr('Incorrect mailbox quota limit!');
+               }
+                        else if (
$mailquota < 10) {
+                       
$ed_error .= tr('mailbox quota should be minimum 10MB!');
+               }

        // 
$user_props = generate_user_props($user_id);
        // 
$reseller_props = generate_reseller_props($reseller_id);
@@ -424,6 +450,10 @@

                    return false;
                }
+               // update mailbox quotas
+                
$mailquota = $mailquota*1024*1024;
+                
$query = "UPDATE `mail_users` SET `quota` = '$mailquota' WHERE `domain_id` = ?";
+                
$rs = exec_query($sql$query, array($user_id));

                // update the sql quotas too
                
$query = "SELECT domain_name FROM domain WHERE domain_id=?";
@@ -588,4 +618,4 @@

 unset_messages();

-?>
\ No newline at end of file
+?>

Greez BeNe
03-13-2009 08:25 PM
Visit this user's website Find all posts by this user
TheCry Away
Member
***

Posts: 851
Joined: Oct 2008
Reputation: 21
Post: #13
RE: [HowTo]: Mailboxquota im GUI einstellen.
Ich schätze hier liegt Dein Fehler:
Code:
@@ -118,7 +119,7 @@
function load_user_data($user_id, $domain_id) {
        $sql = Database::getInstance();

-       global $domain_name, $domain_ip, $php_sup;
+       global $domain_name, $domain_ip, $php_sup, $mailquota;
        global $cgi_supp , $sub, $als;
        global $mail, $ftp, $sql_db;
        global $sql_user, $traff, $disk;
Die Änderung sollte in der Funktion "load_additional_data" nicht in der Funktion "load_user_data".
Dort muss die Zeile
Code:
global $domain_name, $domain_ip, $php_sup;
in
Code:
global $domain_name, $domain_ip, $php_sup, $mailquota;
geändert werden!
(This post was last modified: 03-13-2009 08:34 PM by TheCry.)
03-13-2009 08:34 PM
Find all posts by this user
BeNe Offline
Moderator
*****
Moderators

Posts: 5,899
Joined: Jan 2007
Reputation: 68
Post: #14
RE: [HowTo]: Mailboxquota im GUI einstellen.
Thats it :-)
Dann mache ich einen Patch fertig und werde mal ein Ticket aufmachen.

Können wir das auch per User übernehmen ?
Macht ja sinn oder ?

Greez BeNe
03-13-2009 08:39 PM
Visit this user's website Find all posts by this user
TheCry Away
Member
***

Posts: 851
Joined: Oct 2008
Reputation: 21
Post: #15
RE: [HowTo]: Mailboxquota im GUI einstellen.
Mhhh... Dann könnte der User sich ja über meine Einstellungen hinwegsetzen!!
Und ich als Reseller sage was abgeht.. Wink
03-13-2009 08:58 PM
Find all posts by this user
FISA4 Offline
Member
***

Posts: 668
Joined: Feb 2008
Reputation: 15
Post: #16
RE: [HowTo]: Mailboxquota im GUI einstellen.
(03-13-2009 04:20 PM)TheCry Wrote:  Warum nutzt Du nicht die Funktionen von ISPCP?
In der domain_edit müsstest Du das doch alles so abwickeln können, oder?.

Weil ich das mal eben in ner halben Stunde programmiert hab und abends um 23 uhr keine lust hatte mich mit den Funktionen von ispCP zu beschäftigen.

Aber schön zu sehen, dass Ihr mein Script so schnell vollendet habt. Smile
03-13-2009 09:38 PM
Find all posts by this user
TheCry Away
Member
***

Posts: 851
Joined: Oct 2008
Reputation: 21
Post: #17
RE: [HowTo]: Mailboxquota im GUI einstellen.
(03-13-2009 09:38 PM)FISA4 Wrote:  Aber schön zu sehen, dass Ihr mein Script so schnell vollendet habt. Smile
Dafür gibt es doch die Community...SmileSmile
Aber ohne Deinen Anstoss, wäre ich nicht so recht drauf gekommen!
03-13-2009 09:52 PM
Find all posts by this user
BeNe Offline
Moderator
*****
Moderators

Posts: 5,899
Joined: Jan 2007
Reputation: 68
Post: #18
RE: [HowTo]: Mailboxquota im GUI einstellen.
Quote:Mhhh... Dann könnte der User sich ja über meine Einstellungen hinwegsetzen!!
Und ich als Reseller sage was abgeht.. Wink
Ja, da hast recht!
Default sind meine max. 50MB aber mein perönliches Postfach ist alleine schon 500MB größ. Aber ich kann es wie vorher auch schon direkt in dem DB ändern. Mein Denkfehler

Quote:Dafür gibt es doch die Community...SmileSmile
Aber ohne Deinen Anstoss, wäre ich nicht so recht drauf gekommen!
Ja, danke an euch beide.

Ein Ticket mit Patch ist offen Smile
--> http://www.isp-control.net/ispcp/ticket/1748

Greez BeNe
03-13-2009 09:56 PM
Visit this user's website Find all posts by this user
FISA4 Offline
Member
***

Posts: 668
Joined: Feb 2008
Reputation: 15
Post: #19
RE: [HowTo]: Mailboxquota im GUI einstellen.
(03-13-2009 09:56 PM)BeNe Wrote:  
Quote:Mhhh... Dann könnte der User sich ja über meine Einstellungen hinwegsetzen!!
Und ich als Reseller sage was abgeht.. Wink
Ja, da hast recht!
Default sind meine max. 50MB aber mein perönliches Postfach ist alleine schon 500MB größ. Aber ich kann es wie vorher auch schon direkt in dem DB ändern. Mein Denkfehler

Quote:Dafür gibt es doch die Community...SmileSmile
Aber ohne Deinen Anstoss, wäre ich nicht so recht drauf gekommen!
Ja, danke an euch beide.

Ein Ticket mit Patch ist offen Smile
--> http://www.isp-control.net/ispcp/ticket/1748

Greez BeNe

Das würde gehen, jedoch bräuchten wir dazu noch in der `domain` Datenbank einen zusätzlichen Wert in dem die max. Mailboxquota eingetragen wird. Diesen Wert über den Resellerbereich zu ändern würde einfach eine kleine SQL änderung bedeuten. Dann noch im Userbereich -> Email Accounts-> edit ( ../client/mail_edit.php und ..themes/omega_original/client/mail_edit.tpl ) die Änderung von Gestern und Heute rein , natürlich mit Abfrage was max. erlaubt ist) und schon sollte es laufen.

@TheCry: Soll ich machen und Du machst die Nacharbeiten ?
(This post was last modified: 03-13-2009 10:33 PM by FISA4.)
03-13-2009 10:31 PM
Find all posts by this user
TheCry Away
Member
***

Posts: 851
Joined: Oct 2008
Reputation: 21
Post: #20
RE: [HowTo]: Mailboxquota im GUI einstellen.
(03-13-2009 10:31 PM)FISA4 Wrote:  @TheCry: Soll ich machen und Du machst die Nacharbeiten ?
Wäre nett wenn Du das machst...
Ich schaue gerne mit drauf, aber viel Zeit habe ich am Wochenende nicht
Gruß
Sascha
03-13-2009 11:55 PM
Find all posts by this user
Thread Closed 


Forum Jump:


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