Top Ten Mistakes of Shopping Cart Design Revisited

While surfing around, I stumbled across this article: Top Ten Mistakes of Shopping Cart Design Revisited.

Summary: A list of common mistakes with e-commerce shopping cart design were identified in a previous issue of Usability News. This article revisits that list and reviews how 500 of the top Internet retail sites of today implemented their shopping cart design.

Some good stuff in there. I’ll have to give it some more time later.

Uncategorized

Comments (0)

Permalink

Catalyst Integration: Day 99

Day 99? Yeah, I’m a damn slacker. What can I say. But, I’m back to making progress again it seems. I’ve been spending most of the time lately on the admin controllers and such, which means I had to get the generic stuff somewhat solid. That mostly consisted of:

  • Base Controller for Mango::Form loading/mapping/validating
  • Models wrapping Providers
  • Plugin for I18N merging Mango+MyApp Lexicons
  • Plugin for Authorization+user carts/profiles using new Auth API
  • Views for XHTML/HTML/Text/Atom/RSS
  • File::ShareDir directory with base forms/templates
  • Template views use share first, then fallback to MyApp local templates

Now that most of the busy work is done, I’m back to converting what I’d hacked together for Handel back into Mango. It looks ugly as hell, but the admin user/roles/profiles/products/attribute CRUD works and the cart load/update works using the custom auth user objects. I’ll probably finish fixing the cart tomorrow and move on to the wishlists.

Catalyst Integration

Comments (0)

Permalink

Mango 0.01000_04 Released

I figured now was a good time to commit everything and release something before I head to Canad for the week. I present Mango 0.01000_04 with fresh new Catalyst base controllers, models, views,plugins and tests even! :-)

  • Added Mango::Form/Results for form file config parsing/validation
  • Added base Catalyst Models/Views/Controllers/Plugins
  • Added tests/pod for new Catalyst base modules

Releases

Comments (2)

Permalink

Catalyst Integration: Day 26

Yeah, day 26. Long time no post, but at least I have been working on Mango.

At some point, I had enough untested, undocumented Catalyst code floating around Mango that it was time get that under control. With a little help from Chuck Norris Controller Testing and some ideas from Angerwhale, I managed to throw together some test context classes and whip up some model/view/plugin tests.

Now that those are done, time to move on to the base controller code. After that, the last big piece left will be the ‘mango MyApp‘ Module::Starter parts, and of course some “live” catalyst Mech tests.

I may be slow. I maybe be late. But when it’s finished, it will certainly be very well tested.

Catalyst Integration

Comments (0)

Permalink

Catalyst Integration: Day 4

After a lot of cursing, tinkering, fixing, breaking, fixing, breaking and fixing, I’ve finally got most of the Auth/User bits converted to the new Catalyst Authentication API. when it’s working, it means that people can reference common user elements for both authenticated and anonymous users in the same way:

## current users cart pre/post authenticate()
$c->user->cart;

## 'anonymous' before authenticate()
$c->user->username;

## 'Anonymous' before authenticate()
$c->user->profile->first_name;

## 'claco' after authenticate()
$c->authenticate(...);
$c->user->username;

## 'Christopher' after authenticate()
$c->user->profile->first_name;

In addition to a common way to reference user information, the Mango store also takes care of caching that user information, including roles, in session after authentication so we’re no hitting the database every time we check roles, display profile information, etc.

The one thing I seem to be constantly fighting is that either Catalyst, or Authentication bits just eat errors in certain situations. Things like misnamed classes, classes not loading due to syntax errors, errors down in DBI just go into the ether. I’d say it’s some SIG{DIE}/Error/Exception stuff somewhere just being too greedy. I don’t think I’m alone either.

Catalyst Integration

Comments (0)

Permalink

Catalyst Integration: Day 1

Now that the core api is “done”, time to start working on the Catalyst bits. I’ve re added what I started with to trunk and I’ve started converting it to a name namespace and to the as yet released updated Catalyst::Plugin::Authorization.

Hopefully I can get everything back to a working state with pod by the end of the weekend.

Catalyst Integration

Comments (0)

Permalink

Mango 0.01000_03 Released

Another release escapes from the side hatch.

  • Updated/reviewed all pod
  • Changed throwing exceptions away from indirect syntax
  • Added Mango::Object::Meta to store non-column information
  • Added Object->meta_class
  • Reworked tests/providers/objects to put data first, and other in meta
  • Added Object->get_columns

This should be the last of the core API futzing for now. Time to start re adding Catalyst base classes.

Releases

Comments (0)

Permalink

Mango 0.01000_02 Released

Nothing to see here. Please move along.

  • Make prereqs for DBIC/Handel real versions
  • Added Build.PL to make mst a happy camper

Releases

Comments (0)

Permalink

Test Coverage Reports

Just because I can, the Mango test coverage reports are now online just like the Handel test coverage reports are.

Current coverage: 100%

Announcements

Comments (0)

Permalink

Mango 0.01000_01 Released

I’m pleased to announce the first alpha release of Mango. This is a developer preview release that contains core modules only. No web bits. This includes the schema classes, the provider classes and the result/object classes. Test coverage is around 98% and the pod needs some more glossing over. Files should be available on a CPAN mirror nearest you shortly.

Mango relies on a versions of Handel and DBIx::Class that are not yet released. You will need DBIx::Class-current from:

http://dev.catalystframework.org/repos/bast/branches/DBIx-Class-current/

and the latest version of Handel from:

http://svn.handelframework.com/CPAN/Handel/branches/DBIC-1.0/

Game on.

Releases

Comments (0)

Permalink