X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=templates%2Fwebpages%2Fclient_config%2F_features.html;h=476ed16b66e7e52e7c4b995e63f4b5ae1200a792;hb=e3dfdb7a78f6e0bc8ac1075fedc36f8247c6fd92;hp=9c90515832592f7e7d1202bf353338d595ff6125;hpb=bf980f4c7394345e77711c389c1b3b1c3c764213;p=kivitendo-erp.git
diff --git a/templates/webpages/client_config/_features.html b/templates/webpages/client_config/_features.html
index 9c9051583..476ed16b6 100644
--- a/templates/webpages/client_config/_features.html
+++ b/templates/webpages/client_config/_features.html
@@ -37,7 +37,7 @@
[% 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') ],[ 'ExtDMS', LxERP.t8('ext.DMS') ],[ 'DB', LxERP.t8('Database') ] ],
+ [ [ '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') %] |
@@ -45,7 +45,7 @@
[% 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') ],[ 'ExtDMS', LxERP.t8('ext.DMS') ],[ 'DB', LxERP.t8('Database') ] ],
+ [ [ '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') %] |
@@ -53,11 +53,19 @@
[% 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') ],[ 'ExtDMS', LxERP.t8('ext.DMS') ],[ 'DB', LxERP.t8('Database') ] ],
+ [ [ '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) %] |
@@ -69,6 +77,21 @@
[% 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') %] |
@@ -80,11 +103,6 @@
[% L.yes_no_tag('defaults.doc_webdav', SELF.defaults.doc_webdav) %] |
[% LxERP.t8('Use WebDAV Storage backend') %] |
-
- [% LxERP.t8('Database') %] |
- [% L.yes_no_tag('defaults.doc_database', SELF.defaults.doc_database, disabled=1) %] |
- [% LxERP.t8('Use Database Storage backend (not implemented yet!)') %] |
-
[% LxERP.t8("Reports") %] |
@@ -111,11 +129,26 @@
[% 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') %] |
@@ -123,6 +156,17 @@
[% 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") %] |
@@ -149,8 +193,12 @@
[% LxERP.t8('Normalize part description and part notes') %] |
[% L.yes_no_tag('defaults.normalize_part_descriptions', SELF.defaults.normalize_part_descriptions) %] |
[% LxERP.t8('Automatic deletion of leading, trailing and excessive (repetitive) spaces in part description and part notes. Affects the CSV import as well.') %] |
-
-
+
+
+ [% LxERP.t8('Partsgroup is required for parts') %] |
+ [% L.yes_no_tag('defaults.partsgroup_required', SELF.defaults.partsgroup_required) %] |
+ [% LxERP.t8('If enabled, when saving parts the partsgroup must be not be empty.') %] |
+
[% LxERP.t8("Purchasing & Sales") %] |
@@ -201,6 +249,46 @@
[% 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") %] |
@@ -229,14 +317,20 @@
[% '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) %]
+ [% 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 %]
@@ -246,7 +340,7 @@
|
[% LxERP.t8('Transport and service costs reminder') %] |
[% LxERP.t8('Default transport article number') %] |
- [% L.part_picker('defaults.transport_cost_reminder_article_number_id', SELF.defaults.transport_cost_reminder_article_number_id, style=style) %] |
+ [% 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.') %] |
@@ -270,6 +364,7 @@
[% 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") %] |
@@ -294,13 +389,61 @@
[% 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('Enable experimental features') %] |
- [% L.yes_no_tag('defaults.feature_experimental', SELF.defaults.feature_experimental) %] |
- [% LxERP.t8('Experimental features are:') %] [% LxERP.t8('new order controller') %], [% LxERP.t8('Assortment') %] |
+ [% 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 %]
+
-
+