[Seaside] Seaside authentication/login/user account package

Tony Fleig tony.fleig at gmail.com
Fri Jan 7 15:58:04 UTC 2011


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.


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