bolivian setup seems to work now...
[mir.git] / source / mirlocal / bolivia.indymedia.org / BoliviaProducerLocalizer.java
index 3031c9d..e9b391c 100755 (executable)
@@ -19,18 +19,15 @@ public class BoliviaProducerLocalizer extends MirBasicProducerLocalizer {
       contentNode =
           new EntityEnumeratingProducerNode( "content", DatabaseContent.getInstance(), ContentAdapterDefinition.getInstance(),
             new CompositeProducerNode( new ProducerNode[] {
-              new EntityEnumeratingProducerNode( "city", DatabaseTopics.getInstance(), TopicsAdapterDefinition.getInstance(), "main_url='c' and exists(select * from content_x_topic where content_id=${content.id} and topic_id=id", "",
+              new EntityEnumeratingProducerNode( "city", DatabaseTopics.getInstance(), TopicsAdapterDefinition.getInstance(), "main_url='c' and exists(select * from content_x_topic where content_id=${content.id} and topic_id=id)", "",
                 new EntityEnumeratingProducerNode( "language", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(), "", "",
                   new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
                       new CompositeProducerNode( new ProducerNode[] {
                         new GeneratingProducerNode(
-                            "/producer/bolivia.indymedia.org/article.template",
+                            "/producer/bolivia.indymedia.org/${city.filename}/article.template",
                             "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml"
                         ),
-                        new FileDateSettingProducerNode(
-                            "${config.storageRoot}/${language.code}/${content.date.formatted.yyyy}/${content.date.formatted.MM}/${content.id}.shtml",
-                            "content.webdb_create.raw"
-                        )
+                        new ContentMarkingProducerNode( "content" )
                       } )
                   )
                 )
@@ -40,10 +37,11 @@ public class BoliviaProducerLocalizer extends MirBasicProducerLocalizer {
           );
     }
     catch (Throwable t) {
+      logger.printError("BoliviaProducerLocalizer.setupContentFactory: Exception "+t.getMessage());
     }
 
-    contentNode.addVerb( "all", "is_published='1'", "" );
     contentNode.addVerb( "new", "is_published='1' and is_produced='f'", "" );
+    contentNode.addVerb( "all", "is_published='1'", "" );
 
     aProducerNode.addSubNode( contentNode );
   }
@@ -59,7 +57,7 @@ public class BoliviaProducerLocalizer extends MirBasicProducerLocalizer {
                 new EntityListProducerNode("startspecial", DatabaseContent.getInstance(), ContentAdapterDefinition.getInstance(),
                           "is_published='1' and to_article_type = ${articletype.startspecial}", "date desc, webdb_create desc", 1, 0,
                   new EntityListProducerNode("features", DatabaseContent.getInstance(), ContentAdapterDefinition.getInstance(),
-                          "is_published='1' and to_article_type = ${articletype.feature}", "date desc, webdb_create desc", 10, 0,
+                          "is_published='1' and to_article_type = ${articletype.feature} and id in (select max(content_id) from content_x_topic, topic t where topic_id=t.id and t.archiv_url='c' group by t.id)", "date desc, webdb_create desc", 10, 0,
                     new EntityListProducerNode("breaking", DatabaseBreaking.getInstance(), BreakingAdapterDefinition.getInstance(),
                               "", "webdb_create desc", 5, 0,
                       new EntityEnumeratingProducerNode( "language", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(), "", "",
@@ -93,7 +91,7 @@ public class BoliviaProducerLocalizer extends MirBasicProducerLocalizer {
                       new EntityEnumeratingProducerNode( "language", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(), "", "",
                         new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
                           new GeneratingProducerNode(
-                              "/producer/bolivia.indymedia.org/startpage.template",
+                              "/producer/bolivia.indymedia.org/${city.filename}/startpage.template",
                               "${config.storageRoot}/${city.filename}/${language.code}/index.shtml"
                           )
                         )
@@ -107,6 +105,7 @@ public class BoliviaProducerLocalizer extends MirBasicProducerLocalizer {
       );
     }
     catch (Throwable t) {
+      logger.printError("BoliviaProducerLocalizer.setupStartPageFactory: Exception "+t.getMessage());
     }
   }
 
@@ -127,8 +126,24 @@ public class BoliviaProducerLocalizer extends MirBasicProducerLocalizer {
             )
           )
       );
+      aProducerNode.addSubNode(
+        new EntityEnumeratingProducerNode( "city", DatabaseTopics.getInstance(), TopicsAdapterDefinition.getInstance(), "main_url='c'", "",
+          new EntityListProducerNode("languages", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(),
+                  "", "code", 10, 0,
+            new EntityEnumeratingProducerNode( "language", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(), "", "",
+              new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
+                new GeneratingProducerNode(
+                    "/producer/bolivia.indymedia.org/${city.filename}/navigation.template",
+                    "${config.storageRoot}/${city.filename}/${language.code}/navigation.inc"
+                )
+              )
+            )
+          )
+        )
+      );
     }
     catch (Throwable t) {
+      logger.printError("BoliviaProducerLocalizer.setupStaticFactory: Exception "+t.getMessage());
     }
   }
 
@@ -145,7 +160,7 @@ public class BoliviaProducerLocalizer extends MirBasicProducerLocalizer {
           new EntityListProducerNode("languages", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(),
                   "", "code", 10, 0,
             new EntityEnumeratingProducerNode( "language", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(), "", "",
-              new ResourceBundleProducerNode("lang", "producer_${language.code}",
+              new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
                 new GeneratingProducerNode(
                     "/producer/bolivia.indymedia.org/topic.template",
                     "${config.storageRoot}/${language.code}/${topic.filename}/${topic.filename}${batch.current.identifier}.shtml"
@@ -156,7 +171,7 @@ public class BoliviaProducerLocalizer extends MirBasicProducerLocalizer {
           new EntityListProducerNode("languages", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(),
                   "", "code", 10, 0,
             new EntityEnumeratingProducerNode( "language", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(), "", "",
-              new ResourceBundleProducerNode("lang", "producer_${language.code}",
+              new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
                 new GeneratingProducerNode(
                     "/producer/bolivia.indymedia.org/topicnavigation.template",
                     "${config.storageRoot}/${language.code}/${topic.filename}/${topic.filename}navigation.inc"
@@ -165,11 +180,11 @@ public class BoliviaProducerLocalizer extends MirBasicProducerLocalizer {
             )
           )
         );
-      topicPageNode.addVerb("all", -1);
       topicPageNode.addVerb("new", 3);
+      topicPageNode.addVerb("all", -1);
 
       aProducerNode.addSubNode(
-          new EntityEnumeratingProducerNode( "topic", DatabaseTopics.getInstance(), TopicsAdapterDefinition.getInstance(), "", "",
+          new EntityEnumeratingProducerNode( "topic", DatabaseTopics.getInstance(), TopicsAdapterDefinition.getInstance(), "((main_url is null) or main_url<>'c')", "",
             new EntityListProducerNode("topicspecial", DatabaseContent.getInstance(), ContentAdapterDefinition.getInstance(),
                   "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,
               topicPageNode
@@ -186,10 +201,10 @@ public class BoliviaProducerLocalizer extends MirBasicProducerLocalizer {
           new EntityListProducerNode("languages", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(),
                   "", "code", 10, 0,
             new EntityEnumeratingProducerNode( "language", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(), "", "",
-              new ResourceBundleProducerNode("lang", "producer_${language.code}",
+              new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
                 new GeneratingProducerNode(
-                    "/producer/bolivia.indymedia.org/topic.template",
-                    "${config.storageRoot}/${language.code}/${city.filename}/${topic.filename}/${topic.filename}${batch.current.identifier}.shtml"
+                    "/producer/bolivia.indymedia.org/${city.filename}/topic.template",
+                    "${config.storageRoot}/${city.filename}/${language.code}/${topic.filename}/${topic.filename}${batch.current.identifier}.shtml"
                 )
               )
             )
@@ -197,24 +212,24 @@ public class BoliviaProducerLocalizer extends MirBasicProducerLocalizer {
           new EntityListProducerNode("languages", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(),
                   "", "code", 10, 0,
             new EntityEnumeratingProducerNode( "language", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(), "", "",
-              new ResourceBundleProducerNode("lang", "producer_${language.code}",
+              new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
                 new GeneratingProducerNode(
-                    "/producer/bolivia.indymedia.org/topicnavigation.template",
-                    "${config.storageRoot}/${language.code}/${city.filename}/${topic.filename}/${topic.filename}navigation.inc"
+                    "/producer/bolivia.indymedia.org/${city.filename}/topicnavigation.template",
+                    "${config.storageRoot}/${city.filename}/${language.code}/${topic.filename}/${topic.filename}navigation.inc"
                 )
               )
             )
           )
         );
-      topicPageNode.addVerb("all", -1);
       topicPageNode.addVerb("new", 3);
+      topicPageNode.addVerb("all", -1);
 
       aProducerNode.addSubNode(
           new EntityEnumeratingProducerNode( "city", DatabaseTopics.getInstance(), TopicsAdapterDefinition.getInstance(), "main_url='c'", "",
             new EntityEnumeratingProducerNode( "topic", DatabaseTopics.getInstance(), TopicsAdapterDefinition.getInstance(), "((main_url is null) or main_url<>'c')", "",
               new EntityListProducerNode("topicspecial", DatabaseContent.getInstance(), ContentAdapterDefinition.getInstance(),
                     "is_published='1' and to_article_type = ${articletype.topicspecial} and "+
-                    "id in (select content_id from content_x_topic where topic_id = ${topic.id}) and"+
+                    "id in (select content_id from content_x_topic where topic_id = ${topic.id}) and "+
                     "id in (select content_id from content_x_topic where topic_id = ${city.id})", "date, webdb_create", 1, 0,
                 topicPageNode
               )
@@ -223,6 +238,7 @@ public class BoliviaProducerLocalizer extends MirBasicProducerLocalizer {
       );
     }
     catch (Throwable t) {
+      logger.printError("BoliviaProducerLocalizer.setupTopicsFactory: Exception "+t.getMessage());
     }
 
   }