Marius Cramer
2014-08-13 42539643c396f9d8865dcf9a51b13dc869709d16
commit | author | age
c72ea8 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
X 2    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4 <head>
5     <title><tmpl_var name="app_title"> <tmpl_var name="app_version"></title>
6     <meta http-equiv="Content-Type" content="text/html; charset=<tmpl_var name="html_content_encoding">"/>
7     <meta http-equiv="X-UA-Compatible" content="IE=8"/>
2339ee 8     <link href="themes/default_304/css/central.css" rel="stylesheet" type="text/css"/>
c72ea8 9     <!--[if lte IE 7]>
2339ee 10         <link href="themes/default_304/css/patches/central.css" rel="stylesheet" type="text/css" />
c72ea8 11     <![endif]-->
X 12     <!--[if lte ie 6]>
13       <style type="text/css" media="screen">
14         /*
15         Move these to your IE specific stylesheet if possible
16         */
17         .uniForm,
18         .uniForm fieldset,
19         .uniForm .ctrlHolder,
20         .uniForm .formHint,
21         .uniForm .buttonHolder, 
22         .uniForm .ctrlHolder .multiField,
23         .uniForm .inlineLabel{ zoom:1; }
24
25         .uniForm .inlineLabels label, .uniForm .inlineLabels .label,
26         .uniForm .blockLabels label, .uniForm .blockLabels .label,
27         .uniForm .inlineLabel span{ padding-bottom: .2em; }
28
29         .uniForm .inlineLabel input,
30         .uniForm .inlineLabels .inlineLabel input,
31         .uniForm .blockLabels .inlineLabel input{ margin-top: -.3em; }
32       </style>
33     <![endif]-->
34     <!--[if gt ie 6]>
35       <style type="text/css" media="screen">
36         /*
37         Move these to your IE specific stylesheet if possible
38         */
39         .uniForm,
40         .uniForm fieldset,
41         .uniForm .ctrlHolder,
42         .uniForm .formHint,
43         .uniForm .buttonHolder, 
44         .uniForm .ctrlHolder .multiField,
45         .uniForm .inlineLabel{ zoom:1; }
46
47         .uniForm .inlineLabels label, .uniForm .inlineLabels .label,
48         .uniForm .blockLabels label, .uniForm .blockLabels .label,
49         .uniForm .inlineLabel span{ padding-bottom: .2em; }
50
51         .uniForm .inlineLabel input,
52         .uniForm .inlineLabels .inlineLabel input,
53         .uniForm .blockLabels .inlineLabel input{ margin-top: -.3em; }
54       </style>
55     <![endif]-->
2339ee 56     <link href="themes/default_304/css/screen/redmond/jquery-ui-1.8.16.custom.css" rel="stylesheet" type="text/css"/>
C 57     <link href="themes/default_304/css/screen/jquery-ui-custom.css" rel="stylesheet" type="text/css"/>
ddbcdf 58     <link href="themes/default_combobox/css/additional.css" rel="stylesheet" type="text/css"/>
2339ee 59     <link rel="shortcut icon" href="/themes/default_304/images/favicon.ico" />
c72ea8 60     <script type="text/javascript" src="js/jquery-1.6.3.min.js"></script>
X 61     <script type="text/javascript" src="js/jquery-ui-1.8.16.custom.min.js"></script>
62     <script type="text/javascript" src="js/scrigo.js.php"></script>
63     <script type="text/javascript" src="js/uni-form/uni-form.jquery.js"></script>
2f4ff7 64     <script type="text/javascript" src="js/jquery.ispconfigsearch.js"></script>
3f9a8e 65     <script type="text/javascript" src="js/jquery.tipsy.js"></script>
c72ea8 66     <script language="JavaScript" type="text/javascript">
X 67         var is_chrome = navigator.userAgent.toLowerCase().indexOf('chrome') > -1;
68         if(!is_chrome && getInternetExplorerVersion() > 8.0) {
69             var style = document.createElement('style');
70             style.innerHTML = '#page_margins { min-width: 980px; max-width: 80%; background: #fff; display: table;}';
71             document.getElementsByTagName("head")[0].appendChild(style);
72         }
73
964c03 74
c72ea8 75         jQuery(document).ready(function() {
X 76             loadInitContent();
5d036a 77             
T 78             $("#pageForm").submit(function(e){
79                 //Prevent form submit: e.preventDefault() in lists
80                 if ($(".panel #Filter").length > 0) {
81                     e.preventDefault();
82                 }
83             });
dd0ddd 84             
F 85             jQuery('.subsectiontoggle').live("click", function(){
86                 jQuery(this).children().toggleClass('showing').end().next().slideToggle();
2f4ff7 87             });
F 88             
89             jQuery('#globalsearch').ispconfigSearch({
90                 dataSrc: '/dashboard/ajax_get_json.php?type=globalsearch',
91                 resultsLimit: '$ <tmpl_var name="globalsearch_resultslimit_of_txt"> % <tmpl_var name="globalsearch_resultslimit_results_txt">',
92                 noResultsText: '<tmpl_var name="globalsearch_noresults_text_txt">',
93                 noResultsLimit: '<tmpl_var name="globalsearch_noresults_limit_txt">',
94                 searchFieldWatermark: '<tmpl_var name="globalsearch_searchfield_watermark_txt">'
dd0ddd 95             });
3f9a8e 96             
ee0bc7 97             jQuery('.ttip').tipsy({live: true, gravity: 'ne', html: true});
a00888 98             
T 99             tabChangeDiscard = '<tmpl_var name="tabchange_discard_enabled>';
100             tabChangeWarning = '<tmpl_var name="tabchange_warning_enabled>';
101             tabChangeWarningTxt = '<tmpl_var name="global_tabchange_warning_txt">';
102             tabChangeDiscardTxt = '<tmpl_var name="global_tabchange_discard_txt">';
c72ea8 103         });
X 104
40cf98 105         jQuery(document).bind("change", function(event) {
a00888 106             var elName = event.target.localName;
T 107             if (jQuery(".panel #Filter").length > 0 && elName == 'select') {
108                 event.preventDefault();
109                 jQuery(".panel #Filter").trigger('click');
110             }
111             if(elName == 'select' || elName == 'input' || elName == 'textarea') {
112                 // set marker that something was changed
113                 pageFormChanged = true;
114             }
40cf98 115         });
3964ec 116
X 117         jQuery(".ui-autocomplete a").live("click", function(event) {
118             if ($(".panel #Filter").length > 0) {
119                 $(".panel #Filter").attr("onsubmit",$(".panel #Filter").attr("onclick")).submit();
120             }
121         });
40cf98 122         
9d6d30 123         jQuery(document).bind("keypress", function(event) {
87a30c 124             //Use jQuery submit with keypress Enter in panel filterbar
F 125             if (event.which == '13' && jQuery(".panel #Filter").length > 0) {
a00888 126                 event.preventDefault();
87a30c 127                 jQuery(".panel #Filter").trigger('click');
F 128             }
129             //Use jQuery submit with keypress Enter in forms
a00888 130             if (event.which == '13' && jQuery(".pnl_formsarea button.positive").length > 0 && event.target.localName != 'textarea' && jQuery(event.target).is(':input')) {
T 131                 event.preventDefault();
132                 jQuery(".pnl_formsarea button.positive:first").not("[disabled='disabled']").trigger('click');
c72ea8 133             }
X 134         });
135
8145fb 136         (function( $ ){
X 137           $(".pnl_listarea th").live("click",  function(){
138             if($(this).attr('class').length > 0 && $("#Filter").length > 0){
139               eval($("#Filter").attr("onclick").replace(".php');",".php?orderby="+$(this).attr('class')+"');"));
140               var element = $(this).attr('class');
141               $("#pageForm").ajaxComplete(function() {
142               if($("th."+element).css("background-position") == '0px -15px'){
143                 if($("th."+element).css("text-align") == "right"){
144                   $("th."+element).css("text-align","left");
145                 } else {
146                   $("th."+element).css("text-align","right");
147                 }
148               } else {
149                 $(".pnl_listarea th").css("text-align","");
150               }
151               $(".pnl_listarea th").css("background-position","0 0");
152               $("th."+element).css("background-position","0 -15px");
153               });
154             }
155         });
156         })( jQuery );
157
c72ea8 158         (function( $ ) {
X 159         $.widget( "ui.combobox", {
160             _create: function() {
161                 var self = this,
7dc603 162                     oldWidth = this.element.width(),
c72ea8 163                     select = this.element.hide(),
X 164                     selected = select.children( ":selected" ),
165                     value = selected.val() ? selected.text() : "";
166                 var input = this.input = $( "<input>" )
167                     .insertAfter( select )
7dc603 168                     .width( oldWidth )
c72ea8 169                     .val( value )
4ade63 170                     .css("float","left")
c72ea8 171                     .autocomplete({
X 172                         delay: 0,
173                         minLength: 0,
174                         source: function( request, response ) {
175                             var matcher = new RegExp( $.ui.autocomplete.escapeRegex(request.term), "i" );
176                             response( select.children( "option" ).map(function() {
177                                 var text = $( this ).text();
81c31c 178                                 if (( !request.term || matcher.test(text) ) )
c72ea8 179                                     return {
X 180                                         label: text.replace(
181                                             new RegExp(
182                                                 "(?![^&;]+;)(?!<[^<>]*)(" +
183                                                 $.ui.autocomplete.escapeRegex(request.term) +
184                                                 ")(?![^<>]*>)(?![^&;]+;)", "gi"
185                                             ), "<strong>$1</strong>" ),
186                                         value: text,
187                                         option: this
188                                     };
189                             }) );
190                         },
191                         select: function( event, ui ) {
192                             ui.item.option.selected = true;
193                             self._trigger( "selected", event, {
194                                 item: ui.item.option
195                             });
196                         },
197                         change: function( event, ui ) {
198                             if ( !ui.item ) {
199                                 var matcher = new RegExp( "^" + $.ui.autocomplete.escapeRegex( $(this).val() ) + "$", "i" ),
200                                     valid = false;
201                                 select.children( "option" ).each(function() {
202                                     if ( $( this ).text().match( matcher ) ) {
203                                         this.selected = valid = true;
204                                         return false;
205                                     }
206                                 });
207                                 if ( !valid ) {
208                                     // remove invalid value, as it didn't match anything
209                                     $( this ).val( "" );
210                                     select.val( "" );
211                                     input.data( "autocomplete" ).term = "";
212                                     return false;
213                                 }
214                             }
55fee8 215                         },
X 216                         // open: function(event, ui) { }, alternativ event for check by enter input
217                         search: function(event, ui) {
218                             if ( !ui.item ) {
219                                 var matcher = new RegExp( "^" + $.ui.autocomplete.escapeRegex( $(this).val() ) + "$", "i" ),
220                                     valid = false;
221                                 select.children( "option" ).each(function() {
222                                     if ( $( this ).text().match( matcher ) ) {
223                                         this.selected = valid = true;
224                                         return false;
225                                     }
226                                 });
227                             } }
c72ea8 228                     })
X 229                     .addClass( "ui-widget ui-widget-content ui-corner-left" );
230
231                 input.data( "autocomplete" )._renderItem = function( ul, item ) {
232                     return $( "<li></li>" )
233                         .data( "item.autocomplete", item )
234                         .append( "<a>" + item.label + "</a>" )
235                         .appendTo( ul );
236                 };
237
238                 this.button = $( "<button type='button'>&nbsp;</button>" )
239                     .attr( "tabIndex", -1 )
240                     .attr( "title", "Show All Items" )
964c03 241                     .height($(input).outerHeight())
4ade63 242                     .css("float","left")
c72ea8 243                     .insertAfter( input )
X 244                     .button({
245                         icons: {
246                             primary: "ui-icon-triangle-1-s"
247                         },
248                         text: false
249                     })
250                     .removeClass( "ui-corner-all" )
251                     .addClass( "ui-corner-right ui-button-icon" )
252                     .click(function() {
253                         // close if already visible
254                         if ( input.autocomplete( "widget" ).is( ":visible" ) ) {
255                             input.autocomplete( "close" );
256                             return;
257                         }
258
259                         // work around a bug (likely same cause as #5265)
260                         $( this ).blur();
261
262                         // pass empty string as value to search for, displaying all results
263                         input.autocomplete( "search", "" );
264                         input.focus();
265                     });
266             },
267
268             destroy: function() {
269                 this.input.remove();
270                 this.button.remove();
271                 this.element.show();
272                 $.Widget.prototype.destroy.call( this );
273             }
274         });
275     })( jQuery );
7dc603 276  
c72ea8 277
05e1f3 278     jQuery("html").ajaxComplete( function(){
7dc603 279       if(jQuery(".panel .list td select").css("display") != "none"){
X 280         jQuery(".panel .list td select").combobox();
c72ea8 281       }
X 282     });
283     </script>
284 </head>
285 <body>
286     <div id="page_margins">
287         <div id="page">
288             <div id="header">
289                 <div id="topsubnav">
290                     <!-- start: skip link navigation -->
291                     <a class="skip" href="#navigation" title="skip link">Skip to the navigation</a><span class="hideme">.</span>
292                     <a class="skip" href="#content" title="skip link">Skip to the content</a><span class="hideme">.</span>
293                     <!-- end: skip link navigation -->
294                     <tmpl_if name="cpuser">
295                     <span><a href="#logout" onclick="loadContent('login/logout.php');">LOGOUT <tmpl_var format="strtoupper" name="cpuser"></a><!-- | <a href="#" onclick="capp('help')">Help</a> | <a href="#">Imprint</a>--></span>
5c4200 296                     <tmpl_if name='usertype' op='==' value='normaluser'><input type="text" id="globalsearch" size="25" value="" /></tmpl_if>
c72ea8 297                     </tmpl_if>
X 298                 </div>
02bf99 299                 <h1 id="ir-HeaderLogo" class="swap" style="background-image:url('{tmpl_var name='app_logo'}');"><span>ISPConfig 3</span></h1>
c72ea8 300                 <span>hosting control panel</span>
X 301             </div>
302             <!-- begin: main navigation #nav -->
303             <div id="nav">
304                 <a id="navigation" name="navigation"></a>
305                 <!-- skiplink anchor: navigation -->
306                 <div id="nav_main">
307                     <div id="topNav">&nbsp;</div>
308                 </div>
309             </div>
310             <!-- end: main navigation -->
311             <!-- begin: main content area #main -->
312             <div id="main">
313                 <!-- begin: #col1 - first float column -->
314                 <div id="col1">
315                     <div id="col1_content" class="clearfix">
316                         <div id="sideNav">&nbsp;</div>
317                     </div>
318                 </div>
319                 <!-- end: #col1 -->
320                 <!-- begin: #col3 static column -->
321                 <div id="col3">
322                     <div id="col3_content" class="clearfix">
323                         <a id="content" name="content"></a>
324                         <!-- skiplink anchor: Content -->
325                         <form method="post" action="" id="pageForm" name="pageForm" enctype="multipart/form-data" class="uniForm">
1b8648 326                         <input type="text" style="display:none" /><input type="password" style="display:none"/>
c72ea8 327                         <div id="pageContent"><!-- AJAX CONTENT --></div>
X 328                         </form>
329                     </div>
330                     <div id="ie_clearing">&nbsp;</div>
331                     <!-- End: IE Column Clearing -->
332                 </div>
333                 <!-- end: #col3 -->
334             </div>
335             <!-- end: #main -->
336             <!-- begin: #footer -->
337             <div id="footer">
338             Powered by <a href="<tmpl_var name="app_link">" target="_blank"><tmpl_var name="app_title"></a>
339             </div><!-- end: #footer -->
340         </div>
341     </div>
342 </body>
343 </html>