1 package mirlocal.bolivia.indymedia.org;
5 import mircoders.global.*;
6 import mircoders.localizer.*;
7 import mircoders.localizer.basic.*;
8 import mircoders.producer.*;
9 import mircoders.storage.*;
11 public class BoliviaProducerLocalizer extends MirBasicProducerLocalizer {
13 protected void setupContentFactory(CompositeProducerNode aProducerNode) {
14 EntityEnumeratingProducerNode contentNode = null;
15 aProducerNode.clear();
19 new EntityEnumeratingProducerNode( "content", model, "content",
20 new CompositeProducerNode( new ProducerNode[] {
21 new EntityEnumeratingProducerNode( "language", model, "language", "", "",
22 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
23 new CompositeProducerNode( new ProducerNode[] {
24 new GeneratingProducerNode(
25 "/producer/bolivia.indymedia.org/article.template",
26 "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml"
28 new GeneratingProducerNode(
29 "/producer/bolivia.indymedia.org/printablecontent.template",
30 "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.fo"
32 new PDFGeneratingProducerNode(
33 "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.fo",
34 "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.pdf"
36 new ContentMarkingProducerNode( "content" )
40 new ContentMarkingProducerNode( "content")
45 logger.printError("BoliviaProducerLocalizer.setupContentFactory: Exception "+t.getMessage());
48 contentNode.addVerb( "new", "is_published='1' and is_produced='f'", "" );
49 contentNode.addVerb( "all", "is_published='1'", "" );
51 aProducerNode.addSubNode( contentNode );
54 protected void setupStartPageFactory(CompositeProducerNode aProducerNode) {
55 aProducerNode.clear();
57 aProducerNode.addSubNode(
58 new EntityListProducerNode("newswire", model, "content",
59 "is_published='1' and to_article_type = ${articletype.newswire}", "date desc, webdb_create desc", 40, 0,
60 new EntityListProducerNode("languages", model, "language",
62 new EntityListProducerNode("startspecial", model, "content",
63 "is_published='1' and to_article_type = ${articletype.startspecial}", "date desc, webdb_create desc", 1, 0,
64 new EntityListProducerNode("features", model, "content",
65 "is_published='1' and to_article_type = ${articletype.feature}", "date desc, webdb_create desc", 10, 0,
66 new EntityListProducerNode("breaking", model, "breakingNews",
67 "", "webdb_create desc", 5, 0,
68 new EntityEnumeratingProducerNode( "language", model, "language", "", "",
69 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
70 new GeneratingProducerNode(
71 "/producer/bolivia.indymedia.org/startpage.template",
72 "${config.storageRoot}/${language.code}/index.shtml"
84 logger.printError("BoliviaProducerLocalizer.setupStartPageFactory: Exception "+t.getMessage());
88 protected void setupStaticFactory(CompositeProducerNode aProducerNode) {
89 aProducerNode.clear();
92 aProducerNode.addSubNode(
93 new EntityListProducerNode("languages", model, "language",
95 new EntityEnumeratingProducerNode( "language", model, "language", "", "",
96 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
97 new GeneratingProducerNode(
98 "/producer/bolivia.indymedia.org/navigation.template",
99 "${config.storageRoot}/${language.code}/navigation.inc"
106 catch (Throwable t) {
107 logger.printError("BoliviaProducerLocalizer.setupStaticFactory: Exception "+t.getMessage());
111 protected void setupTopicsFactory(CompositeProducerNode aProducerNode) {
112 aProducerNode.clear();
114 EntityBatchingProducerNode topicArchiveNode = null;
115 ProducerNode topicStartpageNode = null;
120 new EntityBatchingProducerNode( "articles", "batch", model, "content",
121 "is_published='1' and to_article_type = ${articletype.newswire} and id in (select content_id from content_x_topic where topic_id = ${topic.id})", "date asc, webdb_create asc", 20, 10, 0,
122 new EntityListProducerNode("languages", model, "language",
124 new EntityEnumeratingProducerNode( "language", model, "language", "", "",
125 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
126 new GeneratingProducerNode(
127 "/producer/bolivia.indymedia.org/topic.template",
128 "${config.storageRoot}/${language.code}/${topic.filename}/${topic.filename}${batch.current.identifier}.shtml"
133 new EntityListProducerNode("languages", model, "language",
135 new EntityEnumeratingProducerNode( "language", model, "language", "", "",
136 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
137 new GeneratingProducerNode(
138 "/producer/bolivia.indymedia.org/topicnavigation.template",
139 "${config.storageRoot}/${language.code}/${topic.filename}/${topic.filename}navigation.inc"
145 topicArchiveNode.addVerb("new", 3);
146 topicArchiveNode.addVerb("all", -1);
148 aProducerNode.addSubNode(
149 new EntityEnumeratingProducerNode( "topic", model, "topic","", "",
150 new EntityListProducerNode("topicspecial", model, "content",
151 "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,
157 aProducerNode.addSubNode(
158 new EntityEnumeratingProducerNode( "topic", model, "topic","", "",
159 new EntityListProducerNode("topicspecial", model, "content",
160 "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,
161 new EntityListProducerNode("newswire", model, "content",
162 "is_published='1' and to_article_type = ${articletype.newswire} and id in (select content_id from content_x_topic where topic_id = ${topic.id})", "date desc, webdb_create desc", 40, 0,
163 new EntityListProducerNode("features", model, "content",
164 "is_published='1' and to_article_type = ${articletype.feature} and id in (select content_id from content_x_topic where topic_id = ${topic.id})", "date desc, webdb_create desc", 10, 0,
165 new EntityListProducerNode("languages", model, "language",
167 new EntityEnumeratingProducerNode( "language", model, "language", "", "",
168 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
169 new GeneratingProducerNode(
170 "/producer/bolivia.indymedia.org/topicstartpage.template",
171 "${config.storageRoot}/${language.code}/${topic.filename}/index.shtml"
184 catch (Throwable t) {
185 logger.printError("BoliviaProducerLocalizer.setupTopicsFactory: Exception "+t.getMessage());
189 protected void setupFactories(Map aFactoriesMap ) {
190 EntityBatchingProducerNode archiveNode = null;
193 super.setupFactories(aFactoriesMap);
197 new EntityBatchingProducerNode( "articles", "batch", model, "content",
198 "is_published='1' and to_article_type = ${articletype.newswire}", "date asc, webdb_create asc", 20, 10, 0,
199 new EntityListProducerNode("languages", model, "language",
201 new EntityEnumeratingProducerNode( "language", model, "language", "", "",
202 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
203 new GeneratingProducerNode(
204 "/producer/bolivia.indymedia.org/newswire.template",
205 "${config.storageRoot}/${language.code}/newswire/newswire${batch.current.identifier}.shtml"
210 new EntityListProducerNode("languages", model, "language",
212 new EntityEnumeratingProducerNode( "language", model, "language", "", "",
213 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
214 new GeneratingProducerNode(
215 "/producer/bolivia.indymedia.org/newswirenavigation.template",
216 "${config.storageRoot}/${language.code}/newswire/newswirenavigation.inc"
222 archiveNode.addVerb("new", 3);
223 archiveNode.addVerb("all", -1);
225 aFactoriesMap.put( "newswirearchive", new NodedProducerFactory( archiveNode ) );
229 new EntityBatchingProducerNode( "articles", "batch", model, "content",
230 "is_published='1' and to_article_type in (${articletype.feature}, ${articletype.startspecial})", "date asc, webdb_create asc", 20, 10, 0,
231 new EntityListProducerNode("languages", model, "language",
233 new EntityEnumeratingProducerNode( "language", model, "language", "", "",
234 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
235 new GeneratingProducerNode(
236 "/producer/bolivia.indymedia.org/feature.template",
237 "${config.storageRoot}/${language.code}/feature/feature${batch.current.identifier}.shtml"
242 new EntityListProducerNode("languages", model, "language",
244 new EntityEnumeratingProducerNode( "language", model, "language", "", "",
245 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
246 new GeneratingProducerNode(
247 "/producer/bolivia.indymedia.org/featurenavigation.template",
248 "${config.storageRoot}/${language.code}/feature/featurenavigation.inc"
254 archiveNode.addVerb("new", 3);
255 archiveNode.addVerb("all", -1);
257 aFactoriesMap.put( "featurearchive", new NodedProducerFactory( archiveNode ) );
260 catch (Throwable t) {
261 logger.printError("BoliviaProducerLocalizer.setupFactories: Exception "+t.getMessage());