From 5371104a2d10889c532bb5d345fa6d71c0a897d1 Mon Sep 17 00:00:00 2001 From: Dries Buytaert Date: Wed, 29 Oct 2008 10:01:28 +0000 Subject: - Patch #316225 by sun et al: allow behaviors to detach from AHAH/AJAX. --- modules/openid/openid.js | 68 +++++++++++++++++++++++++----------------------- 1 file changed, 35 insertions(+), 33 deletions(-) (limited to 'modules/openid') diff --git a/modules/openid/openid.js b/modules/openid/openid.js index bd2948dc9..eeb84300d 100644 --- a/modules/openid/openid.js +++ b/modules/openid/openid.js @@ -1,38 +1,40 @@ // $Id$ -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"); +Drupal.behaviors.openid = { + attach: 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"); + // 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; + }); } - $("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; - }); }; -- cgit v1.2.3