added an extensively customizable way of showing topics in articles
[mir.git] / source / default.properties
1 #
2 # Sample config for Mir
3 # by Matthias <mjordan@code-fu.de> 2001-09-12
4 #
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:
12 #
13 # a) general setup
14 # b) static site config
15 # c) dynamic admin site
16 # d) database config
17 #
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.
21 #
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.
24 #
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.
29
30
31 #
32 #
33 # GENERAL SETUP
34 #
35
36 ### mir/imc information
37 Mir.Name=mir.indymedia.org
38 Mir.Shortname=mir
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
45
46 Mir.Version=1.1beta
47 DirectOpenposting=yes
48
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
54
55 # If equal to 1, the IP log can't be used
56 Abuse.DisallowIPLogging=0
57
58 # The time the cookie will remain active in hours
59 #   168 = 1 week
60 Abuse.CookieMaxAge=168
61
62
63 #where to put the lucene index
64 IndexPath=/tmp/index
65
66 TempDir=/tmp
67
68 Log.LogClass = mir.log.log4j.LoggerImpl
69 Log.log4j.ConfigurationFile = etc/log4j.properties
70 Log.Home = log
71
72 Mir.Localizer=mircoders.localizer.basic.MirBasicLocalizer
73
74 # The location of the producer specifiations
75 Mir.Localizer.ProducerConfigFile=etc/producer/producers.xml
76
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
81
82 # The available languages in the login form:
83 Mir.Login.Languages=en;de;fr;nl;es;pt;eu;sv;tr;zh;gz
84
85 # For missing values, the FallbackLanguage is used as default
86 Mir.Admin.FallbackLanguage=en
87
88 # Show who's logged in?
89 Mir.Admin.ShowLoggedinUsers=1
90
91 # Log admin activity?
92 Mir.Admin.LogAdminActivity=0
93
94 # Which usernames have admin priviliges (, seperated usernames)
95 AccessControl.SuperUsers = admin
96
97 # the templates
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/)
101
102 # How should the custom operations (hide etc) in article and comment lists
103 # be presented?
104 # 0 = links, 1 = checkboxes, 2 = a listbox
105 Mir.Localizer.Admin.ListOperationsFlavor=1
106
107
108
109 # How should the topics be presented on the article edit page?
110 #
111 # <key>:<listtype>:<listparameter>:<condition>:<order>
112 # multiple entries can be specified, can be seperated by a ,
113 #
114 # key:
115 #     the bundle key to use for the field label
116 # listtype:
117 #     0 = in a multiselect list box, 1 = checkboxes, 2 = a dropdown listbox
118 # listparameter:
119 #     number of rows for multiselect list box, number of columns for checkboxes
120 # condition:
121 #     what sql condition should the topics of this category be of
122 # order:
123 #     what sql order should the topics be ordered by
124
125 Mir.Localizer.Admin.TopicLists = \
126    content.topic:1:3::title
127
128 # enable deletion of comments/articles?
129 Mir.Localizer.Admin.AllowDeleteComment=1
130 Mir.Localizer.Admin.AllowDeleteArticle=1
131
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
135
136 # enable deletion of comments/articles?
137 Mir.Localizer.Admin.AdministerOperations= \
138    comments:module=Comment&do=list
139
140
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
144
145 # Which producers need to be called after the "produce all new" link is clicked from admin
146 Mir.Localizer.Producer.AllNewProducers= media.new;articles.changed;startpage.run;synchronization.run
147
148
149 #note that you can't make pdf's without making fo's
150 #this is actually now set in producers.xml
151 #but these summarize what is said in there for the benefit of OpenMir
152 GenerateFO=yes
153 GeneratePDF=yes
154
155 #use rsync to mirror the website to a remote-host
156 Rsync=no
157 Rsync.Script.Path=/var/www/bin/rsync-copy
158
159 # the maximum allowed size of an uploaded media file in KB.
160 MaxMediaUploadSize=20000
161
162 # the maximum number of allowed media items to upload at once.
163 ServletModule.OpenIndy.MaxMediaUploadItems=20
164
165 # the default number of media items to upload at once
166 ServletModule.OpenIndy.DefaultMediaUploadItems=1
167
168
169 #
170 #
171 # STATIC SITE CONFIG
172 #
173
174 # the url of the static site
175 Producer.ProductionHost=http://indy.code-fu.de
176
177 # the url of the public site
178 Producer.PublicationHost=http://indy.code-fu.de
179
180 # Produrce.StorageRoot is the directory, in which
181 # the generated HTML pages will be stored
182 Producer.StorageRoot=/pub/Dokumente/Indymedia/de-tech/Mir/produced
183
184 # FileEdit module
185 #   a list of directories to edit
186 #   format: 
187 #      <name>:<path>:<file filter>:<0|1 (recursion off or on)> [, ....]
188
189 ServletModule.FileEdit.Configuration= \
190   includes:/pub/Dokumente/Indymedia/de-tech/Mir/produced/inc:.*\\.inc:1
191
192 #
193 #
194 # DYNAMIC SITE CONFIG
195 #
196
197 # the url of the openposting-servlet
198 Producer.OpenAction=http://indy.code-fu.de/Mir/servlet/OpenMir
199
200 # use this property if the pages are not produced under the docRoot
201 # of the webserver. all links in the produced pages are prepended
202 # with Producer.DocRoot
203 Producer.DocRoot=
204
205 Producer.ActionServlet=/servlet/Mir
206
207 # this is the name of the subdirectory where the image-dir
208 # will be linked to.
209 Producer.ImageRoot=/img
210
211
212 # the url of the video-server
213 Producer.Video.Host=http://indy.code-fu.de/video
214
215 # the url of the audio-server
216 Producer.Audio.Host=http://indy.code-fu.de/audio
217
218 # the url of the image-server
219 Producer.Image.Host=http://indy.code-fu.de/images
220
221 # the url of the media-server
222 Producer.Media.Host=http://indy.code-fu.de/media
223
224 # the url of the real-media-server
225 Producer.RealMedia.Host=rtsp://some.media.server/somedir/
226
227
228 # image specific storage directories
229 # absolute directory, where the images are saved
230 Producer.Image.Path=/pub/Dokumente/Indymedia/de-tech/Mir/produced/images/
231
232 # images will be scaled down so that the size (both widht and height) are below:
233 Producer.Image.MaxSize = 640
234
235 # icons will be generated so that the size (both width and height) are below:
236 Producer.Image.MaxIconSize = 120
237
238 # descaling will only occur if at least the following percentage of either
239 #  the width or the height needs to be removed:
240 Producer.Image.MinDescalePercentage=10
241
242 # descaling will only occur if at least the following number of pixels needs
243 #  to be removed from either the width or the height:
244 Producer.Image.MinDescaleReduction=10
245
246
247 # media specific storage directories
248 # absolute directory, where the media files are saved
249 Producer.Media.Path=/pub/Dokumente/Indymedia/de-tech/Mir/produced/media
250
251 # absolute directory, where the realmedia data files(ra and rm) are saved
252 # the ram files which point to the RealMedia.Host get saved in the regular Media dir
253 # this should make rsyncing to a separate streaming server much easier
254 Producer.RealMedia.Path=/pub/Dokumente/rtsp
255
256 # relativ directory, where the thumbnails will be saved
257 Producer.Image.IconPath=/icon
258
259 # Tiny Icons for the media types on the newswire summary.
260 # (right hand side of start page)
261 Producer.Icon.TinyImage=photo_small.gif
262 Producer.Icon.TinyAudio=audio_small.gif
263 Producer.Icon.TinyVideo=video_small.gif
264 Producer.Icon.TinyText=text_small.gif
265
266 #Medium sized icons used at various places
267 Producer.Icon.BigImage=photo_big.gif
268 Producer.Icon.BigAudio=audio_big.gif
269 Producer.Icon.BigVideo=video_big.gif
270 Producer.Icon.BigText=text_big.gif
271
272 #the style sheet used to turn html into xsl:fo
273 Producer.HTML2FOStyleSheet=/some/dir/mir/etc/producer/html2fo.xsl
274
275 # the following lines are used to construct PDFs on the fly from one or more articles
276 # for the moment, if you want to change anything else about your pdfs, you 
277 # will have to learn some java!
278 #
279 # keep in mind that there may not be enough room for all the text you enter as the 
280 # value of one these options, if text doesn't appear, the only easy thing to do is 
281 # use less text!
282 #
283 # also, be sure to adjust the corresponding line height if you change a font size...
284 # this may require some trial and error to get right
285 #
286 # Available font families are helvetica, courier, and times
287 #
288
289
290 # an image which will appear at the top of the first page
291
292 PDF.Header.Image=
293 PDF.Header.ImageHeight=0
294
295 #PDF.Header.Image=/home/john/mir/web/img/pdfbanner.png
296 #PDF.Header.ImageHeight=70
297
298 # a single line of big text which will appear at the top of the first page of all generated pdfs
299 # if you set the String to nothing, this will be skipped
300
301 PDF.Title.String=INDYMEDIA SOMEWHERE
302 PDF.Title.FontSize=24
303 PDF.Title.LineHeight=28
304 PDF.Title.FontFamily=courier
305
306 # footer is about two lines of small text which will appear at the bottom of every page 
307
308 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.
309 PDF.Footer.Height=54
310 PDF.Footer.FontSize=12
311 PDF.Footer.FontFamily=helvetica 
312
313 # how to format the index, i.e. the newsletter table of contents
314
315 PDF.Index.FontSize=12
316 PDF.Index.LineHeight=16
317 PDF.Index.FontFamily=helvetica
318
319 # how to format the meta-data, i.e. title, author, date
320
321 PDF.Meta.Height=36
322 PDF.Meta.FontSize=14
323 PDF.Meta.FontFamily=helvetica 
324 RDF.Meta.DateFormat=yyyy-MM-dd HH:mm
325
326 # how to format the article description
327
328 PDF.Description.FontSize=12
329 PDF.Description.LineHeight=16
330 PDF.Description.FontFamily=helvetica
331
332 # how to format the article content
333
334 PDF.Content.FontSize=10
335 PDF.Content.LineHeight=16
336 PDF.Content.FontFamily=helvetica
337
338 # the formatting for images in gallery mode
339
340 PDF.BigImageCaption.FontSize=16
341 PDF.BigImageCaption.FontFamily=helvetica
342
343 # the formatting for the article source
344
345 PDF.Source.FontSize=12
346 PDF.Source.LineHeight=16
347 PDF.Source.FontFamily=courier
348
349
350
351
352 #
353 # the size paper your target audience will likely have in their printers.  pick one of A4 or LETTER
354 #
355
356 PDF.PageSize=A4
357
358 # the number of Objects which can fit in your MRUCache
359
360 Global.Cache.Items=15
361
362 #
363 # edit with caution below this line
364 ######################################################################
365
366 #
367 #
368 # DATABASE SETUP
369 #
370
371 Database.poolMin=1
372 Database.poolMax=10
373 Database.poolResetTime=1.0
374 Database.PoolLog=log/pool.log
375 Database.Limit=20
376 Database.Username=postgres
377 Database.Password=
378 Database.Host=localhost
379 Database.Name=Mir
380 Database.Port=5432
381 Database.Driver=org.postgresql.Driver
382
383
384 #
385 # Servlet / Module configurations
386 #
387
388 # don't change this unless you really know your i18n.
389 # The default encoding charset used in the written html files as well
390 # as the dynamic output html.
391 # also used for the HTML charset meta tag.
392 Mir.DefaultEncoding=UTF8
393
394 # this encoding is used for the HTML charset meta tag.
395 # it must be the html charset equivalent of the Java encoding above
396 # don't change this unless...
397 Mir.DefaultHTMLCharset=UTF-8
398
399 # Default timezone to display times in in admin, producers
400 Mir.DefaultTimezone= UTC
401
402 # Default date/time format
403 Mir.DefaultDateTimeFormat = yyyy-MM-dd HH:mm
404
405
406
407
408 Localizer.OpenSession.article.EditTemplate = editarticle.template
409 Localizer.OpenSession.article.DupeTemplate = dupearticle.template
410 Localizer.OpenSession.article.DoneTemplate = donearticle.template
411 Localizer.OpenSession.article.UnsupportedMediaTemplate = unsupportedmediatype.template
412 Localizer.OpenSession.article.DefaultArticleType=newswire
413 Localizer.OpenSession.article.DefaultMediaFolder=openposting
414
415 Localizer.OpenSession.comment.EditTemplate = editcomment.template
416 Localizer.OpenSession.comment.DupeTemplate = dupecomment.template
417 Localizer.OpenSession.comment.DoneTemplate = donecomment.template
418 Localizer.OpenSession.comment.UnsupportedMediaTemplate = unsupportedmediatype.template
419 Localizer.OpenSession.comment.DefaultCommentStatus=normal
420 Localizer.OpenSession.comment.DefaultMediaFolder=openposting
421 Localizer.OpenSession.ErrorTemplate = sessionerror.template
422
423 Localizer.OpenSession.email.PrepareTemplate = preparemail.template
424 Localizer.OpenSession.email.MailTemplate = email_article.template
425 Localizer.OpenSession.email.DoneTemplate =/sent_mail.template
426
427
428
429 #
430 # config used for OpenIndy
431
432 ServletModule.OpenIndy.CommentTemplate=comment.template
433 ServletModule.OpenIndy.CommentDoneTemplate=comment_done.template
434 ServletModule.OpenIndy.CommentDupeTemplate=comment_dupe.template
435 ServletModule.OpenIndy.PostingTemplate=posting.template
436 ServletModule.OpenIndy.PostingDoneTemplate=posting_done.template
437 ServletModule.OpenIndy.PostingDupeTemplate=posting_dupe.template
438 ServletModule.OpenIndy.PostingDisabledTemplate=posting_disabled.template
439 ServletModule.OpenIndy.SearchResultsTemplate=search_results.template
440 ServletModule.OpenIndy.PrepareMailTemplate=prepare_mail.template
441 ServletModule.OpenIndy.SentMailTemplate=sent_mail.template
442 ServletModule.OpenIndy.MailableArticleTemplate=email_article.template
443 ServletModule.OpenIndy.EmailIsFrom=mailer@somewhere.org
444 ServletModule.OpenIndy.SMTPServer=localhost
445 ServletModule.OpenIndy.ErrorTemplate=error.template
446 ServletModule.OpenIndy.UserErrorTemplate=usererror.template
447
448
449
450 Mir.TemplateDir=templates/admin/
451
452 Mir.LoginTemplate=login.template
453 Mir.StartTemplate=start_admin.template
454
455 Mir.ErrorTemplate=error.template
456 Mir.UserErrorTemplate=usererror.template
457
458 ServletModule.Default.ListSize = 30
459
460 ServletModule.Topics.DeleteConfirmationTemplate=confirm.template
461 ServletModule.Topics.EditTemplate=topic.template
462 ServletModule.Topics.ListTemplate=topiclist.template
463
464 ServletModule.Users.DeleteConfirmationTemplate=confirm.template
465 ServletModule.Users.EditTemplate=user.template
466 ServletModule.Users.ListTemplate=userlist.template
467
468 ServletModule.Images.DeleteConfirmationTemplate=confirm.template
469 ServletModule.Images.EditTemplate=image.template
470 ServletModule.Images.ListTemplate=imagelist.template
471
472 ServletModule.Audio.DeleteConfirmationTemplate=confirm.template
473 ServletModule.Audio.EditTemplate=audio.template
474 ServletModule.Audio.ListTemplate=audiolist.template
475
476 ServletModule.Video.DeleteConfirmationTemplate=confirm.template
477 ServletModule.Video.EditTemplate=video.template
478 ServletModule.Video.ListTemplate=videolist.template
479
480 ServletModule.OtherMedia.DeleteConfirmationTemplate=confirm.template
481 ServletModule.OtherMedia.EditTemplate=other.template
482 ServletModule.OtherMedia.ListTemplate=medialist.template
483
484 ServletModule.Content.DeleteConfirmationTemplate=confirm.template
485 ServletModule.Content.EditTemplate=content.template
486 ServletModule.Content.ListTemplate=contentlist.template
487
488 ServletModule.Mediafolder.DeleteConfirmationTemplate=confirm.template
489 ServletModule.Mediafolder.EditTemplate=mediafolder.template
490 ServletModule.Mediafolder.ListTemplate=mediafolderlist.template
491
492 ServletModule.Comment.DeleteConfirmationTemplate=confirm.template
493 ServletModule.Comment.EditTemplate=comment.template
494 ServletModule.Comment.ListTemplate=commentlist.template
495
496 ServletModule.Hidden.ListTemplate=hiddenlist.template
497
498 ServletModule.Breaking.DeleteConfirmationTemplate=confirm.template
499 ServletModule.Breaking.EditTemplate=breaking.template
500 ServletModule.Breaking.ListTemplate=breakinglist.template
501
502 ServletModule.FileEdit.DeleteConfirmationTemplate=confirm.template
503 ServletModule.FileEdit.EditTemplate=fileedit.template
504 ServletModule.FileEdit.ListTemplate=fileeditlist.template
505
506 ServletModule.Message.DeleteConfirmationTemplate=confirm.template
507 ServletModule.Message.EditTemplate=message.template
508 ServletModule.Message.ListTemplate=messagelist.template
509
510 ServletModule.Language.DeleteConfirmationTemplate=confirm.template
511 ServletModule.Language.EditTemplate=language.template
512 ServletModule.Language.ListTemplate=languagelist.template
513
514 ServletModule.ArticleType.DeleteConfirmationTemplate=confirm.template
515 ServletModule.ArticleType.EditTemplate=articletype.template
516 ServletModule.ArticleType.ListTemplate=articletypelist.template
517
518 ServletModule.CommentStatus.DeleteConfirmationTemplate=confirm.template
519 ServletModule.CommentStatus.EditTemplate=commentstatus.template
520 ServletModule.CommentStatus.ListTemplate=commentstatuslist.template
521
522
523
524
525
526 #
527 # config for abuse
528 ServletModule.Abuse.EditFilter.Template = abuse.filter.template\r
529 ServletModule.Abuse.ListFilters.Template = abuse.filters.template\r
530 ServletModule.Abuse.ViewLog.Template = abuse.log.template\r
531 ServletModule.Abuse.Main.Template = abuse.template\r
532
533 #
534 # producer-related configs below
535 #
536
537 Producer.ExtLinkName=extlink.gif
538 Producer.IntLinkName=intlink.gif
539 Producer.MailLinkName=maillink.gif
540