Bernd Wurst commited on 2018-02-20 11:35:39
Zeige 5 geänderte Dateien mit 51 Einfügungen und 4 Löschungen.
| ... | ... |
@@ -75,7 +75,7 @@ if ($is_current_user) {
|
| 75 | 75 |
$used = true; |
| 76 | 76 |
} |
| 77 | 77 |
if (have_module('email') && mail_in_use($dom->id)) {
|
| 78 |
- output("<p>Es gibt E-Mail-Postfächer unter dieser Domain ".internal_link('../email/vmail', '→ Bearbeiten', 'domain='.$dom->fqdn)."</p>");
|
|
| 78 |
+ output("<p>Es gibt E-Mail-Postfächer unter dieser Domain ".internal_link('../email/vmail', '→ Bearbeiten', 'filter='.$dom->fqdn)."</p>");
|
|
| 79 | 79 |
$used = true; |
| 80 | 80 |
} |
| 81 | 81 |
if (have_module('mailman') && mailman_subdomains($dom->id)) {
|
| ... | ... |
@@ -18,6 +18,8 @@ require_once('inc/base.php');
|
| 18 | 18 |
require_once('inc/icons.php');
|
| 19 | 19 |
require_once('inc/security.php');
|
| 20 | 20 |
require_role(ROLE_SYSTEMUSER); |
| 21 |
+require_once('inc/jquery.php');
|
|
| 22 |
+javascript(); |
|
| 21 | 23 |
|
| 22 | 24 |
require_once('hasdomain.php');
|
| 23 | 25 |
|
| ... | ... |
@@ -44,6 +46,10 @@ Subdomains können grundsätzlich nur durch Administratoren eingerichtet und ver |
| 44 | 46 |
else |
| 45 | 47 |
{
|
| 46 | 48 |
|
| 49 |
+$filter = NULL; |
|
| 50 |
+if (isset($_REQUEST['filter']) && $_REQUEST['filter'] != '') {
|
|
| 51 |
+ $filter = $_REQUEST['filter']; |
|
| 52 |
+} |
|
| 47 | 53 |
|
| 48 | 54 |
require_once('vmail.php');
|
| 49 | 55 |
|
| ... | ... |
@@ -67,11 +73,32 @@ addnew("edit", "Neue E-Mail-Adresse anlegen");
|
| 67 | 73 |
|
| 68 | 74 |
if (count($domains) > 0) |
| 69 | 75 |
{
|
| 76 |
+ // Filter-Funktion |
|
| 77 |
+ if (count($all_accounts) > 10 || $filter) {
|
|
| 78 |
+ $form = '<p><label for="filter">Filter für die Anzeige:</label> <input type="text" name="filter" id="filter" value="'.$filter.'"><button type="button" id="clear" title="Filter leeren">×</button><input type="submit" value="Filtern!"></p>'; |
|
| 79 |
+ output(html_form('vmail_filter', 'vmail', '', $form));
|
|
| 80 |
+ } |
|
| 81 |
+ |
|
| 70 | 82 |
output('
|
| 71 | 83 |
<p>Folgende E-Mail-Konten sind aktuell eingerichtet:</p> |
| 72 | 84 |
'); |
| 73 | 85 |
foreach ($domains as $dom) |
| 74 | 86 |
{
|
| 87 |
+ if ($filter && strpos($dom['domainname'], $filter) === false) {
|
|
| 88 |
+ // Die Domain entspricht nicht dem Filter, schau die Postfächer an |
|
| 89 |
+ $account_found = false; |
|
| 90 |
+ if (array_key_exists($dom['id'], $sorted_by_domains)) {
|
|
| 91 |
+ $accounts_on_domain = $sorted_by_domains[$dom['id']]; |
|
| 92 |
+ foreach ($accounts_on_domain AS $this_account) {
|
|
| 93 |
+ if (strpos($this_account['local'], $filter) !== false) {
|
|
| 94 |
+ $account_found = true; |
|
| 95 |
+ } |
|
| 96 |
+ } |
|
| 97 |
+ } |
|
| 98 |
+ if (! $account_found) {
|
|
| 99 |
+ continue; |
|
| 100 |
+ } |
|
| 101 |
+ } |
|
| 75 | 102 |
output('
|
| 76 | 103 |
<h4>'.$dom['domainname'].' <small>('.other_icon('information.png', 'Zugangsdaten anzeigen').' '.internal_link('logindata', 'Zugangsdaten für E-Mail-Abruf anzeigen', 'server='.get_server_by_id($dom['server']).'&type=vmail').')</small></h4>
|
| 77 | 104 |
<div style="margin-left: 2em; margin-top: 0.5em; padding: 0.1em 0.5em;">'); |
| ... | ... |
@@ -80,6 +107,11 @@ if (count($domains) > 0) |
| 80 | 107 |
|
| 81 | 108 |
foreach ($accounts_on_domain AS $this_account) |
| 82 | 109 |
{
|
| 110 |
+ if ($filter && |
|
| 111 |
+ (strpos($dom['domainname'], $filter) === false && |
|
| 112 |
+ strpos($this_account['local'], $filter) === false)) {
|
|
| 113 |
+ continue; |
|
| 114 |
+ } |
|
| 83 | 115 |
$acc = get_account_details($this_account['id']); |
| 84 | 116 |
$actions = array(); |
| 85 | 117 |
DEBUG($acc); |
| ... | ... |
@@ -39,9 +39,6 @@ $filter = ""; |
| 39 | 39 |
if (isset($_REQUEST['filter']) && $_REQUEST['filter'] != '') {
|
| 40 | 40 |
$filter = $_REQUEST['filter']; |
| 41 | 41 |
} |
| 42 |
-if (isset($_REQUEST['clear']) && $_REQUEST['clear'] == 'X') {
|
|
| 43 |
- $filter = ""; |
|
| 44 |
-} |
|
| 45 | 42 |
$vhosts = list_vhosts($filter); |
| 46 | 43 |
|
| 47 | 44 |
|
| 48 | 45 |