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_vhost_subdomain_edit.htm |   34 +++++++++++++++++++++++++++-------
 1 files changed, 27 insertions(+), 7 deletions(-)

diff --git a/interface/web/sites/templates/web_vhost_subdomain_edit.htm b/interface/web/sites/templates/web_vhost_subdomain_edit.htm
index 5212b5d..67c26f3 100644
--- a/interface/web/sites/templates/web_vhost_subdomain_edit.htm
+++ b/interface/web/sites/templates/web_vhost_subdomain_edit.htm
@@ -140,8 +140,7 @@
             reloadFastcgiPHPVersions();
         });
     }
-    adjustForm();
-    reloadFastcgiPHPVersions();
+    reloadServerId(true);
 		
     jQuery('#client_group_id').change(function(){
         clientGroupId = $(this).val();
@@ -161,17 +160,31 @@
             jQuery('.fastcgi_php_version:visible').hide();
         }
     });
-		
-    function adjustForm(){
+    jQuery('#parent_domain_id').change(function() {
+        reloadServerId(false);
+    });
+    
+    function reloadServerId(noFormChange) {
+        var parentWebId = jQuery('#parent_domain_id').val();
+        jQuery.getJSON('sites/ajax_get_json.php'+ '?' + Math.round(new Date().getTime()), {web_id : parentWebId, type : "getserverid"}, function(data) {
+            if(data.serverid) serverId = data.serverid;
+            adjustForm(noFormChange);
+            if(noFormChange) reloadFastcgiPHPVersions(noFormChange);
+        });
+    }
+    
+    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();
-                if(selected != "no" && selected != "php-fpm") jQuery('#php option[value="php-fpm"]').attr('selected', 'selected');
             } else {
                 jQuery('.apache').show();
                 jQuery('#php option[value="fast-cgi"]').show();
@@ -179,7 +192,13 @@
                 jQuery('#php option[value="mod"]').show();
                 jQuery('#php option[value="suphp"]').show();
             }
-            jQuery('#php').change();
+            if(noFormChange) {
+                resetFormChanged();
+                jQuery('#php').addClass('no-page-form-change').change();
+                jQuery('#php').removeClass('no-page-form-change');
+            } else {
+                jQuery('#php').change();
+            }
         });
     }
 		
@@ -188,7 +207,7 @@
         loadOptionInto('ipv6_address','sites/ajax_get_ip.php?ip_type=IPv6&server_id='+serverId+'&client_group_id='+clientGroupId);
     }
 		
-    function reloadFastcgiPHPVersions() {
+    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 = '';
@@ -201,6 +220,7 @@
                 options += '<option value="'+key+'"'+phpfastcgiselected+'>'+val+'</option>';
             });
             $('#fastcgi_php_version').html(options).change();
+            if(noFormChange) resetFormChanged();
         });
     }
     

--
Gitblit v1.9.1