From 7990f8881b085279269d35cf9dd2787b88ae1c08 Mon Sep 17 00:00:00 2001
From: mcramer <m.cramer@pixcept.de>
Date: Tue, 27 Nov 2012 14:47:43 -0500
Subject: [PATCH] Bugfix: _ispconfig_pw_crypted was ignored (stripped off in encoding method)

---
 interface/web/js/scrigo.js.php |   73 ++++++++++++++++++++----------------
 1 files changed, 41 insertions(+), 32 deletions(-)

diff --git a/interface/web/js/scrigo.js.php b/interface/web/js/scrigo.js.php
index 04803a1..1051905 100644
--- a/interface/web/js/scrigo.js.php
+++ b/interface/web/js/scrigo.js.php
@@ -12,6 +12,7 @@
 var requestsRunning = 0;
 var indicatorPaddingH = -1;
 var indicatorPaddingW = -1;
+var indicatorCompleted = false;
 redirect = '';
 
 function reportError(request) {
@@ -25,34 +26,36 @@
 function showLoadIndicator() {
     requestsRunning += 1;
     
-    var indicator = jQuery('#ajaxloader');
-    if(indicator.length < 1) {
-        indicator = jQuery('<div id="ajaxloader" style="display: none;"></div>');
-        indicator.appendTo('body');
+    if(requestsRunning < 2) {
+        var indicator = jQuery('#ajaxloader');
+        if(indicator.length < 1) {
+            indicator = jQuery('<div id="ajaxloader" style="display: none;"></div>');
+            indicator.appendTo('body');
+        }
+        var parent = jQuery('#content');
+        if(parent.length < 1) return;
+        indicatorCompleted = false;
+        
+        var atx = parent.offset().left + 150; //((parent.outerWidth(true) - indicator.outerWidth(true)) / 2);
+        var aty = parent.offset().top + 150;
+        indicator.css( {'left': atx, 'top': aty } ).fadeIn('fast', function() {
+            // check if loader should be hidden immediately
+            indicatorCompleted = true;
+            if(requestsRunning < 1) $(this).fadeOut('fast', function() { $(this).hide();});
+        });
     }
-    var parent = jQuery('#content');
-    if(parent.length < 1) return;
-    
-    var atx = parent.offset().left + 150; //((parent.outerWidth(true) - indicator.outerWidth(true)) / 2);
-    var aty = parent.offset().top + 150;
-    indicator.css( {'left': atx, 'top': aty } ).fadeIn('fast');
-    
-    /*var atx = parent.offset().left;
-    var aty = parent.offset().top;
-    if(indicatorPaddingW == -1) indicatorPaddingW = parseInt(indicator.css('padding-left')) + parseInt(indicator.css('padding-right'));
-    if(indicatorPaddingH == -1) indicatorPaddingH = parseInt(indicator.css('padding-top')) + parseInt(indicator.css('padding-bottom'));
-    var atw = parent.outerWidth() - indicatorPaddingW;
-    var ath = parent.outerHeight() - indicatorPaddingH;
-    
-    indicator.css( {'left': atx, 'top': aty, 'width': atw, 'height': ath } ).fadeIn('fast');*/
 }
 
 function hideLoadIndicator() {
     requestsRunning -= 1;
     if(requestsRunning < 1) {
-        jQuery('#ajaxloader').fadeOut('fast');
         requestsRunning = 0; // just for the case...
+        if(indicatorCompleted == true) jQuery('#ajaxloader').fadeOut('fast', function() { jQuery('#ajaxloader').hide(); } );
     }
+}
+
+function onAfterContentLoad() {
+    $('#pageContent').find("select").combobox();
 }
 
 function loadContentRefresh(pagename) {
@@ -68,6 +71,7 @@
 											success: function(data, textStatus, jqXHR) {
                                                 hideLoadIndicator();
 												jQuery('#pageContent').html(jqXHR.responseText);
+                                                onAfterContentLoad();
                                                 pageFormChanged = false;
 											},
 											error: function() {
@@ -88,7 +92,6 @@
 												showLoadIndicator();
 											},
 											success: function(data, textStatus, jqXHR) {
-                                                hideLoadIndicator();
 												if(jqXHR.responseText != '') {
 													if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
 														var parts = jqXHR.responseText.split(':');
@@ -101,6 +104,7 @@
 													}
 												}
 												loadMenus();
+                                                hideLoadIndicator();
 											},
 											error: function() {
                                                 hideLoadIndicator();
@@ -130,7 +134,6 @@
 												showLoadIndicator();
 											},
 											success: function(data, textStatus, jqXHR) {
-                                                hideLoadIndicator();
 												if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
 													var parts = jqXHR.responseText.split(':');
 													//alert(parts[1]);
@@ -142,9 +145,11 @@
 													document.location.href = 'index.php';
 												} else {
 													jQuery('#pageContent').html(jqXHR.responseText);
+                                                    onAfterContentLoad();
                                                     pageFormChanged = false;
 												}
 												loadMenus();
+                                                hideLoadIndicator();
 											},
 											error: function() {
                                                 hideLoadIndicator();
@@ -170,7 +175,6 @@
 												showLoadIndicator();
 											},
 											success: function(data, textStatus, jqXHR) {
-                                                hideLoadIndicator();
 												if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
 													var parts = jqXHR.responseText.split(':');
 													//alert(parts[1]);
@@ -179,8 +183,10 @@
 													//window.setTimeout('loadContent(redirect)', 1000);
 												} else {
 													jQuery('#pageContent').html(jqXHR.responseText);
+                                                    onAfterContentLoad();
                                                     pageFormChanged = false;
 												}
+                                                hideLoadIndicator();
 											},
 											error: function(jqXHR, textStatus, errorThrown) {
                                                 hideLoadIndicator();
@@ -207,7 +213,6 @@
 												showLoadIndicator();
 											},
 											success: function(data, textStatus, jqXHR) {
-                                                hideLoadIndicator();
 												if(successMessage) alert(successMessage);
 												if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
 													var parts = jqXHR.responseText.split(':');
@@ -217,8 +222,10 @@
 													//window.setTimeout('loadContent(redirect)', 1000);
 												} else {
 													jQuery('#pageContent').html(jqXHR.responseText);
+                                                    onAfterContentLoad();
                                                     pageFormChanged = false;
 												}
+                                                hideLoadIndicator();
 											},
 											error: function(jqXHR, textStatus, errorThrown) {
                                                 hideLoadIndicator();
@@ -280,7 +287,6 @@
 												showLoadIndicator();
 											},
 											success: function(data, textStatus, jqXHR) {
-                                                hideLoadIndicator();
 												if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
 													var parts = jqXHR.responseText.split(':');
 													loadContent(parts[1]);
@@ -294,8 +300,10 @@
 													//jQuery.each(reponseScript, function(idx, val) { eval(val.text); } );
 													
 													jQuery('#pageContent').html(jqXHR.responseText);
+                                                    onAfterContentLoad();
                                                     pageFormChanged = false;
 												}
+                                                hideLoadIndicator();
 											},
 											error: function() {
                                                 hideLoadIndicator();
@@ -314,14 +322,15 @@
 												showLoadIndicator();
 											},
 											success: function(data, textStatus, jqXHR) {
-                                                hideLoadIndicator();
 												if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
 													var parts = jqXHR.responseText.split(":");
 													loadContent(parts[1]);
 												} else {
 													jQuery('#pageContent').html(jqXHR.responseText);
+                                                    onAfterContentLoad();
                                                     pageFormChanged = false;
 												}
+                                                hideLoadIndicator();
 											},
 											error: function() {
                                                 hideLoadIndicator();
@@ -427,14 +436,14 @@
 											url: pagename,
 											dataType: "html",
 											beforeSend: function() {
-												showLoadIndicator();
+//												showLoadIndicator();
 											},
 											success: function(data, textStatus, jqXHR) {
-                                                hideLoadIndicator();
+//                                                hideLoadIndicator();
 												jQuery('#'+elementid).html(jqXHR.responseText);
 											},
 											error: function() {
-                                                hideLoadIndicator();
+//                                                hideLoadIndicator();
 												reportError('Ajax Request was not successful. 118');
 											}
 										});
@@ -445,10 +454,10 @@
 											url: pagename,
 											dataType: "html",
 											beforeSend: function() {
-												showLoadIndicator();
+//												showLoadIndicator();
 											},
 											success: function(data, textStatus, jqXHR) {
-                                                hideLoadIndicator();
+//                                                hideLoadIndicator();
 												var teste = jqXHR.responseText;
 												var elemente = teste.split('#');
 												el=document.getElementById(elementid);
@@ -462,7 +471,7 @@
 												}
 											},
 											error: function() {
-                                                hideLoadIndicator();
+//                                                hideLoadIndicator();
 												reportError('Ajax Request was not successful. 119');
 											}
 										});

--
Gitblit v1.9.1