#
# Sample config for Mir
# by Matthias <mjordan@code-fu.de> 2001-09-12
+# reorganized by <init@nadir.org> 2003-02-12
+#
+# The options shown here are the more frequently used options. A full
+# list of all default options is available in the
+# source/default.properties file. If you need to change any of those,
+# just override the values in *this* file (don't change the
+# source/default.properties file
#
# 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 (here with sampleuser idfx)
-# After you edited this file, build.sh has to be invoked.
-# To be sure, also restart Tomcat.
+# edit this to suit your needs
+# 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.
+#
+# 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
-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
-Mir.Localizer=mircoders.localizer.basic.MirBasicLocalizer
-Mir.Localizer.Logfile=log/localizer.log
+# 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
-# The location of the producer specifiations
-Mir.Localizer.ProducerConfigFile=etc/producer/producers.xml
+# For missing values, the FallbackLanguage is used as default
+#
+Mir.Admin.FallbackLanguage=en
-# 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/)
+# warning: advanced feature. Don't change unless you know
+# Localizers provide a customization framework that allows different
+# mir sites to behave differently. Each site can write it's own bits
+# of java code that override default behavior. The localizer
+# framework provides "hooks" where admins can plug in their custom
+# code.
+#
+# example setup:
+# Mir.Localizer=org.indymedia.de.DeLocalizer
-# 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
-# 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
+#################################
+# admin interface configuration #
+#################################
-# 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
+# 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;de;fr;nl;es;pt;eu;sv;tr;zh;gz
+# Show who's logged in?
+#
+Mir.Admin.ShowLoggedinUsers=1
-#note that you can't make pdf's without making fo's
-GenerateFO=yes
-GeneratePDF=yes
+# enable deletion of comments/articles?
+#
+Mir.Localizer.Admin.AllowDeleteComment=1
+Mir.Localizer.Admin.AllowDeleteArticle=1
+
+#######################
+# automated producers #
+#######################
-#on-time-password-protection
-PasswdProtection=no
+# 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 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
+
+#########
+# rsync #
+#########
#use rsync to mirror the website to a remote-host
+#
Rsync=no
-Rsync.Script.Path=/var/www/bin/rsync-copy
+Rsync.Script.Path=/var/www/bin/rsync-copy.sh
-# 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
+###################
+# 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
-#
+ServletModule.FileEdit.Configuration= \
+ includes:/var/www/project/site/includes:.*\\.inc:1
-# the url of the static site
-Producer.ProductionHost=http://indy.code-fu.de
+################################################
+########### B) STATIC SITE CONFIG #############
+################################################
-# Produrce.StorageRoot is the directory, in which
-# the generated HTML pages will be stored
-Producer.StorageRoot=/pub/Dokumente/Indymedia/de-tech/Mir/produced
-
-# 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
+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
-
-
-#
-# edit with caution below this line
-######################################################################
-
-#
-#
-# DATABASE SETUP
+#Icons used for links
#
+Producer.ExtLinkName=extlink.gif
+Producer.IntLinkName=intlink.gif
+Producer.MailLinkName=maillink.gif
+# this is the name of the subdirectory where the image-dir
+# will be linked to.
#
-# specify your database
+Producer.ImageRoot=/img
-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
-#
-# this sets the adaptor to be used
-Database.Adaptor=mir.storage.DatabaseAdaptorPostgresql
-Database.Logfile=log/dbentity.log
+################################################
+########### C) DYNAMIC SITE CONFIG #############
+################################################
+# the main mir-servlet
#
-# 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
+Producer.ActionServlet=/servlet/Mir
+# the url of the openposting-servlet
#
-# should be explained .)
-#
-
-# how many articles should be shown on a list-page
-Lists.Max.Items=10
-
-HTMLTemplateProcessor.Logfile=log/htmlprocess.log
-HTMLTemplateProcessor.Dir=
-
-Entity.Logfile=log/dbentity.log
+Producer.OpenAction=http://mir.someserver.org/servlet/OpenMir
+# the maximum allowed size of an uploaded media file in KB.
#
-# Servlet / Module configurations
-#
-
-# 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.DefaultEncoding=ISO8859_1
-Mir.Logfile=log/mir.log
-Mir.ErrorTemplate=templates/error.template
-Mir.UserErrorTemplate=templates/usererror.template
-Mir.LoginTemplate=templates/admin/login.template
-OpenMir.Logfile=log/OpenMir.log
-
-ServletModule.Schwerpunkt.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.Schwerpunkt.ObjektTemplate=templates/admin/feature.template
-ServletModule.Schwerpunkt.ListTemplate=templates/admin/featurelist.template
-
-ServletModule.Feature.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.Feature.ObjektTemplate=templates/admin/schwerpunkt.template
-ServletModule.Feature.ListTemplate=templates/admin/schwerpunktlist.template
-
-ServletModule.Themen.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.Themen.ObjektTemplate=templates/admin/topic.template
-ServletModule.Themen.ListTemplate=templates/admin/topiclist.template
-
-ServletModule.LinksImcs.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.LinksImcs.ObjektTemplate=templates/admin/linksimcs.template
-ServletModule.LinksImcs.ListTemplate=templates/admin/linksimcslist.template
-
-ServletModule.Users.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.Users.ObjektTemplate=templates/admin/user.template
-ServletModule.Users.ListTemplate=templates/admin/userlist.template
-
-ServletModule.Images.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.Images.ObjektTemplate=templates/admin/image.template
-ServletModule.Images.ListTemplate=templates/admin/imagelist.template
-
-Module.UploadedMedia.Logfile=log/mir.log
+MaxMediaUploadSize=20000
-ServletModule.Audio.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.Audio.ObjektTemplate=templates/admin/audio.template
-ServletModule.Audio.ListTemplate=templates/admin/audiolist.template
+# the maximum number of allowed media items to upload at once.
+#
+ServletModule.OpenIndy.MaxMediaUploadItems=20
-ServletModule.Video.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.Video.ObjektTemplate=templates/admin/video.template
-ServletModule.Video.ListTemplate=templates/admin/videolist.template
+# the default number of media items to upload at once
+#
+ServletModule.OpenIndy.DefaultMediaUploadItems=1
-ServletModule.OtherMedia.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.OtherMedia.ObjektTemplate=templates/admin/media.template
-ServletModule.OtherMedia.ListTemplate=templates/admin/medialist.template
+# 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
+#
+Producer.Image.ImageMagickPath=
-ServletModule.Content.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.Content.ObjektTemplate=templates/admin/content.template
-ServletModule.Content.ListTemplate=templates/admin/contentlist.template
-ServletModule.Mediafolder.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.Mediafolder.ObjektTemplate=templates/admin/mediafolder.template
-ServletModule.Mediafolder.ListTemplate=templates/admin/mediafolderlist.template
+######################
+# 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!
#
-# config used for OpenIndy
-ServletModule.OpenIndy.CommentTemplate=etc/open/comment.template
-ServletModule.OpenIndy.CommentDoneTemplate=etc/open/comment_done.template
-ServletModule.OpenIndy.CommentDupeTemplate=etc/open/comment_dupe.template
-ServletModule.OpenIndy.PostingTemplate=etc/open/posting.template
-ServletModule.OpenIndy.PostingDoneTemplate=etc/open/posting_done.template
-ServletModule.OpenIndy.PostingDupeTemplate=etc/open/posting_dupe.template
-ServletModule.OpenIndy.SearchResultsTemplate=etc/open/search_results.template
-
+# 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!
#
-# config for ServletModuleComment - browsing/editing/deleting comments
-ServletModule.Comment.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.Comment.ObjektTemplate=templates/admin/comment.template
-ServletModule.Comment.ListTemplate=templates/admin/commentlist.template
+# a single line of big text which will appear at the top of the first page of all generated pdfs
#
-# config for ServletModuleHidden - lists all hidden articles of one month
-ServletModule.Hidden.ListTemplate=templates/admin/hiddenlist.template
+PDF.Title=SOME MIR-SITE
+# about two lines of small text which will appear at the bottom of every page
#
-# config for Breaking - browsing/editing/deleting breaking news
-ServletModule.Breaking.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.Breaking.ObjektTemplate=templates/admin/breaking.template
-ServletModule.Breaking.ListTemplate=templates/admin/breakinglist.template
+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
#
-# config for Breaking - editing text files
-ServletModule.FileEdit.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.FileEdit.ObjektTemplate=templates/admin/fileedit.template
-ServletModule.FileEdit.ListTemplate=templates/admin/fileeditlist.template
+PDF.PageSize=A4
-#
-# config for messages - browsing/editing/deleting internal messages
-ServletModule.Messages.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.Messages.ObjektTemplate=templates/admin/message.template
-ServletModule.Messages.ListTemplate=templates/admin/messagelist.template
+################################################
+############ D) DATABASE CONFIG ##############
+################################################
+# specify your database
#
-# config for languages - browsing/editing/deleting languages
-ServletModule.Language.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.Language.ObjektTemplate=templates/admin/language.template
-ServletModule.Language.ListTemplate=templates/admin/languagelist.template
+Database.Name=mir
+Database.Username=mir
+Database.Password=indymedia
-#
-# config for article type
-ServletModule.ArticleType.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.ArticleType.EditTemplate=templates/admin/articletype.template
-ServletModule.ArticleType.ListTemplate=templates/admin/articletypelist.template
+Database.Host=localhost
+Database.Port=5432
+Database.Driver=org.postgresql.Driver
-#
-# config for comment status
-ServletModule.CommentStatus.ConfirmTemplate=templates/admin/confirm.template
-ServletModule.CommentStatus.EditTemplate=templates/admin/commentstatus.template
-ServletModule.CommentStatus.ListTemplate=templates/admin/commentstatuslist.template
-#
-# producer-related configs below
-#
+############################################
+# encoding configuration #
+############################################
-Producer.ExtLinkName=extlink.gif
-Producer.IntLinkName=intlink.gif
-Producer.MailLinkName=maillink.gif
-Producer.Logfile=log/producer.log
+# The default encoding charset used in the written html files as well
+# as the dynamic output html.
+Mir.DefaultHTMLCharset=UTF-8
-Producer.Content.Template=etc/producer/content.template
-Producer.Content.Batchsize=10
+# The java equivalent of Mir.DefaultHTMLCharset
+Mir.DefaultEncoding=UTF8