added ecuador's localizers
authorzapata <zapata>
Sun, 14 Jul 2002 03:22:34 +0000 (03:22 +0000)
committerzapata <zapata>
Sun, 14 Jul 2002 03:22:34 +0000 (03:22 +0000)
source/mirlocal/ecuador.indymedia.org/EcuadorLocalizer.java [new file with mode: 0755]
source/mirlocal/ecuador.indymedia.org/EcuadorOpenPostingLocalizer.java [new file with mode: 0755]
source/mirlocal/ecuador.indymedia.org/EcuadorProducerAssistantLocalizer.java [new file with mode: 0755]
source/mirlocal/ecuador.indymedia.org/EcuadorProducerLocalizer.java [new file with mode: 0755]

diff --git a/source/mirlocal/ecuador.indymedia.org/EcuadorLocalizer.java b/source/mirlocal/ecuador.indymedia.org/EcuadorLocalizer.java
new file mode 100755 (executable)
index 0000000..072b6b4
--- /dev/null
@@ -0,0 +1,21 @@
+package mirlocal.ecuador.indymedia.org;
+
+import mircoders.localizer.*;
+import mircoders.global.*;
+import mircoders.localizer.basic.*;
+
+public class EcuadorLocalizer extends MirBasicLocalizer {
+
+  public MirProducerLocalizer producers() {
+    return new EcuadorProducerLocalizer();
+  }
+
+  public MirOpenPostingLocalizer openPostings() {
+    return new EcuadorOpenPostingLocalizer();
+  }
+
+  public MirProducerAssistantLocalizer producerAssistant() {
+    return new EcuadorProducerAssistantLocalizer();
+  }
+
+}
\ No newline at end of file
diff --git a/source/mirlocal/ecuador.indymedia.org/EcuadorOpenPostingLocalizer.java b/source/mirlocal/ecuador.indymedia.org/EcuadorOpenPostingLocalizer.java
new file mode 100755 (executable)
index 0000000..e07d562
--- /dev/null
@@ -0,0 +1,20 @@
+package mirlocal.ecuador.indymedia.org;
+
+import mircoders.localizer.*;
+import mircoders.global.*;
+import mircoders.localizer.basic.*;
+
+public class EcuadorOpenPostingLocalizer extends MirBasicOpenPostingLocalizer {
+
+  public void afterContentPosting() {
+    MirGlobal.producerEngine().addJob("media", "new");
+    MirGlobal.producerEngine().addJob("content", "new");
+    MirGlobal.producerEngine().addJob("startpage", "(default)");
+    MirGlobal.producerEngine().addJob("synchronization", "run");
+  }
+
+  public void afterCommentPosting() {
+    MirGlobal.producerEngine().addJob("content", "new");
+    MirGlobal.producerEngine().addJob("synchronization", "run");
+  }
+}
diff --git a/source/mirlocal/ecuador.indymedia.org/EcuadorProducerAssistantLocalizer.java b/source/mirlocal/ecuador.indymedia.org/EcuadorProducerAssistantLocalizer.java
new file mode 100755 (executable)
index 0000000..6ebe6f1
--- /dev/null
@@ -0,0 +1,19 @@
+package mirlocal.ecuador.indymedia.org;
+
+import java.util.*;
+import java.io.*;
+import freemarker.template.utility.*;
+import mir.misc.*;
+import mir.entity.*;
+import mircoders.module.*;
+import mircoders.storage.*;
+import mircoders.localizer.*;
+import mircoders.localizer.basic.*;
+import mircoders.global.*;
+
+public class EcuadorProducerAssistantLocalizer extends MirBasicProducerAssistantLocalizer {
+  public void initializeGenerationValueSet(Map aValueSet) {
+    super.initializeGenerationValueSet(aValueSet);
+  }
+}
+
diff --git a/source/mirlocal/ecuador.indymedia.org/EcuadorProducerLocalizer.java b/source/mirlocal/ecuador.indymedia.org/EcuadorProducerLocalizer.java
new file mode 100755 (executable)
index 0000000..eb2d18f
--- /dev/null
@@ -0,0 +1,229 @@
+package mirlocal.ecuador.indymedia.org;
+
+import java.util.*;
+import mir.producer.*;
+import mircoders.global.*;
+import mircoders.localizer.*;
+import mircoders.localizer.basic.*;
+import mircoders.producer.*;
+import mircoders.storage.*;
+
+public class EcuadorProducerLocalizer extends MirBasicProducerLocalizer {
+
+  protected void setupContentFactory(CompositeProducerNode aProducerNode) {
+    EntityEnumeratingProducerNode contentNode = null;
+    aProducerNode.clear();
+
+    try {
+      contentNode =
+          new EntityEnumeratingProducerNode( "content", model, "content",
+            new CompositeProducerNode( new ProducerNode[] {
+              new EntityEnumeratingProducerNode( "language", model, "language", "", "",
+                new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
+                    new CompositeProducerNode( new ProducerNode[] {
+                      new GeneratingProducerNode(
+                          "/producer/ecuador.indymedia.org/article.template",
+                          "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml"
+                      ),
+                      new ContentMarkingProducerNode( "content" )
+                    } )
+                )
+              ),
+              new ContentMarkingProducerNode( "content")
+            } )
+          );
+    }
+    catch (Throwable t) {
+      logger.printError("EcuadorProducerLocalizer.setupContentFactory: Exception "+t.getMessage());
+    }
+
+    contentNode.addVerb( "new", "is_published='1' and is_produced='f'", "" );
+    contentNode.addVerb( "all", "is_published='1'", "" );
+
+    aProducerNode.addSubNode( contentNode );
+  }
+
+  protected void setupStartPageFactory(CompositeProducerNode aProducerNode) {
+    aProducerNode.clear();
+    try {
+      aProducerNode.addSubNode(
+            new EntityListProducerNode("newswire", model, "content",
+                    "is_published='1' and to_article_type = ${articletype.newswire}", "date desc, webdb_create desc", 40, 0,
+              new EntityListProducerNode("languages", model, "language",
+                            "", "code", 10, 0,
+                new EntityListProducerNode("startspecial", model, "content",
+                          "is_published='1' and to_article_type = ${articletype.startspecial}", "date desc, webdb_create desc", 1, 0,
+                  new EntityListProducerNode("features", model, "content",
+                          "is_published='1' and to_article_type = ${articletype.feature}", "date desc, webdb_create desc", 10, 0,
+                    new EntityListProducerNode("breaking", model, "breakingNews",
+                              "", "webdb_create desc", 5, 0,
+                      new EntityEnumeratingProducerNode( "language", model, "language", "", "",
+                        new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
+                          new GeneratingProducerNode(
+                              "/producer/ecuador.indymedia.org/startpage.template",
+                              "${config.storageRoot}/${language.code}/index.shtml"
+                          )
+                        )
+                      )
+                    )
+                  )
+                )
+              )
+            )
+      );
+    }
+    catch (Throwable t) {
+      logger.printError("EcuadorProducerLocalizer.setupStartPageFactory: Exception "+t.getMessage());
+    }
+  }
+
+  protected void setupStaticFactory(CompositeProducerNode aProducerNode) {
+    aProducerNode.clear();
+
+    try {
+      aProducerNode.addSubNode(
+          new EntityListProducerNode("languages", model, "language",
+                  "", "code", 10, 0,
+            new EntityEnumeratingProducerNode( "language", model, "language", "", "",
+              new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
+                new GeneratingProducerNode(
+                    "/producer/ecuador.indymedia.org/navigation.template",
+                    "${config.storageRoot}/${language.code}/navigation.inc"
+                )
+              )
+            )
+          )
+      );
+    }
+    catch (Throwable t) {
+      logger.printError("EcuadorProducerLocalizer.setupStaticFactory: Exception "+t.getMessage());
+    }
+  }
+
+  protected void setupTopicsFactory(CompositeProducerNode aProducerNode) {
+    aProducerNode.clear();
+
+    EntityBatchingProducerNode topicArchiveNode = null;
+
+    try {
+// topic pages:
+      topicArchiveNode =
+        new EntityBatchingProducerNode( "articles", "batch", model, "content",
+              "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,
+          new EntityListProducerNode("languages", model, "language",
+                  "", "code", 10, 0,
+            new EntityEnumeratingProducerNode( "language", model, "language", "", "",
+              new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
+                new GeneratingProducerNode(
+                    "/producer/ecuador.indymedia.org/topic.template",
+                    "${config.storageRoot}/${language.code}/${topic.filename}/${topic.filename}${batch.current.identifier}.shtml"
+                )
+              )
+            )
+          ),
+          new EntityListProducerNode("languages", model, "language",
+                  "", "code", 10, 0,
+            new EntityEnumeratingProducerNode( "language", model, "language", "", "",
+              new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
+                new GeneratingProducerNode(
+                    "/producer/ecuador.indymedia.org/topicnavigation.template",
+                    "${config.storageRoot}/${language.code}/${topic.filename}/${topic.filename}navigation.inc"
+                )
+              )
+            )
+          )
+        );
+      topicArchiveNode.addVerb("new", 3);
+      topicArchiveNode.addVerb("all", -1);
+
+      aProducerNode.addSubNode(
+          new EntityEnumeratingProducerNode( "topic", model, "topic","", "",
+            new EntityListProducerNode("topicspecial", model, "content",
+                  "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,
+              topicArchiveNode
+            )
+          )
+      );
+
+    }
+    catch (Throwable t) {
+      logger.printError("EcuadorProducerLocalizer.setupTopicsFactory: Exception "+t.getMessage());
+    }
+  }
+
+  protected void setupFactories(Map aFactoriesMap ) {
+    EntityBatchingProducerNode archiveNode = null;
+
+    try {
+      super.setupFactories(aFactoriesMap);
+
+// newswire archive:
+      archiveNode =
+        new EntityBatchingProducerNode( "articles", "batch", model, "content",
+              "is_published='1' and to_article_type = ${articletype.newswire}", "date asc, webdb_create asc", 20, 10, 0,
+          new EntityListProducerNode("languages", model, "language",
+                  "", "code", 10, 0,
+            new EntityEnumeratingProducerNode( "language", model, "language", "", "",
+              new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
+                new GeneratingProducerNode(
+                    "/producer/ecuador.indymedia.org/newswire.template",
+                    "${config.storageRoot}/${language.code}/newswire/newswire${batch.current.identifier}.shtml"
+                )
+              )
+            )
+          ),
+          new EntityListProducerNode("languages", model, "language",
+                  "", "code", 10, 0,
+            new EntityEnumeratingProducerNode( "language", model, "language", "", "",
+              new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
+                new GeneratingProducerNode(
+                    "/producer/ecuador.indymedia.org/newswirenavigation.template",
+                    "${config.storageRoot}/${language.code}/newswire/newswirenavigation.inc"
+                )
+              )
+            )
+          )
+        );
+      archiveNode.addVerb("new", 3);
+      archiveNode.addVerb("all", -1);
+
+      aFactoriesMap.put( "newswirearchive", new NodedProducerFactory( archiveNode ) );
+
+// feature archive:
+      archiveNode =
+        new EntityBatchingProducerNode( "articles", "batch", model, "content",
+              "is_published='1' and to_article_type in (${articletype.feature}, ${articletype.startspecial})", "date asc, webdb_create asc", 20, 10, 0,
+          new EntityListProducerNode("languages", model, "language",
+                  "", "code", 10, 0,
+            new EntityEnumeratingProducerNode( "language", model, "language", "", "",
+              new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
+                new GeneratingProducerNode(
+                    "/producer/ecuador.indymedia.org/feature.template",
+                    "${config.storageRoot}/${language.code}/feature/feature${batch.current.identifier}.shtml"
+                )
+              )
+            )
+          ),
+          new EntityListProducerNode("languages", model, "language",
+                  "", "code", 10, 0,
+            new EntityEnumeratingProducerNode( "language", model, "language", "", "",
+              new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
+                new GeneratingProducerNode(
+                    "/producer/ecuador.indymedia.org/featurenavigation.template",
+                    "${config.storageRoot}/${language.code}/feature/featurenavigation.inc"
+                )
+              )
+            )
+          )
+        );
+      archiveNode.addVerb("new", 3);
+      archiveNode.addVerb("all", -1);
+
+      aFactoriesMap.put( "featurearchive", new NodedProducerFactory( archiveNode ) );
+
+    }
+    catch (Throwable t) {
+      logger.printError("EcuadorProducerLocalizer.setupFactories: Exception "+t.getMessage());
+    }
+  }
+}