+
+__END__
+
+=encoding utf-8
+
+=head1 NAME
+
+SL::Controller::Order - controller for orders
+
+=head1 SYNOPSIS
+
+This is a new form to enter orders, completely rewritten with the use
+of controller and java script techniques.
+
+The aim is to provide the user a better expirience and a faster flow
+of work. Also the code should be more readable, more reliable and
+better to maintain.
+
+=head2 key features
+
+=over 2
+
+=item *
+One input row, so that input happens every time at the same place.
+
+=item *
+Use of pickers where possible.
+
+=item *
+Possibility to enter more than one item at once.
+
+=item *
+Save order only on "save" (and "save and delivery order"-workflow). No
+hidden save on "print" or "email".
+
+=item *
+Item list in a scrollable area, so that the workflow buttons stay at
+the bottom.
+
+=item *
+Reordering item rows with drag and drop is possible. Sorting item rows is
+possible (by partnumber, description, qty, sellprice and discount for now).
+
+=item *
+No "update" is necessary. All entries and calculations are managed
+with ajax-calls and the page does only reload on "save".
+
+=item *
+User can see changes immediately, because of the use of java script
+and ajax.
+
+=back
+
+=head1 CODE
+
+=head2 layout
+
+=over 2
+
+=item *
+SL/Controller/Order.pm: the controller
+
+=item *
+template/webpages/order/form.html: main form
+
+=item *
+template/webpages/order/tabs/basic_data.html: main tab for basic_data
+
+This is the only tab here for now. "linked records" and "webdav" tabs are reused
+from generic code.
+
+=over 3
+
+=item *
+template/webpages/order/tabs/_item_input.html: the input line for items
+
+=item *
+template/webpages/order/tabs/_row.html: one row for already entered items
+
+=item *
+template/webpages/order/tabs/_tax_row.html: displaying tax information
+
+=item *
+template/webpages/order/tabs/_multi_items_dialog.html: dialog for entering more
+than one item at once
+
+=item *
+template/webpages/order/tabs/_multi_items_result.html: results for the filter in
+the multi items dialog
+
+=item *
+template/webpages/order/tabs/_price_sources_dialog.html: dialog for selecting
+price and discount sources
+
+=item *
+template/webpages/order/tabs/_email_dialog.html: email dialog
+
+=back
+
+=item *
+js/kivi.Order.js: java script functions
+
+=back
+
+=head1 TODO
+
+=over 2
+
+=item *
+
+testing
+
+
+=item *
+
+currency
+
+
+=item *
+
+customer/vendor details ('D'-button)
+
+
+=item *
+
+credit limit
+
+
+=item *
+
+more workflows (save as new / invoice)
+
+
+=item *
+
+price sources: little symbols showing better price / better discount
+
+
+=item *
+
+custom shipto address
+
+
+=item *
+
+periodic invoices
+
+
+=item *
+
+more details on second row (marge, ...)
+
+
+=item *
+
+language / part translations
+
+
+=item *
+
+access rights
+
+
+=item *
+
+preset salesman from customer
+
+
+=item *
+
+display weights
+
+
+=item *
+
+force project if enabled in client config
+
+
+=back
+
+=head1 AUTHOR
+
+Bernd Bleßmann E<lt>bernd@kivitendo-premium.deE<gt>
+
+=cut