Download - Interchange 6 - Open Source Shop Machine

Transcript
Page 1: Interchange 6 - Open Source Shop Machine

Ü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

Page 2: 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

Page 3: Interchange 6 - Open Source Shop Machine

ÜbersichtInterchange6 Stack

Status QuoDBIx::Class

PaymentDancer Plugin

Demo && Administration

PHP Cauldron

racke Interchange 6 - Open Source Shop Machine

Page 4: 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

Page 5: 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

Page 6: 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

Page 7: 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

Page 8: 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

Page 9: 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

Page 10: 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

Page 11: 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

Page 12: 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

Page 13: 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

Page 14: 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

Page 15: 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

Page 16: 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

Page 17: 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

Page 18: 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

Page 19: 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

Page 20: 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

Page 21: 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

Page 22: 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

Page 23: 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

Page 24: 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

Page 25: 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