#
# Sample config for Mir
# by Matthias <mjordan@code-fu.de> 2001-09-12
+# reorganized by <init@nadir.org> 2003-02-12
#
# The Mir software realizes a semi-dynamic web service:
-# The web server that is accessed by users has pure static
+# The web server that is accessed by readers has pure static
# pages. These pages are generated by the Mir software that
# consists of a collection of Java servlets and HTML templates.
+#
# Mir uses a database server to store the data that is needed to
# build the static site.
# So there are basically three parts in this config file:
#
-# a) general setup
+# a) general & admin setup
# b) static site config
-# c) dynamic admin site
+# c) dynamic site
# d) database config
#
# edit this to suit your needs
-# After you edited this file, build.sh has to be invoked.
-# To be sure, also restart Tomcat.
+# After editing this file, two steps need to be taken to make the changes effective:
+# 1. ant has to be invoked.
+# 2. tomcat needs to be restarted.
#
-# Note that for Mir to work, Tomcat has to be set up to handle all
-# URLs that begin with /servlet. All other URLs are handled by Apache.
+# This file only contains the properties that are most often changed. To view all
+# possible config values, refer to the file default.properties, located in the
+# source directory. Don't change settings in default.properties however, instead
+# use this file.
#
-# There are more configuration values located in the default.properties file
-# located in source/. If necessary these values can be overridden in this file.
+# Note: for filename values, by default, files are used relative to the servlet's
+# WEB-INF directory.
#
# The setup uses the following assumptions:
-# The URL to reach the site is http://indy.code-fu.de
-# The StorageRoot of this URL is /pub/Dokumente/Indymedia/de-tech/Mir
-# All data is located below this directory, including the servlets.
+# The URL to reach the site is http://mir.someserver.org
+# The StorageRoot of this URL is /var/www/project/site/
+# All produced pages and media are located below this directory.
+################################################
+############ A) GENERAL SETUP ##############
+################################################
+# mir/project an contact information
+# for display on the site
#
-#
-# GENERAL SETUP
-#
-
-### mir/imc information
-Mir.Name=mir.indymedia.org
+Mir.Name=mir.someserver.org
Mir.Shortname=mir
-Mir.Contact-email.address=mir-coders@lists.indymedia.org
-Mir.Contact-email.name=mir-coders mailinglist
-Mir.Tech-email.address=mir-coders@lists.indymedia.org
-Mir.Tech-email.name=mir-coders mailinglist
-Mir.Public-email.address=mir-coders@lists.indymedia.org
-Mir.Public-email.name=mir-coders mailinglist
-Mir.Version=1.1beta
-StandardLanguage=de
-DirectOpenposting=yes
+Mir.Contact-email.address=mir-project@somemailserver.org
+Mir.Contact-email.name=mir-project mailinglist
-#where to put the lucene index
-IndexPath=/tmp/index
+Mir.Tech-email.address=mir-admins@somemailserver.org
+Mir.Tech-email.name=mir-admins mailinglist
-# temp-dir used for media-uploads
-TempDir=/tmp
+Mir.Public-email.address=project@somemailserver.org
+Mir.Public-email.name=project mailinglist
-Log.LogClass = mir.log.log4j.LoggerImpl
-Log.log4j.ConfigurationFile = etc/log4j.properties
-Log.Home = log
+# Default timezone to display times in in admin, producers
+# use CET for Central European Time (Paris, Amsterdam)
+# more timezones here: http://www.postgresql.org/docs/7.2/static/timezones.html
+#
+Mir.DefaultTimezone= UTC
+
+# Default date/time format
+# For the syntax of the format, refer to
+# http://java.sun.com/j2se/1.3/docs/api/java/text/SimpleDateFormat.html
+Mir.DefaultDateTimeFormat = yyyy-MM-dd HH:mm
-Mir.Localizer=mircoders.localizer.basic.MirBasicLocalizer
-Mir.Localizer.Logfile=log/localizer.log
+# For missing values, the FallbackLanguage is used as default
+#
+Mir.Admin.FallbackLanguage=en
-# The location of the producer specifiations
-Mir.Localizer.ProducerConfigFile=etc/producer/producers.xml
+#################################
+# admin interface configuration #
+#################################
# Settings for the admin login:
# If the default language is left empty, it will set the accept-language of
# the client browser as the default.
+#
Mir.Login.DefaultLanguage=en
-Mir.Login.Languages=en;nl;de;qu;tr;ay;es;eu
-
-
-# the templates
-Mir.Localizer.Producer.GeneratorLibrary= default=freemarker(etc/producer/)
-Mir.Localizer.Admin.GeneratorLibrary= default=freemarker(templates/admin/)
-Mir.Localizer.OpenPosting.GeneratorLibrary= default=freemarker(etc/open/)
+Mir.Login.Languages=en;de;fr;nl;es;pt;eu;sv;tr;zh;gz
-# How should the custom operations (hide etc) in article and comment lists
-# be presented?
-# 0 = links, 1 = checkboxes, 2 = a listbox
-Mir.Localizer.Admin.ListOperationsFlavor=1
+# Show who's logged in?
+#
+Mir.Admin.ShowLoggedinUsers=1
-# How should the topics be presented on the article edit page?
-# 0 = in a multiselect list box, 1 = checkboxes
-Mir.Localizer.Admin.TopicListFlavor=1
+# enable deletion of comments/articles?
+#
+Mir.Localizer.Admin.AllowDeleteComment=1
+Mir.Localizer.Admin.AllowDeleteArticle=1
-# For the checkboxes flavour, how many columns should there be?
-Mir.Localizer.Admin.TopicListColumns=3
+#######################
+# automated producers #
+#######################
-# In which order should the topic appear?
-Mir.Localizer.Admin.TopicListOrder=title
+# Which producers need to be called after an article is posted
+#
+Mir.Localizer.OpenPosting.ContentProducers= \
+media.new;articles.changed;startpage.generate;synchronization.run
-# Which producers need to be called after an article (resp. a comment) is posted
-Mir.Localizer.OpenPosting.ContentProducers= media.new;articles.changed;startpage.generate;synchronization.run
-Mir.Localizer.OpenPosting.CommentProducers= articles.changed;synchronization.run
+# Which producers need to be called after a comment is posted
+#
+Mir.Localizer.OpenPosting.CommentProducers= \
+articles.changed;synchronization.run
# Which producers need to be called after the "produce all new" link is clicked from admin
-Mir.Localizer.Producer.AllNewProducers= media.new;articles.changed;startpage.run;synchronization.run
-
+#
+Mir.Localizer.Producer.AllNewProducers= \
+media.new;articles.changed;startpage.run;synchronization.run
-#note that you can't make pdf's without making fo's
-#this is actually now set in producers.xml
-#but these summarize what is said in there for the benefit of OpenMir
-GenerateFO=yes
-GeneratePDF=yes
+#########
+# rsync #
+#########
#use rsync to mirror the website to a remote-host
+#
Rsync=no
-Rsync.Script.Path=/var/www/bin/rsync-copy
-
-# the maximum allowed size of an uploaded media file in KB.
-MaxMediaUploadSize=20000
-
-# the maximum number of allowed media items to upload at once.
-ServletModule.OpenIndy.MaxMediaUploadItems=20
+Rsync.Script.Path=/var/www/bin/rsync-copy.sh
-# the default number of media items to upload at once
-ServletModule.OpenIndy.DefaultMediaUploadItems=1
+###################
+# FileEdit module #
+###################
+# for extra flexibility editors can edit text-files from within the admin-interface
+# these files can then be included in webpages using SSI as footer or announcement-box...
#
+# a list of directories to edit
+# format:
+# <name>:<path>:<file filter>:<0|1 (recursion off or on)> [, ....]
#
-# STATIC SITE CONFIG
-#
-
-# the url of the static site
-Producer.ProductionHost=http://indy.code-fu.de
+ServletModule.FileEdit.Configuration= \
+ includes:/var/www/project/site/includes:.*\\.inc:1
-# Produrce.StorageRoot is the directory, in which
-# the generated HTML pages will be stored
-Producer.StorageRoot=/pub/Dokumente/Indymedia/de-tech/Mir/produced
+################################################
+########### B) STATIC SITE CONFIG #############
+################################################
-# for FileEdit module
+# the url of the static site
+# on the machine where mir runs on
#
-# where do we find the files? absolute path
-ServletModule.FileEdit.FileDirectory=/pub/Dokumente/Indymedia/de-tech/Mir/produced
-ServletModule.FileEdit.ExtFilter=.*\.inc$
-ServletModule.FileEdit.Recursive=1
+Producer.ProductionHost=http://mir.someserver.org
+# the url of the public site
+# only different from ProductionHost if pages are copied to
+# one ore more mirror-servers for delivery
#
-#
-# DYNAMIC SITE CONFIG
-#
+Producer.PublicationHost=http://mir.someserver.org
-# the url of the openposting-servlet
-Producer.OpenAction=http://indy.code-fu.de/Mir/servlet/OpenMir
+# Produrce.StorageRoot is the directory, in which
+# the generated HTML pages will be stored
+#
+Producer.StorageRoot=/var/www/project/site/
-# use this property if the pages are not produced under the docRoot
+# use this property only if the pages are NOT produced under the docRoot
# of the webserver. all links in the produced pages are prepended
# with Producer.DocRoot
+#
Producer.DocRoot=
-Producer.ActionServlet=/servlet/Mir
-# this is the name of the subdirectory where the image-dir
-# will be linked to.
-Producer.ImageRoot=/img
+#####################
+# media server URLs #
+#####################
+# for better performance or load-sharing
+# images/media can be copied to (and served from) different servers
+# only in this case image- and medialinks need different URLs.
# the url of the video-server
-Producer.Video.Host=http://indy.code-fu.de/video
+#
+Producer.Video.Host=http://mir.someserver.org/video
# the url of the audio-server
-Producer.Audio.Host=http://indy.code-fu.de/audio
+#
+Producer.Audio.Host=http://mir.someserver.org/audio
# the url of the image-server
-Producer.Image.Host=http://indy.code-fu.de/images
+#
+Producer.Image.Host=http://mir.someserver.org/images
# the url of the media-server
-Producer.Media.Host=http://indy.code-fu.de/media
+#
+Producer.Media.Host=http://mir.someserver.org/media
# the url of the real-media-server
-Producer.RealMedia.Host=rtsp://some.media.server/somedir/
+#
+Producer.RealMedia.Host=rtsp://some.streamingmedia.server/somedir/
+
+
+############################################
+# image/media specific storage directories #
+############################################
-# image specific storage directories
# absolute directory, where the images are saved
-Producer.Image.Path=/pub/Dokumente/Indymedia/de-tech/Mir/produced/images/
+#
+Producer.Image.Path=/var/www/project/site/images/
+
-# media specific storage directories
# absolute directory, where the media files are saved
-Producer.Media.Path=/pub/Dokumente/Indymedia/de-tech/Mir/produced/media
+#
+Producer.Media.Path=/var/www/project/site/media
# absolute directory, where the realmedia data files(ra and rm) are saved
# the ram files which point to the RealMedia.Host get saved in the regular Media dir
# this should make rsyncing to a separate streaming server much easier
-Producer.RealMedia.Path=/pub/Dokumente/rtsp
+#
+Producer.RealMedia.Path=/var/www/project/site/rtsp
+# mir creates a small thumbnail-icon for each image posted
# relativ directory, where the thumbnails will be saved
+#
Producer.Image.IconPath=/icon
+
+####################
+# media-type-icons #
+####################
+
+# by default they are stored in the webservers [docRoot]/img directory
+# they are distibuted with the mir-source (etc/producer/images)
+# use the "staticimages.generate" producer once to copy them in place
+#
+
# Tiny Icons for the media types on the newswire summary.
# (right hand side of start page)
+#
Producer.Icon.TinyImage=photo_small.gif
Producer.Icon.TinyAudio=audio_small.gif
Producer.Icon.TinyVideo=video_small.gif
Producer.Icon.TinyText=text_small.gif
#Medium sized icons used at various places
+#
Producer.Icon.BigImage=photo_big.gif
Producer.Icon.BigAudio=audio_big.gif
Producer.Icon.BigVideo=video_big.gif
Producer.Icon.BigText=text_big.gif
#Icons used for links
+#
Producer.ExtLinkName=extlink.gif
Producer.IntLinkName=intlink.gif
Producer.MailLinkName=maillink.gif
-#the style sheet used to turn html into xsl:fo
-Producer.HTML2FOStyleSheet=/some/dir/mir/etc/producer/html2fo.xsl
+# this is the name of the subdirectory where the image-dir
+# will be linked to.
+#
+Producer.ImageRoot=/img
-#
-# edit with caution below this line
-######################################################################
+################################################
+########### C) DYNAMIC SITE CONFIG #############
+################################################
+
+# the main mir-servlet
#
+Producer.ActionServlet=/servlet/Mir
+
+# the url of the openposting-servlet
#
-# DATABASE SETUP
+Producer.OpenAction=http://mir.someserver.org/servlet/OpenMir
+
+# the maximum allowed size of an uploaded media file in KB.
#
+MaxMediaUploadSize=20000
+# the maximum number of allowed media items to upload at once.
#
-# specify your database
+ServletModule.OpenIndy.MaxMediaUploadItems=20
-Database.poolMin=1
-Database.poolMax=10
-Database.poolResetTime=1.0
-Database.PoolLog=log/pool.log
-Database.Limit=20
-Database.Username=postgres
-Database.Password=
-Database.Host=localhost
-Database.Name=Mir
+# the default number of media items to upload at once
+#
+ServletModule.OpenIndy.DefaultMediaUploadItems=1
+# path to ImageMagick executables. Default is "" (nothing), which
+# means executables will be searched using the default system PATH
+# example:Producer.Image.ImageMagickPath=/usr/local/ImageMagick/bin
#
-# this sets the adaptor to be used
+Producer.Image.ImageMagickPath=
-Database.Adaptor=mir.storage.DatabaseAdaptorPostgresql
-Database.Logfile=log/dbentity.log
+######################
+# PDF configurations #
+######################
+
+# the following lines are used to construct PDFs on the fly from one or more articles
+# for the moment, if you want to change anything else about your pdfs, you
+# will have to learn some java!
+#
+# keep in mind that there may not be enough room for all the text you enter as the
+# value of one these options, if text doesn't appear, the only easy thing to do is
+# use less text!
#
-# configuration for adaptor postgres
-# In this example, "Mir" is the dbname
-Adaptor.PostgreSQL.URL=jdbc:postgresql://localhost:5432/Mir
-Adaptor.PostgreSQL.Driver=org.postgresql.Driver
+# a single line of big text which will appear at the top of the first page of all generated pdfs
+#
+PDF.Title=SOME MIR-SITE
-# how many articles should be shown on a list-page
-Lists.Max.Items=10
+# about two lines of small text which will appear at the bottom of every page
+#
+PDF.Footer=Mir-CMS PDF-Newsletter. Content is good, and free to use for non-commercial purposes under the Open Content license. If you have questions, email someone.
+# the size paper your target audience will likely have in their printers.
+# pick one of A4 or LETTER
#
-# Servlet / Module configurations
+PDF.PageSize=A4
+
+################################################
+############ D) DATABASE CONFIG ##############
+################################################
+
+# specify your database
#
+Database.Name=Mir
+Database.Username=postgres
+Database.Password=
+
+Database.Host=localhost
+Database.Port=5432
+Database.Driver=org.postgresql.Driver
+
+
+############################################
+# encoding configuration #
+############################################
-# don't change this unless you really know your i18n.
# The default encoding charset used in the written html files as well
# as the dynamic output html.
-# also used for the HTML charset meta tag.
+Mir.DefaultHTMLCharset=UTF-8
+
+# The java equivalent of Mir.DefaultHTMLCharset
Mir.DefaultEncoding=UTF8