1 package mirlocal.indymedia.nl;
5 import mircoders.global.*;
6 import mircoders.localizer.*;
7 import mircoders.localizer.basic.*;
8 import mircoders.producer.*;
9 import mircoders.storage.*;
11 public class IndyNLProducerLocalizer extends MirBasicProducerLocalizer {
13 protected void setupContentFactory(CompositeProducerNode aProducerNode) {
14 EntityEnumeratingProducerNode contentNode = null;
19 new EntityEnumeratingProducerNode( "content", model, "content",
20 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
21 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
22 new GeneratingProducerNode(
23 "/producer/indymedia.nl/trashedcomments.template",
24 "${config.storageRoot}/trashbin/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.trashed.shtml"
30 contentNode.addVerb( "all", "is_published='1' and to_article_type<>${articletype.trashed} and to_article_type<>${articletype.opentrashed} and exists(select * from comment where comment.to_media=content.id and comment.is_published='f')", "" );
31 contentNode.addVerb( "new", "is_published='1' and is_produced='f' and to_article_type<>${articletype.trashed} and to_article_type<>${articletype.opentrashed} and exists(select * from comment where comment.to_media=content.id and comment.is_published='f')", "" );
33 aProducerNode.addSubNode( contentNode );
38 new EntityEnumeratingProducerNode( "content", model, "content",
39 new CompositeProducerNode( new ProducerNode[] {
40 new GeneratingProducerNode(
41 "/producer/indymedia.nl/content.template",
42 "${config.storageRoot}/content/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.inc"
44 new GeneratingProducerNode(
45 "/producer/indymedia.nl/comments.template",
46 "${config.storageRoot}/content/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.comments.inc"
48 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
49 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
50 new CompositeProducerNode( new ProducerNode[] {
51 new GeneratingProducerNode(
52 "/producer/indymedia.nl/article.template",
53 "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml"
55 new FileDateSettingProducerNode(
56 "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml",
62 new ContentMarkingProducerNode( "content" )
66 contentNode.addVerb( "all", "is_published='1' and to_article_type<>${articletype.trashed} and to_article_type<>${articletype.opentrashed} and to_article_type<>${articletype.static}", "webdb_create desc, date desc" );
67 contentNode.addVerb( "new", "is_published='1' and is_produced='f' and to_article_type<>${articletype.trashed} and to_article_type<>${articletype.opentrashed} and to_article_type<>${articletype.static}", "webdb_create desc, date desc" );
69 aProducerNode.addSubNode( contentNode );
71 // openly trashed articles
73 new EntityEnumeratingProducerNode( "content", model, "content",
74 new CompositeProducerNode( new ProducerNode[] {
75 new GeneratingProducerNode(
76 "/producer/indymedia.nl/removed.template",
77 "${config.storageRoot}/content/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.inc"
79 new GeneratingProducerNode(
80 "/producer/indymedia.nl/removed.template",
81 "${config.storageRoot}/content/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.comments.inc"
83 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
84 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
85 new CompositeProducerNode( new ProducerNode[] {
86 new GeneratingProducerNode(
87 "/producer/indymedia.nl/trashed.template",
88 "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml"
90 new FileDateSettingProducerNode(
91 "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml",
94 new ContentMarkingProducerNode( "content" )
98 new ContentMarkingProducerNode( "content" )
101 contentNode.addVerb( "all", "is_published='1' and to_article_type=${articletype.opentrashed}", "" );
102 contentNode.addVerb( "new", "is_published='1' and is_produced='f' and to_article_type=${articletype.opentrashed}", "" );
104 aProducerNode.addSubNode( contentNode );
106 // closedly trashed articles
108 new EntityEnumeratingProducerNode( "content", model, "content",
109 new CompositeProducerNode( new ProducerNode[] {
110 new GeneratingProducerNode(
111 "/producer/indymedia.nl/removed.template",
112 "${config.storageRoot}/content/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.inc"
114 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
115 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
116 new GeneratingProducerNode(
117 "/producer/indymedia.nl/removed.template",
118 "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml"
122 new EntityEnumeratingProducerNode( "language", model, "language", "code = 'nl'", "",
123 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
124 new CompositeProducerNode( new ProducerNode[] {
125 new GeneratingProducerNode(
126 "/producer/indymedia.nl/trashed.template",
127 "${config.storageRoot}/trashbin/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml"
129 new FileDateSettingProducerNode(
130 "${config.storageRoot}/trashbin/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml",
133 new ContentMarkingProducerNode( "content" )
137 new ContentMarkingProducerNode( "content" )
140 contentNode.addVerb( "all", "is_published='1' and to_article_type=${articletype.trashed}", "" );
141 contentNode.addVerb( "new", "is_published='1' and is_produced='f' and to_article_type=${articletype.trashed}", "" );
143 aProducerNode.addSubNode( contentNode );
145 catch (Throwable t) {
146 logger.printError("IndyNLProducerLocalizer.setupContentFactory: Exception "+t.getMessage());
151 protected void setupStartPageFactory(CompositeProducerNode aProducerNode) {
153 aProducerNode.addSubNode(
154 new EntityListProducerNode("newswire", model, "content",
155 "is_published='1' and to_article_type in (${articletype.newswire}, ${articletype.promotednewswire})", "date desc, webdb_create desc", 40, 0,
156 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
157 new CompositeProducerNode( new ProducerNode[] {
158 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
159 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
160 new GeneratingProducerNode(
161 "/producer/indymedia.nl/newswire.template",
162 "${config.storageRoot}/${language.code}/newswire.inc"
166 new EntityListProducerNode("startspecials", model, "content",
167 "is_published='1' and to_article_type = ${articletype.startspecial}", "date desc, webdb_create desc", 10, 0,
168 new EntityListProducerNode("features", model, "content",
169 "is_published='1' and to_article_type in ( ${articletype.feature}, ${articletype.promotednewswire})", "date desc, webdb_create desc", 20, 0,
170 new EntityListProducerNode("breaking", model, "breakingNews",
171 "", "webdb_create desc", 5, 0,
172 new CompositeProducerNode( new ProducerNode[] {
173 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
174 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
175 new GeneratingProducerNode(
176 "/producer/indymedia.nl/features.template",
177 "${config.storageRoot}/${language.code}/features.inc"
181 new EntityEnumeratingProducerNode( "language", model, "language", "code='nl'", "",
182 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
183 new AssignmentProducerNode( "staticinclude", "1",
184 new EvaluatedAssignmentProducerNode( "topinclude", "/producer/indymedia.nl/top.template",
185 new EvaluatedAssignmentProducerNode( "bottominclude", "/producer/indymedia.nl/bottom.template",
186 new EvaluatedAssignmentProducerNode( "navinclude", "/producer/indymedia.nl/nav.template",
187 new EvaluatedAssignmentProducerNode( "newswireinclude", "/producer/indymedia.nl/newswire.template",
188 new EvaluatedAssignmentProducerNode( "featuresinclude", "/producer/indymedia.nl/features.template",
189 new GeneratingProducerNode(
190 "/producer/indymedia.nl/start.template",
191 "${config.storageRoot}/index.html"
206 catch (Throwable t) {
207 logger.printError("IndyNLProducerLocalizer.setupStartPageFactory: Exception "+t.getMessage());
211 protected void setupTopicsFactory(CompositeProducerNode aProducerNode) {
212 EntityBatchingProducerNode topicPageNode = null;
216 new EntityBatchingProducerNode( "articles", "batch", model, "content",
217 "is_published='1' and to_article_type in (${articletype.newswire}, ${articletype.promotednewswire}) and id in (select content_id from content_x_topic where topic_id = ${topic.id})", "webdb_create asc, date asc", 20, 10, 0,
218 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
219 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
220 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
221 new GeneratingProducerNode(
222 "/producer/indymedia.nl/topic.template",
223 "${config.storageRoot}/${language.code}/${topic.filename}/${topic.filename}${batch.current.identifier}.shtml"
228 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
229 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
230 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
231 new GeneratingProducerNode(
232 "/producer/indymedia.nl/topicnavigation.template",
233 "${config.storageRoot}/${language.code}/${topic.filename}/${topic.filename}navigation.inc"
239 topicPageNode.addVerb("all", -1);
240 topicPageNode.addVerb("new", 3);
242 aProducerNode.addSubNode(
243 new EntityEnumeratingProducerNode( "topic", model, "topic","", "",
244 new EntityListProducerNode("topicspecial", model, "content",
245 "is_published='1' and to_article_type = ${articletype.topicspecial} and id in (select content_id from content_x_topic where topic_id = ${topic.id})", "date, webdb_create", 1, 0,
251 catch (Throwable t) {
252 logger.printError("IndyNLProducerLocalizer.setupTopicsFactory Exception "+t.getMessage());
257 protected void setupStaticFactory(CompositeProducerNode aProducerNode) {
259 aProducerNode.addSubNode(
260 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
261 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
262 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
263 new CompositeProducerNode( new ProducerNode[] {
264 new GeneratingProducerNode(
265 "/producer/indymedia.nl/nav.template",
266 "${config.storageRoot}/${language.code}/nav.inc"
268 new GeneratingProducerNode(
269 "/producer/indymedia.nl/top.template",
270 "${config.storageRoot}/${language.code}/top.inc"
272 new GeneratingProducerNode(
273 "/producer/indymedia.nl/bottom.template",
274 "${config.storageRoot}/${language.code}/bottom.inc"
276 new GeneratingProducerNode(
277 "/producer/indymedia.nl/style.template",
278 "${config.storageRoot}/${language.code}/style.css"
280 new GeneratingProducerNode(
281 "/producer/indymedia.nl/style2.template",
282 "${config.storageRoot}/${language.code}/style2.css"
284 new GeneratingProducerNode(
285 "/producer/indymedia.nl/trashtop.template",
286 "${config.storageRoot}/${language.code}/trashtop.inc"
288 new GeneratingProducerNode(
289 "/producer/indymedia.nl/articlepre.template",
290 "${config.storageRoot}/${language.code}/articlepre.shtml"
292 new GeneratingProducerNode(
293 "/producer/indymedia.nl/articlepost.template",
294 "${config.storageRoot}/${language.code}/articlepost.shtml"
296 new AssignmentProducerNode( "staticinclude", "0",
297 new EvaluatedAssignmentProducerNode( "topinclude", "/${language.code}/top.inc",
298 new EvaluatedAssignmentProducerNode( "bottominclude", "/${language.code}/bottom.inc",
299 new EvaluatedAssignmentProducerNode( "navinclude", "/${language.code}/nav.inc",
300 new EvaluatedAssignmentProducerNode( "newswireinclude", "/${language.code}/newswire.inc",
301 new EvaluatedAssignmentProducerNode( "featuresinclude", "/${language.code}/features.inc",
302 new GeneratingProducerNode(
303 "/producer/indymedia.nl/start.template",
304 "${config.storageRoot}/${language.code}/start.shtml"
309 new AssignmentProducerNode( "staticinclude", "0",
310 new EvaluatedAssignmentProducerNode( "topinclude", "/${language.code}/top.inc",
311 new EvaluatedAssignmentProducerNode( "bottominclude", "/${language.code}/bottom.inc",
312 new EvaluatedAssignmentProducerNode( "navinclude", "/${language.code}/nav.inc",
313 new EvaluatedAssignmentProducerNode( "newswireinclude", "/${language.code}/newswire.inc",
314 new EvaluatedAssignmentProducerNode( "featuresinclude", "/try/${language.code}/features.inc",
315 new GeneratingProducerNode(
316 "/producer/indymedia.nl/start.template",
317 "${config.storageRoot}/try/${language.code}/start.shtml"
328 catch (Throwable t) {
329 logger.printError("IndyNLProducerLocalizer.setupStaticFactory Exception "+t.getMessage());
333 protected void setupFactories(Map aFactoriesMap ) {
334 super.setupFactories(aFactoriesMap);
336 ProducerNode node = null;
337 EntityBatchingProducerNode batchingNode = null;
338 EntityEnumeratingProducerNode enumeratingNode = null;
343 new EntityListProducerNode("startspecials", model, "content",
344 "is_published='1' and to_article_type = ${articletype.startspecial}", "date desc, webdb_create desc", 10, 0,
345 new EntityListProducerNode("features", model, "content",
346 "is_published='1' and to_article_type in ( ${articletype.feature}, ${articletype.promotednewswire})", "date desc, webdb_create desc", 20, 0,
347 new EntityListProducerNode("breaking", model, "breakingNews",
348 "", "webdb_create desc", 5, 0,
349 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
350 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
351 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
352 new GeneratingProducerNode(
353 "/producer/indymedia.nl/features.template",
354 "${config.storageRoot}/${language.code}/features.inc"
362 aFactoriesMap.put("features", new NodedProducerFactory( node ) );
364 catch (Throwable t) {
365 logger.printError("IndyNLProducerLocalizer.setupFactories Exception "+t.getMessage());
372 new EntityListProducerNode("features", model, "content",
373 "is_published='1' and to_article_type = 2", "date desc, webdb_create desc", 20, 0,
374 new EntityListProducerNode("breaking", model, "breakingNews",
375 "", "webdb_create desc", 5, 0,
376 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
377 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
378 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
379 new GeneratingProducerNode(
380 "/producer/indymedia.nl/features.template",
381 "${config.storageRoot}/try/${language.code}/features.inc"
388 aFactoriesMap.put("featurestest", new NodedProducerFactory( node ) );
390 catch (Throwable t) {
391 logger.printError("IndyNLProducerLocalizer.setupFactories Exception "+t.getMessage());
397 new EntityBatchingProducerNode( "comments", "batch", model, "comments",
399 "", "id asc", 25, 15, 0,
400 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
401 new EntityEnumeratingProducerNode( "language", model, "language", "code='nl'", "",
402 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
403 new GeneratingProducerNode(
404 "/producer/indymedia.nl/commentsindex.template",
405 "${config.storageRoot}/${language.code}/comments/comments${batch.current.identifier}.shtml"
410 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
411 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
412 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
413 new GeneratingProducerNode(
414 "/producer/indymedia.nl/commentsindexnavigation.template",
415 "${config.storageRoot}/${language.code}/comments/commentsnavigation.inc"
421 batchingNode.addVerb("new", 3);
422 batchingNode.addVerb("all", -1);
424 aFactoriesMap.put("commentsindex", new NodedProducerFactory( batchingNode ));
426 catch (Throwable t) {
427 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
434 new EntityEnumeratingProducerNode( "content", model, "content",
435 new CompositeProducerNode( new ProducerNode[] {
436 new GeneratingProducerNode(
437 "/producer/indymedia.nl/static.template",
438 "${config.storageRoot}/${language.code}/static/${content.edittitle}.shtml"
440 new ContentMarkingProducerNode( "content" )
444 enumeratingNode.addVerb( "all", "is_published='1' and to_article_type=${articletype.static} and to_language in (${language.id}, 0) and edittitle<>'' and not edittitle is null", "" );
445 enumeratingNode.addVerb( "new", "is_published='1' and is_produced='f' and to_article_type=${articletype.static} and to_language in (${language.id}, 0) and edittitle<>'' and not edittitle is null", "" );
447 aFactoriesMap.put("staticarticles", new NodedProducerFactory(
448 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
449 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
455 catch (Throwable t) {
456 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
462 new EntityBatchingProducerNode( "articles", "batch", model, "content",
463 "to_article_type=${articletype.trashed} or exists(select * from comment where comment.to_media=content.id and comment.is_published='f')", "webdb_create asc, date asc", 25, 15, 0,
464 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
465 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
466 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
467 new GeneratingProducerNode(
468 "/producer/indymedia.nl/trashbin.template",
469 "${config.storageRoot}/trashbin/${language.code}/trashbin${batch.current.identifier}.shtml"
474 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
475 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
476 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
477 new GeneratingProducerNode(
478 "/producer/indymedia.nl/trashbinnavigation.template",
479 "${config.storageRoot}/trashbin/${language.code}/trashbinnavigation.inc"
485 batchingNode.addVerb("new", 3);
486 batchingNode.addVerb("all", -1);
488 aFactoriesMap.put("trashbin", new NodedProducerFactory( batchingNode ));
490 catch (Throwable t) {
491 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
498 new EntityBatchingProducerNode( "articles", "batch", model, "content",
499 "is_published='1' and to_article_type = ${articletype.feature}", "webdb_create asc, date asc", 20, 10, 0,
500 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
501 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
502 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
503 new GeneratingProducerNode(
504 "/producer/indymedia.nl/feature.archive.template",
505 "${config.storageRoot}/${language.code}/feature/feature${batch.current.identifier}.shtml"
510 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
511 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
512 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
513 new GeneratingProducerNode(
514 "/producer/indymedia.nl/feature.archive.navigation.template",
515 "${config.storageRoot}/${language.code}/feature/featurenavigation.inc"
521 batchingNode.addVerb("all", -1);
522 batchingNode.addVerb("new", 3);
524 aFactoriesMap.put("featurearchive", new NodedProducerFactory( batchingNode ));
526 catch (Throwable t) {
527 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
532 new EntityBatchingProducerNode( "articles", "batch", model, "content",
533 "is_published='1' and to_article_type in (${articletype.newswire}, ${articletype.promotednewswire})", "webdb_create asc, date asc", 20, 10, 0,
534 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
535 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
536 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
537 new GeneratingProducerNode(
538 "/producer/indymedia.nl/newswire.archive.template",
539 "${config.storageRoot}/${language.code}/newswire/newswire${batch.current.identifier}.shtml"
544 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
545 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
546 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
547 new GeneratingProducerNode(
548 "/producer/indymedia.nl/newswire.archive.navigation.template",
549 "${config.storageRoot}/${language.code}/newswire/newswirenavigation.inc"
555 batchingNode.addVerb("all", -1);
556 batchingNode.addVerb("new", 3);
558 aFactoriesMap.put("newswirearchive", new NodedProducerFactory( batchingNode ));
560 catch (Throwable t) {
561 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
566 new EntityBatchingProducerNode( "articles", "batch", model, "content",
567 "is_published='1' and to_article_type in (${articletype.openposting}, ${articletype.newswire}, ${articletype.promotednewswire})", "webdb_create asc, date asc", 20, 10, 0,
568 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
569 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
570 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
571 new GeneratingProducerNode(
572 "/producer/indymedia.nl/openposting.archive.template",
573 "${config.storageRoot}/${language.code}/openposting/openposting${batch.current.identifier}.shtml"
578 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
579 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
580 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
581 new GeneratingProducerNode(
582 "/producer/indymedia.nl/openposting.archive.navigation.template",
583 "${config.storageRoot}/${language.code}/openposting/openpostingnavigation.inc"
589 batchingNode.addVerb("all", -1);
590 batchingNode.addVerb("new", 3);
592 aFactoriesMap.put("openpostingarchive", new NodedProducerFactory( batchingNode ));
594 catch (Throwable t) {
595 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
600 new EntityListProducerNode( "articles", model, "content",
601 "is_published='1' and to_article_type in (${articletype.feature}, ${articletype.startspecial}, ${articletype.newswire}, ${articletype.promotednewswire})",
602 "(select max(webdb_create) from comment where to_media=content.id and is_published='t') desc", 30, 0,
603 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
604 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
605 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
606 new GeneratingProducerNode(
607 "/producer/indymedia.nl/commentedarticles.template",
608 "${config.storageRoot}/${language.code}/commentedarticles.shtml"
614 aFactoriesMap.put("commentedarticles", new NodedProducerFactory( node ));
616 catch (Throwable t) {
617 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
622 new EntityListProducerNode( "articles", model, "content",
623 "is_published='1' and to_article_type = ${articletype.opentrashed}", "webdb_create desc, date desc", 30, 0,
624 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
625 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
626 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
627 new GeneratingProducerNode(
628 "/producer/indymedia.nl/opentrashbin.template",
629 "${config.storageRoot}/${language.code}/opentrashbin.shtml"
635 aFactoriesMap.put("opentrashbin", new NodedProducerFactory( node ));
637 catch (Throwable t) {
638 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
643 new EntityListProducerNode( "articles", model, "content",
644 "is_published='1' and length(source)>10 and id>5000 and to_article_type in (${articletype.feature}, ${articletype.startspecial}, ${articletype.newswire}, ${articletype.promotednewswire})",
645 "webdb_create desc, date desc", 10, 0,
646 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
647 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('en')", "",
648 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
649 new GeneratingProducerNode(
650 "/producer/indymedia.nl/featuressyndication.template",
651 "${config.storageRoot}/features.1-0.rdf",
658 aFactoriesMap.put("syndication", new NodedProducerFactory( node ));
660 catch (Throwable t) {
661 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
666 new EntityEnumeratingProducerNode( "content", model, "content", "to_article_type = ${articletype.opentrashed} and webdb_create<now()-interval '5 days'", "",
667 new ContentModifyingProducerNode(
670 "${articletype.trashed}"
673 aFactoriesMap.put("trashbinmover", new NodedProducerFactory( node ));
675 catch (Throwable t) {
676 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());