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"
82 aProducerNode.addSubNode(
83 new EntityListProducerNode( "articles", model, "content",
84 "is_published='1' and to_article_type = ${articletype.feature}",
85 "webdb_create desc, date desc", 10, 0,
86 new GeneratingProducerNode(
87 "/producer/bolivia.indymedia.org/featuressyndication.template",
88 "${config.storageRoot}/features.1-0.rdf",
95 logger.printError("BoliviaProducerLocalizer.setupStartPageFactory: Exception "+t.getMessage());
99 protected void setupStaticFactory(CompositeProducerNode aProducerNode) {
100 aProducerNode.clear();
103 aProducerNode.addSubNode(
104 new EntityListProducerNode("languages", model, "language",
106 new EntityEnumeratingProducerNode( "language", model, "language", "", "",
107 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
108 new GeneratingProducerNode(
109 "/producer/bolivia.indymedia.org/navigation.template",
110 "${config.storageRoot}/${language.code}/navigation.inc"
117 catch (Throwable t) {
118 logger.printError("BoliviaProducerLocalizer.setupStaticFactory: Exception "+t.getMessage());
122 protected void setupTopicsFactory(CompositeProducerNode aProducerNode) {
123 aProducerNode.clear();
125 EntityBatchingProducerNode topicArchiveNode = null;
126 ProducerNode topicStartpageNode = null;
131 new EntityBatchingProducerNode( "articles", "batch", model, "content",
132 "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,
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/topic.template",
139 "${config.storageRoot}/${language.code}/${topic.filename}/${topic.filename}${batch.current.identifier}.shtml"
144 new EntityListProducerNode("languages", model, "language",
146 new EntityEnumeratingProducerNode( "language", model, "language", "", "",
147 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
148 new GeneratingProducerNode(
149 "/producer/bolivia.indymedia.org/topicnavigation.template",
150 "${config.storageRoot}/${language.code}/${topic.filename}/${topic.filename}navigation.inc"
156 topicArchiveNode.addVerb("new", 3);
157 topicArchiveNode.addVerb("all", -1);
159 aProducerNode.addSubNode(
160 new EntityEnumeratingProducerNode( "topic", model, "topic", "filename != ''", "",
161 new EntityListProducerNode("topicspecial", model, "content",
162 "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,
168 aProducerNode.addSubNode(
169 new EntityEnumeratingProducerNode( "topic", model, "topic","", "",
170 new EntityListProducerNode("topicspecial", model, "content",
171 "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,
172 new EntityListProducerNode("newswire", model, "content",
173 "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,
174 new EntityListProducerNode("features", model, "content",
175 "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,
176 new EntityListProducerNode("languages", model, "language",
178 new EntityEnumeratingProducerNode( "language", model, "language", "", "",
179 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
180 new GeneratingProducerNode(
181 "/producer/bolivia.indymedia.org/topicstartpage.template",
182 "${config.storageRoot}/${language.code}/${topic.filename}/index.shtml"
195 catch (Throwable t) {
196 logger.printError("BoliviaProducerLocalizer.setupTopicsFactory: Exception "+t.getMessage());
200 protected void setupFactories(Map aFactoriesMap ) {
201 EntityBatchingProducerNode archiveNode = null;
204 super.setupFactories(aFactoriesMap);
208 new EntityBatchingProducerNode( "articles", "batch", model, "content",
209 "is_published='1' and to_article_type = ${articletype.newswire}", "date asc, webdb_create asc", 20, 10, 0,
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/newswire.template",
216 "${config.storageRoot}/${language.code}/newswire/newswire${batch.current.identifier}.shtml"
221 new EntityListProducerNode("languages", model, "language",
223 new EntityEnumeratingProducerNode( "language", model, "language", "", "",
224 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
225 new GeneratingProducerNode(
226 "/producer/bolivia.indymedia.org/newswirenavigation.template",
227 "${config.storageRoot}/${language.code}/newswire/newswirenavigation.inc"
233 archiveNode.addVerb("new", 3);
234 archiveNode.addVerb("all", -1);
236 aFactoriesMap.put( "newswirearchive", new NodedProducerFactory( archiveNode ) );
240 new EntityBatchingProducerNode( "articles", "batch", model, "content",
241 "is_published='1' and to_article_type in (${articletype.feature}, ${articletype.startspecial})", "date asc, webdb_create asc", 20, 10, 0,
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/feature.template",
248 "${config.storageRoot}/${language.code}/feature/feature${batch.current.identifier}.shtml"
253 new EntityListProducerNode("languages", model, "language",
255 new EntityEnumeratingProducerNode( "language", model, "language", "", "",
256 new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
257 new GeneratingProducerNode(
258 "/producer/bolivia.indymedia.org/featurenavigation.template",
259 "${config.storageRoot}/${language.code}/feature/featurenavigation.inc"
265 archiveNode.addVerb("new", 3);
266 archiveNode.addVerb("all", -1);
268 aFactoriesMap.put( "featurearchive", new NodedProducerFactory( archiveNode ) );
271 catch (Throwable t) {
272 logger.printError("BoliviaProducerLocalizer.setupFactories: Exception "+t.getMessage());