Blame


1 0fd75c45 2022-07-30 mischa <?php
2 0fd75c45 2022-07-30 mischa //
3 0fd75c45 2022-07-30 mischa // Postfix Admin
4 0fd75c45 2022-07-30 mischa // by Mischa Peters <mischa at high5 dot net>
5 0fd75c45 2022-07-30 mischa // Copyright (c) 2002 - 2005 High5!
6 0fd75c45 2022-07-30 mischa // License Info: http://www.postfixadmin.com/?file=LICENSE.TXT
7 0fd75c45 2022-07-30 mischa //
8 0fd75c45 2022-07-30 mischa // File: edit-mailbox.php
9 0fd75c45 2022-07-30 mischa //
10 0fd75c45 2022-07-30 mischa // Template File: edit-mailbox.tpl
11 0fd75c45 2022-07-30 mischa //
12 0fd75c45 2022-07-30 mischa // Template Variables:
13 0fd75c45 2022-07-30 mischa //
14 0fd75c45 2022-07-30 mischa // tMessage
15 0fd75c45 2022-07-30 mischa // tName
16 0fd75c45 2022-07-30 mischa // tQuota
17 0fd75c45 2022-07-30 mischa //
18 0fd75c45 2022-07-30 mischa // Form POST \ GET Variables:
19 0fd75c45 2022-07-30 mischa //
20 0fd75c45 2022-07-30 mischa // fUsername
21 0fd75c45 2022-07-30 mischa // fDomain
22 0fd75c45 2022-07-30 mischa // fPassword
23 0fd75c45 2022-07-30 mischa // fPassword2
24 0fd75c45 2022-07-30 mischa // fName
25 0fd75c45 2022-07-30 mischa // fQuota
26 0fd75c45 2022-07-30 mischa // fActive
27 0fd75c45 2022-07-30 mischa //
28 0fd75c45 2022-07-30 mischa require ("./variables.inc.php");
29 0fd75c45 2022-07-30 mischa require ("./config.inc.php");
30 0fd75c45 2022-07-30 mischa require ("./functions.inc.php");
31 0fd75c45 2022-07-30 mischa include ("./languages/" . check_language () . ".lang");
32 0fd75c45 2022-07-30 mischa
33 0fd75c45 2022-07-30 mischa $SESSID_USERNAME = check_session ();
34 0fd75c45 2022-07-30 mischa
35 0fd75c45 2022-07-30 mischa if ($_SERVER['REQUEST_METHOD'] == "GET")
36 0fd75c45 2022-07-30 mischa {
37 0fd75c45 2022-07-30 mischa $fUsername = escape_string ($_GET['username']);
38 0fd75c45 2022-07-30 mischa $fDomain = escape_string ($_GET['domain']);
39 0fd75c45 2022-07-30 mischa
40 0fd75c45 2022-07-30 mischa if (check_owner ($SESSID_USERNAME, $fDomain))
41 0fd75c45 2022-07-30 mischa {
42 0fd75c45 2022-07-30 mischa $result = db_query ("SELECT * FROM mailbox WHERE username='$fUsername' AND domain='$fDomain'");
43 0fd75c45 2022-07-30 mischa if ($result['rows'] == 1)
44 0fd75c45 2022-07-30 mischa {
45 0fd75c45 2022-07-30 mischa $row = db_array ($result['result']);
46 0fd75c45 2022-07-30 mischa $tName = $row['name'];
47 0fd75c45 2022-07-30 mischa $tQuota = $row['quota'] / $CONF['quota_multiplier'];
48 0fd75c45 2022-07-30 mischa $tActive = $row['active'];
49 0fd75c45 2022-07-30 mischa }
50 0fd75c45 2022-07-30 mischa }
51 0fd75c45 2022-07-30 mischa else
52 0fd75c45 2022-07-30 mischa {
53 0fd75c45 2022-07-30 mischa $tMessage = $PALANG['pEdit_mailbox_login_error'];
54 0fd75c45 2022-07-30 mischa }
55 0fd75c45 2022-07-30 mischa
56 0fd75c45 2022-07-30 mischa include ("./templates/header.tpl");
57 0fd75c45 2022-07-30 mischa include ("./templates/menu.tpl");
58 0fd75c45 2022-07-30 mischa include ("./templates/edit-mailbox.tpl");
59 0fd75c45 2022-07-30 mischa include ("./templates/footer.tpl");
60 0fd75c45 2022-07-30 mischa }
61 0fd75c45 2022-07-30 mischa
62 0fd75c45 2022-07-30 mischa if ($_SERVER['REQUEST_METHOD'] == "POST")
63 0fd75c45 2022-07-30 mischa {
64 0fd75c45 2022-07-30 mischa $pEdit_mailbox_password_text = $PALANG['pEdit_mailbox_password_text_error'];
65 0fd75c45 2022-07-30 mischa $pEdit_mailbox_quota_text = $PALANG['pEdit_mailbox_quota_text'];
66 0fd75c45 2022-07-30 mischa
67 0fd75c45 2022-07-30 mischa $fUsername = escape_string ($_GET['username']);
68 0fd75c45 2022-07-30 mischa $fUsername = strtolower ($fUsername);
69 0fd75c45 2022-07-30 mischa $fDomain = escape_string ($_GET['domain']);
70 0fd75c45 2022-07-30 mischa
71 0fd75c45 2022-07-30 mischa $fPassword = escape_string ($_POST['fPassword']);
72 0fd75c45 2022-07-30 mischa $fPassword2 = escape_string ($_POST['fPassword2']);
73 0fd75c45 2022-07-30 mischa $fName = escape_string ($_POST['fName']);
74 0fd75c45 2022-07-30 mischa if (isset ($_POST['fQuota'])) $fQuota = escape_string ($_POST['fQuota']);
75 0fd75c45 2022-07-30 mischa if (isset ($_POST['fActive'])) $fActive = escape_string ($_POST['fActive']);
76 0fd75c45 2022-07-30 mischa
77 0fd75c45 2022-07-30 mischa if (!check_owner ($SESSID_USERNAME, $fDomain))
78 0fd75c45 2022-07-30 mischa {
79 0fd75c45 2022-07-30 mischa $error = 1;
80 0fd75c45 2022-07-30 mischa $tName = $fName;
81 0fd75c45 2022-07-30 mischa $tQuota = $fQuota;
82 0fd75c45 2022-07-30 mischa $tActive = $fActive;
83 0fd75c45 2022-07-30 mischa $tMessage = $PALANG['pEdit_mailbox_domain_error'] . "$fDomain</font>";
84 0fd75c45 2022-07-30 mischa }
85 0fd75c45 2022-07-30 mischa
86 0fd75c45 2022-07-30 mischa if ($fPassword != $fPassword2)
87 0fd75c45 2022-07-30 mischa {
88 0fd75c45 2022-07-30 mischa $error = 1;
89 0fd75c45 2022-07-30 mischa $tName = $fName;
90 0fd75c45 2022-07-30 mischa $tQuota = $fQuota;
91 0fd75c45 2022-07-30 mischa $tActive = $fActive;
92 0fd75c45 2022-07-30 mischa $pEdit_mailbox_password_text = $PALANG['pEdit_mailbox_password_text_error'];
93 0fd75c45 2022-07-30 mischa }
94 0fd75c45 2022-07-30 mischa
95 0fd75c45 2022-07-30 mischa if ($CONF['quota'] == "YES")
96 0fd75c45 2022-07-30 mischa {
97 0fd75c45 2022-07-30 mischa if (!check_quota ($fQuota, $fDomain))
98 0fd75c45 2022-07-30 mischa {
99 0fd75c45 2022-07-30 mischa $error = 1;
100 0fd75c45 2022-07-30 mischa $tName = $fName;
101 0fd75c45 2022-07-30 mischa $tQuota = $fQuota;
102 0fd75c45 2022-07-30 mischa $tActive = $fActive;
103 0fd75c45 2022-07-30 mischa $pEdit_mailbox_quota_text = $PALANG['pEdit_mailbox_quota_text_error'];
104 0fd75c45 2022-07-30 mischa }
105 0fd75c45 2022-07-30 mischa }
106 0fd75c45 2022-07-30 mischa
107 0fd75c45 2022-07-30 mischa if ($error != 1)
108 0fd75c45 2022-07-30 mischa {
109 0fd75c45 2022-07-30 mischa if (!empty ($fQuota))
110 0fd75c45 2022-07-30 mischa {
111 0fd75c45 2022-07-30 mischa $quota = $fQuota * $CONF['quota_multiplier'];
112 0fd75c45 2022-07-30 mischa }
113 0fd75c45 2022-07-30 mischa else
114 0fd75c45 2022-07-30 mischa {
115 0fd75c45 2022-07-30 mischa $quota = 0;
116 0fd75c45 2022-07-30 mischa }
117 0fd75c45 2022-07-30 mischa
118 0fd75c45 2022-07-30 mischa if ($fActive == "on")
119 0fd75c45 2022-07-30 mischa {
120 0fd75c45 2022-07-30 mischa $fActive = 1;
121 0fd75c45 2022-07-30 mischa }
122 0fd75c45 2022-07-30 mischa else
123 0fd75c45 2022-07-30 mischa {
124 0fd75c45 2022-07-30 mischa $fActive = 0;
125 0fd75c45 2022-07-30 mischa }
126 0fd75c45 2022-07-30 mischa
127 0fd75c45 2022-07-30 mischa if (empty ($fPassword) and empty ($fPassword2))
128 0fd75c45 2022-07-30 mischa {
129 0fd75c45 2022-07-30 mischa $result = db_query ("UPDATE mailbox SET name='$fName',quota='$quota',modified=NOW(),active='$fActive' WHERE username='$fUsername' AND domain='$fDomain'");
130 0fd75c45 2022-07-30 mischa }
131 0fd75c45 2022-07-30 mischa else
132 0fd75c45 2022-07-30 mischa {
133 0fd75c45 2022-07-30 mischa $password = pacrypt ($fPassword);
134 0fd75c45 2022-07-30 mischa $result = db_query ("UPDATE mailbox SET password='$password',name='$fName',quota='$quota',modified=NOW(),active='$fActive' WHERE username='$fUsername' AND domain='$fDomain'");
135 0fd75c45 2022-07-30 mischa }
136 0fd75c45 2022-07-30 mischa
137 0fd75c45 2022-07-30 mischa if ($result['rows'] != 1)
138 0fd75c45 2022-07-30 mischa {
139 0fd75c45 2022-07-30 mischa $tMessage = $PALANG['pEdit_mailbox_result_error'];
140 0fd75c45 2022-07-30 mischa }
141 0fd75c45 2022-07-30 mischa else
142 0fd75c45 2022-07-30 mischa {
143 0fd75c45 2022-07-30 mischa db_log ($SESSID_USERNAME, $fDomain, "edit mailbox", $fUsername);
144 0fd75c45 2022-07-30 mischa
145 0fd75c45 2022-07-30 mischa header ("Location: overview.php?domain=$fDomain");
146 0fd75c45 2022-07-30 mischa exit;
147 0fd75c45 2022-07-30 mischa }
148 0fd75c45 2022-07-30 mischa }
149 0fd75c45 2022-07-30 mischa
150 0fd75c45 2022-07-30 mischa include ("./templates/header.tpl");
151 0fd75c45 2022-07-30 mischa include ("./templates/menu.tpl");
152 0fd75c45 2022-07-30 mischa include ("./templates/edit-mailbox.tpl");
153 0fd75c45 2022-07-30 mischa include ("./templates/footer.tpl");
154 0fd75c45 2022-07-30 mischa }
155 0fd75c45 2022-07-30 mischa ?>