When implementing #1028914: Request New Password option, the Request New Password link was hidden and a toggle link was added. The problem is the display:none style was added to the anchor and not the list item. Because of this the bullet point for the list is still showing. I don't know how to create a patch but this could be easily fixed by changing

<div class="item-list">
  <ul>
    <li class="first last"><a href="/user/password" title="Request new password via e-mail." style="display: none; ">Request new password</a></li>
    <li><a id="toggle_link" href="#">Request new password</a></li>
  </ul>
</div>

to

<div class="item-list">
  <ul>
    <li class="first last" style="display: none; "><a href="/user/password" title="Request new password via e-mail.">Request new password</a></li>
    <li><a id="toggle_link" href="#">Request new password</a></li>
  </ul>
</div>

Which is just moving the

style="display: none;"

from the anchor to the list item.

This also occurs on the Request new password screen of the fancy_login.

Attached is a screenshot of the bug.

CommentFileSizeAuthor
login.PNG6.23 KBtcheard
Support from Acquia helps fund testing for Drupal Acquia logo

Comments

tcheard’s picture

I have found something to add to this.
This bug only occurs when you head to the Request New Password screen of the fancy login, and if you head back to the login window.
This bug will then exist until a refresh of the whole webpage. Ie. Even if you close the fancy login and the open it again.

Jaypan’s picture

Thanks for letting me know. I was testing in Firefox which must collapse the whole list item if the anchor tag is hidden. Other browsers must not.

I'll fix this in the next release of the module, using the exact method you just mentioned. For the time being, you can change line 190 of /sripts/fancy_login.js from this:
$(this).fadeOut(200);
To this:
$(this).parent().fadeOut(200);
That should fix the error for the time being. If it doesn't, let me know and I'll give you another fix.

As for it not changing even if the window is closed - basically the login window is cached. When the page is first loaded, the login window is loaded along with the page (though hidden), and when the user clicks on a login link, it is made visible. When the 'request new password' link is first clicked, it loads the form using ajax and hides the original login form, and when the link is clicked again, it switches. But both forms are still present in the HTML. This is to prevent multiple calls to the server each time the link is pressed (making things faster and smoother as well). That is why you are still seeing this behavior until page reload.

Jaypan’s picture

Status: Active » Needs work
Jaypan’s picture

Follow up: I'm guessing you were seeing this using IE7? I couldn't find it any of the other browsers I tested (FF, Chrome, Safari, Opera, IE8), but I did find it in IE7. I have fixed the code and committed it, so it will become part of the next release.

Jaypan’s picture

Status: Needs work » Fixed
tcheard’s picture

Nope I was running Chrome 8.0.552.237. Anyway this did fix the problem. Thanks.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

bharathkumarkn’s picture

By default in modules/system/system.css

.item-list ul li {
margin: 0 0 0.25em 1.5em; /* LTR */
padding: 0;
list-style: disc;
}

Make
list-style: none;