Download & Extend

split email login feature out into its own module

Project:LoginToboggan
Version:7.x-1.x-dev
Component:Code
Category:feature request
Priority:normal
Assigned:Unassigned
Status:active

Issue Summary

I'm attaching a patch that would split the email login feature out into a separate module. Other features could be split out this way as well. It seems like this would be less overhead for sites that only need a feature or two, while still keeping drupal.org/project/logintoboggan as one centralized place for all your login customization needs. :)

I used email_login as the module name, following the cck pattern where submodules have their own namespace. Obviously logintoboggan_email_login would work as a module name too, or maybe lt_email_login. I'm happy to reroll the patch with any name you like.

AttachmentSize
email_login_split.patch9.77 KB

Comments

#1

Being able to select the features you want activated under a LoginToboggan fieldset in modules sounds like a great idea!

It would be awesome if LT could have a module lt_username to autogenerate a user's username depending on the option you choose, ie uid or email address or token. Would you be able to assist in this as well?

#2

Subscribing, greetings, Martijn

#3

It would be awesome if LT could have a module lt_username to autogenerate a user's username depending on the option you choose, ie uid or email address or token. Would you be able to assist in this as well?

a) out of scope for this issue
b) not something i'd be interested in including in LT -- sounds like another contrib to me

folks, i do *not* have any interest in making LT the 'one centralized place for all your login customization needs' -- that would be an absolute maintenance nightmare, as every person submitted their 'i need this' submodule, then failed to update them on major version upgrades.

i consider LT's featureset to be relatively stable now, especially with the upcoming merge of logindestination module in 7.x.

#4

Subscribe

#5

Status:needs review» needs work
  1. is 'LoginToboggan' really the package name we want in the .info file? given that we're planning to break some things into mini-modules, maybe this makes the most sense, but i'm wondering if there's a more general way to do it.
  2. we should rename the theming functions, since they don't live in logintoboggan anymore. This module doesn't even really depend on LT, so i say keep it clean. i know this will make more work for people using overrides, but it's not much more work, it's better namespacing, and prior to the first official 7.x release is the best time to do it.
  3. there are still references to LT in the code notes.
  4. variable_del('logintoboggan_login_with_email'); <-- this should be outside of the conditional, as we want it gone no matter what it's set to.
  5. should be 'user/login' not '/user/login' in the theming code notes -- might as well clean that up now.
  6. you missed the validation handlers for user's editing their username/email -- see logintoboggan_user_edit_validate()

#6

Status:needs work» closed (won't fix)

there's been no momentum here, and i'm not super excited by this splitting idea anymore. it would probably take a new maintainer to make this work. ;)

#7

Going to work on module, in a stripped down manner, in sandbox http://drupal.org/sandbox/hefox/1359748

#8

Status:closed (won't fix)» active

I've finished 6.x and 7.x version of login_email module in that sandbox.

What it does

  • login_email is the module name -- since 'login' is the primary area, it feels like it should start with login
  • It's project is 'Login', which I'm suggesting as a namespace for all login modules, as, well, they're login modules.
  • It doesn't have those odd theme functions. The only reason I can think of those theme functions being added was to add overridability where there wasn't, which isn't specific logging in via email so seemed misplaced -- it seems like more a case for a form tweeking module (there is one that does that I believe, can't recall name)
  • It includes a fix for #1359718: A user can have a username that matches another user's email (confuses user/pass)
  • It allows configuring whether to use username, email, or both for login

Here's where I very from everyone else in this issue so far -- I don't see the reason why logintoboggan needs to be a central repository for login related functionality. If something is unconnected functionality, then it's reasonable that it's separated into distinct modules (with their own issue trackers, etc.). E.g: Fields now has fieldgroup, nodereferences, etc. into it's own projects. There is pros and cons to this, of course. I don't want to download extra stuff when I just want one thing of several :(!

So, my proposal is to remove login via email from logintoboggan (and general to separate logintoboggan into distinct functionality).

#9

Will try and take a look at your sandbox work @hefox although I think it might be some time before this could get actioned, even if it seemed a good idea. It represents a fairly major shift in LT functionality, plus I think there's a case that over an extended period LT has represented a stable 'one-stop shop' for anyone wanting to customize the core login functionality.