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" ),
63 new ScriptCallingProducerNode("/home/www-data/bin/addarticle \"http://prod.indymedia.nl/nl/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml\"")
67 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" );
68 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" );
70 aProducerNode.addSubNode( contentNode );
71 aProducerNode.addSubNode( new ScriptCallingProducerNode("/home/www-data/bin/postproduce") );
74 // openly trashed articles
76 new EntityEnumeratingProducerNode( "content", model, "content",
77 new CompositeProducerNode( new ProducerNode[] {
78 new GeneratingProducerNode(
79 "/producer/indymedia.nl/removed.template",
80 "${config.storageRoot}/content/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.inc"
82 new GeneratingProducerNode(
83 "/producer/indymedia.nl/removed.template",
84 "${config.storageRoot}/content/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.comments.inc"
86 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
87 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
88 new CompositeProducerNode( new ProducerNode[] {
89 new GeneratingProducerNode(
90 "/producer/indymedia.nl/trashed.template",
91 "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml"
93 new FileDateSettingProducerNode(
94 "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml",
97 new ContentMarkingProducerNode( "content" )
101 new ContentMarkingProducerNode( "content" )
104 contentNode.addVerb( "all", "is_published='1' and to_article_type=${articletype.opentrashed}", "" );
105 contentNode.addVerb( "new", "is_published='1' and is_produced='f' and to_article_type=${articletype.opentrashed}", "" );
107 aProducerNode.addSubNode( contentNode );
109 // closedly trashed articles
111 new EntityEnumeratingProducerNode( "content", model, "content",
112 new CompositeProducerNode( new ProducerNode[] {
113 new GeneratingProducerNode(
114 "/producer/indymedia.nl/removed.template",
115 "${config.storageRoot}/content/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.inc"
117 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
118 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
119 new GeneratingProducerNode(
120 "/producer/indymedia.nl/removed.template",
121 "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml"
125 new EntityEnumeratingProducerNode( "language", model, "language", "code = 'nl'", "",
126 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
127 new CompositeProducerNode( new ProducerNode[] {
128 new GeneratingProducerNode(
129 "/producer/indymedia.nl/trashed.template",
130 "${config.storageRoot}/trashbin/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml"
132 new FileDateSettingProducerNode(
133 "${config.storageRoot}/trashbin/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml",
136 new ContentMarkingProducerNode( "content" )
140 new ContentMarkingProducerNode( "content" )
143 contentNode.addVerb( "all", "is_published='1' and to_article_type=${articletype.trashed}", "" );
144 contentNode.addVerb( "new", "is_published='1' and is_produced='f' and to_article_type=${articletype.trashed}", "" );
146 aProducerNode.addSubNode( contentNode );
148 catch (Throwable t) {
149 logger.printError("IndyNLProducerLocalizer.setupContentFactory: Exception "+t.getMessage());
154 protected void setupStartPageFactory(CompositeProducerNode aProducerNode) {
156 aProducerNode.addSubNode(
157 new EntityListProducerNode("newswire", model, "content",
158 "is_published='1' and to_article_type in (${articletype.newswire}, ${articletype.promotednewswire})", "date desc, webdb_create desc", 40, 0,
159 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
160 new CompositeProducerNode( new ProducerNode[] {
161 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
162 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
163 new GeneratingProducerNode(
164 "/producer/indymedia.nl/newswire.template",
165 "${config.storageRoot}/${language.code}/newswire.inc"
169 new EntityListProducerNode("startspecials", model, "content",
170 "is_published='1' and to_article_type = ${articletype.startspecial}", "date desc, webdb_create desc", 10, 0,
171 new EntityListProducerNode("features", model, "content",
172 "is_published='1' and to_article_type in ( ${articletype.feature}, ${articletype.promotednewswire})", "date desc, webdb_create desc", 20, 0,
173 new EntityListProducerNode("breaking", model, "breakingNews",
174 "", "webdb_create desc", 5, 0,
175 new CompositeProducerNode( new ProducerNode[] {
176 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
177 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
178 new GeneratingProducerNode(
179 "/producer/indymedia.nl/features.template",
180 "${config.storageRoot}/${language.code}/features.inc"
184 new EntityEnumeratingProducerNode( "language", model, "language", "code='nl'", "",
185 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
186 new AssignmentProducerNode( "staticinclude", "1",
187 new EvaluatedAssignmentProducerNode( "topinclude", "/producer/indymedia.nl/top.template",
188 new EvaluatedAssignmentProducerNode( "bottominclude", "/producer/indymedia.nl/bottom.template",
189 new EvaluatedAssignmentProducerNode( "navinclude", "/producer/indymedia.nl/nav.template",
190 new EvaluatedAssignmentProducerNode( "newswireinclude", "/producer/indymedia.nl/newswire.template",
191 new EvaluatedAssignmentProducerNode( "featuresinclude", "/producer/indymedia.nl/features.template",
192 new GeneratingProducerNode(
193 "/producer/indymedia.nl/start.template",
194 "${config.storageRoot}/index.html"
209 catch (Throwable t) {
210 logger.printError("IndyNLProducerLocalizer.setupStartPageFactory: Exception "+t.getMessage());
214 protected void setupTopicsFactory(CompositeProducerNode aProducerNode) {
215 EntityBatchingProducerNode topicPageNode = null;
219 new EntityBatchingProducerNode( "articles", "batch", model, "content",
220 "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,
221 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
222 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
223 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
224 new GeneratingProducerNode(
225 "/producer/indymedia.nl/topic.template",
226 "${config.storageRoot}/${language.code}/${topic.filename}/${topic.filename}${batch.current.identifier}.shtml"
231 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
232 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
233 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
234 new GeneratingProducerNode(
235 "/producer/indymedia.nl/topicnavigation.template",
236 "${config.storageRoot}/${language.code}/${topic.filename}/${topic.filename}navigation.inc"
242 topicPageNode.addVerb("all", -1);
243 topicPageNode.addVerb("new", 3);
245 aProducerNode.addSubNode(
246 new EntityEnumeratingProducerNode( "topic", model, "topic","", "",
247 new EntityListProducerNode("topicspecial", model, "content",
248 "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,
254 catch (Throwable t) {
255 logger.printError("IndyNLProducerLocalizer.setupTopicsFactory Exception "+t.getMessage());
260 protected void setupStaticFactory(CompositeProducerNode aProducerNode) {
262 aProducerNode.addSubNode(
263 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
264 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
265 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
266 new CompositeProducerNode( new ProducerNode[] {
267 new GeneratingProducerNode(
268 "/producer/indymedia.nl/nav.template",
269 "${config.storageRoot}/${language.code}/nav.inc"
271 new GeneratingProducerNode(
272 "/producer/indymedia.nl/top.template",
273 "${config.storageRoot}/${language.code}/top.inc"
275 new GeneratingProducerNode(
276 "/producer/indymedia.nl/bottom.template",
277 "${config.storageRoot}/${language.code}/bottom.inc"
279 new GeneratingProducerNode(
280 "/producer/indymedia.nl/style.template",
281 "${config.storageRoot}/${language.code}/style.css"
283 new GeneratingProducerNode(
284 "/producer/indymedia.nl/style2.template",
285 "${config.storageRoot}/${language.code}/style2.css"
287 new GeneratingProducerNode(
288 "/producer/indymedia.nl/trashtop.template",
289 "${config.storageRoot}/${language.code}/trashtop.inc"
291 new GeneratingProducerNode(
292 "/producer/indymedia.nl/articlepre.template",
293 "${config.storageRoot}/${language.code}/articlepre.shtml"
295 new GeneratingProducerNode(
296 "/producer/indymedia.nl/articlepost.template",
297 "${config.storageRoot}/${language.code}/articlepost.shtml"
299 new AssignmentProducerNode( "staticinclude", "0",
300 new EvaluatedAssignmentProducerNode( "topinclude", "/${language.code}/top.inc",
301 new EvaluatedAssignmentProducerNode( "bottominclude", "/${language.code}/bottom.inc",
302 new EvaluatedAssignmentProducerNode( "navinclude", "/${language.code}/nav.inc",
303 new EvaluatedAssignmentProducerNode( "newswireinclude", "/${language.code}/newswire.inc",
304 new EvaluatedAssignmentProducerNode( "featuresinclude", "/${language.code}/features.inc",
305 new GeneratingProducerNode(
306 "/producer/indymedia.nl/start.template",
307 "${config.storageRoot}/${language.code}/start.shtml"
312 new AssignmentProducerNode( "staticinclude", "0",
313 new EvaluatedAssignmentProducerNode( "topinclude", "/${language.code}/top.inc",
314 new EvaluatedAssignmentProducerNode( "bottominclude", "/${language.code}/bottom.inc",
315 new EvaluatedAssignmentProducerNode( "navinclude", "/${language.code}/nav.inc",
316 new EvaluatedAssignmentProducerNode( "newswireinclude", "/${language.code}/newswire.inc",
317 new EvaluatedAssignmentProducerNode( "featuresinclude", "/try/${language.code}/features.inc",
318 new GeneratingProducerNode(
319 "/producer/indymedia.nl/start.template",
320 "${config.storageRoot}/try/${language.code}/start.shtml"
331 catch (Throwable t) {
332 logger.printError("IndyNLProducerLocalizer.setupStaticFactory Exception "+t.getMessage());
336 protected void setupFactories(Map aFactoriesMap ) {
337 super.setupFactories(aFactoriesMap);
339 ProducerNode node = null;
340 EntityBatchingProducerNode batchingNode = null;
341 EntityEnumeratingProducerNode enumeratingNode = null;
346 new EntityListProducerNode("startspecials", model, "content",
347 "is_published='1' and to_article_type = ${articletype.startspecial}", "date desc, webdb_create desc", 10, 0,
348 new EntityListProducerNode("features", model, "content",
349 "is_published='1' and to_article_type in ( ${articletype.feature}, ${articletype.promotednewswire})", "date desc, webdb_create desc", 20, 0,
350 new EntityListProducerNode("breaking", model, "breakingNews",
351 "", "webdb_create desc", 5, 0,
352 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
353 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
354 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
355 new GeneratingProducerNode(
356 "/producer/indymedia.nl/features.template",
357 "${config.storageRoot}/${language.code}/features.inc"
365 aFactoriesMap.put("features", new NodedProducerFactory( node ) );
367 catch (Throwable t) {
368 logger.printError("IndyNLProducerLocalizer.setupFactories Exception "+t.getMessage());
375 new EntityListProducerNode("features", model, "content",
376 "is_published='1' and to_article_type = 2", "date desc, webdb_create desc", 20, 0,
377 new EntityListProducerNode("breaking", model, "breakingNews",
378 "", "webdb_create desc", 5, 0,
379 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
380 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
381 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
382 new GeneratingProducerNode(
383 "/producer/indymedia.nl/features.template",
384 "${config.storageRoot}/try/${language.code}/features.inc"
391 aFactoriesMap.put("featurestest", new NodedProducerFactory( node ) );
393 catch (Throwable t) {
394 logger.printError("IndyNLProducerLocalizer.setupFactories Exception "+t.getMessage());
400 new EntityBatchingProducerNode( "comments", "batch", model, "comments",
402 "", "id asc", 25, 15, 0,
403 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
404 new EntityEnumeratingProducerNode( "language", model, "language", "code='nl'", "",
405 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
406 new GeneratingProducerNode(
407 "/producer/indymedia.nl/commentsindex.template",
408 "${config.storageRoot}/${language.code}/comments/comments${batch.current.identifier}.shtml"
413 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
414 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
415 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
416 new GeneratingProducerNode(
417 "/producer/indymedia.nl/commentsindexnavigation.template",
418 "${config.storageRoot}/${language.code}/comments/commentsnavigation.inc"
424 batchingNode.addVerb("new", 3);
425 batchingNode.addVerb("all", -1);
427 aFactoriesMap.put("commentsindex", new NodedProducerFactory( batchingNode ));
429 catch (Throwable t) {
430 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
437 new EntityEnumeratingProducerNode( "content", model, "content",
438 new CompositeProducerNode( new ProducerNode[] {
439 new GeneratingProducerNode(
440 "/producer/indymedia.nl/static.template",
441 "${config.storageRoot}/${language.code}/static/${content.edittitle}.shtml"
443 new ContentMarkingProducerNode( "content" )
447 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", "" );
448 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", "" );
450 aFactoriesMap.put("staticarticles", new NodedProducerFactory(
451 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
452 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
458 catch (Throwable t) {
459 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
465 new EntityBatchingProducerNode( "articles", "batch", model, "content",
466 "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,
467 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
468 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
469 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
470 new GeneratingProducerNode(
471 "/producer/indymedia.nl/trashbin.template",
472 "${config.storageRoot}/trashbin/${language.code}/trashbin${batch.current.identifier}.shtml"
477 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
478 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
479 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
480 new GeneratingProducerNode(
481 "/producer/indymedia.nl/trashbinnavigation.template",
482 "${config.storageRoot}/trashbin/${language.code}/trashbinnavigation.inc"
488 batchingNode.addVerb("new", 3);
489 batchingNode.addVerb("all", -1);
491 aFactoriesMap.put("trashbin", new NodedProducerFactory( batchingNode ));
493 catch (Throwable t) {
494 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
501 new EntityBatchingProducerNode( "articles", "batch", model, "content",
502 "is_published='1' and to_article_type = ${articletype.feature}", "webdb_create asc, date asc", 20, 10, 0,
503 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
504 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
505 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
506 new GeneratingProducerNode(
507 "/producer/indymedia.nl/feature.archive.template",
508 "${config.storageRoot}/${language.code}/feature/feature${batch.current.identifier}.shtml"
513 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
514 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
515 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
516 new GeneratingProducerNode(
517 "/producer/indymedia.nl/feature.archive.navigation.template",
518 "${config.storageRoot}/${language.code}/feature/featurenavigation.inc"
524 batchingNode.addVerb("all", -1);
525 batchingNode.addVerb("new", 3);
527 aFactoriesMap.put("featurearchive", new NodedProducerFactory( batchingNode ));
529 catch (Throwable t) {
530 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
535 new EntityBatchingProducerNode( "articles", "batch", model, "content",
536 "is_published='1' and to_article_type in (${articletype.newswire}, ${articletype.promotednewswire})", "webdb_create asc, date asc", 20, 10, 0,
537 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
538 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
539 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
540 new GeneratingProducerNode(
541 "/producer/indymedia.nl/newswire.archive.template",
542 "${config.storageRoot}/${language.code}/newswire/newswire${batch.current.identifier}.shtml"
547 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
548 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
549 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
550 new GeneratingProducerNode(
551 "/producer/indymedia.nl/newswire.archive.navigation.template",
552 "${config.storageRoot}/${language.code}/newswire/newswirenavigation.inc"
558 batchingNode.addVerb("all", -1);
559 batchingNode.addVerb("new", 3);
561 aFactoriesMap.put("newswirearchive", new NodedProducerFactory( batchingNode ));
563 catch (Throwable t) {
564 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
569 new EntityBatchingProducerNode( "articles", "batch", model, "content",
570 "is_published='1' and to_article_type in (${articletype.openposting}, ${articletype.newswire}, ${articletype.promotednewswire})", "webdb_create asc, date asc", 20, 10, 0,
571 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
572 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
573 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
574 new GeneratingProducerNode(
575 "/producer/indymedia.nl/openposting.archive.template",
576 "${config.storageRoot}/${language.code}/openposting/openposting${batch.current.identifier}.shtml"
581 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
582 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
583 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
584 new GeneratingProducerNode(
585 "/producer/indymedia.nl/openposting.archive.navigation.template",
586 "${config.storageRoot}/${language.code}/openposting/openpostingnavigation.inc"
592 batchingNode.addVerb("all", -1);
593 batchingNode.addVerb("new", 3);
595 aFactoriesMap.put("openpostingarchive", new NodedProducerFactory( batchingNode ));
597 catch (Throwable t) {
598 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
603 new EntityListProducerNode( "articles", model, "content",
604 "is_published='1' and to_article_type in (${articletype.feature}, ${articletype.startspecial}, ${articletype.newswire}, ${articletype.promotednewswire})",
605 "(select max(webdb_create) from comment where to_media=content.id and is_published='t') desc", 30, 0,
606 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
607 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
608 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
609 new GeneratingProducerNode(
610 "/producer/indymedia.nl/commentedarticles.template",
611 "${config.storageRoot}/${language.code}/commentedarticles.shtml"
617 aFactoriesMap.put("commentedarticles", new NodedProducerFactory( node ));
619 catch (Throwable t) {
620 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
625 new EntityListProducerNode( "articles", model, "content",
626 "is_published='1' and to_article_type = ${articletype.opentrashed}", "webdb_create desc, date desc", 30, 0,
627 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
628 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
629 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
630 new GeneratingProducerNode(
631 "/producer/indymedia.nl/opentrashbin.template",
632 "${config.storageRoot}/${language.code}/opentrashbin.shtml"
638 aFactoriesMap.put("opentrashbin", new NodedProducerFactory( node ));
640 catch (Throwable t) {
641 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
646 new EntityListProducerNode( "articles", model, "content",
647 "is_published='1' and length(source)>10 and id>5000 and to_article_type in (${articletype.feature}, ${articletype.startspecial}, ${articletype.newswire}, ${articletype.promotednewswire})",
648 "webdb_create desc, date desc", 10, 0,
649 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
650 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('en')", "",
651 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
652 new GeneratingProducerNode(
653 "/producer/indymedia.nl/featuressyndication.template",
654 "${config.storageRoot}/features.1-0.rdf",
661 aFactoriesMap.put("syndication", new NodedProducerFactory( node ));
663 catch (Throwable t) {
664 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
669 new EntityEnumeratingProducerNode( "content", model, "content", "to_article_type = ${articletype.opentrashed} and webdb_create<now()-interval '5 days'", "",
670 new ContentModifyingProducerNode(
673 "${articletype.trashed}"
676 aFactoriesMap.put("trashbinmover", new NodedProducerFactory( node ));
678 catch (Throwable t) {
679 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());