ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
Interchange 6 - Open Source Shop Machine
Stefan Hornburg (Racke)[email protected]
16. Deutscher Perl-Workshop, Hannover, 28. März 2013
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
Shopsoftware
I Magento
I Shopware
I Oxid
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
PHP Cauldron
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
Standard Stack
I DBIx::Class
I Moo
I Dancer
I Template::Flute
I Solr
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
Custom Stack
I DBIx::Class
I Moo
I Dancer Web::Simple
I Template::Flute Template Toolkit
I Solr Elastic Search
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
Status Quo
I Interchange6::Schema (Businesslogik)
I Dancer::Plugin::Interchange6
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
Interchange6::Schema
I Produkte, Attribute, Preise, Bestand
I Benutzer, Adressen
I Warenkorb, Sitzungen
I Bestellungen, Zahlungen
I Steuern, Versand (in Arbeit)
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
Payment ModuleAblauf
Payment Module
I Business::OnlinePayment
I unterstützt viele Anbieter
I nicht sehr modern
I 3D secure, Redirect
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
Payment ModuleAblauf
Alternativen
I AnyMerchanthttps://metacpan.org/pod/AnyMerchant
I keine Entwicklung
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
Payment ModuleAblauf
Payment Module
I Business::OnlinePayment::IPayment (1&1)Silent CGI
I Business::OnlinePayment::FirstDataConnect (in Arbeit)
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
Payment ModuleAblauf
PaymentOrder erzeugen
$payment_order = $schema−>r e s u l t s e t ( ’ PaymentOrder ’ )−>create (\% payment_data ) ;
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
Payment ModuleAblauf
Zahlung erfolgreich
I Status und Transaktionscode aktualisieren
$payment_order−>update ( {s ta tus => ’ success ’ ,auth_code => $bop_object−>au tho r i za t i on ,
} ) ;
I Bestellung abschließen
I Email(s) versenden
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
Payment ModuleAblauf
Zahlung fehlgeschlagen
I Status aktualisieren
$payment_order−>update ( {s ta tus => ’ f a i l u r e ’ ,
} ) ;
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
KeywordsRoutesConfigurationHooks
Dancer::Plugin::Interchange6
I Keywords
I Routes
I Configuration
I Hooks
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
KeywordsRoutesConfigurationHooks
Keywords
I shop_schema
I shop_product, shop_address, ...$product = shop_product(’F0001’);
I shop_cart
I shop_charge
I shop_setup_routes
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
KeywordsRoutesConfigurationHooks
Routes
I Produkt
I Navigation
I Warenkorb
I Checkout
I Konto
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
KeywordsRoutesConfigurationHooks
Produkt
I Produkt “Dancer und DBIx::Class”
I sku 978-0815-0815
I uri Dancer-DBIx-Class
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
KeywordsRoutesConfigurationHooks
Navigation
I Kategorienhttp://www.cart.pm/Programming/Perl/Dancer
I Produktfilterhttp://www.cart.pm/Programming/Perl/Dancer/Author/racke/Sort/price
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
KeywordsRoutesConfigurationHooks
Fallback Routes
any qr { . ∗ } => sub {# check f o r matching product. . .
# check f o r matching nav iga t i on. . .
# d i sp lay not_found pages ta tus ’ not_found ’ ;forward 404;
} ;
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
KeywordsRoutesConfigurationHooks
Routes Configuration
In terchange6 : : Routes :c a r t :
template : checkout−g i f t i n f ou r i : warenkorb
nav iga t i on :template : l i s t i n grecords : 20
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
KeywordsRoutesConfigurationHooks
Hooks
hook ’ be fo re_nav iga t i on_d isp lay ’ => sub {my $nav_tokens = s h i f t ;
# load l i s t o f brandsmy $brands = shop_navigat ion−>search (
{ type => ’ manufacturer ’ ,a c t i v e => 1 } ) ;
$nav_tokens−>{brands } = [ $brands−>a l l ] ;} ;
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
Demo Shop
I Wireframes https://github.com/interchange/Interchange6-Demo-Shop
I HTML (in Arbeit)
I Flowers hacking shophttps://github.com/interchange/Flowers
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
Administration
I ERPI API
I OpenERPI Magento kompatibel
I TableEditorhttps://github.com/interchange/TableEditor
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
Mitarbeit
I kleines Entwicklerteam
I GithubI IRC
I #interchange freenodeI #dancer
racke Interchange 6 - Open Source Shop Machine
ÜbersichtInterchange6 Stack
Status QuoDBIx::Class
PaymentDancer Plugin
Demo && Administration
Infos
Slides: http://www.linuxia.de/talks/pws2014/interchange6-de-beamer.pdf
racke Interchange 6 - Open Source Shop Machine