[Seaside] Seaside authentication/login/user account package

Tony Fleig tony.fleig at gmail.com
Sat Jan 8 06:03:16 UTC 2011


More bugfixes and a few new features published to
http://www.squeaksource.com/TFLogin. I'm done for the day.

TF


On Fri, Jan 7, 2011 at 12:53 PM, Tony Fleig <tony.fleig at gmail.com> wrote:
> I have published an updated TFLogin package to
> http://www.squeaksource.com/TFLogin.
>
> 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.
>
> Regards,
> TF
>
>
> 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