From 43b345cabb3e8743a91c39e8d6367c1aa594ebd2 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Thu, 17 Jan 2013 10:33:59 -0500
Subject: [PATCH] Merged revisions from 3.0.5 stable branch: 3758-3768, 3769 shall not be merged to trunk.

---
 interface/web/sites/templates/web_domain_edit.htm |  391 ++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 242 insertions(+), 149 deletions(-)

diff --git a/interface/web/sites/templates/web_domain_edit.htm b/interface/web/sites/templates/web_domain_edit.htm
index 9e2a6b5..570d462 100644
--- a/interface/web/sites/templates/web_domain_edit.htm
+++ b/interface/web/sites/templates/web_domain_edit.htm
@@ -3,160 +3,253 @@
 
 <div class="panel panel_web_domain">
 
-  <div class="pnl_formsarea">
-    <fieldset class="inlineLabels">
-      <tmpl_if name="is_admin">
-      <div class="ctrlHolder">
-		<tmpl_if name="edit_disabled">
-		<label for="server_id_disabled">{tmpl_var name='server_id_txt'}</label>
-		<select name="server_id_disabled" id="server_id_disabled" class="selectInput" disabled="disabled">
-		  {tmpl_var name='server_id'}
-		</select>
-		<input type="hidden" name="server_id" value="{tmpl_var name='server_id_value'}" />
-		<tmpl_else>
-		<label for="server_id">{tmpl_var name='server_id_txt'}</label>
-        <select name="server_id" id="server_id" class="selectInput" onChange="loadOptionInto('ip_address','sites/ajax_get_ip.php?server_id='+document.getElementById('server_id').value)">
-		  {tmpl_var name='server_id'}
-		</select>
-		</tmpl_if>
-      </div>
-      <div class="ctrlHolder">
-      	<label for="client_group_id">{tmpl_var name='client_group_id_txt'}</label>
-        <select name="client_group_id" id="client_group_id" class="selectInput">
-					{tmpl_var name='client_group_id'}
-				</select>
-      </div>
-      </tmpl_if>
-      <tmpl_if name="is_reseller">
-      <div class="ctrlHolder">
-      	<label for="client_group_id">{tmpl_var name='client_group_id_txt'}</label>
-        <select name="client_group_id" id="client_group_id" class="selectInput">
-					{tmpl_var name='client_group_id'}
-				</select>
-      </div>
-      </tmpl_if>
-      <div class="ctrlHolder">
-      	<label for="ip_address">{tmpl_var name='ip_address_txt'}</label>
-        <select name="ip_address" id="ip_address" class="selectInput formLengthIPv4">
-					{tmpl_var name='ip_address'}
-				</select>
-      </div>
-      <div class="ctrlHolder">
-      	<label for="domain">{tmpl_var name='domain_txt'}</label>
-        <tmpl_if name="domain_option">
-			<select name="domain" id="domain" class="selectInput">
-					{tmpl_var name='domain_option'}
-			</select>
-		<tmpl_else>
-	        <input name="domain" id="domain" value="{tmpl_var name='domain'}" size="30" maxlength="255" type="text" class="textInput" />
-        </tmpl_if>
-		</div>
-      <div class="ctrlHolder">
-      	<label for="hd_quota">{tmpl_var name='hd_quota_txt'}</label>
-        <input name="hd_quota" id="hd_quota" value="{tmpl_var name='hd_quota'}" size="7" maxlength="7" type="text" class="textInput formLengthLimit" />&nbsp;MB
-			</div>
-      <div class="ctrlHolder">
-      	<label for="traffic_quota">{tmpl_var name='traffic_quota_txt'}</label>
-        <input name="traffic_quota" id="traffic_quota" value="{tmpl_var name='traffic_quota'}" size="7" maxlength="7" type="text" class="textInput formLengthLimit" />&nbsp;MB <tmpl_var name='traffic_quota_exceeded_txt'>
-			</div>
-      <div class="ctrlHolder">
-				<p class="label">{tmpl_var name='cgi_txt'}</p>
-					<div class="multiField">
-						{tmpl_var name='cgi'}
-					</div>
-			</div>
-      <div class="ctrlHolder">
-				<p class="label">{tmpl_var name='ssi_txt'}</p>
-					<div class="multiField">
-						{tmpl_var name='ssi'}
-					</div>
-	  </div>
-	  <div class="ctrlHolder apache">
-				<p class="label">{tmpl_var name='ruby_txt'}</p>
-					<div class="multiField">
-						{tmpl_var name='ruby'}
-					</div>
-	  </div>
-      <div class="ctrlHolder apache">
-				<p class="label">{tmpl_var name='suexec_txt'}</p>
-					<div class="multiField">
-						{tmpl_var name='suexec'}
-					</div>
-			</div>
-      <div class="ctrlHolder">
-				<p class="label">{tmpl_var name='errordocs_txt'}</p>
-					<div class="multiField">
-						{tmpl_var name='errordocs'}
-					</div>
-			</div>
+    <div class="pnl_formsarea">
+        <fieldset class="inlineLabels">
+            <tmpl_if name="is_admin">
+                <div class="ctrlHolder">
+                    <tmpl_if name="edit_disabled">
+                        <label for="server_id_disabled">{tmpl_var name='server_id_txt'}</label>
+                        <select name="server_id_disabled" id="server_id_disabled" class="selectInput" disabled="disabled">
+                            {tmpl_var name='server_id'}
+                        </select>
+                        <input type="hidden" name="server_id" value="{tmpl_var name='server_id_value'}" />
+                        <tmpl_else>
+                            <label for="server_id">{tmpl_var name='server_id_txt'}</label>
+                            <select name="server_id" id="server_id" class="selectInput">
+                                {tmpl_var name='server_id'}
+                            </select>
+                    </tmpl_if>
+                </div>
+                <div class="ctrlHolder">
+                    <label for="client_group_id">{tmpl_var name='client_group_id_txt'}</label>
+                    <select name="client_group_id" id="client_group_id" class="selectInput">
+                        {tmpl_var name='client_group_id'}
+                    </select>
+                </div>
+                <tmpl_else>
+                    <input type="hidden" id="server_id" name="server_id" value="{tmpl_var name='server_id_value'}" />
+            </tmpl_if>
+            <tmpl_if name="is_reseller">
+                <div class="ctrlHolder">
+                    <label for="client_group_id">{tmpl_var name='client_group_id_txt'}</label>
+                    <select name="client_group_id" id="client_group_id" class="selectInput">
+                        {tmpl_var name='client_group_id'}
+                    </select>
+                </div>
+            </tmpl_if>
+            <div class="ctrlHolder">
+                <label for="ip_address">{tmpl_var name='ip_address_txt'}</label>
+                <select name="ip_address" id="ip_address" class="selectInput formLengthIPv4">
+                    {tmpl_var name='ip_address'}
+                </select>
+            </div>
+            <div class="ctrlHolder">
+                <label for="ipv6_address">{tmpl_var name='ipv6_address_txt'}</label>
+                <select name="ipv6_address" id="ipv6_address" class="selectInput formLengthIPv4">
+                    {tmpl_var name='ipv6_address'}
+                </select>
+            </div>
+            <div class="ctrlHolder">
+                <label for="domain">{tmpl_var name='domain_txt'}</label>
+                <tmpl_if name="domain_option">
+                    <select name="domain" id="domain" class="selectInput">
+                        {tmpl_var name='domain_option'}
+                    </select>
+                    <tmpl_else>
+                        <input name="domain" id="domain" value="{tmpl_var name='domain'}" size="30" maxlength="255" type="text" class="textInput" />
+                </tmpl_if>
+            </div>
+            <div class="ctrlHolder">
+                <label for="hd_quota">{tmpl_var name='hd_quota_txt'}</label>
+                <input name="hd_quota" id="hd_quota" value="{tmpl_var name='hd_quota'}" size="7" maxlength="7" type="text" class="textInput formLengthLimit" />&nbsp;MB
+            </div>
+            <div class="ctrlHolder">
+                <label for="traffic_quota">{tmpl_var name='traffic_quota_txt'}</label>
+                <input name="traffic_quota" id="traffic_quota" value="{tmpl_var name='traffic_quota'}" size="7" maxlength="7" type="text" class="textInput formLengthLimit" />&nbsp;MB <tmpl_var name='traffic_quota_exceeded_txt'>
+            </div>
+            <tmpl_if name="limit_cgi" op="==" value="y"><div class="ctrlHolder">
+                <p class="label">{tmpl_var name='cgi_txt'}</p>
+                <div class="multiField">
+                    {tmpl_var name='cgi'}
+                </div>
+            </div></tmpl_if>
+            <tmpl_if name="limit_ssi" op="==" value="y"><div class="ctrlHolder">
+                <p class="label">{tmpl_var name='ssi_txt'}</p>
+                <div class="multiField">
+                    {tmpl_var name='ssi'}
+                </div>
+            </div></tmpl_if>
+            <tmpl_if name="limit_perl" op="==" value="y"><div class="ctrlHolder apache">
+                <p class="label">{tmpl_var name='perl_txt'}</p>
+                <div class="multiField">
+                    {tmpl_var name='perl'}
+                </div>
+            </div></tmpl_if>
+            <tmpl_if name="limit_ruby" op="==" value="y"><div class="ctrlHolder apache">
+                <p class="label">{tmpl_var name='ruby_txt'}</p>
+                <div class="multiField">
+                    {tmpl_var name='ruby'}
+                </div>
+            </div></tmpl_if>
+            <tmpl_if name="limit_python" op="==" value="y"><div class="ctrlHolder apache">
+                <p class="label">{tmpl_var name='python_txt'}</p>
+                <div class="multiField">
+                    {tmpl_var name='python'}
+                </div>
+            </div></tmpl_if>
+            <tmpl_if name="force_suexec" op="==" value="n"><div class="ctrlHolder apache">
+                <p class="label">{tmpl_var name='suexec_txt'}</p>
+                <div class="multiField">
+                    {tmpl_var name='suexec'}
+                </div>
+            </div></tmpl_if>
+            <tmpl_if name="limit_hterror" op="==" value="y"><div class="ctrlHolder">
+                <p class="label">{tmpl_var name='errordocs_txt'}</p>
+                <div class="multiField">
+                    {tmpl_var name='errordocs'}
+                </div>
+            </div></tmpl_if>
 
-      <div class="ctrlHolder">
-      	<label for="subdomain">{tmpl_var name='subdomain_txt'}</label>
-        <select name="subdomain" id="subdomain" class="selectInput formLengthHalf">
-					{tmpl_var name='subdomain'}
-				</select>
-      </div>
-      <div class="ctrlHolder">
-				<p class="label">{tmpl_var name='ssl_txt'}</p>
-					<div class="multiField">
-						{tmpl_var name='ssl'}
-					</div>
-			</div>
-      <div class="ctrlHolder">
-      	<label for="php">{tmpl_var name='php_txt'}</label>
-        <select name="php" id="php" class="selectInput formLengthHalf">
-					{tmpl_var name='php'}
-				</select>
-      </div>
-      <div class="ctrlHolder">
-				<p class="label">{tmpl_var name='active_txt'}</p>
-					<div class="multiField">
-						{tmpl_var name='active'}
-					</div>
-			</div>
-    </fieldset>
+            <div class="ctrlHolder">
+                <label for="subdomain">{tmpl_var name='subdomain_txt'}</label>
+                <select name="subdomain" id="subdomain" class="selectInput formLengthHalf">
+                    {tmpl_var name='subdomain'}
+                </select>
+            </div>
+            <tmpl_if name="limit_ssl" op="==" value="y"><div class="ctrlHolder">
+                <p class="label">{tmpl_var name='ssl_txt'}</p>
+                <div class="multiField">
+                    {tmpl_var name='ssl'}
+                </div>
+            </div></tmpl_if>
+            <div class="ctrlHolder">
+                <label for="php">{tmpl_var name='php_txt'}</label>
+                <select name="php" id="php" class="selectInput formLengthHalf">
+                    {tmpl_var name='php'}
+                </select>
+            </div>
+            <div class="ctrlHolder fastcgi_php_version">
+                <label for="fastcgi_php_version">{tmpl_var name='fastcgi_php_version_txt'}</label>
+                <select name="fastcgi_php_version" id="fastcgi_php_version" class="selectInput formLengthHalf">
+                    {tmpl_var name='fastcgi_php_version'}
+                </select>
+            </div>
+            <div class="ctrlHolder">
+                <p class="label">{tmpl_var name='active_txt'}</p>
+                <div class="multiField">
+                    {tmpl_var name='active'}
+                </div>
+            </div>
+        </fieldset>
 
-    <input type="hidden" name="id" value="{tmpl_var name='id'}">
+        <input type="hidden" name="id" value="{tmpl_var name='id'}">
 
-    <div class="buttonHolder buttons">
-      <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','sites/web_domain_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
-      <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('sites/web_domain_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
+        <div class="buttonHolder buttons">
+            <button id="dom-edit-submit" class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}"><span>{tmpl_var name='btn_save_txt'}</span></button>
+            <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onclick="loadContent('sites/web_domain_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
+        </div>
     </div>
-  </div>
-  
+
 </div>
 <script language="JavaScript" type="text/javascript">
-		var serverId;
-		var serverIdDisabled = jQuery('#server_id_disabled').val();
-		if(serverIdDisabled > 0){
-			serverId = serverIdDisabled;
-		} else {
-			serverId = jQuery('#server_id').val();
-			jQuery('#server_id').change(function(){
-				serverId = $(this).val();
-				adjustForm(serverId);
-			});
-		}
-		adjustForm(serverId);
+    var serverId;
+    var clientGroupId = jQuery('#client_group_id').val();
+    var serverIdDisabled = jQuery('#server_id_disabled').val();
+    if(serverIdDisabled > 0){
+        serverId = serverIdDisabled;
+    } else {
+        serverId = jQuery('#server_id').val();
+        jQuery('#server_id').change(function(){
+            serverId = $(this).val();
+            adjustForm();
+            reloadWebIP();
+            reloadFastcgiPHPVersions();
+        });
+    }
+    adjustForm(true);
+    reloadFastcgiPHPVersions(true);
 		
-		function adjustForm(serverId){
-			jQuery.getJSON('sites/ajax_get_json.php'+ '?' + Math.round(new Date().getTime()), {server_id : serverId, type : "getservertype"}, function(data) {
-				if(data.servertype == "nginx"){
-					var selected = jQuery('#php').val();
-					jQuery('.apache').hide();
-					jQuery('.apache').hide();
-					jQuery('#php option[value="cgi"]').hide();
-					jQuery('#php option[value="mod"]').hide();
-					jQuery('#php option[value="suphp"]').hide();
-					if(selected != "no" && selected != "fast-cgi") jQuery('#php option[value="fast-cgi"]').attr('selected', 'selected');
-				} else {
-					jQuery('.apache').show();
-					jQuery('.apache').show();
-					jQuery('#php option[value="cgi"]').show();
-					jQuery('#php option[value="mod"]').show();
-					jQuery('#php option[value="suphp"]').show();
-				}
-			});
-		}
+    jQuery('#client_group_id').change(function(){
+        clientGroupId = $(this).val();
+        reloadWebIP();
+    });
+		
+    if(jQuery('#php').val() == 'fast-cgi' || jQuery('#php').val() == 'php-fpm'){
+        jQuery('.fastcgi_php_version:hidden').show();
+    } else {
+        jQuery('.fastcgi_php_version:visible').hide();
+    }
+    //resetFormChanged();
+    
+    jQuery('#php').change(function(){
+        reloadFastcgiPHPVersions();
+        if(jQuery(this).val() == 'fast-cgi' || jQuery(this).val() == 'php-fpm'){
+            jQuery('.fastcgi_php_version:hidden').show();
+        } else {
+            jQuery('.fastcgi_php_version:visible').hide();
+        }
+    });
+		
+    function adjustForm(noFormChange){
+        jQuery.getJSON('sites/ajax_get_json.php'+ '?' + Math.round(new Date().getTime()), {server_id : serverId, type : "getservertype"}, function(data) {
+            if(data.servertype == "nginx"){
+                var selected = jQuery('#php').val();
+                jQuery('.apache').hide();
+                if(selected != "no" && selected != "php-fpm") {
+                    jQuery('#php option[value="php-fpm"]').attr('selected', 'selected').val('php-fpm');
+                }
+                jQuery('#php option[value="fast-cgi"]').hide();
+                jQuery('#php option[value="cgi"]').hide();
+                jQuery('#php option[value="mod"]').hide();
+                jQuery('#php option[value="suphp"]').hide();
+            } else {
+                jQuery('.apache').show();
+                jQuery('#php option[value="fast-cgi"]').show();
+                jQuery('#php option[value="cgi"]').show();
+                jQuery('#php option[value="mod"]').show();
+                jQuery('#php option[value="suphp"]').show();
+            }
+            if(noFormChange) {
+                resetFormChanged();
+                jQuery('#php').addClass('no-page-form-change').change();
+                jQuery('#php').removeClass('no-page-form-change');
+            } else {
+                jQuery('#php').change();
+            }
+        });
+    }
+		
+    function reloadWebIP() {
+        loadOptionInto('ip_address','sites/ajax_get_ip.php?ip_type=IPv4&server_id='+serverId+'&client_group_id='+clientGroupId);
+        loadOptionInto('ipv6_address','sites/ajax_get_ip.php?ip_type=IPv6&server_id='+serverId+'&client_group_id='+clientGroupId);
+    }
+		
+    function reloadFastcgiPHPVersions(noFormChange) {
+        jQuery.getJSON('sites/ajax_get_json.php'+ '?' + Math.round(new Date().getTime()), {server_id : serverId, php_type : jQuery('#php').val(), type : "getphpfastcgi"}, function(data) {
+            var options = '<option value="">Default</option>';
+            var phpfastcgiselected = '';
+            $.each(data, function(key, val) {
+                if($('#fastcgi_php_version').val() == key){
+                    phpfastcgiselected = ' selected="selected"';
+                } else {
+                    phpfastcgiselected = '';
+                }
+                options += '<option value="'+key+'"'+phpfastcgiselected+'>'+val+'</option>';
+            });
+            $('#fastcgi_php_version').html(options).change();
+            if(noFormChange) resetFormChanged();
+        });
+    }
+    
+    <tmpl_if name="readonly_tab">
+        jQuery('div.panel_web_domain').find('fieldset').find('input,select,button').click(function(e) { e.preventDefault(); }).focus(function() { $(this).blur(); });
+        jQuery('#dom-edit-submit').click(function() {
+               submitForm('pageForm','sites/web_domain_edit.php');
+        });
+    <tmpl_else>
+        jQuery('#dom-edit-submit').click(function() {
+            submitForm('pageForm','sites/web_domain_edit.php');
+        });
+    </tmpl_if>
 			
-</script>
+</script>
\ No newline at end of file

--
Gitblit v1.9.1