diff --git a/interface/lib/app.inc.php b/interface/lib/app.inc.php index 432fdabb1fa0e834747fad33253fb04764ebca69..ff344d09aea53e77f4b6470be6d17e5c546cf31f 100755 --- a/interface/lib/app.inc.php +++ b/interface/lib/app.inc.php @@ -246,6 +246,13 @@ class app { $this->tpl->setVar('cpuser', $_SESSION['s']['user']['username']); $this->tpl->setVar('logout_txt', $this->lng('logout_txt')); } + + /* Global Search */ + $this->tpl->setVar('globalsearch_resultslimit_of_txt', $this->lng('globalsearch_resultslimit_of_txt')); + $this->tpl->setVar('globalsearch_resultslimit_results_txt', $this->lng('globalsearch_resultslimit_results_txt')); + $this->tpl->setVar('globalsearch_noresults_text_txt', $this->lng('globalsearch_noresults_text_txt')); + $this->tpl->setVar('globalsearch_noresults_limit_txt', $this->lng('globalsearch_noresults_limit_txt')); + $this->tpl->setVar('globalsearch_searchfield_watermark_txt', $this->lng('globalsearch_searchfield_watermark_txt')); } } // end class diff --git a/interface/lib/lang/de.lng b/interface/lib/lang/de.lng index fddee77fc9650ded8a9169adb3ce72b4da0be3dc..dfaad28e81beab53348bade4fedcfaa73fd0c23f 100644 --- a/interface/lib/lang/de.lng +++ b/interface/lib/lang/de.lng @@ -70,4 +70,9 @@ $wb['datepicker_nextText'] = 'Vor'; $wb['datepicker_prevText'] = 'Zurück'; $wb['logout_txt'] = 'LOGOUT'; $wb['submit_confirmation'] = 'Wollen Sie diese Aktion wirlich ausführen?'; +$wb['globalsearch_resultslimit_of_txt'] = "von"; +$wb['globalsearch_resultslimit_results_txt'] = "Treffern"; +$wb['globalsearch_noresults_text_txt'] = "Keine Treffer."; +$wb['globalsearch_noresults_limit_txt'] = "0 Treffer"; +$wb['globalsearch_searchfield_watermark_txt'] = "Suche"; ?> diff --git a/interface/lib/lang/en.lng b/interface/lib/lang/en.lng index bdd5d674e1e96e67c644e22066b258329ca2d6f6..4673a707c6a723a19ce9a99aec85adcdeda48fb6 100644 --- a/interface/lib/lang/en.lng +++ b/interface/lib/lang/en.lng @@ -71,4 +71,9 @@ $wb['monthnamesshort_dec'] = "Dec"; $wb['datepicker_nextText'] = "Next"; $wb['datepicker_prevText'] = "Prev"; $wb['submit_confirmation'] = "Do you really want to perform this action?"; +$wb['globalsearch_resultslimit_of_txt'] = "of"; +$wb['globalsearch_resultslimit_results_txt'] = "results"; +$wb['globalsearch_noresults_text_txt'] = "No results."; +$wb['globalsearch_noresults_limit_txt'] = "0 results"; +$wb['globalsearch_searchfield_watermark_txt'] = "Search"; ?> diff --git a/interface/web/client/form/reseller.tform.php b/interface/web/client/form/reseller.tform.php index f78e98a783dbf0291458de16db30c2da3d9e36e6..fe3815917383f4e446db6ca51a0735c7cd82346a 100644 --- a/interface/web/client/form/reseller.tform.php +++ b/interface/web/client/form/reseller.tform.php @@ -29,6 +29,11 @@ Hint: The ID field of the database table is not part of the datafield definition. The ID field must be always auto incement (int or bigint). + + Search: + - searchable = 1 or searchable = 2 include the field in the search + - searchable = 1: this field will be the title of the search result + - searchable = 2: this field will be included in the description of the search result */ @@ -90,7 +95,8 @@ $form["tabs"]['address'] = array ( 'width' => '30', 'maxlength' => '255', 'rows' => '', - 'cols' => '' + 'cols' => '', + 'searchable' => 2 ), 'contact_name' => array ( 'datatype' => 'VARCHAR', @@ -104,7 +110,8 @@ $form["tabs"]['address'] = array ( 'width' => '30', 'maxlength' => '255', 'rows' => '', - 'cols' => '' + 'cols' => '', + 'searchable' => 1 ), 'customer_no' => array ( 'datatype' => 'VARCHAR', @@ -115,7 +122,8 @@ $form["tabs"]['address'] = array ( 'width' => '30', 'maxlength' => '255', 'rows' => '', - 'cols' => '' + 'cols' => '', + 'searchable' => 2 ), 'username' => array ( 'datatype' => 'VARCHAR', @@ -140,7 +148,8 @@ $form["tabs"]['address'] = array ( 'width' => '30', 'maxlength' => '255', 'rows' => '', - 'cols' => '' + 'cols' => '', + 'searchable' => 2 ), 'password' => array ( 'datatype' => 'VARCHAR', @@ -185,7 +194,8 @@ $form["tabs"]['address'] = array ( 'width' => '30', 'maxlength' => '255', 'rows' => '', - 'cols' => '' + 'cols' => '', + 'searchable' => 2 ), 'zip' => array ( 'datatype' => 'VARCHAR', @@ -196,7 +206,8 @@ $form["tabs"]['address'] = array ( 'width' => '10', 'maxlength' => '255', 'rows' => '', - 'cols' => '' + 'cols' => '', + 'searchable' => 2 ), 'city' => array ( 'datatype' => 'VARCHAR', @@ -207,7 +218,8 @@ $form["tabs"]['address'] = array ( 'width' => '30', 'maxlength' => '255', 'rows' => '', - 'cols' => '' + 'cols' => '', + 'searchable' => 2 ), 'state' => array ( 'datatype' => 'VARCHAR', @@ -218,7 +230,8 @@ $form["tabs"]['address'] = array ( 'width' => '30', 'maxlength' => '255', 'rows' => '', - 'cols' => '' + 'cols' => '', + 'searchable' => 2 ), 'country' => array ( 'datatype' => 'VARCHAR', @@ -241,7 +254,8 @@ $form["tabs"]['address'] = array ( 'width' => '30', 'maxlength' => '255', 'rows' => '', - 'cols' => '' + 'cols' => '', + 'searchable' => 2 ), 'mobile' => array ( 'datatype' => 'VARCHAR', @@ -252,7 +266,8 @@ $form["tabs"]['address'] = array ( 'width' => '30', 'maxlength' => '255', 'rows' => '', - 'cols' => '' + 'cols' => '', + 'searchable' => 2 ), 'fax' => array ( 'datatype' => 'VARCHAR', @@ -263,7 +278,8 @@ $form["tabs"]['address'] = array ( 'width' => '30', 'maxlength' => '255', 'rows' => '', - 'cols' => '' + 'cols' => '', + 'searchable' => 2 ), 'email' => array ( 'datatype' => 'VARCHAR', @@ -274,7 +290,8 @@ $form["tabs"]['address'] = array ( 'width' => '30', 'maxlength' => '255', 'rows' => '', - 'cols' => '' + 'cols' => '', + 'searchable' => 2 ), 'internet' => array ( 'datatype' => 'VARCHAR', @@ -285,7 +302,8 @@ $form["tabs"]['address'] = array ( 'width' => '30', 'maxlength' => '255', 'rows' => '', - 'cols' => '' + 'cols' => '', + 'searchable' => 2 ), 'icq' => array ( 'datatype' => 'VARCHAR', diff --git a/interface/web/dashboard/ajax_get_json.php b/interface/web/dashboard/ajax_get_json.php index 18cd1e45e8bc57bd748fd736f581288c2315b22d..817853df82598f90cf8fc826f3e9e2f6dfe6893e 100644 --- a/interface/web/dashboard/ajax_get_json.php +++ b/interface/web/dashboard/ajax_get_json.php @@ -46,17 +46,22 @@ $type = $_GET["type"]; $authsql = " AND ".$app->tform->getAuthSQL('r'); $modules = explode(',', $_SESSION['s']['user']['modules']); + $result = array(); + // clients - $result_clients = _search('client', 'client'); + $result[] = _search('client', 'client', "AND limit_client = 0"); + + // resellers + $result[] = _search('client', 'reseller', "AND limit_client != 0"); // web sites - $result_webs = _search('sites', 'web_domain'); + $result[] = _search('sites', 'web_domain'); // FTP users - $result_ftp_users = _search('sites', 'ftp_user'); + $result[] = _search('sites', 'ftp_user'); // shell users - $result_shell_users = _search('sites', 'shell_user'); + $result[] = _search('sites', 'shell_user'); // databases /* @@ -81,42 +86,60 @@ $type = $_GET["type"]; } } */ - $result_databases = _search('sites', 'database'); + $result[] = _search('sites', 'database'); // email domains - $result_email_domains = _search('mail', 'mail_domain'); + $result[] = _search('mail', 'mail_domain'); + + // email alias domains + $result[] = _search('mail', 'mail_aliasdomain', "AND type = 'aliasdomain'"); // email mailboxes - $result_email_mailboxes = _search('mail', 'mail_user'); + $result[] = _search('mail', 'mail_user'); + + // email aliases + $result[] = _search('mail', 'mail_alias', "AND type = 'alias'"); + + // email forwards + $result[] = _search('mail', 'mail_forward', "AND type = 'forward'"); + + // email catchalls + $result[] = _search('mail', 'mail_domain_catchall', "AND type = 'catchall'"); + + // email transports + $result[] = _search('mail', 'mail_transport'); + + // mailinglists + $result[] = _search('mail', 'mail_mailinglist'); + + // getmails + $result[] = _search('mail', 'mail_get'); // dns zones - $result_dns_zones = _search('dns', 'dns_soa'); + $result[] = _search('dns', 'dns_soa'); // secondary dns zones - $result_secondary_dns_zones = _search('dns', 'dns_slave'); + $result[] = _search('dns', 'dns_slave'); // virtual machines - $result_vms = _search('vm', 'openvz_vm'); + $result[] = _search('vm', 'openvz_vm'); // virtual machines os templates - $result_vm_ostemplates = _search('vm', 'openvz_ostemplate'); + $result[] = _search('vm', 'openvz_ostemplate'); // virtual machines vm templates - $result_vm_vmtemplates = _search('vm', 'openvz_template'); + $result[] = _search('vm', 'openvz_template'); // virtual machines ip addresses - $result_vm_ip_addresses = _search('vm', 'openvz_ip'); + $result[] = _search('vm', 'openvz_ip'); - $json = $app->functions->json_encode(array($result_clients, $result_webs, $result_ftp_users, $result_shell_users, $result_databases, $result_email_domains, $result_email_mailboxes, $result_dns_zones, $result_secondary_dns_zones, $result_vms, $result_vm_ostemplates, $result_vm_vmtemplates, $result_vm_ip_addresses)); + $json = $app->functions->json_encode($result); } //} -function _search($module, $section){ +function _search($module, $section, $additional_sql = ''){ global $app, $q, $authsql, $modules; - //$q = $app->db->quote($_GET["q"]); - //$authsql = " AND ".$app->tform->getAuthSQL('r'); - //$user_modules = explode(',', $_SESSION['s']['user']['modules']); $result_array = array('cheader' => array(), 'cdata' => array()); if(in_array($module, $modules)){ @@ -159,10 +182,13 @@ function _search($module, $section){ // valid SQL query which returns an empty result set $where_clause = '1 = 0'; } + if($where_clause != '') $where_clause = '('.$where_clause.')'; + if($additional_sql != '') $where_clause .= ' '.$additional_sql.' '; $order_clause = ''; if($order_by != '') $order_clause = ' ORDER BY '.$order_by; - $results = $app->db->queryAllRecords("SELECT * FROM ".$db_table." WHERE ".$where_clause.$authsql.$order_clause); + $sql = "SELECT * FROM ".$db_table." WHERE ".$where_clause.$authsql.$order_clause." LIMIT 0,10"; + $results = $app->db->queryAllRecords($sql); if(is_array($results) && !empty($results)){ $lng_file = '../'.$module.'/lib/lang/'.$_SESSION['s']['language'].'_'.$section.'.lng'; diff --git a/interface/web/js/jquery.ispconfigsearch.js b/interface/web/js/jquery.ispconfigsearch.js index 211dcd76dc7eea784694ec8ece516b402a43c11b..5ef54d19acf597eeb7b57dbe31642e88e76bca58 100644 --- a/interface/web/js/jquery.ispconfigsearch.js +++ b/interface/web/js/jquery.ispconfigsearch.js @@ -36,8 +36,10 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. cssPrefix: 'gs-', fillSearchField: false, fillSearchFieldWith: 'title', - resultsText: '$ of % results', + resultsLimit: '$ of % results', noResultsText: 'No results.', + noResultsLimit: '0 results', + searchFieldWatermark: 'Search', displayEmptyCategories: false, runJS: true }; @@ -48,6 +50,7 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. settings.resultBox = $(this).attr('id')+settings.resultBox; $(this).attr('autocomplete', 'off'); + $(this).val(settings.searchFieldWatermark); $(this).wrap('<div class="'+settings.cssPrefix+'container" />'); $(this).after('<ul id="'+settings.resultBox+'" class="'+settings.cssPrefix+'resultbox" style="display:none;"></ul>'); var searchField = $(this); @@ -91,7 +94,7 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. } if (!resultsFound){ - output += '<li class="'+settings.cssPrefix+'cheader"><p class="'+settings.cssPrefix+'cheader-title">'+settings.noResultsText+'</p><p class="'+settings.cssPrefix+'cheader-limit">0 results</p></li>'; + output += '<li class="'+settings.cssPrefix+'cheader"><p class="'+settings.cssPrefix+'cheader-title">'+settings.noResultsText+'</p><p class="'+settings.cssPrefix+'cheader-limit">'+settings.noResultsLimit+'</p></li>'; } else { $.each(data, function(i, category){ @@ -100,7 +103,7 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. var limit = category['cheader']['limit']; var cnt = 0; - output += '<li class="'+settings.cssPrefix+'cheader"><p class="'+settings.cssPrefix+'cheader-title">'+category['cheader']['title']+'</p><p class="'+settings.cssPrefix+'cheader-limit">'+settings.resultsText.replace("%", category['cheader']['total']).replace("$", (category['cheader']['limit'] < category['cdata'].length ? category['cheader']['limit'] : category['cdata'].length))+'</p></li>'; + output += '<li class="'+settings.cssPrefix+'cheader"><p class="'+settings.cssPrefix+'cheader-title">'+category['cheader']['title']+'</p><p class="'+settings.cssPrefix+'cheader-limit">'+settings.resultsLimit.replace("%", category['cheader']['total']).replace("$", (category['cheader']['limit'] < category['cdata'].length ? category['cheader']['limit'] : category['cdata'].length))+'</p></li>'; var fillSearchFieldCode = (settings.fillSearchField) ? 'document.getElementById(\''+searchField.attr('id')+'\').value = \'%\';' : ''; //var fillSearchFieldCode = 'document.getElementById(\''+searchField.attr('id')+'\').value = \'%\';'; @@ -137,11 +140,16 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. searchField.blur(function(){ resultBox.fadeOut(); + if (searchField.val() == ''){ + searchField.val(settings.searchFieldWatermark); + } }); searchField.focus(function(){ if (searchField.val() == previousQ && searchField.val() != ''){ resultBox.fadeIn(); + } else if(searchField.val() == settings.searchFieldWatermark){ + searchField.val(''); } else if (searchField.val() != ''){ searchField.trigger('keyup'); } diff --git a/interface/web/mail/form/mail_alias.tform.php b/interface/web/mail/form/mail_alias.tform.php index 6676998336349d07efef07f4c7b4d16d312b2c22..072f622002e690b3ea139751d2dac9f017dbbb9e 100644 --- a/interface/web/mail/form/mail_alias.tform.php +++ b/interface/web/mail/form/mail_alias.tform.php @@ -29,6 +29,11 @@ Hint: The ID field of the database table is not part of the datafield definition. The ID field must be always auto incement (int or bigint). + + Search: + - searchable = 1 or searchable = 2 include the field in the search + - searchable = 1: this field will be the title of the search result + - searchable = 2: this field will be included in the description of the search result */ @@ -75,7 +80,8 @@ $form["tabs"]['alias'] = array ( 'default' => '', 'value' => '', 'width' => '30', - 'maxlength' => '255' + 'maxlength' => '255', + 'searchable' => 1 ), 'destination' => array ( 'datatype' => 'VARCHAR', @@ -89,7 +95,8 @@ $form["tabs"]['alias'] = array ( 'validators' => array ( 0 => array ( 'type' => 'ISEMAIL', 'errmsg'=> 'destination_error_isemail'), ), - 'value' => '' + 'value' => '', + 'searchable' => 2 ), 'type' => array ( 'datatype' => 'VARCHAR', diff --git a/interface/web/mail/form/mail_aliasdomain.tform.php b/interface/web/mail/form/mail_aliasdomain.tform.php index d194029b5fa9853f8fa3d3743c4d5a573559779b..754209f3abbf7258f1c5d27c25b212d06dae59ba 100644 --- a/interface/web/mail/form/mail_aliasdomain.tform.php +++ b/interface/web/mail/form/mail_aliasdomain.tform.php @@ -29,6 +29,11 @@ Hint: The ID field of the database table is not part of the datafield definition. The ID field must be always auto incement (int or bigint). + + Search: + - searchable = 1 or searchable = 2 include the field in the search + - searchable = 1: this field will be the title of the search result + - searchable = 2: this field will be included in the description of the search result */ @@ -80,7 +85,8 @@ $form["tabs"]['alias'] = array ( 'default' => '', 'value' => '', 'width' => '30', - 'maxlength' => '255' + 'maxlength' => '255', + 'searchable' => 1 ), 'destination' => array ( 'datatype' => 'VARCHAR', @@ -88,7 +94,8 @@ $form["tabs"]['alias'] = array ( 'default' => '', 'value' => '', 'width' => '30', - 'maxlength' => '255' + 'maxlength' => '255', + 'searchable' => 2 ), 'type' => array ( 'datatype' => 'VARCHAR', diff --git a/interface/web/mail/form/mail_domain_catchall.tform.php b/interface/web/mail/form/mail_domain_catchall.tform.php index 5d2b447d6ac0e43729bc2297a1749855e6dea73a..b2a40fe2588fc5a648a206b1489ae00846a043f5 100644 --- a/interface/web/mail/form/mail_domain_catchall.tform.php +++ b/interface/web/mail/form/mail_domain_catchall.tform.php @@ -29,6 +29,11 @@ Hint: The ID field of the database table is not part of the datafield definition. The ID field must be always auto incement (int or bigint). + + Search: + - searchable = 1 or searchable = 2 include the field in the search + - searchable = 1: this field will be the title of the search result + - searchable = 2: this field will be included in the description of the search result */ @@ -80,7 +85,8 @@ $form["tabs"]['catchall'] = array ( 'default' => '', 'value' => '', 'width' => '30', - 'maxlength' => '255' + 'maxlength' => '255', + 'searchable' => 1 ), 'destination' => array ( 'datatype' => 'VARCHAR', @@ -94,7 +100,8 @@ $form["tabs"]['catchall'] = array ( 'validators' => array ( 0 => array ( 'type' => 'ISEMAIL', 'errmsg'=> 'destination_error_isemail'), ), - 'value' => '' + 'value' => '', + 'searchable' => 2 ), 'type' => array ( 'datatype' => 'VARCHAR', diff --git a/interface/web/mail/form/mail_forward.tform.php b/interface/web/mail/form/mail_forward.tform.php index e6fd4d66a431734223ee3ba0be8c37633ecbff08..b8f25758eb3cdef264b38615ea671b74871b353a 100644 --- a/interface/web/mail/form/mail_forward.tform.php +++ b/interface/web/mail/form/mail_forward.tform.php @@ -29,6 +29,11 @@ Hint: The ID field of the database table is not part of the datafield definition. The ID field must be always auto incement (int or bigint). + + Search: + - searchable = 1 or searchable = 2 include the field in the search + - searchable = 1: this field will be the title of the search result + - searchable = 2: this field will be included in the description of the search result */ @@ -75,7 +80,8 @@ $form["tabs"]['forward'] = array ( 'default' => '', 'value' => '', 'width' => '30', - 'maxlength' => '255' + 'maxlength' => '255', + 'searchable' => 1 ), 'destination' => array ( 'datatype' => 'VARCHAR', @@ -83,7 +89,8 @@ $form["tabs"]['forward'] = array ( 'default' => '', 'value' => '', 'width' => '30', - 'maxlength' => '255' + 'maxlength' => '255', + 'searchable' => 2 ), 'type' => array ( 'datatype' => 'VARCHAR', diff --git a/interface/web/mail/form/mail_get.tform.php b/interface/web/mail/form/mail_get.tform.php index 0d080550ad83ac63a65c03df1d0f01cac1c40802..4086eb90e2628b4cc6e7bbe55429656ce6160bd0 100644 --- a/interface/web/mail/form/mail_get.tform.php +++ b/interface/web/mail/form/mail_get.tform.php @@ -29,6 +29,11 @@ Hint: The ID field of the database table is not part of the datafield definition. The ID field must be always auto incement (int or bigint). + + Search: + - searchable = 1 or searchable = 2 include the field in the search + - searchable = 1: this field will be the title of the search result + - searchable = 2: this field will be included in the description of the search result */ @@ -73,7 +78,8 @@ $form["tabs"]['mailget'] = array ( 'datatype' => 'VARCHAR', 'formtype' => 'SELECT', 'default' => '', - 'value' => array('pop3' => 'POP3','imap'=>'IMAP','pop3ssl' => 'POP3SSL','imapssl'=>'IMAPSSL') + 'value' => array('pop3' => 'POP3','imap'=>'IMAP','pop3ssl' => 'POP3SSL','imapssl'=>'IMAPSSL'), + 'searchable' => 2 ), 'source_server' => array ( 'datatype' => 'VARCHAR', @@ -87,7 +93,8 @@ $form["tabs"]['mailget'] = array ( 'default' => '', 'value' => '', 'width' => '30', - 'maxlength' => '255' + 'maxlength' => '255', + 'searchable' => 2 ), 'source_username' => array ( 'datatype' => 'VARCHAR', @@ -98,7 +105,8 @@ $form["tabs"]['mailget'] = array ( 'default' => '', 'value' => '', 'width' => '30', - 'maxlength' => '255' + 'maxlength' => '255', + 'searchable' => 2 ), 'source_password' => array ( 'datatype' => 'VARCHAR', @@ -135,7 +143,8 @@ $form["tabs"]['mailget'] = array ( 'validators' => array ( 0 => array ( 'type' => 'ISEMAIL', 'errmsg'=> 'destination_error_isemail'), ), - 'value' => '' + 'value' => '', + 'searchable' => 1 ), 'active' => array ( 'datatype' => 'VARCHAR', diff --git a/interface/web/mail/form/mail_mailinglist.tform.php b/interface/web/mail/form/mail_mailinglist.tform.php index b0e390b4684eb0bba35bac4c82b3aa7259587606..93bd8c206f216955920d805d882ae6a9a1457885 100644 --- a/interface/web/mail/form/mail_mailinglist.tform.php +++ b/interface/web/mail/form/mail_mailinglist.tform.php @@ -29,6 +29,11 @@ Hint: The ID field of the database table is not part of the datafield definition. The ID field must be always auto incement (int or bigint). + + Search: + - searchable = 1 or searchable = 2 include the field in the search + - searchable = 1: this field will be the title of the search result + - searchable = 2: this field will be included in the description of the search result */ @@ -81,7 +86,8 @@ $form["tabs"]['mailinglist'] = array ( 'default' => '', 'value' => '', 'width' => '30', - 'maxlength' => '255' + 'maxlength' => '255', + 'searchable' => 2 ), 'listname' => array ( 'datatype' => 'VARCHAR', @@ -92,7 +98,8 @@ $form["tabs"]['mailinglist'] = array ( 'default' => '', 'value' => '', 'width' => '30', - 'maxlength' => '255' + 'maxlength' => '255', + 'searchable' => 1 ), 'email' => array ( 'datatype' => 'VARCHAR', @@ -103,7 +110,8 @@ $form["tabs"]['mailinglist'] = array ( 'default' => '', 'value' => '', 'width' => '30', - 'maxlength' => '255' + 'maxlength' => '255', + 'searchable' => 2 ), 'password' => array ( 'datatype' => 'VARCHAR', diff --git a/interface/web/mail/form/mail_transport.tform.php b/interface/web/mail/form/mail_transport.tform.php index 3734e046cca7dad5da13c59e3cd6ca0060eb1bd4..d7935a6faca4081b153ce04a6bc8b13998ab5b65 100644 --- a/interface/web/mail/form/mail_transport.tform.php +++ b/interface/web/mail/form/mail_transport.tform.php @@ -29,6 +29,11 @@ Hint: The ID field of the database table is not part of the datafield definition. The ID field must be always auto incement (int or bigint). + + Search: + - searchable = 1 or searchable = 2 include the field in the search + - searchable = 1: this field will be the title of the search result + - searchable = 2: this field will be included in the description of the search result */ @@ -75,7 +80,8 @@ $form["tabs"]['transport'] = array ( 'default' => '', 'value' => '', 'width' => '30', - 'maxlength' => '255' + 'maxlength' => '255', + 'searchable' => 1 ), 'transport' => array ( 'datatype' => 'VARCHAR', @@ -83,7 +89,8 @@ $form["tabs"]['transport'] = array ( 'default' => '', 'value' => '', 'width' => '30', - 'maxlength' => '255' + 'maxlength' => '255', + 'searchable' => 2 ), 'sort_order' => array ( 'datatype' => 'INTEGER', diff --git a/interface/web/mail/lib/lang/de_mail_alias.lng b/interface/web/mail/lib/lang/de_mail_alias.lng index 45a564a2d158e7c2a86305cfd596b24cd10d9042..2eb21def30b31f6baa336540937d4a026b2cb7e6 100644 --- a/interface/web/mail/lib/lang/de_mail_alias.lng +++ b/interface/web/mail/lib/lang/de_mail_alias.lng @@ -10,4 +10,5 @@ $wb['limit_mailalias_txt'] = 'Die maximale Anzahl an E-Mail-Aliassen für ihr Ko $wb['duplicate_mailbox_txt'] = 'Es existiert bereits eine Mailbox mit dieser E-Mail-Adresse.'; $wb['domain_txt'] = 'Domain'; $wb['duplicate_email_alias_txt'] = 'Dieser E-Mail-Alias existiert bereits.'; +$wb["source_txt"] = 'Alias'; ?> diff --git a/interface/web/mail/lib/lang/de_mail_domain_catchall.lng b/interface/web/mail/lib/lang/de_mail_domain_catchall.lng index 3a4e74e3ecee1725cfcd15edde200911fd67616a..f2b397e3d6944015377da4ec34e1c41165dc280b 100644 --- a/interface/web/mail/lib/lang/de_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/de_mail_domain_catchall.lng @@ -6,4 +6,5 @@ $wb['domain_error_unique'] = 'Es besteht bereits einen Catchall Eintrag für die $wb['no_domain_perm'] = 'Sie haben keine Berechtigung für diese Domain.'; $wb['domain_error_regex'] = 'Ungültiger Domainname oder ungültige Zeichen im Domainnamen.'; $wb['limit_mailcatchall_txt'] = 'Die maximale Anzahl an Catchall Einträgen für ihr Konto wurde erreicht.'; +$wb["source_txt"] = 'Quelle'; ?> diff --git a/interface/web/mail/lib/lang/de_mail_forward.lng b/interface/web/mail/lib/lang/de_mail_forward.lng index 3a6415c6fceddc0183c420adbd55018d1bb6550d..05d94a6bd67cb20261f99fb88a1de043000914a8 100644 --- a/interface/web/mail/lib/lang/de_mail_forward.lng +++ b/interface/web/mail/lib/lang/de_mail_forward.lng @@ -1,8 +1,9 @@ <?php $wb['email_txt'] = 'E-Mail-Adresse'; -$wb['destination_txt'] = 'Ziel E-Mail-Adresse'; +$wb['destination_txt'] = 'Ziel-E-Mail-Adresse'; $wb['active_txt'] = 'Aktiv'; $wb['limit_mailforward_txt'] = 'Die maximale Anzahl an E-Mail-Weiterleitungen für ihr Konto wurde erreicht.'; $wb['duplicate_mailbox_txt'] = 'Es existiert bereits eine Mailbox mit dieser Adresse.'; $wb['domain_txt'] = 'Domain'; +$wb["source_txt"] = 'Quell-E-Mail-Adresse'; ?> diff --git a/interface/web/mail/lib/lang/de_mail_transport.lng b/interface/web/mail/lib/lang/de_mail_transport.lng index 16d1e64055f34e468affa48699fd590cd115a3a7..918ddcfe50fee424f0ee14830125b2f0858455f4 100644 --- a/interface/web/mail/lib/lang/de_mail_transport.lng +++ b/interface/web/mail/lib/lang/de_mail_transport.lng @@ -7,4 +7,5 @@ $wb['mx_txt'] = 'Kein MX Lookup'; $wb['sort_order_txt'] = 'Sortiert nach'; $wb['active_txt'] = 'Aktiv'; $wb['limit_mailrouting_txt'] = 'Die maximale Anzahl an Routen für ihr Konto wurde erreicht.'; +$wb["transport_txt"] = 'Transport'; ?> diff --git a/interface/web/mail/lib/lang/en_mail_alias.lng b/interface/web/mail/lib/lang/en_mail_alias.lng index 02f753c492949b2f94da900d1540d315d89edcbb..bcdafb305e686027d999f2edd696147c15b81b90 100644 --- a/interface/web/mail/lib/lang/en_mail_alias.lng +++ b/interface/web/mail/lib/lang/en_mail_alias.lng @@ -10,4 +10,5 @@ $wb["limit_mailalias_txt"] = 'The max. number of email aliases for your account $wb["duplicate_mailbox_txt"] = 'There is already a mailbox with this email address.'; $wb['domain_txt'] = 'Domain'; $wb["duplicate_email_alias_txt"] = 'This email alias does already exist.'; +$wb["source_txt"] = 'Alias'; ?> diff --git a/interface/web/mail/lib/lang/en_mail_domain_catchall.lng b/interface/web/mail/lib/lang/en_mail_domain_catchall.lng index 0df663d8a0489bc6bcb027f640558f67ea9847a0..c8348a9671ee005c96c05effa44d1539b951fe01 100644 --- a/interface/web/mail/lib/lang/en_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/en_mail_domain_catchall.lng @@ -7,4 +7,5 @@ $wb["no_domain_perm"] = "You have no permission for this domain."; $wb["domain_error_regex"] = 'Invalid domain name od domain contains invalid characters.'; $wb["limit_mailcatchall_txt"] = 'The max. number of email catchall accounts for your account is reached.'; $wb['domain_txt'] = 'Domain'; +$wb["source_txt"] = 'Source'; ?> diff --git a/interface/web/mail/lib/lang/en_mail_forward.lng b/interface/web/mail/lib/lang/en_mail_forward.lng index d088b6efe5a7ffe79ab05e4f46311acdd41e77e1..4482593654011688141fa8015313989e199f8130 100644 --- a/interface/web/mail/lib/lang/en_mail_forward.lng +++ b/interface/web/mail/lib/lang/en_mail_forward.lng @@ -5,4 +5,5 @@ $wb["active_txt"] = 'Active'; $wb["limit_mailforward_txt"] = 'The max. number of email forwarders for your account is reached.'; $wb["duplicate_mailbox_txt"] = 'There is already a mailbox with this email address'; $wb['domain_txt'] = 'Domain'; +$wb["source_txt"] = 'Source Email'; ?> diff --git a/interface/web/mail/lib/lang/en_mail_transport.lng b/interface/web/mail/lib/lang/en_mail_transport.lng index 152c2eba4458dede84d6919235cfcf2c5fa9901a..0bae85aa2fbe718bfcaa0e55fd288964a910ea55 100644 --- a/interface/web/mail/lib/lang/en_mail_transport.lng +++ b/interface/web/mail/lib/lang/en_mail_transport.lng @@ -7,4 +7,5 @@ $wb["mx_txt"] = 'No MX lookup'; $wb["sort_order_txt"] = 'Sort by'; $wb["active_txt"] = 'Active'; $wb["limit_mailrouting_txt"] = 'The max. number of routes for your account is reached.'; +$wb["transport_txt"] = 'Transport'; ?> \ No newline at end of file diff --git a/interface/web/themes/default/templates/main.tpl.htm b/interface/web/themes/default/templates/main.tpl.htm index b012c068b6656e77f9e9dabdf3c4439cb2b9c314..a8c389b6549ffee3a8ad4d0bfef177754d8462bc 100644 --- a/interface/web/themes/default/templates/main.tpl.htm +++ b/interface/web/themes/default/templates/main.tpl.htm @@ -84,7 +84,11 @@ }); jQuery('#globalsearch').ispconfigSearch({ - dataSrc: '/dashboard/ajax_get_json.php?type=globalsearch' + dataSrc: '/dashboard/ajax_get_json.php?type=globalsearch', + resultsLimit: '$ <tmpl_var name="globalsearch_resultslimit_of_txt"> % <tmpl_var name="globalsearch_resultslimit_results_txt">', + noResultsText: '<tmpl_var name="globalsearch_noresults_text_txt">', + noResultsLimit: '<tmpl_var name="globalsearch_noresults_limit_txt">', + searchFieldWatermark: '<tmpl_var name="globalsearch_searchfield_watermark_txt">' }); });