some new files / some changes here and there for localized producers
[mir.git] / source / mircoders / servlet / ServletModuleContent.java
index 85de290..ddc4d7e 100755 (executable)
@@ -46,9 +46,9 @@ public class ServletModuleContent extends ServletModule
 
   private ServletModuleContent() {
     try {
-      theLog = Logfile.getInstance(this.getClass().getName());
+               theLog = Logfile.getInstance(MirConfig.getProp("Home") + MirConfig.getProp("ServletModule.Content.Logfile"));
       templateListString = MirConfig.getProp("ServletModule.Content.ListTemplate");
-      templateOpString = MirConfig.getProp("ServletModule.Content.OpTemplate");
+      //templateOpString = MirConfig.getProp("ServletModule.Content.OpTemplate");
       templateObjektString = MirConfig.getProp("ServletModule.Content.ObjektTemplate");
       templateConfirmString = MirConfig.getProp("ServletModule.Content.ConfirmTemplate");
       mainModule = new ModuleContent(DatabaseContent.getInstance());
@@ -147,7 +147,11 @@ public class ServletModuleContent extends ServletModule
     mergeData.put("is_published", "1");
     String now = StringUtil.date2webdbDate(new GregorianCalendar());
     mergeData.put("date", new SimpleScalar(now));
+    try {
     mergeData.put("themenPopupData", themenModule.getTopicsAsSimpleList());
+    } catch (ModuleException e) {
+      theLog.printError("themenPopupData could not be fetched.");
+    }
     try {
       mergeData.put("articletypePopupData", DatabaseArticleType.getInstance().getPopupData());
     } catch (Exception e) {
@@ -158,7 +162,11 @@ public class ServletModuleContent extends ServletModule
     } catch (Exception e) {
       theLog.printError("language-popup could not be fetched.");
     }
+    try {
     mergeData.put("schwerpunktPopupData", schwerpunktModule.getSchwerpunktAsSimpleList());
+    } catch (ModuleException e) {
+      theLog.printError("schwerpunktPopupData could not be fetched.");
+    }
     mergeData.put("login_user", user);
     deliver(req, res, mergeData, templateObjektString);
   }
@@ -264,6 +272,10 @@ public class ServletModuleContent extends ServletModule
     catch(ModuleException e) {
       theLog.printError("smod content :: attach :: could not get entityContent");
     }
+    catch(StorageObjectException e) {
+      theLog.printError("smod content :: attach :: could not get entityContent");
+    }
+
     _showObject(idParam, req, res);
   }
 
@@ -281,6 +293,10 @@ public class ServletModuleContent extends ServletModule
     catch(ModuleException e) {
       theLog.printError("smod content :: dettach :: could not get entityContent");
     }
+    catch(StorageObjectException e) {
+      theLog.printError("smod content :: dettach :: could not get entityContent");
+    }
+
     _showObject(cidParam, req, res);
   }
 
@@ -295,6 +311,10 @@ public class ServletModuleContent extends ServletModule
     catch(ModuleException e) {
       theLog.printError("smod content :: newswire :: could not get entityContent");
     }
+    catch(StorageObjectException e) {
+      theLog.printError("smod content :: dettach :: could not get entityContent");
+    }
+
     list(req, res);
   }
 
@@ -348,49 +368,31 @@ public class ServletModuleContent extends ServletModule
   private void _showObject(String id, HttpServletRequest req, HttpServletResponse res)
     throws ServletModuleException {
 
+    SimpleHash extraInfo = new SimpleHash();
     try {
       EntityContent entContent=(EntityContent)mainModule.getById(id);
-      SimpleHash mergeData =  HTMLTemplateProcessor.makeSimpleHash(entContent);
-      EntityList topicToContent = DatabaseContentToTopics.getInstance().getTopics(entContent);
-      if (topicToContent!=null && topicToContent.size()>0){
-        theLog.printDebugInfo("topicanzahl: "+topicToContent.size());
-        Entity topics = null;
-        SimpleList topicList = new SimpleList();
-        for(int i=0;i<topicToContent.size();i++){
-          topics = (EntityTopics)topicToContent.elementAt(i);
-          topicList.add(topics.getId());
-        }
-        mergeData.put("to_topic",topicList);
-      }
-      //obsolete, because of psqgl 7.1.x
-      //mergeData.put("content_data", entContent.getContentData());
-      mergeData.put("themenPopupData", themenModule.getTopicsAsSimpleList());
+
+      extraInfo.put("themenPopupData", themenModule.getTopicsAsSimpleList());
       try {
-        mergeData.put("articletypePopupData", DatabaseArticleType.getInstance().getPopupData());
+        extraInfo.put("articletypePopupData",
+                        DatabaseArticleType.getInstance().getPopupData());
       } catch (Exception e) {
         theLog.printError("articletype could not be fetched.");
       }
       try {
-        mergeData.put("languagePopupData", DatabaseLanguage.getInstance().getPopupData());
+        extraInfo.put("languagePopupData", DatabaseLanguage.getInstance().getPopupData());
       } catch (Exception e) {
         theLog.printError("language-popup could not be fetched.");
       }
-      // get the images
-      EntityList currentMedia = DatabaseContentToMedia.getInstance().getMedia(entContent);
-      if (currentMedia!=null && currentMedia.getCount()>=1) {
-        SimpleList mediaList = HTMLTemplateProcessor.makeSimpleList(currentMedia);
-                               mergeData.put("to_media", mediaList);
-      }
 
-
-      mergeData.put("schwerpunktPopupData", schwerpunktModule.getSchwerpunktAsSimpleList());
+      extraInfo.put("schwerpunktPopupData", schwerpunktModule.getSchwerpunktAsSimpleList());
       // hier code um zur liste zurueckzukommen
       String offsetParam, whereParam, orderParam;
-      if ((offsetParam = req.getParameter("offset"))!=null) mergeData.put("offset", offsetParam);
-      if ((whereParam = req.getParameter("where"))!=null) mergeData.put("where", whereParam);
-      if ((orderParam = req.getParameter("order"))!=null) mergeData.put("order", orderParam);
-      mergeData.put("login_user", _getUser(req));
-      deliver(req, res, mergeData, templateObjektString);
+      if ((offsetParam = req.getParameter("offset"))!=null) extraInfo.put("offset", offsetParam);
+      if ((whereParam = req.getParameter("where"))!=null) extraInfo.put("where", whereParam);
+      if ((orderParam = req.getParameter("order"))!=null) extraInfo.put("order", orderParam);
+      extraInfo.put("login_user", _getUser(req));
+      deliver(req, res, entContent, extraInfo, templateObjektString);
     } catch (Exception e) {
       throw new ServletModuleException(e.toString());
     }
@@ -442,8 +444,6 @@ public class ServletModuleContent extends ServletModule
     String              tinyIcon;
     String              iconAlt;
 
-    opList = HTMLTemplateProcessor.makeSimpleList(theList);
-
       for (int i=0; i < theList.size();i++) {
         currentContent = (EntityContent)theList.elementAt(i);
         //fetching/setting the images
@@ -460,15 +460,6 @@ public class ServletModuleContent extends ServletModule
             //must of had a non-existant to_media_type entry..
             //let's save our ass.
             if (mediaType != null) {
-                /*
-                 * grrr. why doesn't getId return an int! if It
-                 * did I could just compare the value of getId and
-                 * pick the biggest one. or is there
-                 * another way around this that I am missing?
-                 * can we make getIdasInt() or can we just have
-                 * another getId() that returns an Int and the VM
-                 * will handle it transparantly? -mh
-                 */
                 try {
                   mediaHandlerName = mediaType.getValue("classname");
                   mediaHandlerClass = Class.forName("mir.media.MediaHandler"+mediaHandlerName);
@@ -506,7 +497,7 @@ public class ServletModuleContent extends ServletModule
 
         try{
           //mediaList = HTMLTemplateProcessor.makeSimpleList(upMediaEntityList);
-          contentHash = (SimpleHash)opList.get(i);
+          contentHash = (SimpleHash)theList.get(i);
           contentHash.put("tiny_icon", imageRoot+"/"+tinyIcon);
           contentHash.put("icon_alt", iconAlt);
         } catch (Exception e){}