=encoding utf8 =head1 NAME Slovo::Plugin::Prodan - Make and manage sales in your Slovo-based site =head1 SYNOPSIS # In slovo.conf load_plugins => [ #... 'Themes::Malka', { Prodan => { migrate => 1, econt => { shop_id => $ENV{SLOVO_PRODAN_SHOP_ID}, private_key => $ENV{SLOVO_PRODAN_PRIVATE_KEY}, shippment_calc_url => 'https://delivery.econt.com/customer_info.php', crupdate_order_endpoint => 'https://delivery.econt.com/services/OrdersService.updateOrder.json', create_awb_endpoint => 'https://delivery.econt.com/services/OrdersService.createAWB.json' }} }, ], =head1 DESCRIPTION The word про̀дан (прода̀жба) in Bulgarian means sale. Roots are found in Old Common Slavic (Old Bulgarian) I<<проданьѥ>>. Here is an exerpt from Codex Suprasliensis(331.27) where this word was witnessed: I<<сꙑнъ божии. вол҄еѭ на сьпасьнѫѭ страсть съ вами придетъ. и на B<<продании>> станетъ. искѹпѹѭштааго животворьноѭ кръвьѭ. своеѭ миръ.>> L<> is a L<> that extends a Slovo-based site and turns it into an online shop. =head1 FEATURES In its first edition of L<> we implemented the following features: =over 1 =item A jQuery and localStorage based shopping cart. Two static files contain the implementation and they can be inflated as usual. The files are C<> and C<>. You should inflate these files into your public forlder C<> for the domain on which you will use it. Even not inflated these will be referred from any page of the site. The site layout C<> includes automatically these two static files if this plugin is loaded. To add a product to your cart and make an order, you need a button, containing the product data. For example: See "A template..." below. =item A "Pay on delivery" integration with Bulgarian currier L<>. =item Products - a products SQL table to populate your pages with products. You create a page with several articles (celini) in it. These celini will be the pages for the products. You prepare a YAML file with products. Each product C<> property must match exactly the celina C<> and C<> on wich this product will be placed. See C<> andC<> for examples. =item A template for displaying products within a C<>. You can modify this template as you wish to display other types of products - not just books as it is now. See C<> inlined in this file. It of course can be inflated using L<>. The template produces the HTML from the products table, including the button mentioned above already. =back =head2 TODO MAYBE =over 1 =item Invoices - generate an invoice in PDF via headless LibreOffice instance on your server. =item Merchants - a merchants SQL table with Open API to manage and automatically populate invoices. =item Other "Pay on Delivery" providers. Feel free to contibute yours. =item Other types of Payments and/or Online Payment Providers like online POS Terminals etc. =back =head1 METHODS The usual method is implemented. =head2 register Prepends the class to renderer and static classes. Adds some REST API routes, configures the deliverer. =head1 EMBEDDED FILES @@ css/cart.css @@ js/cart.js @@ img/arrow-collapse-all.svg @@ img/cart-arrow-right.svg @@ img/cart.svg @@ img/cart-check.svg @@ img/cart-off.svg @@ img/cart-minus.svg @@ img/cart-plus-white.svg @@ img/cart-plus.svg @@ img/cart-remove.svg @@ img/econt.svg @@ partials/_kniga.html.ep @@ resources/data/prodan_migrations.sql =head1 SEE ALSO L, L, L, L, L, L, L =head1 AUTHOR Красимир Беров CPAN ID: BEROV berov на cpan точка org http://слово.бг =head1 CONTRIBUTORS Ordered by time of first commit. =over =item * Your Name =item * Someone Else =item * Another Contributor =back =head1 COPYRIGHT This is free software, licensed under: The Artistic License 2.0 (GPL Compatible) The full text of the license can be found in the LICENSE file included with this module. This distribution contains icons from L and may contain other free software which belongs to their respective authors.