]> wagnertech.de Git - mfinanz.git/blobdiff - config/kivitendo.conf.default
date error in mapping
[mfinanz.git] / config / kivitendo.conf.default
index 1391239f8cc1363c908f7c4efacef05abd61dc50..790a590599d748d7de81bc2c425de54540e6c719 100644 (file)
@@ -4,9 +4,16 @@
 # interface.
 admin_password = admin123
 
-# Which module to use for authentication. Valid values are 'DB' and
-# 'LDAP'.  If 'LDAP' is used then users cannot change their password
-# via kivitendo.
+# Which modules to use for authentication. Valid values are 'DB',
+# 'LDAP', 'HTTPHeaders'. You can use multiple modules separated by spaces.
+#
+# Multiple LDAP modules with different configurations can be used by
+# postfixing 'LDAP' with the name of the configuration section to use:
+# 'LDAP:ldap_fallback' would use the data from
+# '[authentication/ldap_fallback]'. The name defaults to 'ldap' if it
+# isn't given.
+#
+# Note that the LDAP module doesn't support changing the password.
 module = DB
 
 # The cookie name can be changed if desired.
@@ -43,6 +50,8 @@ password =
 # specified.
 #
 # tls:       Activate encryption via TLS
+# verify:    If 'tls' is used, how to verify the server's certificate.
+#            Can be one of 'require' or 'none'.
 # attribute: Name of the LDAP attribute containing the user's login name
 # base_dn:   Base DN the LDAP searches start from
 # filter:    An optional LDAP filter specification. The string '<%login%>'
@@ -51,6 +60,12 @@ password =
 #            If searching the LDAP tree requires user credentials
 #            (e.g. ActiveDirectory) then these two parameters specify
 #            the user name and password to use.
+# timeout:   Timeout when connecting to the server in seconds.
+#
+# You can specify a fallback LDAP server to use in case the main one
+# isn't reachable by duplicating this whole section as
+# "[authentication/ldap_fallback]".
+#
 host          = localhost
 port          = 389
 tls           = 0
@@ -59,28 +74,61 @@ base_dn       =
 filter        =
 bind_dn       =
 bind_password =
+timeout       = 10
+verify        = require
+
+# For use with module 'HTTPHeaders':
+[authentication/http_basic]
+enabled = 1
+
+# For use with module 'HTTPHeaders':
+[authentication/http_headers]
+enabled = 0
+client_id_header = X-Kivitendo-Client-ID
+user_header = Auth-User
+secret_header = X-Kivitendo-App-Secret
+secret = ...
 
 [system]
 # Set language for login and admin forms. Currently "de" (German)
 # and "en" (English, not perfect) are available.
 language = de
 
-# The database charset. Must match the encoding of the database cluster you want to
-# connect to. (Used on the shell command to create a database "pg_createcluster". Option "-e <encoding>".)
-dbcharset = UTF-8
+# Set stylesheet for login and admin forms. Supported:
+#  lx-office-erp
+#  kivitendo - was the default until version 3.9.2; will be dropped in version 4.0
+#  design40 - default
+stylesheet = design40
 
-[features]
-# Activate certain optional features and modules.
-webdav = 0
-vertreter = 0
-
-## Pictures for parts
-# Show the picture in the part form
-parts_show_image = 1
-# Style the picture with the following CSS code:
-parts_image_css = border:0;float:left;max-width:250px;margin-top:20px:margin-right:10px;margin-left:10px;
-# Show the picture in the results when you search for parts
-parts_listing_images = 0
+# MassPrint Timeout
+# must be less than cgi timeout
+#
+massprint_timeout = 30
+
+# Set default_manager for admin forms. Currently "german"
+# and "swiss" are available.
+default_manager = german
+
+# The memory limits given here determine the maximum process size
+# (vsz, the total amount of memory this process uses including memory
+# swapped out or shared with other processes) or resident set size
+# (rss, the amount of memory not swapped out/shared with other
+# processes). If either limit is reached at the end of the request
+# then the kivitendo process will exit.
+#
+# This only applies for processes under FCGI and the task manager.
+# For CGI configurations the process will be terminated after each request
+# regardless of this setting.
+#
+# Note: this will only terminate processes with too high memory consumption. It
+# is assumed that an external managing service will start new instances. For
+# FCGI this will usually be apache or the wrapper scripts for nginx, for the
+# task server this will have to be the system manager.
+#
+# Numbers can be postfixed with KB, MB, GB. If no number is given or
+# the number is 0 then no checking will be performed.
+memory_limit_rss =
+memory_limit_vsz =
 
 [paths]
 # path to temporary files (must be writeable by the web server)
@@ -91,13 +139,23 @@ spool = spool
 templates = templates
 # Path to the old memberfile (ignored on new installations)
 memberfile = users/members
+# Path to ELSTER geierlein webserver path inside kivitendo
+# (must be inside kivitendo but you can set an ALIAS for apache/oe
+# if set the export to geierlein is enabled
+# geierlein_path = geierlein
+
+#
+# document path for FileSystem FileManagement:
+#  (must be reachable read/write but not executable from webserver)
+# document_path = /var/local/kivi_documents
+#
 
 [mail_delivery]
-# Delivery method can be 'sendmail' or 'smtp' (the default). For
-# 'method = sendmail' the parameter 'mail_delivery.sendmail' is used
-# as the executable to call. If 'applications.sendmail' still exists
-# (backwards compatibility) then 'applications.sendmail' will be used
-# instead of 'mail_delivery.sendmail'.
+# Delivery method can be 'sendmail' or 'smtp'. For 'method = sendmail' the
+# parameter 'mail_delivery.sendmail' is used as the executable to call. If
+# 'applications.sendmail' still exists (backwards compatibility) then
+# 'applications.sendmail' will be used instead of 'mail_delivery.sendmail'.
+# If method is empty, mail delivery is disabled.
 method = smtp
 # Location of sendmail for 'method = sendmail'
 sendmail = /usr/sbin/sendmail -t<%if myconfig_email%> -f <%myconfig_email%><%end%>
@@ -116,29 +174,48 @@ security = none
 login =
 password =
 
+[imap_client]
+enabled = 0
+hostname = localhost
+username =
+password =
+# This folder can be managed with kivitendo through the background jobs
+# CleanUpEmailSubfolders and SyncEmailFolder. Create no subfolder in the
+# base folder by hand. Use / for subfolders.
+base_folder = INBOX
+# Port only needs to be changed if it is not the default port.
+# port = 993
+# If SSL is to be used, then set port to 993 or leave empty
+ssl = 1
+
+# Define a server for a specific email (e.g. info@test.de) with
+# '[sent_emails_in_imap/email/info@test.de]'
+[sent_emails_in_imap]
+enabled = 0
+hostname = localhost
+username =
+password =
+# This folder must exist. Use / for subfolders.
+folder = Sent/Kivitendo
+# Port only needs to be changed if it is not the default port.
+# port = 143
+# If SSL is used, default port is 993
+ssl = 1
+
 [applications]
-# Location of OpenOffice.org writer
-openofficeorg_writer = oowriter
-# Location of the X virtual frame buffer used for OpenOffice
-xvfb = Xvfb
+# Location of OpenOffice.org/LibreOffice writer
+openofficeorg_writer = lowriter
 # Location of the html2ps binary
 html2ps = html2ps
 # Location of the Ghostscript binary
 ghostscript = gs
-# Location of the pdflatex (or compatible, e.g. xetex) binary
-latex = pdflatex
+# Location of the program to create PDFs from TeX documents
+latex = latexmk --pdflatex
 # Location of the Python interpreter to use when converting from
 # OpenDocument to PDF. Some distributions compile UNO support only
 # into binaries located in different locations than the main Python
 # binary.
-python_uno = python
-# Location of the two executables "pg_dump" and "pg_restore" used for
-# database backup and restoration from the admin section.  If
-# "pg_dump" or "pg_restore" is set to "DISABLED" then the
-# corresponding option (backup/restoration) will be hidden from the
-# admin section.
-pg_dump = pg_dump
-pg_restore = pg_restore
+python_uno = python3
 
 [environment]
 # Add the following paths to the PATH environment variable.
@@ -158,31 +235,48 @@ latex = 1
 excel = 0
 # Enable or disable support for OpenDocument print templates
 opendocument = 1
-# Chose whether or not OpenOffice should remain running after a
+# Chose whether or not OpenOffice/LibreOffice should remain running after a
 # conversion. If yes then the conversion of subsequent documents will
-# be a lot faster. You need to have Python and the Python UNO bindings
-# (part of OpenOffice) installed.
-openofficeorg_daemon = 1
+# be a bit faster. You need to have Python and the Python UNO bindings
+# (part of OpenOffice/LibreOffice) installed.
+openofficeorg_daemon = 0
 openofficeorg_daemon_port = 2002
 
 [task_server]
-# User name to use for database access
-login =
-# Set to 1 for debug messages in /tmp/kivitendo-debug.log
-debug = 1
+# Set to 1 for debug messages in users/kivitendo-debug.log
+debug = 0
 # Chose a system user the daemon should run under when started as root.
 run_as =
+# Task servers can run on multiple machines. Each needs its own unique
+# ID. If unset, it defaults to the host name. All but one task server
+# must have 'only_run_tasks_for_this_node' set to 1.
+node_id =
+only_run_tasks_for_this_node = 0
+
+[task_server/notify_on_failure]
+# If you want email notifications for failed jobs then set this to a
+# kivitendo user (login) name. The subject can be changed as well.
+send_email_to  =
+# The "From:" header for said email.
+email_from     = kivitendo Daemon <root@localhost>
+# The subject for said email.
+email_subject  = kivitendo Task-Server: Hintergrundjob fehlgeschlagen
+# The template file used for the email's body.
+email_template = templates/webpages/task_server/failure_notification_email.txt
 
 [periodic_invoices]
-# The user name a report about the posted and printed invoices is sent
-# to.
-send_email_to  = mb
+# The user name or email address a report about the posted and printed
+# invoices is sent to.
+send_email_to  =
 # The "From:" header for said email.
 email_from     = kivitendo Daemon <root@localhost>
 # The subject for said email.
 email_subject  = Benachrichtigung: automatisch erstellte Rechnungen
 # The template file used for the email's body.
 email_template = templates/webpages/oe/periodic_invoices_email.txt
+# Whether to always send the mail (0), or only if there were errors
+# (1).
+send_for_errors_only = 0
 
 [self_test]
 
@@ -207,8 +301,38 @@ email_subject  = kivitendo self test report
 # template. currently txt and html templates are recognized and correctly mime send.
 email_template = templates/mail/self_test/status_mail.txt
 
+[check_below_minimum_stock]
+# The user name or email address a report about the under stock parts is sent
+# to.
+send_email_to  =
+# The "From:" header for said email.
+email_from     = kivitendo Daemon <root@localhost>
+# The subject for said email.
+email_subject  = Benachrichtigung: Artikel unter Mindestbestand
+# The template file used for the email's body.
+email_template = templates/mail/below_minimum_stock/error_email.html
+
+[follow_up_reminder]
+# Email notifications for due follow ups.
+# The "From:" header for said email.
+email_from     = kivitendo Daemon <root@localhost>
+# The subject for said email.
+email_subject  = kivitendo: fällige Wiedervorlagen
+# The template file used for the email's body.
+# If empty fu/follow_up_reminder_mail.html will be used.
+email_template =
+
+[follow_up_notify]
+# Email notification for new follow ups.
+email_from     = kivitendo Daemon <root@localhost>
+email_subject  = kivitendo: neue Wiedervorlagen für Sie von <%creator_name%>
+email_template = templates/mail/follow_up_notify/email_body.txt
+
 [console]
-# autologin to use if none is given
+# Automatic login will only work if both "client" and "login" are
+# given.  "client" can be a client's database ID or its name. "login"
+# is simply a user's login name.
+client =
 login =
 
 # autorun lines will be executed after autologin.
@@ -221,14 +345,32 @@ login =
 # location of history file for permanent history
 history_file = users/console_history
 
-# location of a separate log file for the console. everything normally written
-# to the kivitendo log will be put here if triggered from the console
-log_file = /tmp/kivitendo_console_debug.log
+# Location of a separate log file for the console. Everything normally written
+# to the kivitendo log will be put here if triggered from the console.
+log_file = users/kivitendo_console_debug.log
 
 [testing]
 
-# autologin to use if none is given
-login = myxplace_standard
+# Several tests need a database they can alter data in freely. This
+# database will be dropped & created before any other test is run. The
+# following parameters must be given:
+[testing/database]
+host               = localhost
+port               = 5432
+db                 =
+user               = postgres
+password           =
+template           = template1
+superuser_user     = postgres
+superuser_password =
+
+[devel]
+# Several settings related to the development of kivitendo.
+
+# "client" is used by several scripts (e.g. rose_auto_create_model.pl)
+# when they need access to the database. It can be either a client's
+# database ID or its name.
+client =
 
 [debug]
 # Use DBIx::Log4perl for logging DBI calls. The string LXDEBUGFILE
@@ -249,7 +391,7 @@ dbix_log4perl_config = log4perl.logger = FATAL, LOGFILE
                      = log4perl.appender.A1.layout.ConversionPattern=%d %p> %F{1}:%L %M - %m%n
 
 # Activate certain global debug messages. If you want to combine
-# several options then list them seperated by spaces.
+# several options then list them separated by spaces.
 #
 # Possible values include:
 #   NONE   - no debug output (default)
@@ -260,7 +402,11 @@ dbix_log4perl_config = log4perl.logger = FATAL, LOGFILE
 #   TRACE              - Track function calls and returns
 #   BACKTRACE_ON_ERROR - Print a function call backtrace when $form->error() is called
 #   REQUEST_TIMER      - Log timing of HTTP requests
+#   REQUEST            - Log each request. Careful! Passwords get filtered, but
+#                        there may be confidential information being logged here
 #   WARN               - warnings
+#   SHOW_CALLER        - include the file name & line number from where a call
+#                        to "message" or "dump" was called
 #   ALL                - all possible debug messages
 #
 #   DEVEL              - sames as "INFO QUERY TRACE BACKTRACE_ON_ERROR REQUEST_TIMER"
@@ -277,10 +423,6 @@ global_level = NONE
 # default.
 watch_form = 0
 
-# Include menu options for debugging in the HTML menu. Works only in
-# FastCGI mode.
-show_debug_menu = 0
-
 # If you want to debug the creation of LaTeX files then set this to 1.
 # That way the temporary LaTeX files created during PDF creation are
 # not removed and remain in the "users" directory.
@@ -292,4 +434,40 @@ keep_temp_files = 0
 restart_fcgi_process_on_changes = 0
 
 # The file name where the debug messages are written to.
-file_name = /tmp/kivitendo-debug.log
+file_name = users/kivitendo-debug.log
+
+# If set to 1 then the installation will be kept unlocked even if a
+# database upgrade fails.
+keep_installation_unlocked = 0
+
+# If set to 1 then all resource links (JavaScript, CSS files) output
+# via $::request->{layout}->use_stylesheet() / use_javascript() will
+# be made unique by appending a random GET parameter. This will cause
+# the web browser to always reload the resources.
+auto_reload_resources = 0
+
+# If set to 1 each exception will include a full stack backtrace.
+backtrace_on_die = 0
+
+[cti]
+# If you want phone numbers to be clickable then this must be set to a
+# command that does the actually dialing. Within this command three
+# variables are replaced before it is executed:
+#
+# 1. <%phone_extension%> and <%phone_password%> are taken from the user
+#    configuration (changeable in the admin interface).
+# 2. <%number%> is the number to dial. It has already been sanitized
+#    and formatted correctly regarding e.g. the international dialing
+#    prefix.
+#
+# The following is an example that works with the OpenUC telephony
+# server:
+# dial_command = curl --insecure -X PUT https://<%phone_extension%>:<%phone_password%>@IP.AD.DR.ESS:8443/sipxconfig/rest/my/call/<%number%>
+dial_command =
+# If you need to dial something before the actual number then set
+# external_prefix to it.
+external_prefix = 0
+# The prefix for international calls (numbers starting with +).
+international_dialing_prefix = 00
+# Our own country code
+our_country_code = 49