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 Mir.Localizer.Producer.GeneratorLibrary= default=freemarker(etc/producer/)
99 Mir.Localizer.Admin.GeneratorLibrary= default=freemarker(templates/admin/)
100 Mir.Localizer.OpenPosting.GeneratorLibrary= default=freemarker(etc/open/)
102 # How should the custom operations (hide etc) in article and comment lists
104 # 0 = links, 1 = checkboxes, 2 = a listbox
105 Mir.Localizer.Admin.ListOperationsFlavor=1
109 # How should the topics be presented on the article edit page?
111 # <key>:<listtype>:<listparameter>:<condition>:<order>
112 # multiple entries can be specified, can be seperated by a ,
115 # the bundle key to use for the field label
117 # 0 = in a multiselect list box, 1 = checkboxes, 2 = a dropdown listbox
119 # number of rows for multiselect list box, number of columns for checkboxes
121 # what sql condition should the topics of this category be of
123 # what sql order should the topics be ordered by
125 Mir.Localizer.Admin.TopicLists = \
126 content.topic:1:3::title
128 # enable deletion of comments/articles?
129 Mir.Localizer.Admin.AllowDeleteComment=1
130 Mir.Localizer.Admin.AllowDeleteArticle=1
132 # Article Preview Link URL (Link to produced articles from within admin)
133 Comment.PublicUrl=/en/${date.formatted.yyyy}/${date.formatted.MM}/${id}.shtml
134 Article.PublicUrl=/en/${co_content.date.formatted.yyyy}/${to_content.date.formatted.MM}/${to_content.id}.shtml
136 # enable deletion of comments/articles?
137 Mir.Localizer.Admin.AdministerOperations= \
138 comments:module=Comment&do=list
141 # Which producers need to be called after an article (resp. a comment) is posted
142 Mir.Localizer.OpenPosting.ContentProducers= media.new;articles.changed;startpage.generate;synchronization.run
143 Mir.Localizer.OpenPosting.CommentProducers= articles.changed;synchronization.run
145 # Which producers need to be called after the "produce all new" link is clicked from admin
146 Mir.Localizer.Producer.ProducerRecipes=
147 allnew = media.new;articles.changed;startpage.run;synchronization.run
150 #use rsync to mirror the website to a remote-host
152 Rsync.Script.Path=/var/www/bin/rsync-copy
154 # the maximum allowed size of an uploaded media file in KB.
155 MaxMediaUploadSize=20000
157 # the maximum number of allowed media items to upload at once.
158 ServletModule.OpenIndy.MaxMediaUploadItems=20
160 # the default number of media items to upload at once
161 ServletModule.OpenIndy.DefaultMediaUploadItems=1
169 # the url of the static site
170 Producer.ProductionHost=http://indy.code-fu.de
172 # the url of the public site
173 Producer.PublicationHost=http://indy.code-fu.de
175 # Produrce.StorageRoot is the directory, in which
176 # the generated HTML pages will be stored
177 Producer.StorageRoot=/pub/Dokumente/Indymedia/de-tech/Mir/produced
180 # a list of directories to edit
182 # <name>:<path>:<file filter>:<0|1 (recursion off or on)> [, ....]
184 ServletModule.FileEdit.Configuration= \
185 includes:/pub/Dokumente/Indymedia/de-tech/Mir/produced/inc:.*\\.inc:1
189 # DYNAMIC SITE CONFIG
192 # the url of the openposting-servlet
193 Producer.OpenAction=http://indy.code-fu.de/Mir/servlet/OpenMir
195 # use this property if the pages are not produced under the docRoot
196 # of the webserver. all links in the produced pages are prepended
197 # with Producer.DocRoot
200 Producer.ActionServlet=/servlet/Mir
202 # this is the name of the subdirectory where the image-dir
204 Producer.ImageRoot=/img
207 # the url of the video-server
208 Producer.Video.Host=http://indy.code-fu.de/video
210 # the url of the audio-server
211 Producer.Audio.Host=http://indy.code-fu.de/audio
213 # the url of the image-server
214 Producer.Image.Host=http://indy.code-fu.de/images
216 # the url of the media-server
217 Producer.Media.Host=http://indy.code-fu.de/media
219 # the url of the real-media-server
220 Producer.RealMedia.Host=rtsp://some.media.server/somedir/
223 # image specific storage directories
224 # absolute directory, where the images are saved
225 Producer.Image.Path=/pub/Dokumente/Indymedia/de-tech/Mir/produced/images/
227 # images will be scaled down so that the size (both widht and height) are below:
228 Producer.Image.MaxSize = 640
230 # icons will be generated so that the size (both width and height) are below:
231 Producer.Image.MaxIconSize = 120
233 # descaling will only occur if at least the following percentage of either
234 # the width or the height needs to be removed:
235 Producer.Image.MinDescalePercentage=10
237 # descaling will only occur if at least the following number of pixels needs
238 # to be removed from either the width or the height:
239 Producer.Image.MinDescaleReduction=10
242 # media specific storage directories
243 # absolute directory, where the media files are saved
244 Producer.Media.Path=/pub/Dokumente/Indymedia/de-tech/Mir/produced/media
246 # absolute directory, where the realmedia data files(ra and rm) are saved
247 # the ram files which point to the RealMedia.Host get saved in the regular Media dir
248 # this should make rsyncing to a separate streaming server much easier
249 Producer.RealMedia.Path=/pub/Dokumente/rtsp
251 # relativ directory, where the thumbnails will be saved
252 Producer.Image.IconPath=/icon
254 # Tiny Icons for the media types on the newswire summary.
255 # (right hand side of start page)
256 Producer.Icon.TinyImage=photo_small.gif
257 Producer.Icon.TinyAudio=audio_small.gif
258 Producer.Icon.TinyVideo=video_small.gif
259 Producer.Icon.TinyText=text_small.gif
261 #Medium sized icons used at various places
262 Producer.Icon.BigImage=photo_big.gif
263 Producer.Icon.BigAudio=audio_big.gif
264 Producer.Icon.BigVideo=video_big.gif
265 Producer.Icon.BigText=text_big.gif
267 #the style sheet used to turn html into xsl:fo
268 Producer.HTML2FOStyleSheet=/some/dir/mir/etc/producer/html2fo.xsl
270 # the following lines are used to construct PDFs on the fly from one or more articles
271 # for the moment, if you want to change anything else about your pdfs, you
272 # will have to learn some java!
274 # keep in mind that there may not be enough room for all the text you enter as the
275 # value of one these options, if text doesn't appear, the only easy thing to do is
278 # also, be sure to adjust the corresponding line height if you change a font size...
279 # this may require some trial and error to get right
281 # Available font families are helvetica, courier, and times
285 # an image which will appear at the top of the first page
288 PDF.Header.ImageHeight=0
290 #PDF.Header.Image=/home/john/mir/web/img/pdfbanner.png
291 #PDF.Header.ImageHeight=70
293 # a single line of big text which will appear at the top of the first page of all generated pdfs
294 # if you set the String to nothing, this will be skipped
296 PDF.Title.String=INDYMEDIA SOMEWHERE
297 PDF.Title.FontSize=24
298 PDF.Title.LineHeight=28
299 PDF.Title.FontFamily=courier
301 # footer is about two lines of small text which will appear at the bottom of every page
303 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.
305 PDF.Footer.FontSize=12
306 PDF.Footer.FontFamily=helvetica
308 # how to format the index, i.e. the newsletter table of contents
310 PDF.Index.FontSize=12
311 PDF.Index.LineHeight=16
312 PDF.Index.FontFamily=helvetica
314 # how to format the meta-data, i.e. title, author, date
318 PDF.Meta.FontFamily=helvetica
319 RDF.Meta.DateFormat=yyyy-MM-dd HH:mm
321 # how to format the article description
323 PDF.Description.FontSize=12
324 PDF.Description.LineHeight=16
325 PDF.Description.FontFamily=helvetica
327 # how to format the article content
329 PDF.Content.FontSize=10
330 PDF.Content.LineHeight=16
331 PDF.Content.FontFamily=helvetica
333 # the formatting for images in gallery mode
335 PDF.BigImageCaption.FontSize=16
336 PDF.BigImageCaption.FontFamily=helvetica
338 # the formatting for the article source
340 PDF.Source.FontSize=12
341 PDF.Source.LineHeight=16
342 PDF.Source.FontFamily=courier
348 # the size paper your target audience will likely have in their printers. pick one of A4 or LETTER
353 # the number of Objects which can fit in your MRUCache
355 Global.Cache.Items=15
358 # edit with caution below this line
359 ######################################################################
368 Database.poolResetTime=1.0
369 Database.PoolLog=log/pool.log
371 Database.Username=postgres
373 Database.Host=localhost
376 Database.Driver=org.postgresql.Driver
380 # Servlet / Module configurations
383 # don't change this unless you really know your i18n.
384 # The default encoding charset used in the written html files as well
385 # as the dynamic output html.
386 # also used for the HTML charset meta tag.
387 Mir.DefaultEncoding=UTF8
389 # this encoding is used for the HTML charset meta tag.
390 # it must be the html charset equivalent of the Java encoding above
391 # don't change this unless...
392 Mir.DefaultHTMLCharset=UTF-8
394 # Default timezone to display times in in admin, producers
395 Mir.DefaultTimezone= UTC
397 # Default date/time format
398 Mir.DefaultDateTimeFormat = yyyy-MM-dd HH:mm
403 Localizer.OpenSession.article.EditTemplate = editarticle.template
404 Localizer.OpenSession.article.DupeTemplate = dupearticle.template
405 Localizer.OpenSession.article.DoneTemplate = donearticle.template
406 Localizer.OpenSession.article.UnsupportedMediaTemplate = unsupportedmediatype.template
407 Localizer.OpenSession.article.DefaultArticleType=newswire
408 Localizer.OpenSession.article.DefaultMediaFolder=openposting
410 Localizer.OpenSession.comment.EditTemplate = editcomment.template
411 Localizer.OpenSession.comment.DupeTemplate = dupecomment.template
412 Localizer.OpenSession.comment.DoneTemplate = donecomment.template
413 Localizer.OpenSession.comment.UnsupportedMediaTemplate = unsupportedmediatype.template
414 Localizer.OpenSession.comment.DefaultCommentStatus=normal
415 Localizer.OpenSession.comment.DefaultMediaFolder=openposting
416 Localizer.OpenSession.ErrorTemplate = sessionerror.template
418 Localizer.OpenSession.email.PrepareTemplate = preparemail.template
419 Localizer.OpenSession.email.MailTemplate = email_article.template
420 Localizer.OpenSession.email.DoneTemplate =/sent_mail.template
425 # config used for OpenIndy
427 ServletModule.OpenIndy.CommentTemplate=comment.template
428 ServletModule.OpenIndy.CommentDoneTemplate=comment_done.template
429 ServletModule.OpenIndy.CommentDupeTemplate=comment_dupe.template
430 ServletModule.OpenIndy.PostingTemplate=posting.template
431 ServletModule.OpenIndy.PostingDoneTemplate=posting_done.template
432 ServletModule.OpenIndy.PostingDupeTemplate=posting_dupe.template
433 ServletModule.OpenIndy.PostingDisabledTemplate=posting_disabled.template
434 ServletModule.OpenIndy.SearchResultsTemplate=search_results.template
435 ServletModule.OpenIndy.PrepareMailTemplate=prepare_mail.template
436 ServletModule.OpenIndy.SentMailTemplate=sent_mail.template
437 ServletModule.OpenIndy.MailableArticleTemplate=email_article.template
438 ServletModule.OpenIndy.EmailIsFrom=mailer@somewhere.org
439 ServletModule.OpenIndy.SMTPServer=localhost
440 ServletModule.OpenIndy.ErrorTemplate=error.template
441 ServletModule.OpenIndy.UserErrorTemplate=usererror.template
445 Mir.TemplateDir=templates/admin/
447 Mir.LoginTemplate=login.template
448 Mir.StartTemplate=start_admin.template
450 Mir.ErrorTemplate=error.template
451 Mir.UserErrorTemplate=usererror.template
453 ServletModule.Default.ListSize = 30
455 ServletModule.Topics.DeleteConfirmationTemplate=confirm.template
456 ServletModule.Topics.EditTemplate=topic.template
457 ServletModule.Topics.ListTemplate=topiclist.template
459 ServletModule.Users.DeleteConfirmationTemplate=confirm.template
460 ServletModule.Users.EditTemplate=user.template
461 ServletModule.Users.ListTemplate=userlist.template
463 ServletModule.Images.DeleteConfirmationTemplate=confirm.template
464 ServletModule.Images.EditTemplate=image.template
465 ServletModule.Images.ListTemplate=imagelist.template
467 ServletModule.Audio.DeleteConfirmationTemplate=confirm.template
468 ServletModule.Audio.EditTemplate=audio.template
469 ServletModule.Audio.ListTemplate=audiolist.template
471 ServletModule.Video.DeleteConfirmationTemplate=confirm.template
472 ServletModule.Video.EditTemplate=video.template
473 ServletModule.Video.ListTemplate=videolist.template
475 ServletModule.OtherMedia.DeleteConfirmationTemplate=confirm.template
476 ServletModule.OtherMedia.EditTemplate=other.template
477 ServletModule.OtherMedia.ListTemplate=medialist.template
479 ServletModule.Content.DeleteConfirmationTemplate=confirm.template
480 ServletModule.Content.EditTemplate=content.template
481 ServletModule.Content.ListTemplate=contentlist.template
483 ServletModule.Mediafolder.DeleteConfirmationTemplate=confirm.template
484 ServletModule.Mediafolder.EditTemplate=mediafolder.template
485 ServletModule.Mediafolder.ListTemplate=mediafolderlist.template
487 ServletModule.Comment.DeleteConfirmationTemplate=confirm.template
488 ServletModule.Comment.EditTemplate=comment.template
489 ServletModule.Comment.ListTemplate=commentlist.template
491 ServletModule.Hidden.ListTemplate=hiddenlist.template
493 ServletModule.Breaking.DeleteConfirmationTemplate=confirm.template
494 ServletModule.Breaking.EditTemplate=breaking.template
495 ServletModule.Breaking.ListTemplate=breakinglist.template
497 ServletModule.FileEdit.DeleteConfirmationTemplate=confirm.template
498 ServletModule.FileEdit.EditTemplate=fileedit.template
499 ServletModule.FileEdit.ListTemplate=fileeditlist.template
501 ServletModule.Message.DeleteConfirmationTemplate=confirm.template
502 ServletModule.Message.EditTemplate=message.template
503 ServletModule.Message.ListTemplate=messagelist.template
505 ServletModule.Language.DeleteConfirmationTemplate=confirm.template
506 ServletModule.Language.EditTemplate=language.template
507 ServletModule.Language.ListTemplate=languagelist.template
509 ServletModule.ArticleType.DeleteConfirmationTemplate=confirm.template
510 ServletModule.ArticleType.EditTemplate=articletype.template
511 ServletModule.ArticleType.ListTemplate=articletypelist.template
513 ServletModule.CommentStatus.DeleteConfirmationTemplate=confirm.template
514 ServletModule.CommentStatus.EditTemplate=commentstatus.template
515 ServletModule.CommentStatus.ListTemplate=commentstatuslist.template
523 ServletModule.Abuse.EditFilter.Template = abuse.filter.template
\r
524 ServletModule.Abuse.ListFilters.Template = abuse.filters.template
\r
525 ServletModule.Abuse.ViewLog.Template = abuse.log.template
\r
526 ServletModule.Abuse.Main.Template = abuse.template
\r
529 # producer-related configs below
532 Producer.ExtLinkName=extlink.gif
533 Producer.IntLinkName=intlink.gif
534 Producer.MailLinkName=maillink.gif