(function ($) { "use strict"; Drupal.behaviors.openid = { attach: function (context) { var $context = $(context); var loginElements = $('.form-item-name, .form-item-pass, li.openid-link'); var openidElements = $('.form-item-openid-identifier, li.user-link'); var cookie = $.cookie('Drupal.visitor.openid_identifier'); // This behavior attaches by ID, so is only valid once on a page. if (cookie || location.hash === '#openid-login') { var $edit_openid_identifier = $('#edit-openid-identifier'); if (cookie) { $edit_openid_identifier.val(cookie); } $edit_openid_identifier.once('openid', function() { loginElements.hide(); // Use .css('display', 'block') instead of .show() to be Konqueror friendly. openidElements.css('display', 'block'); }); } $context.find('li.openid-link') .once('openid') .click(function (e) { e.preventDefault(); 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(); }); $context.find('li.user-link') .once('openid') .click(function (e) { e.preventDefault(); 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(); }); } }; })(jQuery);