NAME
Dancer::Plugin::Nitesi - Nitesi Shop Machine plugin for Dancer
VERSION
Version 0.0060
SYNOPSIS
use Dancer::Plugin::Nitesi;
cart->add({sku => 'ABC', name => 'Foobar', quantity => 1, price => 42});
cart->items();
cart->clear();
account->login(username => '
[email protected]', password => 'nevairbe');
account->acl(check => 'view_prices');
account->logout();
DESCRIPTION
This dancer plugin gives you access to the account and cart functions of
the Nitesi shop machine.
CARTS
The cart keyword returns a Nitesi::Cart object with the corresponding
methods.
You can use multiple carts like that:
cart('wishlist')->add({sku => 'ABC', name => 'Foobar', quantity => 1, price => 42});
cart('wishlist')->total;
The DBI backend (Dancer::Plugin::Nitesi::Cart::DBI) allows you to load
carts of arbitrary users.
cart('', 123)->items;
ACCOUNTS
The account keyword returns a Nitesi::Account::Manager object with the
corresponding methods.
Login to an account:
account->login(username => '
[email protected]', password => 'nevairbe');
Logout:
account->logout();
Check permissions:
account->acl(check => 'view_prices');
Change password for current account:
account->password('nevairbe');
Change password for other account:
account->password(username => '
[email protected]', password => 'nevairbe');
Create account:
account->create(email => '
[email protected]');
HOOKS
This plugin installs the following hooks:
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.
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.
before_cart_remove
Triggered before item is removed from the cart.
after_cart_remove
Triggered after item is removed from the cart. Used by DBI backend
to delete item from the database.
before_cart_clear
Triggered before cart is cleared.
after_cart_clear
Triggered after cart is cleared.
before_cart_rename
Triggered before cart is renamed.
after cart_rename
Triggered after cart is renamed.
CONFIGURATION
The default configuration is as follows:
plugins:
Nitesi:
Account:
Session:
Key: account
Provider: DBI
Cart:
Backend: Session
Product:
backend: DBI
table: products
key: sku
ACCOUNT
Connection
The connection used by Dancer::Plugin::Database can be set as follows:
plugins:
Nitesi:
Account:
Provider: DBI
Connection: shop
Fields
Extra fields can be retrieved from the account provider and put into the
session after a successful login:
plugins:
Nitesi:
Account:
Provider: DBI
Fields: first_name,last_name,city
CAVEATS
Please anticipate API changes in this early state of development.
AUTHOR
Stefan Hornburg (Racke), `
[email protected]'
BUGS
Please report any bugs or feature requests to `bug-nitesi at
rt.cpan.org', or through the web interface at
http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Dancer-Plugin-Nitesi. I
will be notified, and then you'll automatically be notified of progress
on your bug as I make changes.
SUPPORT
You can find documentation for this module with the perldoc command.
perldoc Dancer-Plugin-Nitesi
You can also look for information at:
* RT: CPAN's request tracker (report bugs here)
http://rt.cpan.org/NoAuth/Bugs.html?Dist=Dancer-Plugin-Nitesi
* AnnoCPAN: Annotated CPAN documentation
http://annocpan.org/dist/Dancer-Plugin-Nitesi
* CPAN Ratings
http://cpanratings.perl.org/d/Dancer-Plugin-Nitesi
* Search CPAN
http://search.cpan.org/dist/Dancer-Plugin-Nitesi/
ACKNOWLEDGEMENTS
The Dancer developers and community for their great application
framework and for their quick and competent support.
LICENSE AND COPYRIGHT
Copyright 2010-2012 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
Nitesi