X-Git-Url: https://svn.cri.ensmp.fr/git/Plinn.git/blobdiff_plain/eda66a51fdc314fc63a13c5a81de440216a87c5c..71dabee8e958969a62c346709f25eddde22418b2:/skins/ajax_scripts/ajax_form_manager.js?ds=inline

diff --git a/skins/ajax_scripts/ajax_form_manager.js b/skins/ajax_scripts/ajax_form_manager.js
index 03ebdd8..508a4f9 100644
--- a/skins/ajax_scripts/ajax_form_manager.js
+++ b/skins/ajax_scripts/ajax_form_manager.js
@@ -17,7 +17,6 @@ FormManager = function(form, responseTextDest, lazy) {
 	var thisManager = this;
 	this.form.onsubmit = function(evt) { thisManager.submit(evt); };
 	this.form.onclick = function(evt) { thisManager.click(evt); };
-	this.submitButton = null;
 	
 	/* raised on form submit */
 	this.onBeforeSubmit = null;
@@ -55,6 +54,7 @@ FormManager.prototype.submit = function(evt) {
 			if (onBeforeSubmit.length) {
 				onBeforeSubmit = onBeforeSubmit[0];
 			}
+			/*jslint evil: true */
 			this.onBeforeSubmit = eval(onBeforeSubmit.value);
 			bsMessage = this.onBeforeSubmit(thisManager, evt);
 		}
@@ -99,7 +99,7 @@ FormManager.prototype.submit = function(evt) {
 		query += submitButton.name + '=' + submitButton.value + '&';
 	}
 	
-	if (window.AJAX_CONFIG && (AJAX_CONFIG & 1 === 1)) {
+	if (window.AJAX_CONFIG && ((AJAX_CONFIG & 1) === 1)) {
 		if (form.method.toLowerCase() === 'post') {
 			this._post(query);
 		}
@@ -422,21 +422,18 @@ FormManager.prototype.loadResponse = function(req) {
 	}
 	
 	var onAfterPopulate = this.onAfterPopulate;
-	if (typeof(onAfterPopulate) === "string") {
-		if (window.console) {
-			console.warn('Deprecation WARNING onAfterPopulate: ' + onAfterPopulate);
-		}
-		onAfterPopulate = eval(onAfterPopulate);
-	}
 	onAfterPopulate();
 	this.scrollToPortalMessage();
+  history.pushState(absolute_url(), document.title, absolute_url());
 };
 
 FormManager.prototype.scrollToPortalMessage = function() {
 	var psm = document.getElementById('DesktopStatusBar');
-	var msgOffset = psm.offsetTop;
-	smoothScroll(window.scrollY, msgOffset);
-	shake(psm, 10, 1000);
+	if (psm) {
+		var msgOffset = psm.offsetTop;
+		smoothScroll(window.scrollY, msgOffset);
+		shake(psm, 10, 1000);
+	}
 };
 
 FormManager.prototype._fitField = function(evt) {
@@ -485,14 +482,13 @@ function smoothScroll(from, to) {
 /* adapted from http://xahlee.info/js/js_shake_box.html */
 function shake(e, distance, time) {
     // Handle arguments
-    if (!time) time = 500;
-    if (!distance) distance = 5;
+    if (!time) { time = 500; }
+    if (!distance) { distance = 5; }
 
     // Save the original style of e, Make e relatively positioned, Note the animation start time, Start the animation
     var originalStyle = e.style.cssText;
     e.style.position = "relative";
     var start = (new Date()).getTime();
-    animate();
 
     // This function checks the elapsed time and updates the position of e.
     // If the animation is complete, it restores e to its original state.
@@ -521,6 +517,7 @@ function shake(e, distance, time) {
             e.style.cssText = originalStyle; // Restore the original style
         }
     }
+    animate();
 }
 
 }());