]> git.openstreetmap.org Git - rails.git/blobdiff - app/assets/javascripts/oauth.js
Tidy up javascript OAuth code
[rails.git] / app / assets / javascripts / oauth.js
index 73e1761f2aaa59af11f045c10aedd9b5e83b1973..126d2d3eb470b1e44be07d4737cbbcc86215941c 100644 (file)
@@ -1,32 +1,25 @@
 //= require sha
 //= require ohauth
 
-$(document).ready(function () {
-  $.ajaxPrefilter(function(options, jqxhr) {
-    if (options.oauth) {
-      var ohauth = window.ohauth;
-      var url = options.url.replace(/\?$/, "");
-      var params = {
-        oauth_consumer_key: OSM.oauth_consumer_key,
-        oauth_token: OSM.oauth_token,
-        oauth_signature_method: "HMAC-SHA1",
-        oauth_timestamp: ohauth.timestamp(),
-        oauth_nonce: ohauth.nonce()
-      };
+$.ajaxPrefilter(function(options, jqxhr) {
+  if (options.oauth) {
+    var ohauth = window.ohauth;
+    var url = options.url.replace(/\?$/, "");
+    var params = {
+      oauth_consumer_key: OSM.oauth_consumer_key,
+      oauth_token: OSM.oauth_token,
+      oauth_signature_method: "HMAC-SHA1",
+      oauth_timestamp: ohauth.timestamp(),
+      oauth_nonce: ohauth.nonce()
+    };
 
-      for (var name in jqxhr.data) {
-        params[name] = jqxhr.data[name];
-      }
+    params.oauth_signature = ohauth.signature(
+      OSM.oauth_consumer_secret,
+      OSM.oauth_token_secret,
+      ohauth.baseString(options.type, url, $.extend({}, params, jqxhr.data))
+    );
 
-      params.oauth_signature = ohauth.signature(
-        OSM.oauth_consumer_secret,
-        OSM.oauth_token_secret,
-        ohauth.baseString(options.type, url, params)
-      );
-
-      options.headers = {
-        Authorization: "OAuth " + ohauth.authHeader(params)
-      };
-    }
-  });
+    options.headers = options.headers || {};
+    options.headers.Authorization = "OAuth " + ohauth.authHeader(params);
+  }
 });