######################################################################## # # Sample configuration file for OLAT # # This is the main OLAT configuration file. You should ensure that # you have read and understood the OLAT documentation beforehand. # In all likelihood you will need to alter some of the settings # below to suit your environment # # You should begin by creating an empty olat.local.properties file and put it in the tomcat lib dir e.g. /tomcat/lib # or if you are inside eclipse you may put it to webapp/WEB-NF/src directory # Spring searches on the classpath for this file and will overwrite the default properies from this file. # Check the olat adminstration tab for a setup menu entry for more info. # # Windows users: please use forward slashes throughout in file and # directory settings e.g., C:/TEMP # ######################################################################## setup.comment=false indicates that you run OLAT with the default properties and after each login as administrator you will receive an message. (does not work yet...) setup=false ######################################################################## # Application directories (absolute paths required!) Empty values point to java.io.tmpdir which can also be # overwritten with vm parameter -Djava.io.tmpdir=/home/user/data ######################################################################## userdata.dir.comment=runtime application data directory. Empty value points to java.io.tmpdir userdata.dir= archive.dir.comment=directory for deleted userdata/repository enties. Empty value points to [java.io.tmpdir]/deleted_archive archive.dir.values=${userdata.dir}/deleted_archive archive.dir= log.dir.comment=log directory of the olat.log file log.dir.values=${userdata.dir}/logs. Empty value points to [java.io.tmpdir]/logs log.dir= folder.root.comment=name of the repository root. Empty value points to [java.io.tmpdir]/bcroot folder.root.values=${userdata.dir}/bcroot folder.root= folder.maxulmb.comment=limits on upload size and quotas should be set in MB folder.maxulmb=50 folder.quotamb=50 temp.dir.comment=temporary workspace for the running application. Empty value points to [java.io.tmpdir]/tmp temp.dir.values=${userdata.dir}/tmp temp.dir= ######################################################################## # Application settings ######################################################################## # Initial setting for the system default locale # (used on the OLAT login page as well as when creating new user accounts) # NOTE: Once set at runtime via the admin GUI (System configuration -> Languages) # this default setting will be overridden by the values in # ${userdata.dir}/system/configuration/org.olat.core.util.i18n.I18nModule.properties defaultlang=en # Initial setting for enabled languages: comma separated list of lang keys. # Example: # enabledLanguages=en,de,fr,it,es,da,cs,el,ru,pl,zh_CN,zh_TW,lt,fa,pt_PT,pt_BR,tr,hu,sq,in,ar,rm,af,iw,vi,mn # or # Set to 'all' to enable all languages that can be found in the source code # Example: # enabledLanguages=all # NOTE: Once set at runtime via the admin GUI (System configuration -> Languages) # this default setting will be overridden by the values in # ${userdata.dir}/system/configuration/org.olat.core.util.i18n.I18nModule.properties enabledLanguages=en,de,fr,it,es # determines the character set of files written to the filesystem # e.g.: US-ASCII, ISO-8859-1, UTF-8 defaultcharset=ISO-8859-1 ######################################################################## # SMTP (mail) settings ######################################################################## # mail support can be disabled by leaving the following entry blank or # setting it to the keyword 'disabled' (without quotes!) smtp.host=localhost # if required by your local SMTP you may need to provide credentials smtp.user= smtp.pwd= # enable SSL if you smtp server supports it smtp.sslEnabled=false smtp.sslCheckCertificate=false # set this email to a mail address in your domain adminemail=webmaster@myolat.com # set this email to a mail address in your domain supportemail=support@myolat.com # maximum size for email attachements (in MB) mail.attachment.maxsize=5 ######################################################################## # User registration, login and deletion settings ######################################################################## # permit self registration registration.enableSelfRegistration=true # send an email when new users register registration.enableNotificationEmail=false # set this email to a mail address in your domain registration.notificationEmail=newregistration@myolat.com # ask user to accept a disclaimer at first login. Use i18n tool to customize disclaimer message registration.enableDisclaimer=true # add a second checkbox to the disclaimer registration.disclaimerAdditionalCheckbox=false # add a link to the disclaimer with a file download registration.disclaimerAdditionaLinkText=false # setting for the bean interceptor in the registration process, disabled mean that no interceptor # is desired. Standard implementation are: byShibbolethAttribute which generate a username based # from a shibboleth attribute, byEmail which generate a username based on the email from the user # which try to registrate itself registration.preset.username.values=disabled,byEmail,byShibbolethAttribute registration.preset.username=disabled # setting for byEmail implementation: a domain restriction to preset the username registration.preset.username.domain= # settings for byShibbolethAttribute implementation: # allowChanges the new user to changes its username (only when using byShibbolethAttribute) registration.preset.username.allowChanges=true # the shibboleth attribute to use to preset the username registration.preset.username.shibbolethAttribute=Shib-SwissEP-UniqueID # provide guest login links login.enableGuestLoginLinks=true # Allow users to login using alternatively their email address or username login.using.username.or.email.enabled=true # permit users to change their own passwords password.change.allowed=true # default deletion behaviour is to retain details (marked as deleted) and # ensure they cannot be used, otherwise (if false) values will be replaced # by yyyyMMddHHss_bkp_ keepUserEmailAfterDeletion=false keepUserLoginAfterDeletion=false #notifications intervals the user can choose from. Disabled those you do not want by setting them to "false" notification.interval.never=true notification.interval.monthly=true notification.interval.weekly=true notification.interval.daily=true notification.interval.half-daily=true notification.interval.four-hourly=true notification.interval.two-hourly=true #################################################### # assessmentplugin config #################################################### # Olat -> default assessmentplugin # Onyx -> The Onyx-Testplayer (onyxassessmentplugin) can be downloaded at http://www.olat.de/onyx. # The Testplayer is one element of the Onyx-Testsuite and has been designed, # developed and tested by BPS - Bildungsportal Sachsen GmbH - http://www.bps-system.de # OLAT makes no representations or warranties of any kind, either express or implied, # nor shall OLAT have any liability whatsoever to any person using Onyx, with respect to its functionality. # For all questions and help concerning the Onyx-Testplayer and the Onyx-Testsuite # including any support write to support@bps-system.de #### assessmentplugin.activate=Olat ##### # Onyx Reporter SSL/TLS communication properties ##### onyx.base.dir=/workspace/olat3 onyx.keystore.file=${onyx.base.dir}/conf/certs/client.keystore onyx.keystore.pass=geheim onyx.keystore.type=JKS onyx.truststore.file=${onyx.base.dir}/conf/certs/client.truststore onyx.truststore.pass=geheim onyx.truststore.type=JKS ##### # Onyx Reporter Webservice ##### onyx.reporter.webservice=http://onyx.bps-system.de/reporter/services/onyx_reporter onyx.update.results.job=disabled ##### # Onyx Plugin ##### onyx.plugin.wslocation=http://onyx.bps-system.de/plugin onyx.plugin.configname=[yourregisteredname] ######################################################################## # OLAT technical settings ######################################################################## # OLAT instance ID (effects a unqiue namesapce for addressable items) # ID should be no longer than 10 characters! instance.id=myolat # by creating a theme under webapp/WEB-INF/static/themes you can # customize the OLAT application to your liking (see the example # theme for futher information. # you can also configure a theme via the admin GUI which takes precedence layout.theme = default # test user generation (if true, velocity does not cache pages) user.generateTestUsers=true olatcore.debug.comment=for developers set to true to enabled visual debugging by the red/green bug icon on the upper left corner of olat olatcore.debug=true # how to load the olatcore "framework" - usually "jar" suffices but # for developers project sources are also possible e.g., # e.g. C:/eclipse/workspace/olatcore/src/main/java/ # or /home/myuser/workspaces/olatcore/src/main/java # this disables the localisation cache olatcore.src=jar # relative path to project (olat3) source relpathto.src=../../../webapp/WEB-INF/src # cache localization files (unless in development mode) localization.cache=false #number of elements to cache in course cache course.cache.elements=500 # required only for performance and functional testing allow.loadtest.mode=false # TODO: forum.maxbodylength=4000 webxml.webdav.inbuffer=32768 webxml.webdav.outbuffer=32768 # sysinfo portlet settings (files are editable if hosted on local server) portlet.sysinfo.url=../../raw/${build.version}/events.html portlet.sysinfo.filepath=pathToYourEventsFile/static/events.html # Portlet configuration portlet.zentralstelle.enabled=false portlet.shiblogin.enabled=false portlet.infomsg.enabled=false portlet.links.enabled=false portlet.institution.enabled=false portlet.repository.student.enabled=false portlet.repository.teacher.enabled=false portlet.system.events.enabled=false #extensions enabled/disabled SAPCampusMgntExtension.enabled=false # whether or not the gui demo site should be enabled=shown guidemo.enabled=true #webdav manager (show or don't webdav links in GIU) webdav.links.enabled=true ######################################################################## # Shared resources - used only to generate sample configurations ######################################################################## # set this to CATALINA_HOME or CATALINA_BASE as appropriate tomcat.home=/opt/tomcat # this is NOT used for deployment purposes tomcat.docbase=/opt/tomcat/webapps/olat connector.jk.jvmRoute=olat cluster.ajpport=8009 # TODO: is this really necessary ? # when in cluster mode and on same host, also make sure to configure the following parameter: cluster.catalinaport=8006 # User a value of '0' if you do not want to enable SSL. # If SSL is enabled, don't forget to uncomment the SSL section in the sample # configuration file # Eg. 8443, 443 (must not be empty, even if standard port 443 is used). Use 0 to disable SSL server.port.ssl=0 ######################################################################## # OLAT Maven plugin settings ######################################################################## # indicates if the contents of the database should be dropped olat.plugin.clean.database=false # indicates if the contents of the application directories (bcroot etc.) # should be removed olat.plugin.clean.app.dirs=false # indicates if the log directory contents should be removed olat.plugin.clean.log.dir=false # the name of an administrative user with rights to create the OLAT database db.admin.user=root # the password of the administrative user - note that if you set this property then # you should ensure that this file is not publicly readable for security reasons! # if you choose NOT to set this property then you will be prompted for the password # during the installation db.admin.pass= # automatically upgrades the database when a new olat version is started the first time auto.upgrade.database=true ######################################################################## # Eclipse Developer settings ######################################################################## # the server name which refers to the server view name in eclipse eclipse.server.name=OLATServer # set to true if you wish application data directories (e.g., userdata.dir) to # be recreated with each build eclipse.recreate.dirs=false ######################################################################## # Web application container (e.g., Tomcat) settings ######################################################################## # hosted application fully qualified domain name (e.g., DNS CNAME) # omit references to protocol/scheme (e.g., HTTP(S)) server.domainname=localhost # the port on which the container is listening server.port=8080 # application context path (leave blank, not "/", to use ROOT) server.contextpath=/olat server.modjk.enabled=false # OLAT JMX server port (must be unique per node in a cluster) jmx.rmi.port=3000 ######################################################################## # Database settings ######################################################################## # if scripts have already been run then this should be set to true db.skip.install=true db.vendor=hsqldb db.vendor.values=mysql,hsqldb,postgresql db.vendor.values.comment=supported vendors currently include "mysql" and "postgresql", Hsqldb is used for development db.prompt.comment=only used in olat maven plugin db.prompt=true # the server hosting the database db.host=localhost db.host.port=3306 # the list of all hosts requiring access to the database server # this is required for MySQL host based user management db.client.hostnames=localhost db.host.port.values=3306 (mysql default), 5432 (postgresql default) db.name=olat db.user=olat db.pass=olat db.database.dialect=org.hibernate.dialect.HSQLDialect db.database.dialect.values=org.hibernate.dialect.HSQLDialect,org.hibernate.dialect.MySQL5InnoDBDialect,org.hibernate.dialect.PostgreSQLDialect # enable database debugging (seldom required except for developers) db.show_sql=false db.hibernate.ddl.auto=update ######################################################################## # Fonts for jsMath Formula Editor (part of html editor and wiki) ######################################################################## unpack.fonts.comment=set to false if you do not require special image fonts of to speed up development cycle (unpacking takes some time as the zip contains more than 20'000 files!) unpack.fonts=false ######################################################################## # Instant Messaging (optional) ######################################################################## # if enabled then the IM Server must be running before OLAT is started! instantMessaging.enable=false instantMessaging.server.name=jabber.myolat.com # permit multiple OLAT instances to use the same IM server # each instance will append its ID to user-/group name instantMessaging.multipleInstances=false # when using multiple OLAT instances if you use email addresses as OLAT # usernames then the '@' must be replaced ! instantMessaging.replaceStringForEmailAt=_at_ # only required for testing/debugging purposes instantMessaging.generateTestUsers=false # an "admin" account must be present, do not change this username! instantMessaging.admin.username=admin instantMessaging.admin.password=admin # TODO: clarify! instantMessaging.db.name=wildfire instantMessaging.db.user=wildfire instantMessaging.db.pass=wildfire #if true all personal groups are synchronized with the im server instantMessaging.sync.personal.groups=true #if true all learning groups (all groups from all courses!) are synchronized with the im server. #ATTENTION: On a server with many courses and groups this can generate thousand of groups and therefore #generete millions of presence messages. Check openfire reguarly if set to true! instantMessaging.sync.learning.groups=true ######################################################################## # Translation tool settings (translation infrastructure required!) ######################################################################## # note: when enabled the language customisation tool is not available! (only enabled or disabled allowed as values!) is.translation.server=disabled # Path to the CVS "olat3" project that contains the languages DE and EN # During development this is normally /opt/workspace/olat3/webapp/WEB-INF/src i18n.application.src.dir = # Path to the CVS "olat3_i18n" project or any directory that contains # translatable packages other than DE and EN which are in the application source directory (excluding org.olat.core) # During development this is normally ${i18n.application.src.dir} i18n.application.opt.src.dir = ${i18n.application.src.dir} # Path to the CVS "olatcore" project that contains the languages DE and EN for the core # During development this is normally ${olatcore.src} i18n.core.src.dir = ${olatcore.src} # Path to the CVS "olatcore_i18n" project or any directory that contains # org.olat.core translations # During development this is normally ${i18n.application.src.dir} i18n.core.opt.src.dir = ${i18n.core.src.dir} ######################################################################## # Fulltext Search settings ######################################################################## generate.index.at.startup=true restart.window.start=0 restart.window.end=24 # Enable search-service for only one node per cluster [ enabled | disabled ] search.service=enabled # Enable triggering indexer via cron-job instead at startup [ enabled | disabled ] # When enabled , configure 'generate.index.at.startup=false' search.indexing.cronjob=disabled # Example '0 0 18 * * ?' start indexer at 18:00 ever day search.indexing.cronjob.expression=0 0 18 * * ? ######################################################################## # Security ######################################################################## shibboleth.enable=false # set the name of the Shibboleth attribute used to identify authorized users shibboleth.defaultUID=defaultUID # the Authentication and Authorization Infrastructure (AAI) is a # federated identity management system used in Switzerland that # supports the sending of a locale code within an AAI request using # a key as named in the language.param setting language.enable=false language.param=YOUR_PARAM_NAME # if you change this all current users will no longer be able to login! default.auth.provider.identifier=OLAT #these settings are university of zurich specific shibboleth.wayfSPEntityID= shibboleth.wayfSPHandlerURL= shibboleth.wayfSPSamlDSURL= shibboleth.wayfReturnUrl= #you can manuall add additional IDP servers. See org/olat/portal/shiblogin/_content/portlet.html #for an example shibboleth.wayf.additionalIDPs= #The auth provider you set to default will be the one you see when you access the loginpage, alternate providers are shows as links below #enable and or set the basic login provider (username/password) on the loginpage active and or default olatprovider.enable=true olatprovider.default=true #enable and or set the custom uzh shib login provider on the loginpage active and or default shibbolethUZH.enable=false shibbolethUZH.default=false #enable and or set the generic shib login provider on the loginpage active and or default shibbolethGeneric.enable=false shibbolethGeneric.default=false ######################################################################## # Clustering settings ######################################################################## # set to Cluster to enable, otherwise use SingleVM to disable cluster features cluster.mode=SingleVM # each node requires a unique ID (1-64) starting at "1" node.id=1 # certain servies (e.g., notifications, course logger etc. are not # cluster capable and can only run on a single node - set this to # enabled on that node cluster.singleton.services = enabled # JMS broker url's where the path (localhost:61700) - defines teh local adress and local port : # SingleVM jms.broker.url jms.broker.url=vm://embedded?broker.persistent=false search.broker.url=vm://embedded?broker.persistent=false codepoint.jms.broker.url=vm://embedded?broker.persistent=false # Cluster (remote) jms.broker.url #jms.broker.url=failover:(tcp://localhost:61616?wireFormat.maxInactivityDuration=0) #search.broker.url=failover:(tcp://localhost:61616?wireFormat.maxInactivityDuration=0) #codepoint.jms.broker.url=failover:(tcp://localhost:61616?wireFormat.maxInactivityDuration=0) # enable/disable codepoint/breakpoint framework codepoint_server.enabled=false ##### #query cache config for singlevm/cluster ##### #cluster need hibernate.caching.cluster.class set and hibernate.caching.singlevm.class empty and second level cache to false #for the cluster version you have to add treecache.xml to the classpath, see olat3/conf/trecache.xml for an example hibernate.caching.singlevm.class=net.sf.ehcache.hibernate.EhCacheProvider #hibernate.caching.cluster.class=org.hibernate.cache.jbc2.SharedJBossCacheRegionFactory hibernate.caching.cluster.class= hibernate.use.second.level.cache=true ##### # LDAP configuration parameters (optional) # for advanced config options see webapp/WEB-INF/src/serviceconfig/org/olat/ldap/_spring/olatextconfig.xml ##### ldap.enable=false # is ldap your default provider? true or false ldap.default=false ldap.activeDirectory=false # The date format is not the same for OpenLDAP (yyyyMMddHHmmss'Z') or # ActiveDirectory (yyyyMMddHHmmss'.0Z') ldap.dateFormat=yyyyMMddHHmmss'Z' ldap.dateFormat.values=yyyyMMddHHmmss'Z',yyyyMMddHHmmss'.0Z' ldap.ldapUrl=ldap://ldap.olat.org:389 # System user: used for getting all users and connection testing ldap.ldapSystemDN=CN=Frentix,OU=Benutzer,DC=olat,DC=ch ldap.ldapSystemPW=ldap4olat # List of bases where to find users. To use multiple bases you must edit the config file manually ldap.ldapBases=OU=Students,DC=olat,DC=ch # SSL configuration for LDAP ldap.sslEnabled=false ldap.trustStoreLocation=/usr/lib/j2sdk1.5-sun/jre/lib/security/cacerts ldap.trustStorePwd=changeit ldap.trustStoreType=JKS # When users log in via LDAP, the system can keep a copy of the password as encrypted # hash in the database. This makes OLAT more independent from an offline LDAP server # and users can use their LDAP password to use the WebDAV functionality. # If you have a mixed environment where some users have webDAV passwords and some have # only local OLAT user accounts, you have to set this flag to 'true. # When setting to true (recommended), make sure you configured password.change.allowed=false # unless you also set ldap.propagatePasswordChangedOnLdapServer=true ldap.cacheLDAPPwdAsOLATPwdOnLogin=true # Change the password on the LDAP server too ldap.propagatePasswordChangedOnLdapServer=false # When the system detects an LDAP user that does already exist in OLAT but is not marked # as LDAP user, the OLAT user can be converted to an LDAP managed user. # When enabling this feature you should make sure that you don't have a user 'administrator' # in your ldapBases (not a problem but not recommended) ldap.convertExistingLocalUsersToLDAPUsers=false # Users that have been created vial LDAP sync but now can't be found on the LDAP anymore # can be deleted automatically. If unsure, set to false and delete those users manually # in the user management. ldap.deleteRemovedLDAPUsersOnSync=false # Sanity check when deleteRemovedLDAPUsersOnSync is set to 'true': if more than the defined # percentages of user accounts are not found on the LDAP server and thus recognized as to be # deleted, the LDAP sync will not happen and require a manual triggering of the delete job # from the admin interface. This should prevent accidential deletion of OLAT user because of # temporary LDAP problems or user relocation on the LDAP side. # Value= 0 (never delete) to 100 (always delete). ldap.deleteRemovedLDAPUsersPercentage=50 # Should users be created and synchronized automatically on OLAT startup? Set this option to # 'true' to create and sync all LDAP users in a batch manner on each OLAT startup.If you set # this configuration to 'false', the users will be generated on-the-fly when they log in # For the cron syntax see http://quartz.sourceforge.net/javadoc/org/quartz/CronTrigger.html ldap.ldapSyncOnStartup=true # Independent of ldap.ldapSyncOnStartup, users can be created / synced in a batch manner # peridically. Set ldap.ldapSyncCronSync=true if you want such a behaviour and set an # appropriate cron expression to define the interval. The default cron expression will # sync the LDAP database with the OLAT database each hour. ldap.ldapSyncCronSync=${ldap.ldapSyncOnStartup} ldap.ldapSyncCronSyncExpression=0 0 * * * ? # Configuration for syncing user attributes during login or cron and batch sync (examples are # for an active directory) ldap.ldapUserObjectClass=person ldap.ldapUserCreatedTimestampAttribute=whenCreated ldap.ldapUserLastModifiedTimestampAttribute=whenChanged # OpenLDAP is userPassword, ActiveDirectory is unicodePwd ldap.ldapUserPassordAttribute=userPassword # Define mapping of user attributes. Only the mandatory attributes are defined here, see the # config file for advanced user attributes mapping ldap.attributename.useridentifyer=sAMAccountName ldap.attributename.email=mail ldap.attributename.firstName=givenName ldap.attributename.lastName=sn ##### # Build properties ##### application.name=OLAT build.version=7.0.0 ##### # OLAT logging ##### log.anonymous=false ##### # JUnit properties ##### junit.results.dir=${doc.dir}/test-results junit.aggregation.dir=${doc.dir}/test-results junit.doc.dir=${doc.dir}/test-results/html junit.clusterconfig.results.dir=${doc.dir}/test-results-clusterconfig junit.clusterconfig.aggregation.dir=${doc.dir}/test-results junit.clusterconfig.doc.dir=${doc.dir}/test-results-clusterconfig/html skip.unit.tests.comment=only set this if you do not want unit tests to be performed during the build skip.unit.tests=true ######################################## # Course building blocks, every course building block can be disabled by adding a property here and reference it in # appropriate spring config file (by default are course bb are enabled) ######################################## course.node.linklist.enabled=false course.node.checklist.enabled=false course.node.dateenrollment.enabled=false course.node.basiclti.enabled=true ######################################################################## # Tomcat deployment - only used if you wish to deploy from the build host ######################################################################## # the manager URL of the target Tomcat instance tomcat.manager.url=http://localhost:8080/manager # alter this at a per build level if you plan to cohost instances mvn.tomcat.server=olat-mvn-tomcat # you will need to configure your local Maven settings file as follows # citing your manager user and password as appropriate # # # ... # # ... # # # ... # myusername # mypassword # # ... # # ... #