|
GoogleObjective
Why We're Here
IntroductionLots of documentation has been done, need it more practical. Tasks
DetailsWhat is GetPaid? Includes the following components: membership, shopping cart, payment processor, content integration, admin interface (config), order management, build. How to integrate with content? Need to defer policy decisions using Zope 3 component architecture to make it pluggable. Want to reuse existing content types to make them buyable. So, not content type specific. Register a content type as payable in the admin and configure. Currently done w/ marker interface. How the architecture works: Have an interface -- any object can have one. It's a specification of an object. Can move from that one object to another based on its interface. Register an adapter to connect the two. Adapters are connectors. Other people can override the adapters w/o touching the codebase. Getpaid: notion of iPayable object needs an adapter. Register default adapters for iContentish. iBuyable, iShippable also exist for an iPayable item. Enable these on any given piece of content by defining an adapter between iPayable items and iContentish. A marker inteface: is an empty specification. iPayable has fields to describe a product, marker interface has no attributes, so can add it to anything. That market interface defines the adapter, has the adapter registered for it. iPayableMarker is the marker for iPayable. Allows it access to the Getpaid stuff. Membership system: Currently based on Sorrento Sprint code (ore.member). Add attributes to a user. Not optimal. Just want to add a schema to a user -- billing information, shipping info, demographics. Have a system called ore.member. Have a Z3 schema, apply it to users, use more than one schema, provides registration and editing interfaces. Shopping cart: Currently simple, session based. Has Z3 interfaces. Also uses presentation logic called viewlets (Z3). Page with portlets -- viewlet is a block of UI elements that are repeated. IE, portlets that are iterable. Allows for flexibility in forms to minimize building of forms. Autogenerated. Shopping cart defines 3 viewlets: edit interface, checkout interface, etc. Good readme in Zope source. Using ZCtable -- generates HTML table. Payment Processors: Don't have any, will do some this week. GC, Authorize.net. Need two admin interfaces: one for Getpaid, one for support / admin site for people processing orders. Buildout Engine: Working on this, some issues are there. Too clunky? |
Sign in to add a comment