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: overview.php
9 0fd75c45 2022-07-30 mischa //
10 0fd75c45 2022-07-30 mischa // Template File: overview.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 // tAlias
15 0fd75c45 2022-07-30 mischa // tDomain
16 0fd75c45 2022-07-30 mischa // tMailbox
17 0fd75c45 2022-07-30 mischa // tDisplay_back
18 0fd75c45 2022-07-30 mischa // tDisplay_next
19 0fd75c45 2022-07-30 mischa //
20 0fd75c45 2022-07-30 mischa // Form POST \ GET Variables:
21 0fd75c45 2022-07-30 mischa //
22 0fd75c45 2022-07-30 mischa // domain
23 0fd75c45 2022-07-30 mischa // fDomain
24 0fd75c45 2022-07-30 mischa // limit
25 0fd75c45 2022-07-30 mischa //
26 0fd75c45 2022-07-30 mischa require ("./variables.inc.php");
27 0fd75c45 2022-07-30 mischa require ("./config.inc.php");
28 0fd75c45 2022-07-30 mischa require ("./functions.inc.php");
29 0fd75c45 2022-07-30 mischa include ("./languages/" . check_language () . ".lang");
30 0fd75c45 2022-07-30 mischa
31 0fd75c45 2022-07-30 mischa $SESSID_USERNAME = check_session();
32 0fd75c45 2022-07-30 mischa $list_domains = list_domains_for_admin ($SESSID_USERNAME);
33 0fd75c45 2022-07-30 mischa
34 0fd75c45 2022-07-30 mischa $tAlias = array();
35 0fd75c45 2022-07-30 mischa $tMailbox = array();
36 0fd75c45 2022-07-30 mischa
37 0fd75c45 2022-07-30 mischa if ($_SERVER['REQUEST_METHOD'] == "GET")
38 0fd75c45 2022-07-30 mischa {
39 0fd75c45 2022-07-30 mischa $fDisplay = 0;
40 0fd75c45 2022-07-30 mischa $page_size = $CONF['page_size'];
41 0fd75c45 2022-07-30 mischa
42 0fd75c45 2022-07-30 mischa if (isset ($_GET['domain'])) $fDomain = escape_string ($_GET['domain']);
43 0fd75c45 2022-07-30 mischa if (isset ($_GET['limit'])) $fDisplay = escape_string ($_GET['limit']);
44 0fd75c45 2022-07-30 mischa
45 0fd75c45 2022-07-30 mischa if (check_owner ($SESSID_USERNAME, $fDomain))
46 0fd75c45 2022-07-30 mischa {
47 0fd75c45 2022-07-30 mischa $limit = get_domain_properties ($fDomain);
48 0fd75c45 2022-07-30 mischa
49 0fd75c45 2022-07-30 mischa if ($CONF['alias_control'] == "YES")
50 0fd75c45 2022-07-30 mischa {
51 0fd75c45 2022-07-30 mischa $query = "SELECT alias.address,alias.goto,alias.modified FROM alias WHERE alias.domain='$fDomain' ORDER BY alias.address LIMIT $fDisplay, $page_size";
52 0fd75c45 2022-07-30 mischa }
53 0fd75c45 2022-07-30 mischa else
54 0fd75c45 2022-07-30 mischa {
55 0fd75c45 2022-07-30 mischa $query = "SELECT alias.address,alias.goto,alias.modified FROM alias LEFT JOIN mailbox ON alias.address=mailbox.username WHERE alias.domain='$fDomain' AND mailbox.maildir IS NULL ORDER BY alias.address LIMIT $fDisplay, $page_size";
56 0fd75c45 2022-07-30 mischa }
57 0fd75c45 2022-07-30 mischa
58 0fd75c45 2022-07-30 mischa $result = db_query ("$query");
59 0fd75c45 2022-07-30 mischa if ($result['rows'] > 0)
60 0fd75c45 2022-07-30 mischa {
61 0fd75c45 2022-07-30 mischa while ($row = db_array ($result['result']))
62 0fd75c45 2022-07-30 mischa {
63 0fd75c45 2022-07-30 mischa $tAlias[] = $row;
64 0fd75c45 2022-07-30 mischa }
65 0fd75c45 2022-07-30 mischa }
66 0fd75c45 2022-07-30 mischa
67 0fd75c45 2022-07-30 mischa $result = db_query ("SELECT * FROM mailbox WHERE domain='$fDomain' ORDER BY username LIMIT $fDisplay, $page_size");
68 0fd75c45 2022-07-30 mischa if ($result['rows'] > 0)
69 0fd75c45 2022-07-30 mischa {
70 0fd75c45 2022-07-30 mischa while ($row = db_array ($result['result']))
71 0fd75c45 2022-07-30 mischa {
72 0fd75c45 2022-07-30 mischa $tMailbox[] = $row;
73 0fd75c45 2022-07-30 mischa }
74 0fd75c45 2022-07-30 mischa }
75 0fd75c45 2022-07-30 mischa $template = "overview.tpl";
76 0fd75c45 2022-07-30 mischa }
77 0fd75c45 2022-07-30 mischa else
78 0fd75c45 2022-07-30 mischa {
79 0fd75c45 2022-07-30 mischa $template = "overview-get.tpl";
80 0fd75c45 2022-07-30 mischa }
81 0fd75c45 2022-07-30 mischa
82 0fd75c45 2022-07-30 mischa $tDomain = $fDomain;
83 0fd75c45 2022-07-30 mischa
84 0fd75c45 2022-07-30 mischa if (isset ($limit))
85 0fd75c45 2022-07-30 mischa {
86 0fd75c45 2022-07-30 mischa if ($fDisplay >= $page_size)
87 0fd75c45 2022-07-30 mischa {
88 0fd75c45 2022-07-30 mischa $tDisplay_back_show = 1;
89 0fd75c45 2022-07-30 mischa $tDisplay_back = $fDisplay - $page_size;
90 0fd75c45 2022-07-30 mischa }
91 0fd75c45 2022-07-30 mischa if (($limit['alias_count'] > $page_size) or ($limit['mailbox_count'] > $page_size))
92 0fd75c45 2022-07-30 mischa {
93 0fd75c45 2022-07-30 mischa $tDisplay_up_show = 1;
94 0fd75c45 2022-07-30 mischa }
95 0fd75c45 2022-07-30 mischa if ((($fDisplay + $page_size) < $limit['alias_count']) or (($fDisplay + $page_size) < $limit['mailbox_count']))
96 0fd75c45 2022-07-30 mischa {
97 0fd75c45 2022-07-30 mischa $tDisplay_next_show = 1;
98 0fd75c45 2022-07-30 mischa $tDisplay_next = $fDisplay + $page_size;
99 0fd75c45 2022-07-30 mischa }
100 0fd75c45 2022-07-30 mischa }
101 0fd75c45 2022-07-30 mischa
102 0fd75c45 2022-07-30 mischa include ("./templates/header.tpl");
103 0fd75c45 2022-07-30 mischa include ("./templates/menu.tpl");
104 0fd75c45 2022-07-30 mischa include ("./templates/$template");
105 0fd75c45 2022-07-30 mischa include ("./templates/footer.tpl");
106 0fd75c45 2022-07-30 mischa }
107 0fd75c45 2022-07-30 mischa
108 0fd75c45 2022-07-30 mischa if ($_SERVER['REQUEST_METHOD'] == "POST")
109 0fd75c45 2022-07-30 mischa {
110 0fd75c45 2022-07-30 mischa $fDisplay = 0;
111 0fd75c45 2022-07-30 mischa $page_size = $CONF['page_size'];
112 0fd75c45 2022-07-30 mischa
113 0fd75c45 2022-07-30 mischa if (isset ($_POST['limit'])) $fDisplay = escape_string ($_POST['limit']);
114 0fd75c45 2022-07-30 mischa
115 0fd75c45 2022-07-30 mischa if (check_owner ($SESSID_USERNAME, escape_string ($_POST['fDomain'])))
116 0fd75c45 2022-07-30 mischa {
117 0fd75c45 2022-07-30 mischa $fDomain = escape_string ($_POST['fDomain']);
118 0fd75c45 2022-07-30 mischa
119 0fd75c45 2022-07-30 mischa $limit = get_domain_properties ($fDomain);
120 0fd75c45 2022-07-30 mischa
121 0fd75c45 2022-07-30 mischa if ($CONF['alias_control'] == "YES")
122 0fd75c45 2022-07-30 mischa {
123 0fd75c45 2022-07-30 mischa $query = "SELECT alias.address,alias.goto,alias.modified FROM alias WHERE alias.domain='$fDomain' ORDER BY alias.address LIMIT $fDisplay, $page_size";
124 0fd75c45 2022-07-30 mischa }
125 0fd75c45 2022-07-30 mischa else
126 0fd75c45 2022-07-30 mischa {
127 0fd75c45 2022-07-30 mischa $query = "SELECT alias.address,alias.goto,alias.modified FROM alias LEFT JOIN mailbox ON alias.address=mailbox.username WHERE alias.domain='$fDomain' AND mailbox.maildir IS NULL ORDER BY alias.address LIMIT $fDisplay, $page_size";
128 0fd75c45 2022-07-30 mischa }
129 0fd75c45 2022-07-30 mischa
130 0fd75c45 2022-07-30 mischa $result = db_query ("$query");
131 0fd75c45 2022-07-30 mischa if ($result['rows'] > 0)
132 0fd75c45 2022-07-30 mischa {
133 0fd75c45 2022-07-30 mischa while ($row = db_array ($result['result']))
134 0fd75c45 2022-07-30 mischa {
135 0fd75c45 2022-07-30 mischa $tAlias[] = $row;
136 0fd75c45 2022-07-30 mischa }
137 0fd75c45 2022-07-30 mischa }
138 0fd75c45 2022-07-30 mischa
139 0fd75c45 2022-07-30 mischa $result = db_query ("SELECT * FROM mailbox WHERE domain='$fDomain' ORDER BY username LIMIT $fDisplay, $page_size");
140 0fd75c45 2022-07-30 mischa if ($result['rows'] > 0)
141 0fd75c45 2022-07-30 mischa {
142 0fd75c45 2022-07-30 mischa while ($row = db_array ($result['result']))
143 0fd75c45 2022-07-30 mischa {
144 0fd75c45 2022-07-30 mischa $tMailbox[] = $row;
145 0fd75c45 2022-07-30 mischa }
146 0fd75c45 2022-07-30 mischa }
147 0fd75c45 2022-07-30 mischa }
148 0fd75c45 2022-07-30 mischa
149 0fd75c45 2022-07-30 mischa if (isset ($limit))
150 0fd75c45 2022-07-30 mischa {
151 0fd75c45 2022-07-30 mischa if ($fDisplay >= $page_size)
152 0fd75c45 2022-07-30 mischa {
153 0fd75c45 2022-07-30 mischa $tDisplay_back_show = 1;
154 0fd75c45 2022-07-30 mischa $tDisplay_back = $fDisplay - $page_size;
155 0fd75c45 2022-07-30 mischa }
156 0fd75c45 2022-07-30 mischa if (($limit['alias_count'] > $page_size) or ($limit['mailbox_count'] > $page_size))
157 0fd75c45 2022-07-30 mischa {
158 0fd75c45 2022-07-30 mischa $tDisplay_up_show = 1;
159 0fd75c45 2022-07-30 mischa }
160 0fd75c45 2022-07-30 mischa if ((($fDisplay + $page_size) < $limit['alias_count']) or (($fDisplay + $page_size) < $limit['mailbox_count']))
161 0fd75c45 2022-07-30 mischa {
162 0fd75c45 2022-07-30 mischa $tDisplay_next_show = 1;
163 0fd75c45 2022-07-30 mischa $tDisplay_next = $fDisplay + $page_size;
164 0fd75c45 2022-07-30 mischa }
165 0fd75c45 2022-07-30 mischa }
166 0fd75c45 2022-07-30 mischa
167 0fd75c45 2022-07-30 mischa include ("./templates/header.tpl");
168 0fd75c45 2022-07-30 mischa include ("./templates/menu.tpl");
169 0fd75c45 2022-07-30 mischa include ("./templates/overview.tpl");
170 0fd75c45 2022-07-30 mischa include ("./templates/footer.tpl");
171 0fd75c45 2022-07-30 mischa }
172 0fd75c45 2022-07-30 mischa ?>