Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Modern PerlCommerce
             Past and Future
                         API
   Development & Deployment




       Moder...
Modern PerlCommerce
                                     Perl Buzzwords
                   Past and Future
               ...
Modern PerlCommerce
                                             Perl Buzzwords
                           Past and Future...
Modern PerlCommerce
                                               Perl Buzzwords
                             Past and Fu...
Modern PerlCommerce
                                             Perl Buzzwords
                           Past and Future...
Modern PerlCommerce
                            Past and Future   Past
                                        API   Futur...
Modern PerlCommerce
                            Past and Future   Past
                                        API   Futur...
Modern PerlCommerce
                       Past and Future   Past
                                   API   Future
        ...
Modern PerlCommerce
                        Past and Future   Past
                                    API   Future
      ...
Modern PerlCommerce
                   Past and Future   Past
                               API   Future
         Develop...
Modern PerlCommerce
                              Past and Future   Past
                                          API   F...
Modern PerlCommerce
                              Past and Future   Past
                                          API   F...
Modern PerlCommerce
                            Past and Future   Past
                                        API   Futur...
Modern PerlCommerce
                             Past and Future   Past
                                         API   Fut...
Modern PerlCommerce
                             Past and Future   Past
                                         API   Fut...
Modern PerlCommerce
                           Past and Future   Past
                                       API   Future
...
Modern PerlCommerce
                          Past and Future   Past
                                      API   Future
  ...
Modern PerlCommerce
                          Past and Future   Past
                                      API   Future
  ...
Modern PerlCommerce
                             Past and Future   Past
                                         API   Fut...
Modern PerlCommerce     Cart
                             Past and Future   Checkout
                                     ...
Modern PerlCommerce     Cart
                                          Past and Future   Checkout
                        ...
Modern PerlCommerce     Cart
                               Past and Future   Checkout
                                   ...
Modern PerlCommerce     Cart
                                 Past and Future   Checkout
                                 ...
Modern PerlCommerce     Cart
                          Past and Future   Checkout
                                      AP...
Modern PerlCommerce     Cart
                                Past and Future   Checkout
                                  ...
Modern PerlCommerce       Cart
                                    Past and Future     Checkout
                          ...
Modern PerlCommerce     Cart
                           Past and Future   Checkout
                                       ...
Modern PerlCommerce     Cart
                          Past and Future   Checkout
                                      AP...
Modern PerlCommerce     Cart
                           Past and Future   Checkout
                                       ...
Modern PerlCommerce     Cart
                         Past and Future   Checkout
                                     API ...
Modern PerlCommerce     Cart
                           Past and Future   Checkout
                                       ...
Modern PerlCommerce     Cart
                          Past and Future   Checkout
                                      AP...
Modern PerlCommerce      Cart
                                     Past and Future    Checkout
                           ...
Modern PerlCommerce     Cart
                           Past and Future   Checkout
                                       ...
Modern PerlCommerce     Cart
                                 Past and Future   Checkout
                                 ...
Modern PerlCommerce     Cart
                                   Past and Future   Checkout
                               ...
Modern PerlCommerce     Cart
                           Past and Future   Checkout
                                       ...
Modern PerlCommerce     Cart
                             Past and Future   Checkout
                                     ...
Modern PerlCommerce     Cart
                           Past and Future   Checkout
                                       ...
Modern PerlCommerce     Cart
                               Past and Future   Checkout
                                   ...
Modern PerlCommerce
                                                  Dancer
                                Past and Futu...
Modern PerlCommerce
                                                      Dancer
                                   Past a...
Modern PerlCommerce
                                          Dancer
                        Past and Future
             ...
Modern PerlCommerce
                                          Dancer
                        Past and Future
             ...
Upcoming SlideShare
Loading in …5
×

of

Modern PerlCommerce Slide 1 Modern PerlCommerce Slide 2 Modern PerlCommerce Slide 3 Modern PerlCommerce Slide 4 Modern PerlCommerce Slide 5 Modern PerlCommerce Slide 6 Modern PerlCommerce Slide 7 Modern PerlCommerce Slide 8 Modern PerlCommerce Slide 9 Modern PerlCommerce Slide 10 Modern PerlCommerce Slide 11 Modern PerlCommerce Slide 12 Modern PerlCommerce Slide 13 Modern PerlCommerce Slide 14 Modern PerlCommerce Slide 15 Modern PerlCommerce Slide 16 Modern PerlCommerce Slide 17 Modern PerlCommerce Slide 18 Modern PerlCommerce Slide 19 Modern PerlCommerce Slide 20 Modern PerlCommerce Slide 21 Modern PerlCommerce Slide 22 Modern PerlCommerce Slide 23 Modern PerlCommerce Slide 24 Modern PerlCommerce Slide 25 Modern PerlCommerce Slide 26 Modern PerlCommerce Slide 27 Modern PerlCommerce Slide 28 Modern PerlCommerce Slide 29 Modern PerlCommerce Slide 30 Modern PerlCommerce Slide 31 Modern PerlCommerce Slide 32 Modern PerlCommerce Slide 33 Modern PerlCommerce Slide 34 Modern PerlCommerce Slide 35 Modern PerlCommerce Slide 36 Modern PerlCommerce Slide 37 Modern PerlCommerce Slide 38 Modern PerlCommerce Slide 39 Modern PerlCommerce Slide 40 Modern PerlCommerce Slide 41 Modern PerlCommerce Slide 42 Modern PerlCommerce Slide 43 Modern PerlCommerce Slide 44
Upcoming SlideShare
Perl Dancer, FPW 2010
Next
Download to read offline and view in fullscreen.

0 Likes

Share

Download to read offline

Modern PerlCommerce

Download to read offline

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all
  • Be the first to like this

Modern PerlCommerce

  1. 1. Modern PerlCommerce Past and Future API Development & Deployment Modern PerlCommerce Stefan Hornburg (Racke) racke@linuxia.de Pittsburgh Perl Workshop, 8th October 2011 racke Modern PerlCommerce
  2. 2. Modern PerlCommerce Perl Buzzwords Past and Future Modern Perl API PerlCommerce Choices Development & Deployment Nitesi racke Modern PerlCommerce
  3. 3. Modern PerlCommerce Perl Buzzwords Past and Future Modern Perl API PerlCommerce Choices Development & Deployment Perl Buzzwords Marketing Perl Modern Perl Postmodern Perl racke Modern PerlCommerce
  4. 4. Modern PerlCommerce Perl Buzzwords Past and Future Modern Perl API PerlCommerce Choices Development & Deployment Modern Perl CPAN Best Practices Tests Separation (Modules, Plugins, Hooks, Templates) PSGI/Plack racke Modern PerlCommerce
  5. 5. Modern PerlCommerce Perl Buzzwords Past and Future Modern Perl API PerlCommerce Choices Development & Deployment PerlCommerce Choices Interchange Handel Agora Business::Cart::Generic racke Modern PerlCommerce
  6. 6. Modern PerlCommerce Past and Future Past API Future Development & Deployment Past 1995 CGI 1995 MiniVend 1998 http://www.materialboerse.de/ 2001 Interchange racke Modern PerlCommerce
  7. 7. Modern PerlCommerce Past and Future Past API Future Development & Deployment Interchange Development Lot of things Small community Same codebase racke Modern PerlCommerce
  8. 8. Modern PerlCommerce Past and Future Past API Future Development & Deployment Status quo racke Modern PerlCommerce
  9. 9. Modern PerlCommerce Past and Future Past API Future Development & Deployment References Backcountry http://www.backcountry.com/ FragnanceNet http://www.fragrancenet.com/ racke Modern PerlCommerce
  10. 10. Modern PerlCommerce Past and Future Past API Future Development & Deployment Future racke Modern PerlCommerce
  11. 11. Modern PerlCommerce Past and Future Past API Future Development & Deployment Principles KISS Components Agnostic Expressive racke Modern PerlCommerce
  12. 12. Modern PerlCommerce Past and Future Past API Future Development & Deployment Agnostic Cart Session DBI Webservice * racke Modern PerlCommerce
  13. 13. Modern PerlCommerce Past and Future Past API Future Development & Deployment Agnostic Account Manager DBI LDAP * OpenID * racke Modern PerlCommerce
  14. 14. Modern PerlCommerce Past and Future Past API Future Development & Deployment Agnostic Templating Engine Template::Toolkit Template::Flute racke Modern PerlCommerce
  15. 15. Modern PerlCommerce Past and Future Past API Future Development & Deployment Agnostic Web framework Catalyst Mojo Dancer racke Modern PerlCommerce
  16. 16. Modern PerlCommerce Past and Future Past API Future Development & Deployment Preferences Dancer Template::Flute DBI racke Modern PerlCommerce
  17. 17. Modern PerlCommerce Past and Future Past API Future Development & Deployment Framework Dispatching requests Parameter parsing Session handling Template engine I18N racke Modern PerlCommerce
  18. 18. Modern PerlCommerce Past and Future Past API Future Development & Deployment Extensions Bundles Plugins Hooks racke Modern PerlCommerce
  19. 19. Modern PerlCommerce Past and Future Past API Future Development & Deployment Features Navigation Cart Checkout Accounts racke Modern PerlCommerce
  20. 20. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Cart SKU, Name, Quantity, Price Price > 0 Combines automatically Multiple carts Storage everywhere Price caching racke Modern PerlCommerce
  21. 21. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Nitesi::Cart Methods use Dancer : : P l u g i n : : N i t e s i ; c a r t −>add ( sku => ’POM253 ’ , name => ’ Pomelo ’ , p r i c e => 3 . 0 0 , q u a n t i t y => 1 0 ) ; c a r t −>remove ( sku => ’POM253 ’ ) ; c a r t −>count ( ) ; c a r t −>c l e a r ( ) ; c a r t −> t o t a l ( ) ; c a r t −>s u b t o t a l ( ) ; racke Modern PerlCommerce
  22. 22. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Everything is a Cart Saved Carts Wishlists Collections racke Modern PerlCommerce
  23. 23. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Multiple Carts c a r t ( ’ w i s h l i s t ’ )−>add ( sku => ’ORA322 ’ , name => ’ Orange ’ , p r i c e => 2 . 0 0 , q u a n t i t y => 5 ) ; racke Modern PerlCommerce
  24. 24. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Cart Backends Session DBI racke Modern PerlCommerce
  25. 25. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Inventory Check MinQuantityField min_quantity MaxQuantityField inventory : q u a n t i t y racke Modern PerlCommerce
  26. 26. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Inventory Check Hook hook ’ b e f o r e _ c a r t _ a d d ’ => sub { my ( $ c a r t , $item ) = @_; my ( $ i n v e n t o r y ) ; $ i n v e n t o r y = query −> s e l e c t _ f i e l d ( t a b l e => ’ p r o d u c t s ’ , f i e l d => ’ i n v e n t o r y ’ , where => { sku => $item −>{sku } } ) ; i f ( $item −>{ q u a n t i t y } > $ i n v e n t o r y ) { $item −>{ e r r o r } = ’ Out o f s t o c k ’ ; } }; racke Modern PerlCommerce
  27. 27. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Cart Hooks before_cart_add after_cart_add racke Modern PerlCommerce
  28. 28. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Cart Hooks before_cart_remove after_cart_remove racke Modern PerlCommerce
  29. 29. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Checkout Taxes Shipping Payment Invoice racke Modern PerlCommerce
  30. 30. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Payment Business::OnlinePayment racke Modern PerlCommerce
  31. 31. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Tax Modules on CPAN Business::Tax::Canada Business::CA::GST Business::Tax::VAT Business::Tax::VAT::Validation racke Modern PerlCommerce
  32. 32. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Shipping Simple Shipping Crazy Shipping Shipping API racke Modern PerlCommerce
  33. 33. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Costs $ c a r t −>a p p l y _ c o s t ( amount => 5 ) ; $ c a r t −>a p p l y _ c o s t ( amount => 0 . 1 9 , r e l a t i v e => 1 ) ; racke Modern PerlCommerce
  34. 34. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms PDF Invoices HTML template Template::Flute::PDF racke Modern PerlCommerce
  35. 35. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Accounts p o s t ’ / l o g i n ’ => sub { i f ( account −>l o g i n ( username => params ( ’ body ’ ) − >{username } , password => params ( ’ body ’ ) − >{password } ) ) { r e d i r e c t ’ / customerservice ’ ; } else { redirect ’ / login ’ ; } }; racke Modern PerlCommerce
  36. 36. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Accounts g e t ’ / checkout ’ => sub { i f ( account −>a c l ( check => ’ s u b m i t _ o r d e r s ’ ) ) { r e t u r n t e m p l a t e ’ checkout ’ ; } redirect ’ / access_denied ’ ; }; racke Modern PerlCommerce
  37. 37. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Account manager Account Providers Login/Logout Account Information Login status Forgot password Registration racke Modern PerlCommerce
  38. 38. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Account Provider DBI LDAP * Htpasswd * OpenID * OAuth * racke Modern PerlCommerce
  39. 39. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Access Control User Roles Permissions racke Modern PerlCommerce
  40. 40. Modern PerlCommerce Cart Past and Future Checkout API Accounts and Access Control Development & Deployment Forms Forms Display Validation Storage racke Modern PerlCommerce
  41. 41. Modern PerlCommerce Dancer Past and Future Contribution API The End Development & Deployment Routes Categories Products Cart Checkout Login/Logout Customer Service racke Modern PerlCommerce
  42. 42. Modern PerlCommerce Dancer Past and Future Contribution API The End Development & Deployment Default Route g e t q r { / ( . ∗ ) } => sub { my ( $sku ) = s p l a t ; my $ p r o d u c t ; # check f o r e x i s t i n g p r o d u c t i f ( $ p r o d u c t = database −>q u i c k _ s e l e c t ( ’ p r o d u c t s ’ , { sku => $sku } ) ) # display flypage template ’ flypage ’ , $product ; } else { # d i s p l a y n o t found page s t a t u s ’ not_found ’ ; f o r w a r d ’ 404 ’ ; } }; racke Modern PerlCommerce
  43. 43. Modern PerlCommerce Dancer Past and Future Contribution API The End Development & Deployment CPAN/GitHub http://search.cpan.org/dist/Nitesi/ http://search.cpan.org/dist/Nitesi-DBI/ http://search.cpan.org/dist/ Dancer-Plugin-Nitesi/ https://github.com/racke/Nitesi https://github.com/racke/Nitesi-DBI https: //github.com/racke/Dancer-Plugin-Nitesi racke Modern PerlCommerce
  44. 44. Modern PerlCommerce Dancer Past and Future Contribution API The End Development & Deployment The End Slides: http://www.linuxia.de/talks/perlcommerce/ perlcommerce-beamer.pdf Project: https://vsc.state.gov/ racke Modern PerlCommerce

Views

Total views

14,660

On Slideshare

0

From embeds

0

Number of embeds

12,982

Actions

Downloads

10

Shares

0

Comments

0

Likes

0

×