diff modules/openid/openid.js @ 1:c1f4ac30525a 6.0

Drupal 6.0
author Franck Deroche <webmaster@defr.org>
date Tue, 23 Dec 2008 14:28:28 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/modules/openid/openid.js	Tue Dec 23 14:28:28 2008 +0100
@@ -0,0 +1,38 @@
+// $Id: openid.js,v 1.6 2008/01/30 22:11:22 goba Exp $
+
+Drupal.behaviors.openid = function (context) {
+  var $loginElements = $("#edit-name-wrapper, #edit-pass-wrapper, li.openid-link");
+  var $openidElements = $("#edit-openid-identifier-wrapper, li.user-link");
+
+  // This behavior attaches by ID, so is only valid once on a page.
+  if (!$("#edit-openid-identifier.openid-processed").size() && $("#edit-openid-identifier").val()) {
+    $("#edit-openid-identifier").addClass('openid-processed');
+    $loginElements.hide();
+    // Use .css("display", "block") instead of .show() to be Konqueror friendly.
+    $openidElements.css("display", "block");
+  }
+  $("li.openid-link:not(.openid-processed)", context)
+    .addClass('openid-processed')
+    .click( function() {
+       $loginElements.hide();
+       $openidElements.css("display", "block");
+      // Remove possible error message.
+      $("#edit-name, #edit-pass").removeClass("error");
+      $("div.messages.error").hide();
+      // Set focus on OpenID Identifier field.
+      $("#edit-openid-identifier")[0].focus();
+      return false;
+    });
+  $("li.user-link:not(.openid-processed)", context)
+    .addClass('openid-processed')
+    .click(function() {
+       $openidElements.hide();
+       $loginElements.css("display", "block");
+      // Clear OpenID Identifier field and remove possible error message.
+      $("#edit-openid-identifier").val('').removeClass("error");
+      $("div.messages.error").css("display", "block");
+      // Set focus on username field.
+      $("#edit-name")[0].focus();
+      return false;
+    });
+};