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 GeneratingProducerNode(
436 "/producer/indymedia.nl/static.template",
437 "${config.storageRoot}/${language.code}/static/${content.edittitle}.shtml"
441 enumeratingNode.addVerb( "all", "is_published='1' and to_article_type=${articletype.static} and to_language=${language.id} and edittitle<>'' and not edittitle is null", "" );
442 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", "" );
444 aFactoriesMap.put("staticarticles", new NodedProducerFactory(
445 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
446 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
452 catch (Throwable t) {
453 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
459 new EntityBatchingProducerNode( "articles", "batch", model, "content",
460 "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,
461 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
462 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
463 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
464 new GeneratingProducerNode(
465 "/producer/indymedia.nl/trashbin.template",
466 "${config.storageRoot}/trashbin/${language.code}/trashbin${batch.current.identifier}.shtml"
471 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
472 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
473 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
474 new GeneratingProducerNode(
475 "/producer/indymedia.nl/trashbinnavigation.template",
476 "${config.storageRoot}/trashbin/${language.code}/trashbinnavigation.inc"
482 batchingNode.addVerb("new", 3);
483 batchingNode.addVerb("all", -1);
485 aFactoriesMap.put("trashbin", new NodedProducerFactory( batchingNode ));
487 catch (Throwable t) {
488 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
495 new EntityBatchingProducerNode( "articles", "batch", model, "content",
496 "is_published='1' and to_article_type = ${articletype.feature}", "webdb_create asc, date asc", 20, 10, 0,
497 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
498 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
499 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
500 new GeneratingProducerNode(
501 "/producer/indymedia.nl/feature.archive.template",
502 "${config.storageRoot}/${language.code}/feature/feature${batch.current.identifier}.shtml"
507 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
508 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
509 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
510 new GeneratingProducerNode(
511 "/producer/indymedia.nl/feature.archive.navigation.template",
512 "${config.storageRoot}/${language.code}/feature/featurenavigation.inc"
518 batchingNode.addVerb("all", -1);
519 batchingNode.addVerb("new", 3);
521 aFactoriesMap.put("featurearchive", new NodedProducerFactory( batchingNode ));
523 catch (Throwable t) {
524 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
529 new EntityBatchingProducerNode( "articles", "batch", model, "content",
530 "is_published='1' and to_article_type in (${articletype.newswire}, ${articletype.promotednewswire})", "webdb_create asc, date asc", 20, 10, 0,
531 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
532 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
533 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
534 new GeneratingProducerNode(
535 "/producer/indymedia.nl/newswire.archive.template",
536 "${config.storageRoot}/${language.code}/newswire/newswire${batch.current.identifier}.shtml"
541 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
542 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
543 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
544 new GeneratingProducerNode(
545 "/producer/indymedia.nl/newswire.archive.navigation.template",
546 "${config.storageRoot}/${language.code}/newswire/newswirenavigation.inc"
552 batchingNode.addVerb("all", -1);
553 batchingNode.addVerb("new", 3);
555 aFactoriesMap.put("newswirearchive", new NodedProducerFactory( batchingNode ));
557 catch (Throwable t) {
558 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
563 new EntityBatchingProducerNode( "articles", "batch", model, "content",
564 "is_published='1' and to_article_type in (${articletype.openposting}, ${articletype.newswire}, ${articletype.promotednewswire})", "webdb_create asc, date asc", 20, 10, 0,
565 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
566 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
567 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
568 new GeneratingProducerNode(
569 "/producer/indymedia.nl/openposting.archive.template",
570 "${config.storageRoot}/${language.code}/openposting/openposting${batch.current.identifier}.shtml"
575 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
576 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
577 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
578 new GeneratingProducerNode(
579 "/producer/indymedia.nl/openposting.archive.navigation.template",
580 "${config.storageRoot}/${language.code}/openposting/openpostingnavigation.inc"
586 batchingNode.addVerb("all", -1);
587 batchingNode.addVerb("new", 3);
589 aFactoriesMap.put("openpostingarchive", new NodedProducerFactory( batchingNode ));
591 catch (Throwable t) {
592 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
597 new EntityListProducerNode( "articles", model, "content",
598 "is_published='1' and to_article_type in (${articletype.feature}, ${articletype.startspecial}, ${articletype.newswire}, ${articletype.promotednewswire})",
599 "(select max(webdb_create) from comment where to_media=content.id and is_published='t') desc", 30, 0,
600 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
601 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
602 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
603 new GeneratingProducerNode(
604 "/producer/indymedia.nl/commentedarticles.template",
605 "${config.storageRoot}/${language.code}/commentedarticles.shtml"
611 aFactoriesMap.put("commentedarticles", new NodedProducerFactory( node ));
613 catch (Throwable t) {
614 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
619 new EntityListProducerNode( "articles", model, "content",
620 "is_published='1' and to_article_type = ${articletype.opentrashed}", "webdb_create desc, date desc", 30, 0,
621 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
622 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('nl', 'en')", "",
623 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
624 new GeneratingProducerNode(
625 "/producer/indymedia.nl/opentrashbin.template",
626 "${config.storageRoot}/${language.code}/opentrashbin.shtml"
632 aFactoriesMap.put("opentrashbin", new NodedProducerFactory( node ));
634 catch (Throwable t) {
635 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
640 new EntityListProducerNode( "articles", model, "content",
641 "is_published='1' and length(source)>10 and id>5000 and to_article_type in (${articletype.feature}, ${articletype.startspecial}, ${articletype.newswire}, ${articletype.promotednewswire})",
642 "webdb_create desc, date desc", 10, 0,
643 new EntityListProducerNode("languages", model, "language", "code in ('nl', 'en')", "code", 10, 0,
644 new EntityEnumeratingProducerNode( "language", model, "language", "code in ('en')", "",
645 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
646 new GeneratingProducerNode(
647 "/producer/indymedia.nl/featuressyndication.template",
648 "${config.storageRoot}/features.1-0.rdf",
655 aFactoriesMap.put("syndication", new NodedProducerFactory( node ));
657 catch (Throwable t) {
658 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());
663 new EntityEnumeratingProducerNode( "content", model, "content", "to_article_type = ${articletype.opentrashed} and webdb_create<now()-interval '5 days'", "",
664 new ContentModifyingProducerNode(
667 "${articletype.trashed}"
670 aFactoriesMap.put("trashbinmover", new NodedProducerFactory( node ));
672 catch (Throwable t) {
673 logger.printError("IndyNLProducerLocalizer.setupFactories: Exception "+t.getMessage());