interchange / Dancer-Plugin-Interchange6

Dancer Plugin for Interchange6 shop machine
4 stars 1 forks source link

NAME Dancer::Plugin::Interchange6 - Interchange6 Shop Plugin for Dancer

VERSION Version 0.121

DESCRIPTION This Dancer plugin is now DEPRECATED since all new development has moved to the Dancer2 plugin Dancer2::Plugin::Interchange6.

REQUIREMENTS All Interchange6 Dancer applications need to use the Dancer::Session::DBIC engine.

The easiest way to configure this is in your main module, just after all
the "use" statements:

   set session => 'DBIC';
   set session_options => {schema => schema};

CONFIGURATION Available configuration options:

  plugins:
    Interchange6:
      cart_class: MyApp::Cart
      carts_var_name: some_other_var

*   cart_class

    If you wish to subclass the cart you can have "shop_cart" return
    your subclassed cart instead. You set the cart class via
    "cart_class". Defaults to Dancer::Plugin::Interchange6::Cart.

*   carts_var_name

    The plugin caches carts in a "var" in Dancer and the name of the var
    used can be set via "carts_var_name". Defaults to "ic6_carts".

ROUTES You can use the Dancer::Plugin::Interchange6::Routes plugin bundled with this plugin to setup standard routes for:

product listing
product display
cart display
checkout form

To enable these routes, you put the "shop_setup_routes" keyword at the
end of your main module:

    package MyShop;

    use Dancer ':syntax';
    use Dancer::Plugin::Interchange6;
    use Dancer::Plugin::Interchange6::Routes;

    get '/shop' => sub {
        ...
    };

    ...

    shop_setup_routes;

    true;

Please refer to Dancer::Plugin::Interchange6::Routes for configuration
options and further information.

KEYWORDS shop_cart Returns Dancer::Plugin::Interchange6::Cart object.

shop_charge Creates payment order and authorizes amount.

shop_redirect Calls "redirect" in Interchange6::Schema::ResultSet::UriRedirect with given args.

shop_schema Returns Interchange6::Schema object.

shop_... Accessors for Interchange6::Schema result classes. You can use it to retrieve a single object or the corresponding result set.

    shop_product('F0001')->uri;

    shop_navigation->search({type => 'manufacturer',
                             active => 1});

Available accessors are "shop_address", "shop_attribute",
"shop_country", "shop_message", "shop_navigation", "shop_order",
"shop_product", "shop_state" and "shop_user".

HOOKS This plugin installs the following hooks:

Add to cart The functions registered for these hooks receive the cart object and the item to be added as parameters.

before_cart_add_validate
    Triggered before item is validated for adding to the cart.

before_cart_add
    Triggered before item is added to the cart.

after_cart_add
    Triggered after item is added to the cart. Used by DBI backend to
    save item to the database.

Update cart The functions registered for these hooks receive the cart object, the current item in the cart and the updated item.

before_cart_update
    Triggered before cart item is updated (changing quantity).

after_cart_update
    Triggered after cart item is updated (changing quantity). Used by
    DBI backend to update item to the database.

Remove from cart The functions registered for these hooks receive the cart object and the item to be added as parameters.

before_cart_remove_validate
    Triggered before item is validated for removal. Receives cart object
    and item SKU.

before_cart_remove
    Triggered before item is removed from the cart. Receives cart object
    and item.

after_cart_remove
    Triggered after item is removed from the cart. Used by DBI backend
    to delete item from the database. Receives cart object and item.

Clear cart before_cart_clear Triggered before cart is cleared.

after_cart_clear
    Triggered after cart is cleared.

Rename cart The functions registered for these hooks receive the cart object, the old name and the new name.

before_cart_rename
    Triggered before cart is renamed.

after_cart_rename
    Triggered after cart is renamed.

before_cart_set_users_id
    Triggered before users_id is set for the cart.

after_cart_set_users_id
    Triggered after users_id is set for the cart.

before_cart_set_sessions_id
    Triggered before sessions_id is set for the cart.

after_cart_set_sessions_id
    Triggered after sessions_id is set for the cart.

EXPIRE DBIC SESSIONS This command expires/manages DBIC sessions and carts. NOTE: For proper functionality please copy/link to Dancer App/bin directory.

    interchange6-expire-sessions

ACKNOWLEDGEMENTS The Dancer developers and community for their great application framework and for their quick and competent support.

Peter Mottram for his patches.

LICENSE AND COPYRIGHT Copyright 2010-2016 Stefan Hornburg (Racke).

This program is free software; you can redistribute it and/or modify it
under the terms of either: the GNU General Public License as published
by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.

SEE ALSO Dancer2::Plugin::Interchange6

Interchange6, Interchange6::Schema