X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=templates%2Fwebpages%2Fclient_config%2F_features.html;h=476ed16b66e7e52e7c4b995e63f4b5ae1200a792;hb=e3dfdb7a78f6e0bc8ac1075fedc36f8247c6fd92;hp=3d3b2167889fd1d6397e1539b3060d8a775125de;hpb=af2f24b8a20ae59af3b72da2cdf3669987a19927;p=kivitendo-erp.git
diff --git a/templates/webpages/client_config/_features.html b/templates/webpages/client_config/_features.html
index 3d3b21678..476ed16b6 100644
--- a/templates/webpages/client_config/_features.html
+++ b/templates/webpages/client_config/_features.html
@@ -1,8 +1,24 @@
-[%- USE LxERP -%][%- USE L -%]
+[%- USE LxERP -%][%- USE L -%][%- USE P -%][%- USE T8 %]
+[% SET style="width: 250px" %]
- [% LxERP.t8("WebDAV") %] |
+ [% LxERP.t8("DATEV") %] |
+
+ [% LxERP.t8('Datevautomatik') %] |
+ [% L.yes_no_tag('defaults.feature_datev', SELF.defaults.feature_datev) %] |
+ [% LxERP.t8('Use Datevautomatik') %] |
+
+
+ [% LxERP.t8("UStVA") %] |
+
+
+ [% LxERP.t8('UStVA') %] |
+ [% L.yes_no_tag('defaults.feature_ustva', SELF.defaults.feature_ustva) %] |
+ [% LxERP.t8('Use UStVA') %] |
+
+
+ [% LxERP.t8("File Management") %] |
[% LxERP.t8('WebDAV') %] |
[% L.yes_no_tag('defaults.webdav', SELF.defaults.webdav) %] |
@@ -13,6 +29,98 @@
[% L.yes_no_tag('defaults.webdav_documents', SELF.defaults.webdav_documents) %] |
[% LxERP.t8('Save document in WebDAV repository') %] |
+
+ [% LxERP.t8('Filemanagement') %] |
+ [% L.yes_no_tag('defaults.doc_storage', SELF.defaults.doc_storage) %] |
+ [% LxERP.t8('Use Filemanagement') %] |
+
+
+ [% LxERP.t8('Storage Type for generated/imported PDF Documents') %] |
+ [% L.select_tag('defaults.doc_storage_for_documents',
+ [ [ 'None', LxERP.t8('None') ],[ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ] ],
+ default = SELF.defaults.doc_storage_for_documents,
+ onchange="return checkavailable_filebackend(this);") %] |
+ [% LxERP.t8('Use this storage backend for all generated PDF-Files') %] |
+
+
+ [% LxERP.t8('Storage Type for Attachments') %] |
+ [% L.select_tag('defaults.doc_storage_for_attachments',
+ [ [ 'None', LxERP.t8('None') ], [ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ] ],
+ default = SELF.defaults.doc_storage_for_attachments,
+ onchange="return checkavailable_filebackend(this);") %] |
+ [% LxERP.t8('Use this storage backend for all uploaded attachments') %] |
+
+
+ [% LxERP.t8('Storage Type for images') %] |
+ [% L.select_tag('defaults.doc_storage_for_images',
+ [ [ 'None', LxERP.t8('None') ], [ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ] ],
+ default = SELF.defaults.doc_storage_for_images,
+ onchange="return checkavailable_filebackend(this);") %] |
+ [% LxERP.t8('Use this storage backend for uploaded images') %] |
+
+
+ [% LxERP.t8('Storage Type for shopimages') %] |
+ [% L.select_tag('defaults.doc_storage_for_shopimages',
+ [ [ 'None', LxERP.t8('None') ], [ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ] ],
+ default = SELF.defaults.doc_storage_for_shopimages,
+ onchange="return checkavailable_filebackend(this);") %] |
+ [% LxERP.t8('Use this storage backend for uploaded images') %] |
+
+
+ [% LxERP.t8('Delete printfiles') %] |
+ [% L.yes_no_tag('defaults.doc_delete_printfiles', SELF.defaults.doc_delete_printfiles) %] |
+ [% LxERP.t8('Allow to delete generated printfiles') %] |
+
+
+ [% LxERP.t8('max filesize') %] |
+ [% L.input_tag('doc_max_filesize_MB','', size=10, onchange="verifyMBSize(this);") %]
+ [% L.hidden_tag('defaults.doc_max_filesize',SELF.defaults.doc_max_filesize) %] MB |
+ [% LxERP.t8('The maximum of uploadable filesize in Megabyte') %] |
+
+
+ [% LxERP.t8('Preselect Customer/Vendor documents as email attachments') %] |
+ [% L.yes_no_tag('defaults.email_attachment_vc_files_checked', SELF.defaults.email_attachment_vc_files_checked) %] |
+ [% LxERP.t8('Preselect all documents saved for the current customer/vendor as a mail attachment.') %] |
+
+
+ [% LxERP.t8('Preselect part documents as email attachments') %] |
+ [% L.yes_no_tag('defaults.email_attachment_part_files_checked', SELF.defaults.email_attachment_part_files_checked) %] |
+ [% LxERP.t8('Preselect all documents for the current selected parts in a record as a mail attachment.') %] |
+
+
+ [% LxERP.t8('Preselect record documents as email attachments') %] |
+ [% L.yes_no_tag('defaults.email_attachment_record_files_checked', SELF.defaults.email_attachment_record_files_checked) %] |
+ [% LxERP.t8('Preselect all documents saved for the current record as a mail attachment.') %] |
+
+ [% LxERP.t8("Storage Backends") %] |
+
+ [% LxERP.t8('Files') %] |
+ [% L.yes_no_tag('defaults.doc_files', SELF.defaults.doc_files) %] |
+ [% LxERP.t8('Use File Storage backend') %] |
+
+
+ [% LxERP.t8('WebDAV') %] |
+ [% L.yes_no_tag('defaults.doc_webdav', SELF.defaults.doc_webdav) %] |
+ [% LxERP.t8('Use WebDAV Storage backend') %] |
+
+
+ [% LxERP.t8("Reports") %] |
+
+
+ [% LxERP.t8('Balance') %] |
+ [% L.yes_no_tag('defaults.feature_balance', SELF.defaults.feature_balance) %] |
+ [% LxERP.t8('Use Balance Sheet') %] |
+
+
+ [% LxERP.t8('income') %] |
+ [% L.yes_no_tag('defaults.feature_eurechnung', SELF.defaults.feature_eurechnung) %] |
+ [% LxERP.t8('Use Income') %] |
+
+
+ [% LxERP.t8('Erfolgsrechnung') %] |
+ [% L.yes_no_tag('defaults.feature_erfolgsrechnung', SELF.defaults.feature_erfolgsrechnung) %] |
+ [% LxERP.t8('Use Erfolgsrechnung') %] |
+
[% LxERP.t8("Customer Master Data") %] |
@@ -21,11 +129,43 @@
[% L.yes_no_tag('defaults.vertreter', SELF.defaults.vertreter) %] |
[% LxERP.t8('Representative for Customer') %] |
-
+
[% LxERP.t8('Normalize Customer / Vendor names') %] |
[% L.yes_no_tag('defaults.normalize_vc_names', SELF.defaults.normalize_vc_names) %] |
[% LxERP.t8('Automatic deletion of leading, trailing and excessive (repetitive) spaces in customer or vendor names') %] |
+
+ [% LxERP.t8('Use text field for greetings') %] |
+ [% L.yes_no_tag('defaults.vc_greetings_use_textfield', SELF.defaults.vc_greetings_use_textfield) %] |
+ [% LxERP.t8('Use a text field to enter (new) greetings if enabled. Otherwise, only a drop down box is offered.') %] |
+
+
+ [% LxERP.t8('Use text field for title of contacts') %] |
+ [% L.yes_no_tag('defaults.contact_titles_use_textfield', SELF.defaults.contact_titles_use_textfield) %] |
+ [% LxERP.t8('Use a text field to enter (new) contact titles if enabled. Otherwise, only a drop down box is offered.') %] |
+
+
+ [% LxERP.t8('Use text field for department of contacts') %] |
+ [% L.yes_no_tag('defaults.contact_departments_use_textfield', SELF.defaults.contact_departments_use_textfield) %] |
+ [% LxERP.t8('Use a text field to enter (new) contact departments if enabled. Otherwise, only a drop down box is offered.') %] |
+
+
+
+ [% LxERP.t8('Hourly Rate') %] |
+ [% L.input_tag('defaults.customer_hourly_rate', LxERP.format_amount(SELF.defaults.customer_hourly_rate, 2), style=style) %] |
+ [% LxERP.t8('Default hourly rate for new customers') %] |
+
+
+
+ [% LxERP.t8('Customers: VAT ID / taxnumber unique') %] |
+ [% L.yes_no_tag('defaults.customer_ustid_taxnummer_unique', SELF.defaults.customer_ustid_taxnummer_unique) %] |
+ [% LxERP.t8('Should VAT ID or taxnumber be unique for customers? This is checked when saving a customer\'s master data. One of the fields is sufficient and required.') %] |
+
+
+ [% LxERP.t8('Vendors: VAT ID / taxnumber unique') %] |
+ [% L.yes_no_tag('defaults.vendor_ustid_taxnummer_unique', SELF.defaults.vendor_ustid_taxnummer_unique) %] |
+ [% LxERP.t8('Should VAT ID or taxnumber be unique for all vendors? This is checked when saving a vendor\'s master data. One of the fields is sufficient and required.') %] |
+
[% LxERP.t8("Parts Master Data") %] |
@@ -41,14 +181,269 @@
[% LxERP.t8('CSS style for pictures') %] |
- [% L.input_tag('defaults.parts_image_css', SELF.defaults.parts_image_css, style=style) %] |
+ [% L.input_tag('defaults.parts_image_css',SELF.defaults.parts_image_css, style=style) %] |
[% LxERP.t8('Style the picture with the following CSS code') %] |
-
-
+
+
+ [% LxERP.t8('Allow direct creation of new purchase delivery orders') %] |
+ [% L.yes_no_tag('defaults.allow_new_purchase_delivery_order', SELF.defaults.allow_new_purchase_delivery_order) %] |
+ [% LxERP.t8('If disabled purchase delivery orders can only be created by conversion from existing requests for quotations and purchase orders.') %] |
+
+
+
+ [% LxERP.t8('Allow direct creation of new purchase invoices') %] |
+ [% L.yes_no_tag('defaults.allow_new_purchase_invoice', SELF.defaults.allow_new_purchase_invoice) %] |
+ [% LxERP.t8('If disabled purchase invoices can only be created by conversion from existing requests for quotations, purchase orders and purchase delivery orders.') %] |
+
+
+
+ [% LxERP.t8("Show »not delivered qty/value« column in sales and purchase orders") %] |
+ [% L.yes_no_tag("defaults.sales_purchase_order_ship_missing_column", SELF.defaults.sales_purchase_order_ship_missing_column) %] |
+ [% LxERP.t8("If enabled a column will be shown in sales and purchase orders that lists both the amount and the value not shipped yet for each item.") %] |
+
+
+
+ [% LxERP.t8("Warn before saving orders with duplicate parts (new controller only)") %] |
+ [% L.yes_no_tag("defaults.order_warn_duplicate_parts", SELF.defaults.order_warn_duplicate_parts) %] |
+ [% LxERP.t8("If enabled a warning will be shown in sales and purchase orders if there are two or more positions of the same part (new controller only).") %] |
+
+
+ [% LxERP.t8("Warn before saving orders without a delivery date") %] |
+ [% L.yes_no_tag("defaults.order_warn_no_deliverydate", SELF.defaults.order_warn_no_deliverydate) %] |
+ [% LxERP.t8("If enabled a warning will be shown in sales and purchase orders if there the delivery date is empty.") %] |
+
+
+ [% LxERP.t8("Warn before saving sales orders with missing customer order number (new controller only)") %] |
+ [% L.yes_no_tag("defaults.order_warn_no_cusordnumber", SELF.defaults.order_warn_no_cusordnumber) %] |
+ [% LxERP.t8("If enabled a warning will be shown in sales delivery orders if the customer order number is missing.") %] |
+
+
+ [% LxERP.t8("For sales delivery orders, warn on workflow to invoice if not stocked out") %] |
+ [% L.yes_no_tag("defaults.sales_delivery_order_check_stocked", SELF.defaults.sales_delivery_order_check_stocked) %] |
+ [% LxERP.t8("If enabled a warning will be shown in sales delivery orders on workflow to invoices if positions are not stocked out.") %] |
+
+
+ [% LxERP.t8("For purchase delivery orders, warn on workflow to invoice if not stocked in") %] |
+ [% L.yes_no_tag("defaults.purchase_delivery_order_check_stocked", SELF.defaults.purchase_delivery_order_check_stocked) %] |
+ [% LxERP.t8("If enabled a warning will be shown in purchase delivery orders on workflow to invoices if positions are not stocked in.") %] |
+
+
+ [% LxERP.t8("For sales invoices, warn if invoice has no delivery order as a predecessor") %] |
+ [% L.yes_no_tag("defaults.warn_no_delivery_order_for_invoice", SELF.defaults.warn_no_delivery_order_for_invoice ) %] |
+ [% LxERP.t8("If enabled a warning will be shown if a sales invoices is created without having a sales delivery order as a predecessor.") %] |
+
+
+ [% LxERP.t8("Create sales invoices with Factur-X/ZUGFeRD data") %] |
+ [% L.select_tag("defaults.create_zugferd_invoices", SELF.zugferd_settings, default=SELF.defaults.create_zugferd_invoices) %] |
+
+ [% LxERP.t8("If enabled Factur-X/ZUGFeRD conformant sales invoice PDFs will be created.") %]
+ [% LxERP.t8("If the test mode is enabled, the Factur-X/ZUGFeRD invoices will be flagged so that they're only fit to be used for testing purposes.") %]
+ |
+
+
+ [% LxERP.t8("Create sales invoices with Swiss QR-bill") %] |
+
+ [% L.select_tag("defaults.create_qrbill_invoices", [ [ 0, LxERP.t8('Do not create QR-bill invoices') ], [ 1, LxERP.t8('Create variant QR-IBAN with QR reference') ], [ 2, LxERP.t8('Create variant IBAN without reference') ] ], default=SELF.defaults.create_qrbill_invoices) %]
+ |
+ [% LxERP.t8("If enabled sales invoices created using OpenDocument/OASIS format will include data for Swiss QR-Bill creation.") %] |
+
+
+
[% LxERP.t8("E-mail") %] |
+
+
+ [% LxERP.t8('Global Record BCC') %] |
+
+ [% L.input_tag('defaults.global_bcc', SELF.defaults.global_bcc, style=style) %]
+ |
+ [% 'Manually sent E-Mails will have their BCC field appended with this address. Will not trigger for employees without the right to send bcc, and will not apply to mails sent by automated jobs.' | $T8 %] |
+
+
+
+ [% LxERP.t8('Send a BCC to logged in user?') %] |
+
+ [% L.yes_no_tag('defaults.bcc_to_login', SELF.defaults.bcc_to_login) %]
+ |
+
+ [% LxERP.t8('Send a blind copy of all outgoing emails to current user\'s email address?') %]
+ |
+
+
+
+ [% LxERP.t8('Email journal') %] |
+
+ [% L.select_tag('defaults.email_journal', [ [ 0, LxERP.t8('No Journal') ],[ 1, LxERP.t8('Without Attachments') ],[ 2, LxERP.t8('With Attachments') ] ], default=SELF.defaults.email_journal) %]
+ |
+ [% 'Sent emails can be optionally stored in the database with or without their attachments.' | $T8 %] |
+
+
+ [% LxERP.t8('Invoice email settings') %] |
+
+ [% L.select_tag('defaults.invoice_mail_settings', [ [ 'cp', LxERP.t8('Contact Person') ],[ 'invoice_mail', LxERP.t8('Invoice email') ],[ 'invoice_mail_cc_cp', LxERP.t8('Invoice email and Contact Person') ] ], default=SELF.defaults.invoice_mail_settings) %]
+ |
+ [% 'The invoice recipient can either be a selected contact person (default) or the email adress set in the master data of the customer. Additionally a contact persons mail and the company\'s invoicing mail can be combined.' | $T8 %] |
+
+
+
[% LxERP.t8("Requirement Specs") %] |
+
+ [% LxERP.t8('Default article for converting into quotations and orders') %] |
+
+ [% IF SELF.h_unit_name %]
+ [% P.part.picker('defaults.requirement_spec_section_order_part_id', SELF.defaults.requirement_spec_section_order_part_id, convertible_unit=SELF.h_unit_name, style=style) %]
+ [% ELSE %]
+ [% LxERP.t8("Error: this feature requires that articles with a time-based unit (e.g. 'h' or 'min') exist.") %]
+ [% END %]
+ |
+ [% LxERP.t8('When converting a requirement spec into a quotation or an oder each section gets converted into a line position in the new record. This is the article used by default for this conversion.') %] |
+
+
[% LxERP.t8('Transport and service costs reminder') %] |
+
+ [% LxERP.t8('Default transport article number') %] |
+ [% P.part.picker('defaults.transport_cost_reminder_article_number_id', SELF.defaults.transport_cost_reminder_article_number_id, style=style) %] |
+ [% LxERP.t8('Before saving a sales order, this article will be checked and a warning is generated.') %] |
+
+
+
[% LxERP.t8("Disabled Price Sources") %] |
+
+ [% 'Price Sources to be disabled in this client' | $T8 %] |
+
+
+ [% L.select_tag("defaults.disabled_price_sources[]", SELF.all_price_sources, id="defaults_price_sources", multiple=1, default=SELF.defaults.disabled_price_sources) %]
+ [% L.multiselect2side("defaults_price_sources", labelsx=LxERP.t8("All price sources"), labeldx=LxERP.t8("Price sources deactivated in this client")) %]
+
+ |
+
+
+
[% LxERP.t8("Projects") %] |
+
+ [% LxERP.t8('Always save orders with a projectnumber (create new projects)') %] |
+ [% L.yes_no_tag('defaults.order_always_project', SELF.defaults.order_always_project) %] |
+
+
+ [% LxERP.t8('Project type') %] |
+ [% L.select_tag('defaults.project_type_id', SELF.all_project_types, default=SELF.defaults.project_type_id, title_key='description', with_empty=0, style="width: 200px") %] |
+
+
+ [% LxERP.t8('Project Status') %] |
+ [% L.select_tag('defaults.project_status_id', SELF.all_project_statuses, default=SELF.defaults.project_status_id, title_key='description', with_empty=0, style="width: 200px") %] |
+
+
[% LxERP.t8("Select Mulit-Item Options") %] |
+
+ [% LxERP.t8('Show parts longdescription (notes) in select list') %] |
+ [% L.yes_no_tag('defaults.show_longdescription_select_item', SELF.defaults.show_longdescription_select_item) %] |
+
+
+
[% LxERP.t8("Enabled Quick Searched") %] |
+
+ [% 'Quick Searches that will be shown in the header in this client' | $T8 %] |
+
+
+ [% L.select_tag("defaults.quick_search_modules[]", SELF.available_quick_search_modules, value_key="name", title_key="description_config", id="defaults_quick_searches", multiple=1, default=SELF.defaults.quick_search_modules) %]
+ [% L.multiselect2side("defaults_quick_searches", labelsx=LxERP.t8("All modules"), labeldx=LxERP.t8("Enabled modules")) %]
+
+ |
+
+
[% LxERP.t8("SEPA") %] |
+
+ [% LxERP.t8('Add Customer/Vendor Number as a reference add-on for SEPA export.') %] |
+ [% L.yes_no_tag('defaults.sepa_reference_add_vc_vc_id', SELF.defaults.sepa_reference_add_vc_vc_id) %] |
+
+
+ [% LxERP.t8('Set the invoice duedate as the default execution date for SEPA export.') %] |
+ [% L.yes_no_tag('defaults.sepa_set_duedate_as_default_exec_date', SELF.defaults.sepa_set_duedate_as_default_exec_date) %] |
+
+
+ [% LxERP.t8('Set the invoice skonto date (if exists) as the default execution date for SEPA export.') %] |
+ [% L.yes_no_tag('defaults.sepa_set_skonto_date_as_default_exec_date', SELF.defaults.sepa_set_skonto_date_as_default_exec_date) %] |
+
+
+ [% LxERP.t8('In addition to the above date functions, subtract the following amount of days from the calculated date as a buffer.') %] |
+ [% L.input_tag('defaults.sepa_set_skonto_date_buffer_in_days', LxERP.format_amount(SELF.defaults.sepa_set_skonto_date_buffer_in_days, 0), style=style) %] |
+
+
[% LxERP.t8("Experimental Features") %] |
+
+ [% LxERP.t8('new order controller') %] |
+ [% L.yes_no_tag('defaults.feature_experimental_order', SELF.defaults.feature_experimental_order) %] |
+
+
+ [% LxERP.t8('Assortment') %] |
+ [% L.yes_no_tag('defaults.feature_experimental_assortment', SELF.defaults.feature_experimental_assortment) %] |
+
+
[% 'Displayable Name Preferences' | $T8 %] |
+ [% FOREACH module=SELF.displayable_name_specs_by_module.keys.sort %]
+ [%- SET spec=SELF.displayable_name_specs_by_module.$module -%]
+
+ [% spec.specs.title %] |
+
+
+
+ [% 'Option' | $T8 %] |
+ [% 'Name' | $T8 %] |
+
+ [% FOREACH option=spec.specs.options %]
+
+ [% option.title %] |
+ [% option.name %] |
+
+ [% END %]
+
+ [% 'Display' | $T8 %]: |
+
+ [% L.hidden_tag("displayable_name_specs[+].module", module) %]
+ [% L.input_tag("displayable_name_specs[].default", spec.prefs.get_default, size=50) %]
+ |
+
+
+ |
+ [% IF loop.first %]
+ [% 'The display of (mainly) picker results can be configured. To insert the value of one option use <%Name%>.' | $T8 %]
+ [% 'E.g. "<%customernumber%> <%name%>"' | $T8 %]
+ |
+ [% END %]
+
+ [% END %]
+
+
+