changeset 4951:287332039f57

javascript: use jQuery $.post instead of YAHOO.util.Connect.asyncRequest ajaxPOST will add the extra custom X-PARTIAL-XHR header ... but it does no harm in these cases.
author Mads Kiilerich <madski@unity3d.com>
date Tue, 31 Mar 2015 01:17:37 +0200
parents 85ff6389b434
children dc91b9693667
files kallithea/public/js/base.js kallithea/templates/admin/settings/settings_hooks.html
diffstat 2 files changed, 31 insertions(+), 41 deletions(-) [+]
line wrap: on
line diff
--- a/kallithea/public/js/base.js	Tue Mar 31 01:17:37 2015 +0200
+++ b/kallithea/public/js/base.js	Tue Mar 31 01:17:37 2015 +0200
@@ -390,16 +390,17 @@
         ;
 };
 
-var ajaxPOST = function(url,postData,success) {
+var ajaxPOST = function(url, postData, success, failure) {
     var postData = _toQueryString(postData);
+    if(failure === undefined) {
+        failure = function(jqXHR, textStatus, errorThrown) {
+                if (textStatus != "abort")
+                    alert("Error posting to server: " + textStatus);
+            };
+    }
     return $.ajax({url: url, data: postData, type: 'POST', headers: {'X-PARTIAL-XHR': '1'}, cache: false})
         .done(success)
-        .fail(function(jqXHR, textStatus, errorThrown) {
-                if (textStatus == "abort")
-                    return;
-                alert("Ajax POST error: " + textStatus);
-            })
-        ;
+        .fail(failure);
 };
 
 
@@ -1074,37 +1075,31 @@
 };
 
 var deleteNotification = function(url, notification_id, callbacks){
-    var callback = {
-        success:function(o){
+    var success = function(o){
             $("#notification_"+notification_id).remove();
             _run_callbacks(callbacks);
-        },
-        failure:function(o){
+        };
+    var failure = function(o){
             alert("deleteNotification failure");
-        }
-    };
-    var postData = '_method=delete';
+        };
+    var postData = {'_method': 'delete'};
     var sUrl = url.replace('__NOTIFICATION_ID__',notification_id);
-    var request = YAHOO.util.Connect.asyncRequest('POST', sUrl,
-                                                  callback, postData);
+    ajaxPOST(sUrl, postData, success, failure);
 };
 
 var readNotification = function(url, notification_id, callbacks){
-    var callback = {
-        success:function(o){
+    var success = function(o){
             var $obj = $("#notification_"+notification_id);
             $obj.removeClass('unread');
             $obj.find('.read-notification').remove();
             _run_callbacks(callbacks);
-        },
-        failure:function(o){
+        };
+    var failure = function(o){
             alert("readNotification failure");
-        }
-    };
-    var postData = '_method=put';
+        };
+    var postData = {'_method': 'put'};
     var sUrl = url.replace('__NOTIFICATION_ID__',notification_id);
-    var request = YAHOO.util.Connect.asyncRequest('POST', sUrl,
-                                                  callback, postData);
+    ajaxPOST(sUrl, postData, success, failure);
 };
 
 /** MEMBERS AUTOCOMPLETE WIDGET **/
@@ -1729,14 +1724,12 @@
 }
 
 function ajaxActionRevokePermission(url, obj_id, obj_type, field_id, extra_data) {
-    var callback = {
-        success: function (o) {
+    var success = function (o) {
             $('#' + field_id).remove();
-        },
-        failure: function (o) {
+        };
+    var failure = function (o) {
             alert(_TM['Failed to revoke permission'] + ": " + o.status);
-        }
-    };
+        };
     var query_params = {
         '_method': 'delete'
     }
@@ -1756,8 +1749,7 @@
         query_params['obj_type'] = 'user_group';
     }
 
-    var request = YAHOO.util.Connect.asyncRequest('POST', url, callback,
-            _toQueryString(query_params));
+    ajaxPOST(url, query_params, success, failure);
 };
 
 /* Multi selectors */
--- a/kallithea/templates/admin/settings/settings_hooks.html	Tue Mar 31 01:17:37 2015 +0200
+++ b/kallithea/templates/admin/settings/settings_hooks.html	Tue Mar 31 01:17:37 2015 +0200
@@ -60,16 +60,14 @@
 <script type="text/javascript">
 function ajaxActionHook(hook_id,field_id) {
     var sUrl = "${h.url('admin_settings_hooks')}";
-    var callback = {
-        success: function (o) {
+    var success = function (o) {
             var elem = YUD.get(""+field_id);
             elem.parentNode.removeChild(elem);
-        },
-        failure: function (o) {
+        };
+    var failure = function (o) {
             alert("${_('Failed to remove hook')}");
-        }
-    };
-    var postData = '_method=delete&hook_id=' + hook_id;
-    var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, callback, postData);
+        };
+    var postData = {'_method': 'delete', 'hook_id': hook_id};
+    ajaxPOST(sUrl, postData, success, failure);
 };
 </script>