Shopping cart/mabdeljalil

Naming consistency.  You've used both "anonymous user" and "non-logged in user".