[Seaside] Seaside authentication/login/user account package

Tony Fleig tony.fleig at gmail.com
Fri Jan 7 20:53:54 UTC 2011

I have published an updated TFLogin package to

The changes are:

The BowWave reCaptcha package is now used in place of using copies of
the BowWave classes.

The ability to delete user accounts has been added.

The host application may now make use of TFLogin's email confirmation
mechanism for its own purposes.

The documentation has been updated to reflect the above changes.


On Fri, Jan 7, 2011 at 7:58 AM, Tony Fleig <tony.fleig at gmail.com> wrote:
> Alex,
> Thank you for noticing those uncapitalized class variables. They are
> in fact unused so I have removed them. (I'm sure there are many more
> issues like this in the code.)
> Thank you also for producing the BowWave reCaptcha package that I used.
> I actually made more changes to the BowWave code than simply copying
> and renaming. At the time I downloaded it, sometime in November or
> early December 2010, I had to make some changes (small ones, I don't
> remember exactly what now) to allow it to function in Pharo
> 1.1/Seaside 3.0 and I changed it to use callbacks store: as well. I
> assumed since there had been no activity in the package for nearly a
> year and since it wouldn't work out-of-the-box that it was not being
> maintained any longer. (I see now it would have been better for me to
> have sent you an email about it.)
> I didn't want to distribute a package that depended on a another
> package that was not kept current, so I incorporated the BW components
> into TFLogin.
> I see now that the you have made the same changes that I did and
> clearly the package is still being maintained. I would certainly
> prefer to have you maintaining the reCaptcha stuff and I believe in
> code reuse generally so I will remove the TL reCaptcha classes in
> TFLogin and simply require the BowWave packages be present if the
> reCaptcha option is used in TFLogin. (And of course update the
> documentation to reflect the change and direct the user to the BowWave
> reCaptcha package.)
> This may take me a day or two.
> Thanks again for the BowWave reCaptcha package and for reviewing TFLogin.
> Regards,
> TF
> On Fri, Jan 7, 2011 at 3:14 AM, Alexander Lazarević <laza at blobworks.com> wrote:
>> Tony,
>> nice work indeed. Two things
>> Class variable names should be capitalized, so in TLApplicationPropertyItem
>> with displayName and userModifiable.
>> I saw that you just copied over my reCaptcha implementation from
>> http://www.squeaksource.com/BowWave into your package only changing the
>> Classnameprefix from BW to TL and leaving out one configuration class.
>> I just wonder why it wasn't possible for you to just use the component as it
>> is and you were forced to do a plain copy&paste?
>> Alex
>> 2011/1/6 Tony Fleig <tony.fleig at gmail.com>
>>> Hello all,
>>> I have just published the TFLogin package at
>>> http://www.squeaksource.com/TFLogin.
>>> This package provides basic user authentication, registration, and
>>> account management for Seaside.
>>> Features include:
>>>    . User login component with username and password text fields,
>>> forgot username, forgot password, register, and login buttons.
>>>    . User registration component with optional reCaptcha spambot
>>> protection.
>>>    . Edit account settings component allows user to change username,
>>> password, email address and application-specific properties.
>>>    . Optional email confirmation for registration and account
>>> changes. Email content is provided by the host application. Examples
>>> are included.
>>>    . Multi-part HTML/plain text email.
>>>    . Configurable confirmation email timeouts and cookie retention
>>> periods.
>>>    . Forgot username and forgot password support.
>>>    . Options to allow empty passwords, remember username in cookie,
>>> and automatic login on return to the website.
>>>    . Add additional user-related objects to the account edit form.
>>>    . An application properties dictionary is provided that allows you
>>> to store and retrieve additional objects along with the user account
>>> information.
>>>    . All settings are available in the Seaside configuration page.
>>>    . Test/demo application included.
>>>    . TFLogin Guide document included (see the Wiki tab.)
>>> Persistence is provided by a storage adaptor that can be replaced with
>>> the persistence mechanism of your choice. The default provided is a
>>> reasonably scalable file-based system using ReferenceStreams. Each
>>> user's information is saved in a separate versioned file.
>>> Tested with Seaside 3.0.3 and Pharo 1.1.1. Email does NOT work with
>>> prior versions of Seaside.
>>> See the Squeaksource project Wiki tab for the complete TFLogin Guide
>>> document.
>>> I have integrated this successfully with one of my own existing web
>>> apps and of course the test app included in the package works fine.
>>> This is *not* a lot of testing and this is definitely version 1.0 or
>>> less, so I expect bugs a-plenty will be found. I am still refactoring
>>> the code, but that should not change the functionality or the public
>>> API.
>>> All feedback is welcome.
>>> Regards,
>>> TF
>>> _______________________________________________
>>> seaside mailing list
>>> seaside at lists.squeakfoundation.org
>>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>> _______________________________________________
>> seaside mailing list
>> seaside at lists.squeakfoundation.org
>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside

More information about the seaside mailing list