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}/trashed/${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 EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
45 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
46 new CompositeProducerNode( new ProducerNode[] {
47 new GeneratingProducerNode(
48 "/producer/indymedia.nl/article.template",
49 "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml"
51 new FileDateSettingProducerNode(
52 "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml",
58 new ContentMarkingProducerNode( "content" )
62 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" );
63 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" );
65 aProducerNode.addSubNode( contentNode );
67 // openly trashed articles
69 new EntityEnumeratingProducerNode( "content", model, "content",
70 new CompositeProducerNode( new ProducerNode[] {
71 new GeneratingProducerNode(
72 "/producer/indymedia.nl/removed.template",
73 "${config.storageRoot}/content/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.inc"
75 new EntityEnumeratingProducerNode( "language", model, "language", "code = 'nl'", "",
76 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
77 new CompositeProducerNode( new ProducerNode[] {
78 new GeneratingProducerNode(
79 "/producer/indymedia.nl/trashed.template",
80 "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml"
82 new FileDateSettingProducerNode(
83 "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml",
86 new ContentMarkingProducerNode( "content" )
90 new ContentMarkingProducerNode( "content" )
93 contentNode.addVerb( "all", "is_published='1' and to_article_type=${articletype.opentrashed}", "" );
94 contentNode.addVerb( "new", "is_published='1' and is_produced='f' and to_article_type=${articletype.opentrashed}", "" );
96 aProducerNode.addSubNode( contentNode );
98 // closedly trashed articles
100 new EntityEnumeratingProducerNode( "content", model, "content",
101 new CompositeProducerNode( new ProducerNode[] {
102 new GeneratingProducerNode(
103 "/producer/indymedia.nl/removed.template",
104 "${config.storageRoot}/content/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.inc"
106 new EntityEnumeratingProducerNode( "language", model, "language", "code = 'nl'", "",
107 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
108 new CompositeProducerNode( new ProducerNode[] {
109 new GeneratingProducerNode(
110 "/producer/indymedia.nl/removed.template",
111 "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml"
113 new GeneratingProducerNode(
114 "/producer/indymedia.nl/trashed.template",
115 "${config.storageRoot}/trashed/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml"
117 new FileDateSettingProducerNode(
118 "${config.storageRoot}/trashed/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml",
121 new ContentMarkingProducerNode( "content" )
125 new ContentMarkingProducerNode( "content" )
128 contentNode.addVerb( "all", "is_published='1' and to_article_type=${articletype.trashed}", "" );
129 contentNode.addVerb( "new", "is_published='1' and is_produced='f' and to_article_type=${articletype.trashed}", "" );
131 aProducerNode.addSubNode( contentNode );
133 catch (Throwable t) {
134 logger.printError("IndyNLProducerLocalizer.setupContentFactory: Exception "+t.getMessage());
139 protected void setupStartPageFactory(CompositeProducerNode aProducerNode) {
141 aProducerNode.addSubNode(
142 new EntityListProducerNode("newswire", model, "content",
143 "is_published='1' and to_article_type in (${articletype.newswire}, ${articletype.promotednewswire})", "date desc, webdb_create desc", 40, 0,
144 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
145 new CompositeProducerNode( new ProducerNode[] {
146 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
147 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
148 new GeneratingProducerNode(
149 "/producer/indymedia.nl/newswire.template",
150 "${config.storageRoot}/${language.code}/newswire.inc"
154 new EntityListProducerNode("startspecials", model, "content",
155 "is_published='1' and to_article_type = ${articletype.startspecial}", "date desc, webdb_create desc", 10, 0,
156 new EntityListProducerNode("features", model, "content",
157 "is_published='1' and to_article_type in ( ${articletype.feature}, ${articletype.promotednewswire})", "date desc, webdb_create desc", 15, 0,
158 new EntityListProducerNode("breaking", model, "breakingNews",
159 "", "webdb_create desc", 5, 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/features.template",
165 "${config.storageRoot}/${language.code}/features.inc"
169 new EntityEnumeratingProducerNode( "language", model, "language", "code='nl'", "",
170 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
171 new AssignmentProducerNode( "staticinclude", "1",
172 new EvaluatedAssignmentProducerNode( "topinclude", "/producer/indymedia.nl/top.template",
173 new EvaluatedAssignmentProducerNode( "bottominclude", "/producer/indymedia.nl/bottom.template",
174 new EvaluatedAssignmentProducerNode( "navinclude", "/producer/indymedia.nl/nav.template",
175 new EvaluatedAssignmentProducerNode( "newswireinclude", "/producer/indymedia.nl/newswire.template",
176 new EvaluatedAssignmentProducerNode( "featuresinclude", "/producer/indymedia.nl/features.template",
177 new GeneratingProducerNode(
178 "/producer/indymedia.nl/start.template",
179 "${config.storageRoot}/index.shtml"
194 catch (Throwable t) {
195 logger.printError("IndyNLProducerLocalizer.setupStartPageFactory: Exception "+t.getMessage());
199 protected void setupTopicsFactory(CompositeProducerNode aProducerNode) {
200 EntityBatchingProducerNode topicPageNode = null;
204 new EntityBatchingProducerNode( "articles", "batch", model, "content",
205 "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,
206 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
207 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
208 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
209 new GeneratingProducerNode(
210 "/producer/indymedia.nl/topic.template",
211 "${config.storageRoot}/${language.code}/${topic.filename}/${topic.filename}${batch.current.identifier}.shtml"
216 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
217 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
218 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
219 new GeneratingProducerNode(
220 "/producer/indymedia.nl/topicnavigation.template",
221 "${config.storageRoot}/${language.code}/${topic.filename}/${topic.filename}navigation.inc"
227 topicPageNode.addVerb("all", -1);
228 topicPageNode.addVerb("new", 3);
230 aProducerNode.addSubNode(
231 new EntityEnumeratingProducerNode( "topic", model, "topic","", "",
232 new EntityListProducerNode("topicspecial", model, "content",
233 "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,
239 catch (Throwable t) {
240 logger.printError("IndyNLProducerLocalizer.setupTopicsFactory Exception "+t.getMessage());
245 protected void setupStaticFactory(CompositeProducerNode aProducerNode) {
247 aProducerNode.addSubNode(
248 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
249 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
250 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
251 new CompositeProducerNode( new ProducerNode[] {
252 new GeneratingProducerNode(
253 "/producer/indymedia.nl/nav.template",
254 "${config.storageRoot}/${language.code}/nav.inc"
256 new GeneratingProducerNode(
257 "/producer/indymedia.nl/top.template",
258 "${config.storageRoot}/${language.code}/top.inc"
260 new GeneratingProducerNode(
261 "/producer/indymedia.nl/bottom.template",
262 "${config.storageRoot}/${language.code}/bottom.inc"
264 new GeneratingProducerNode(
265 "/producer/indymedia.nl/style.template",
266 "${config.storageRoot}/${language.code}/style.css"
268 new GeneratingProducerNode(
269 "/producer/indymedia.nl/style2.template",
270 "${config.storageRoot}/${language.code}/style2.css"
272 new GeneratingProducerNode(
273 "/producer/indymedia.nl/trashtop.template",
274 "${config.storageRoot}/${language.code}/trashtop.inc"
276 new GeneratingProducerNode(
277 "/producer/indymedia.nl/articlepre.template",
278 "${config.storageRoot}/${language.code}/articlepre.shtml"
280 new GeneratingProducerNode(
281 "/producer/indymedia.nl/articlepost.template",
282 "${config.storageRoot}/${language.code}/articlepost.shtml"
284 new AssignmentProducerNode( "staticinclude", "0",
285 new EvaluatedAssignmentProducerNode( "topinclude", "/${language.code}/top.inc",
286 new EvaluatedAssignmentProducerNode( "bottominclude", "/${language.code}/bottom.inc",
287 new EvaluatedAssignmentProducerNode( "navinclude", "/${language.code}/nav.inc",
288 new EvaluatedAssignmentProducerNode( "newswireinclude", "/${language.code}/newswire.inc",
289 new EvaluatedAssignmentProducerNode( "featuresinclude", "/${language.code}/features.inc",
290 new GeneratingProducerNode(
291 "/producer/indymedia.nl/start.template",
292 "${config.storageRoot}/${language.code}/start.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", "/try/${language.code}/features.inc",
302 new GeneratingProducerNode(
303 "/producer/indymedia.nl/start.template",
304 "${config.storageRoot}/try/${language.code}/start.shtml"
314 catch (Throwable t) {
315 logger.printError("IndyNLProducerLocalizer.setupStaticFactory Exception "+t.getMessage());
319 protected void setupFactories(Map aFactoriesMap ) {
320 super.setupFactories(aFactoriesMap);
322 ProducerNode node = null;
323 EntityBatchingProducerNode batchingNode = null;
324 EntityEnumeratingProducerNode enumeratingNode = null;
329 new EntityListProducerNode("startspecials", model, "content",
330 "is_published='1' and to_article_type = ${articletype.startspecial}", "date desc, webdb_create desc", 10, 0,
331 new EntityListProducerNode("features", model, "content",
332 "is_published='1' and to_article_type in ( ${articletype.feature}, ${articletype.promotednewswire})", "date desc, webdb_create desc", 20, 0,
333 new EntityListProducerNode("breaking", model, "breakingNews",
334 "", "webdb_create desc", 5, 0,
335 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
336 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
337 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
338 new GeneratingProducerNode(
339 "/producer/indymedia.nl/features.template",
340 "${config.storageRoot}/${language.code}/features.inc"
348 aFactoriesMap.put("features", new NodedProducerFactory( node ) );
350 catch (Throwable t) {
351 logger.printError("IndyNLProducerLocalizer.setupFactories Exception "+t.getMessage());
358 new EntityListProducerNode("features", model, "content",
359 "is_published='1' and to_article_type = 2", "date desc, webdb_create desc", 15, 0,
360 new EntityListProducerNode("breaking", model, "breakingNews",
361 "", "webdb_create desc", 5, 0,
362 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
363 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
364 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
365 new GeneratingProducerNode(
366 "/producer/indymedia.nl/features.template",
367 "${config.storageRoot}/try/${language.code}/features.inc"
374 aFactoriesMap.put("featurestest", new NodedProducerFactory( node ) );
376 catch (Throwable t) {
377 logger.printError("IndyNLProducerLocalizer.setupFactories Exception "+t.getMessage());
383 new EntityBatchingProducerNode( "comments", "batch", model, "comments",
385 "", "id asc", 25, 15, 0,
386 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
387 new EntityEnumeratingProducerNode( "language", model, "language", "code='nl'", "",
388 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
389 new GeneratingProducerNode(
390 "/producer/indymedia.nl/commentsindex.template",
391 "${config.storageRoot}/${language.code}/comments/comments${batch.current.identifier}.shtml"
396 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
397 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
398 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
399 new GeneratingProducerNode(
400 "/producer/indymedia.nl/commentsindexnavigation.template",
401 "${config.storageRoot}/${language.code}/comments/commentsnavigation.inc"
407 batchingNode.addVerb("new", 3);
408 batchingNode.addVerb("all", -1);
410 aFactoriesMap.put("commentsindex", new NodedProducerFactory( batchingNode ));
412 catch (Throwable t) {
413 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
418 new EntityEnumeratingProducerNode( "content", model, "content",
419 new GeneratingProducerNode(
420 "/producer/indymedia.nl/static.template",
421 "${config.storageRoot}/${language.code}/static/${content.edittitle}.shtml"
425 enumeratingNode.addVerb( "all", "is_published='1' and to_article_type=${articletype.static} and to_language=${language.id} and edittitle<>'' and not edittitle is null", "" );
426 enumeratingNode.addVerb( "new", "is_published='1' and is_produced='f' and to_article_type=${articletype.static} and to_language=${language.id} and edittitle<>'' and not edittitle is null", "" );
428 aFactoriesMap.put("staticarticles", new NodedProducerFactory(
429 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
430 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
436 catch (Throwable t) {
437 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
443 new EntityBatchingProducerNode( "articles", "batch", model, "content",
444 "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,
445 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
446 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
447 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
448 new GeneratingProducerNode(
449 "/producer/indymedia.nl/trashbin.template",
450 "${config.storageRoot}/trashbin/${language.code}/trashbin${batch.current.identifier}.shtml"
455 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
456 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
457 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
458 new GeneratingProducerNode(
459 "/producer/indymedia.nl/trashbinnavigation.template",
460 "${config.storageRoot}/trashbin/${language.code}/trashbinnavigation.inc"
466 batchingNode.addVerb("new", 3);
467 batchingNode.addVerb("all", -1);
469 aFactoriesMap.put("trashbin", new NodedProducerFactory( batchingNode ));
471 catch (Throwable t) {
472 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
479 new EntityBatchingProducerNode( "articles", "batch", model, "content",
480 "is_published='1' and to_article_type = ${articletype.feature}", "webdb_create asc, date asc", 20, 10, 0,
481 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
482 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
483 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
484 new GeneratingProducerNode(
485 "/producer/indymedia.nl/feature.archive.template",
486 "${config.storageRoot}/${language.code}/feature/feature${batch.current.identifier}.shtml"
491 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
492 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
493 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
494 new GeneratingProducerNode(
495 "/producer/indymedia.nl/feature.archive.navigation.template",
496 "${config.storageRoot}/${language.code}/feature/featurenavigation.inc"
502 batchingNode.addVerb("all", -1);
503 batchingNode.addVerb("new", 3);
505 aFactoriesMap.put("featurearchive", new NodedProducerFactory( batchingNode ));
507 catch (Throwable t) {
508 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
513 new EntityBatchingProducerNode( "articles", "batch", model, "content",
514 "is_published='1' and to_article_type in (${articletype.newswire}, ${articletype.promotednewswire})", "webdb_create asc, date asc", 20, 10, 0,
515 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
516 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
517 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
518 new GeneratingProducerNode(
519 "/producer/indymedia.nl/newswire.archive.template",
520 "${config.storageRoot}/${language.code}/newswire/newswire${batch.current.identifier}.shtml"
525 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
526 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
527 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
528 new GeneratingProducerNode(
529 "/producer/indymedia.nl/newswire.archive.navigation.template",
530 "${config.storageRoot}/${language.code}/newswire/newswirenavigation.inc"
536 batchingNode.addVerb("all", -1);
537 batchingNode.addVerb("new", 3);
539 aFactoriesMap.put("newswirearchive", new NodedProducerFactory( batchingNode ));
541 catch (Throwable t) {
542 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
547 new EntityBatchingProducerNode( "articles", "batch", model, "content",
548 "is_published='1' and to_article_type in (${articletype.openposting}, ${articletype.newswire}, ${articletype.promotednewswire})", "webdb_create asc, date asc", 20, 10, 0,
549 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
550 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
551 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
552 new GeneratingProducerNode(
553 "/producer/indymedia.nl/openposting.archive.template",
554 "${config.storageRoot}/${language.code}/openposting/openposting${batch.current.identifier}.shtml"
559 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
560 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
561 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
562 new GeneratingProducerNode(
563 "/producer/indymedia.nl/openposting.archive.navigation.template",
564 "${config.storageRoot}/${language.code}/openposting/openpostingnavigation.inc"
570 batchingNode.addVerb("all", -1);
571 batchingNode.addVerb("new", 3);
573 aFactoriesMap.put("openpostingarchive", new NodedProducerFactory( batchingNode ));
575 catch (Throwable t) {
576 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
581 new EntityListProducerNode( "articles", model, "content",
582 "is_published='1' and to_article_type in (${articletype.feature}, ${articletype.startspecial}, ${articletype.newswire}, ${articletype.promotednewswire})",
583 "(select max(webdb_create) from comment where to_media=content.id and is_published='t') desc", 30, 0,
584 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
585 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
586 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
587 new GeneratingProducerNode(
588 "/producer/indymedia.nl/commentedarticles.template",
589 "${config.storageRoot}/${language.code}/commentedarticles.shtml"
595 aFactoriesMap.put("commentedarticles", new NodedProducerFactory( node ));
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 = ${articletype.opentrashed}", "webdb_create desc, date desc", 30, 0,
605 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
606 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
607 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
608 new GeneratingProducerNode(
609 "/producer/indymedia.nl/opentrashbin.template",
610 "${config.storageRoot}/${language.code}/opentrashbin.shtml"
616 aFactoriesMap.put("opentrashbin", new NodedProducerFactory( node ));
618 catch (Throwable t) {
619 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
624 new EntityListProducerNode( "articles", model, "content",
625 "is_published='1' and length(source)>10 and id>5000 and to_article_type in (${articletype.feature}, ${articletype.startspecial}, ${articletype.newswire}, ${articletype.promotednewswire})",
626 "webdb_create desc, date desc", 10, 0,
627 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
628 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('en')", "",
629 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
630 new GeneratingProducerNode(
631 "/producer/indymedia.nl/featuressyndication.template",
632 "${config.storageRoot}/features.1-0.rdf",
639 aFactoriesMap.put("syndication", new NodedProducerFactory( node ));
641 catch (Throwable t) {
642 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
647 new EntityEnumeratingProducerNode( "content", model, "content", "to_article_type = ${articletype.opentrashed} and webdb_create<now()-interval '5 days'", "",
648 new ContentModifyingProducerNode(
651 "${articletype.trashed}"
654 aFactoriesMap.put("trashbinmover", new NodedProducerFactory( node ));
656 catch (Throwable t) {
657 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());