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.*;
10 import mircoders.entity.adapter.*;
12 public class BoliviaProducerLocalizer extends MirBasicProducerLocalizer {
14 protected void setupContentFactory(CompositeProducerFactory aContentFactory) {
16 EntityEnumeratingProducerNode contentNode = null;
20 new EntityEnumeratingProducerNode( "content", DatabaseContent.getInstance(), ContentAdapterDefinition.getInstance(),
21 new CompositeProducerNode( new ProducerNode[] {
22 new EntityEnumeratingProducerNode( "language", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(), "", "",
23 new ResourceBundleProducerNode("lang", "producer_${language.code}",
24 new GeneratingProducerNode(
25 "/producer/bolivia.indymedia.org/article.template",
26 "${config.storageRoot}/${language.code}/articles/${content.date.year}/${content.date.month}/${content.id}.shtml"
36 contentNode.addVerb( "all", "is_published='1'", "" );
37 contentNode.addVerb( "all", "is_published='1' and is_produced='f'", "" );
39 aContentFactory.addFactory( new NodedProducerFactory( contentNode ) );
42 // public EntityEnumeratingProducerNode(String aKey, StorageObject aStorage, EntityAdapterDefinition aDefinition, ProducerNode aSubNode) {
44 // aContentFactory.addFactory(
45 // new ContentProducerFactory(
46 // "producer/content.template",
48 // MirGlobal.getConfigProperty("Producer.StorageRoot") + "/content/${contentyear}/${contentmonth}/${contentid}.inc",
49 // Integer.parseInt(MirGlobal.getConfigProperty("Producer.Content.Batchsize"))));
51 // aContentFactory.addFactory(
52 // new ContentProducerFactory(
53 // "producer/article.template",
55 // MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/${contentyear}/${contentmonth}/${contentid}.shtml",
56 // Integer.parseInt(MirGlobal.getConfigProperty("Producer.Content.Batchsize"))));
59 protected void setupStartPageFactory(CompositeProducerFactory aStartPageFactory) {
60 ProducerNode startPageNode = null;
64 new EntityListProducerNode("features", DatabaseContent.getInstance(), ContentAdapterDefinition.getInstance(),
65 "is_published='1' and to_article_type = 2", "date desc, webdb_create desc", 10,
66 new EntityListProducerNode("newswire", DatabaseContent.getInstance(), ContentAdapterDefinition.getInstance(),
67 "is_published='1' and to_article_type = 1", "date desc, webdb_create desc", 10,
68 new EntityListProducerNode("breaking", DatabaseBreaking.getInstance(), BreakingAdapterDefinition.getInstance(),
69 "", "webdb_create desc", 5,
70 new EntityListProducerNode("languages", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(),
72 new CompositeProducerNode( new ProducerNode[] {
73 new EntityEnumeratingProducerNode( "language", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(), "", "",
74 new ResourceBundleProducerNode("lang", "producer_${language.code}",
75 new GeneratingProducerNode(
76 "/producer/bolivia.indymedia.org/startpage.template",
77 "${config.storageRoot}/${language.code}/index.shtml"
90 aStartPageFactory.addFactory( new NodedProducerFactory( startPageNode ) );
94 aStartPageFactory.addFactory(
95 new TopicStartPageProducerFactory(
96 "producer/citystart.template",
98 MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/start${filename}.shtml",
99 MirGlobal.getConfigIntegerProperty("Producer.StartPage.Items"),
102 aStartPageFactory.addFactory(
103 new TopicStartPageProducerFactory(
104 "producer/newswire.template",
106 MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/newswire${filename}.inc",
108 MirGlobal.getConfigIntegerProperty("Producer.StartPage.Newswire")));
110 aStartPageFactory.addFactory(
111 new StartPageProducerFactory(
112 "producer/start.template",
114 MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/start.shtml",
115 MirGlobal.getConfigIntegerProperty("Producer.StartPage.Items"),
118 aStartPageFactory.addFactory(
119 new StartPageProducerFactory(
120 "producer/newswire.template",
122 MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/newswire.inc",
124 MirGlobal.getConfigIntegerProperty("Producer.StartPage.Newswire")));
129 protected void setupStaticFactory(CompositeProducerFactory aStaticFactory) {
130 aStaticFactory.addFactory(
131 new StaticProducerFactory(
132 "producer/nav.template",
134 MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/nav.inc"));
136 aStaticFactory.addFactory(
137 new StaticProducerFactory(
138 "producer/top.template",
140 MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/top.inc"));
142 aStaticFactory.addFactory(
143 new StaticProducerFactory(
144 "producer/bottom.template",
146 MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/bottom.inc"));
148 aStaticFactory.addFactory(
149 new StaticProducerFactory(
150 "producer/style.template",
152 MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/style.css"));
154 aStaticFactory.addFactory(
155 new StaticProducerFactory(
156 "producer/articlepre.template",
158 MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/articlepre.shtml"));
160 aStaticFactory.addFactory(
161 new StaticProducerFactory(
162 "producer/articlepost.template",
164 MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/articlepost.shtml"));