2 # Sample config for Mir
3 # by Matthias <mjordan@code-fu.de> 2001-09-12
5 # The Mir software realizes a semi-dynamic web service:
6 # The web server that is accessed by users has pure static
7 # pages. These pages are generated by the Mir software that
8 # consists of a collection of Java servlets and HTML templates.
9 # Mir uses a database server to store the data that is needed to
10 # build the static site.
11 # So there are basically three parts in this config file:
14 # b) static site config
15 # c) dynamic admin site
18 # edit this to suit your needs (here with sampleuser idfx)
19 # After you edited this file, build.sh has to be invoked.
20 # To be sure, also restart Tomcat.
22 # Note that for Mir to work, Tomcat has to be set up to handle all
23 # URLs that begin with /servlet. All other URLs are handled by Apache.
25 # The setup uses the following assumptions:
26 # The URL to reach the site is http://indy.code-fu.de
27 # The StorageRoot of this URL is /pub/Dokumente/Indymedia/de-tech/Mir
28 # All data is located below this directory, including the servlets.
36 ### mir/imc information
37 Mir.Name=mir.indymedia.org
39 Mir.Contact-email.address=mir-coders@lists.indymedia.org
40 Mir.Contact-email.name=mir-coders mailinglist
41 Mir.Tech-email.address=mir-coders@lists.indymedia.org
42 Mir.Tech-email.name=mir-coders mailinglist
43 Mir.Public-email.address=mir-coders@lists.indymedia.org
44 Mir.Public-email.name=mir-coders mailinglist
49 # The name of the abuse config file (relative to the WEB-INF dir)
50 Abuse.Config=abuse.properties
51 # The name of the cookie that can be used to thwart trolls
52 # (The name is deliberately misleading)
53 Abuse.CookieName=SessionIdentifier
55 # If equal to 1, the IP log can't be used
56 Abuse.DisallowIPLogging=0
58 # The time the cookie will remain active in hours
60 Abuse.CookieMaxAge=168
63 #where to put the lucene index
68 Log.LogClass = mir.log.log4j.LoggerImpl
69 Log.log4j.ConfigurationFile = etc/log4j.properties
72 Mir.Localizer=mircoders.localizer.basic.MirBasicLocalizer
74 # The location of the producer specifiations
75 Mir.Localizer.ProducerConfigFile=etc/producer/producers.xml
77 # Settings for the admin login:
78 # If the default language is left empty, it will set the accept-language of
79 # the client browser as the default.
80 Mir.Login.DefaultLanguage=en
82 # The available languages in the login form:
83 Mir.Login.Languages=en;de;fr;nl;es;pt;eu;sv;tr;zh;gz
85 # For missing values, the FallbackLanguage is used as default
86 Mir.Admin.FallbackLanguage=en
88 # Show who's logged in?
89 Mir.Admin.ShowLoggedinUsers=1
92 Mir.Admin.LogAdminActivity=0
94 # Which usernames have admin priviliges (, seperated usernames)
95 AccessControl.SuperUsers = admin
98 AccessControl.LockingEnabled = 0
100 # If locking enabled, should users lock articles before they
102 AccessControl.LockingOptional = 1
105 Mir.Localizer.Producer.GeneratorLibrary= default=freemarker(etc/producer/)
106 Mir.Localizer.Admin.GeneratorLibrary= default=freemarker(templates/admin/)
107 Mir.Localizer.OpenPosting.GeneratorLibrary= default=freemarker(etc/open/)
109 # How should the custom operations (hide etc) in article and comment lists
111 # 0 = links, 1 = checkboxes, 2 = a listbox
112 Mir.Localizer.Admin.ListOperationsFlavor=1
116 # How should the topics be presented on the article edit page?
118 # <key>:<listtype>:<listparameter>:<condition>:<order>
119 # multiple entries can be specified, can be seperated by a ,
122 # the bundle key to use for the field label
124 # 0 = in a multiselect list box, 1 = checkboxes, 2 = a dropdown listbox
126 # number of rows for multiselect list box, number of columns for checkboxes
128 # what sql condition should the topics of this category be of
130 # what sql order should the topics be ordered by
132 Mir.Localizer.Admin.TopicLists = \
133 content.topic:1:3::title
135 # enable deletion of comments/articles?
136 Mir.Localizer.Admin.AllowDeleteComment=1
137 Mir.Localizer.Admin.AllowDeleteArticle=1
139 # Article Preview Link URL (Link to produced articles from within admin)
140 Comment.PublicUrl=/en/${date.formatted.yyyy}/${date.formatted.MM}/${id}.shtml
141 Article.PublicUrl=/en/${to_content.date.formatted.yyyy}/${to_content.date.formatted.MM}/${to_content.id}.shtml
143 # which 'quick' operations should be available in the top-left box?
144 Mir.Localizer.Admin.AdministerOperations= \
145 comments:module=Comment&do=list
147 # Which producers need to be called after an article (resp. a comment) is posted
148 Mir.Localizer.OpenPosting.ContentProducers= media.new;articles.changed;startpage.generate;synchronization.run
149 Mir.Localizer.OpenPosting.CommentProducers= articles.changed;synchronization.run
151 # Which producers need to be called after the "produce all new" link is clicked from admin
152 Mir.Localizer.Producer.ProducerRecipes=
153 allnew = media.new;articles.changed;startpage.run;synchronization.run
156 #use rsync to mirror the website to a remote-host
158 Rsync.Script.Path=/var/www/bin/rsync-copy
160 # the maximum allowed size of an uploaded media file in KB.
161 MaxMediaUploadSize=20000
163 # the maximum number of allowed media items to upload at once.
164 ServletModule.OpenIndy.MaxMediaUploadItems=20
166 # the default number of media items to upload at once
167 ServletModule.OpenIndy.DefaultMediaUploadItems=1
175 # the url of the static site
176 Producer.ProductionHost=http://indy.code-fu.de
178 # the url of the public site
179 Producer.PublicationHost=http://indy.code-fu.de
181 # Produrce.StorageRoot is the directory, in which
182 # the generated HTML pages will be stored
183 Producer.StorageRoot=/pub/Dokumente/Indymedia/de-tech/Mir/produced
186 # a list of directories to edit
188 # <name>:<path>:<file filter>:<0|1 (recursion off or on)> [, ....]
190 ServletModule.FileEdit.Configuration= \
191 includes:/pub/Dokumente/Indymedia/de-tech/Mir/produced/inc:.*\\.inc:1
195 # DYNAMIC SITE CONFIG
198 # the url of the openposting-servlet
199 Producer.OpenAction=http://indy.code-fu.de/Mir/servlet/OpenMir
201 # use this property if the pages are not produced under the docRoot
202 # of the webserver. all links in the produced pages are prepended
203 # with Producer.DocRoot
206 Producer.ActionServlet=/servlet/Mir
208 # this is the name of the subdirectory where the image-dir
210 Producer.ImageRoot=/img
213 # the url of the video-server
214 Producer.Video.Host=http://indy.code-fu.de/video
216 # the url of the audio-server
217 Producer.Audio.Host=http://indy.code-fu.de/audio
219 # the url of the image-server
220 Producer.Image.Host=http://indy.code-fu.de/images
222 # the url of the media-server
223 Producer.Media.Host=http://indy.code-fu.de/media
225 # the url of the real-media-server
226 Producer.RealMedia.Host=rtsp://some.media.server/somedir/
229 # image specific storage directories
230 # absolute directory, where the images are saved
231 Producer.Image.Path=/pub/Dokumente/Indymedia/de-tech/Mir/produced/images/
233 # images will be scaled down so that the size (both widht and height) are below:
234 Producer.Image.MaxSize = 640
236 # icons will be generated so that the size (both width and height) are below:
237 Producer.Image.MaxIconSize = 120
239 # descaling will only occur if at least the following percentage of either
240 # the width or the height needs to be removed:
241 Producer.Image.MinDescalePercentage=10
243 # descaling will only occur if at least the following number of pixels needs
244 # to be removed from either the width or the height:
245 Producer.Image.MinDescaleReduction=10
248 # media specific storage directories
249 # absolute directory, where the media files are saved
250 Producer.Media.Path=/pub/Dokumente/Indymedia/de-tech/Mir/produced/media
252 # absolute directory, where the realmedia data files(ra and rm) are saved
253 # the ram files which point to the RealMedia.Host get saved in the regular Media dir
254 # this should make rsyncing to a separate streaming server much easier
255 Producer.RealMedia.Path=/pub/Dokumente/rtsp
257 # relativ directory, where the thumbnails will be saved
258 Producer.Image.IconPath=/icon
260 # Tiny Icons for the media types on the newswire summary.
261 # (right hand side of start page)
262 Producer.Icon.TinyImage=photo_small.gif
263 Producer.Icon.TinyAudio=audio_small.gif
264 Producer.Icon.TinyVideo=video_small.gif
265 Producer.Icon.TinyText=text_small.gif
267 #Medium sized icons used at various places
268 Producer.Icon.BigImage=photo_big.gif
269 Producer.Icon.BigAudio=audio_big.gif
270 Producer.Icon.BigVideo=video_big.gif
271 Producer.Icon.BigText=text_big.gif
273 #the style sheet used to turn html into xsl:fo
274 Producer.HTML2FOStyleSheet=/some/dir/mir/etc/producer/html2fo.xsl
276 # the following lines are used to construct PDFs on the fly from one or more articles
277 # for the moment, if you want to change anything else about your pdfs, you
278 # will have to learn some java!
280 # keep in mind that there may not be enough room for all the text you enter as the
281 # value of one these options, if text doesn't appear, the only easy thing to do is
284 # also, be sure to adjust the corresponding line height if you change a font size...
285 # this may require some trial and error to get right
287 # Available font families are helvetica, courier, and times
291 # an image which will appear at the top of the first page
294 PDF.Header.ImageHeight=0
296 #PDF.Header.Image=/home/john/mir/web/img/pdfbanner.png
297 #PDF.Header.ImageHeight=70
299 # a single line of big text which will appear at the top of the first page of all generated pdfs
300 # if you set the String to nothing, this will be skipped
302 PDF.Title.String=INDYMEDIA SOMEWHERE
303 PDF.Title.FontSize=24
304 PDF.Title.LineHeight=28
305 PDF.Title.FontFamily=courier
307 # footer is about two lines of small text which will appear at the bottom of every page
309 PDF.Footer.String=Indymedia does blah. Content is good, and free to use for non-commercial purposes under the Open Content license. if you have questions, email someone.
311 PDF.Footer.FontSize=12
312 PDF.Footer.FontFamily=helvetica
314 # how to format the index, i.e. the newsletter table of contents
316 PDF.Index.FontSize=12
317 PDF.Index.LineHeight=16
318 PDF.Index.FontFamily=helvetica
320 # how to format the meta-data, i.e. title, author, date
324 PDF.Meta.FontFamily=helvetica
325 RDF.Meta.DateFormat=yyyy-MM-dd HH:mm
327 # how to format the article description
329 PDF.Description.FontSize=12
330 PDF.Description.LineHeight=16
331 PDF.Description.FontFamily=helvetica
333 # how to format the article content
335 PDF.Content.FontSize=10
336 PDF.Content.LineHeight=16
337 PDF.Content.FontFamily=helvetica
339 # the formatting for images in gallery mode
341 PDF.BigImageCaption.FontSize=16
342 PDF.BigImageCaption.FontFamily=helvetica
344 # the formatting for the article source
346 PDF.Source.FontSize=12
347 PDF.Source.LineHeight=16
348 PDF.Source.FontFamily=courier
354 # the size paper your target audience will likely have in their printers. pick one of A4 or LETTER
359 # the number of Objects which can fit in your MRUCache
361 Global.Cache.Items=15
364 # edit with caution below this line
365 ######################################################################
374 Database.poolResetTime=1.0
375 Database.PoolLog=log/pool.log
377 Database.Username=postgres
379 Database.Host=localhost
382 Database.Driver=org.postgresql.Driver
386 # Servlet / Module configurations
389 # don't change this unless you really know your i18n.
390 # The default encoding charset used in the written html files as well
391 # as the dynamic output html.
392 # also used for the HTML charset meta tag.
393 Mir.DefaultEncoding=UTF8
395 # this encoding is used for the HTML charset meta tag.
396 # it must be the html charset equivalent of the Java encoding above
397 # don't change this unless...
398 Mir.DefaultHTMLCharset=UTF-8
400 # Default timezone to display times in in admin, producers
401 Mir.DefaultTimezone= UTC
403 # Default date/time format
404 Mir.DefaultDateTimeFormat = yyyy-MM-dd HH:mm
409 Localizer.OpenSession.article.EditTemplate = editarticle.template
410 Localizer.OpenSession.article.DupeTemplate = dupearticle.template
411 Localizer.OpenSession.article.DoneTemplate = donearticle.template
412 Localizer.OpenSession.article.UnsupportedMediaTemplate = unsupportedmediatype.template
413 Localizer.OpenSession.article.DefaultArticleType=newswire
414 Localizer.OpenSession.article.DefaultMediaFolder=openposting
416 Localizer.OpenSession.comment.EditTemplate = editcomment.template
417 Localizer.OpenSession.comment.DupeTemplate = dupecomment.template
418 Localizer.OpenSession.comment.DoneTemplate = donecomment.template
419 Localizer.OpenSession.comment.UnsupportedMediaTemplate = unsupportedmediatype.template
420 Localizer.OpenSession.comment.DefaultCommentStatus=normal
421 Localizer.OpenSession.comment.DefaultMediaFolder=openposting
422 Localizer.OpenSession.ErrorTemplate = sessionerror.template
424 Localizer.OpenSession.email.PrepareTemplate = preparemail.template
425 Localizer.OpenSession.email.MailTemplate = email_article.template
426 Localizer.OpenSession.email.DoneTemplate =/sent_mail.template
431 # config used for OpenIndy
433 ServletModule.OpenIndy.CommentTemplate=comment.template
434 ServletModule.OpenIndy.CommentDoneTemplate=comment_done.template
435 ServletModule.OpenIndy.CommentDupeTemplate=comment_dupe.template
436 ServletModule.OpenIndy.PostingTemplate=posting.template
437 ServletModule.OpenIndy.PostingDoneTemplate=posting_done.template
438 ServletModule.OpenIndy.PostingDupeTemplate=posting_dupe.template
439 ServletModule.OpenIndy.PostingDisabledTemplate=posting_disabled.template
440 ServletModule.OpenIndy.SearchResultsTemplate=search_results.template
441 ServletModule.OpenIndy.PrepareMailTemplate=prepare_mail.template
442 ServletModule.OpenIndy.SentMailTemplate=sent_mail.template
443 ServletModule.OpenIndy.MailableArticleTemplate=email_article.template
444 ServletModule.OpenIndy.EmailIsFrom=mailer@somewhere.org
445 ServletModule.OpenIndy.SMTPServer=localhost
446 ServletModule.OpenIndy.ErrorTemplate=error.template
447 ServletModule.OpenIndy.UserErrorTemplate=usererror.template
451 Mir.TemplateDir=templates/admin/
453 Mir.LoginTemplate=login.template
454 Mir.StartTemplate=start_admin.template
456 Mir.ErrorTemplate=error.template
457 Mir.UserErrorTemplate=usererror.template
459 ServletModule.Default.ListSize = 30
461 ServletModule.Topics.DeleteConfirmationTemplate=confirm.template
462 ServletModule.Topics.EditTemplate=topic.template
463 ServletModule.Topics.ListTemplate=topiclist.template
465 ServletModule.Users.DeleteConfirmationTemplate=confirm.template
466 ServletModule.Users.EditTemplate=user.template
467 ServletModule.Users.ListTemplate=userlist.template
469 ServletModule.Images.DeleteConfirmationTemplate=confirm.template
470 ServletModule.Images.EditTemplate=image.template
471 ServletModule.Images.ListTemplate=imagelist.template
473 ServletModule.Audio.DeleteConfirmationTemplate=confirm.template
474 ServletModule.Audio.EditTemplate=audio.template
475 ServletModule.Audio.ListTemplate=audiolist.template
477 ServletModule.Video.DeleteConfirmationTemplate=confirm.template
478 ServletModule.Video.EditTemplate=video.template
479 ServletModule.Video.ListTemplate=videolist.template
481 ServletModule.OtherMedia.DeleteConfirmationTemplate=confirm.template
482 ServletModule.OtherMedia.EditTemplate=other.template
483 ServletModule.OtherMedia.ListTemplate=medialist.template
485 ServletModule.Content.DeleteConfirmationTemplate=confirm.template
486 ServletModule.Content.EditTemplate=content.template
487 ServletModule.Content.ListTemplate=contentlist.template
489 ServletModule.Mediafolder.DeleteConfirmationTemplate=confirm.template
490 ServletModule.Mediafolder.EditTemplate=mediafolder.template
491 ServletModule.Mediafolder.ListTemplate=mediafolderlist.template
493 ServletModule.Comment.DeleteConfirmationTemplate=confirm.template
494 ServletModule.Comment.EditTemplate=comment.template
495 ServletModule.Comment.ListTemplate=commentlist.template
497 ServletModule.Hidden.ListTemplate=hiddenlist.template
499 ServletModule.Breaking.DeleteConfirmationTemplate=confirm.template
500 ServletModule.Breaking.EditTemplate=breaking.template
501 ServletModule.Breaking.ListTemplate=breakinglist.template
503 ServletModule.FileEdit.DeleteConfirmationTemplate=confirm.template
504 ServletModule.FileEdit.EditTemplate=fileedit.template
505 ServletModule.FileEdit.ListTemplate=fileeditlist.template
507 ServletModule.Message.DeleteConfirmationTemplate=confirm.template
508 ServletModule.Message.EditTemplate=message.template
509 ServletModule.Message.ListTemplate=messagelist.template
511 ServletModule.Language.DeleteConfirmationTemplate=confirm.template
512 ServletModule.Language.EditTemplate=language.template
513 ServletModule.Language.ListTemplate=languagelist.template
515 ServletModule.ArticleType.DeleteConfirmationTemplate=confirm.template
516 ServletModule.ArticleType.EditTemplate=articletype.template
517 ServletModule.ArticleType.ListTemplate=articletypelist.template
519 ServletModule.CommentStatus.DeleteConfirmationTemplate=confirm.template
520 ServletModule.CommentStatus.EditTemplate=commentstatus.template
521 ServletModule.CommentStatus.ListTemplate=commentstatuslist.template
523 ServletModule.MediaType.DeleteConfirmationTemplate=confirm.template
524 ServletModule.MediaType.EditTemplate=mediatype.template
525 ServletModule.MediaType.ListTemplate=mediatypelist.template
533 ServletModule.Abuse.EditFilter.Template = abuse.filter.template
534 ServletModule.Abuse.ListFilters.Template = abuse.filters.template
535 ServletModule.Abuse.ViewLog.Template = abuse.log.template
536 ServletModule.Abuse.Main.Template = abuse.template
539 # producer-related configs below
542 Producer.ExtLinkName=extlink.gif
543 Producer.IntLinkName=intlink.gif
544 Producer.MailLinkName=maillink.gif