]> git.openstreetmap.org Git - rails.git/blobdiff - app/assets/javascripts/login.js
Merge remote-tracking branch 'upstream/pull/2161'
[rails.git] / app / assets / javascripts / login.js
index 755c3bf657164658e8e5603a853cabcec6e2bb34..3496587b49848cadbd8d7f96c40cf70db970f905 100644 (file)
@@ -4,6 +4,13 @@ $(document).ready(function() {
     $("#referer").val($("#referer").val() + window.location.hash);
   }
 
+  // Attach referer to authentication buttons
+  $(".auth_button").each(function () {
+    var params = querystring.parse(this.search.substring(1));
+    params.referer = $("#referer").val();
+    this.search = querystring.stringify(params);
+  });
+
   // Add click handler to show OpenID field
   $("#openid_open_url").click(function() {
     $("#openid_url").val("http://");
@@ -15,4 +22,18 @@ $(document).ready(function() {
   // Hide OpenID field for now
   $("#login_openid_url").hide();
   $("#login_openid_submit").hide();
+
+  // Handle OpenID submission by redirecting to omniauth
+  $("#openid_login_form").submit(function() {
+    var action = $(this).prop("action"),
+        openid_url = $(this).find("#openid_url").val(),
+        referer = $(this).find("#openid_referer").val(),
+        args = {};
+    args.openid_url = openid_url;
+    if (referer) {
+      args.referer = referer;
+    }
+    window.location = action + "?" + querystring.stringify(args);
+    return false;
+  });
 });