From 63c8c6347ea8531b6b11dcea7a9e1eadede41c1f Mon Sep 17 00:00:00 2001 From: tob Date: Wed, 6 Feb 2002 00:30:08 +0000 Subject: [PATCH] no message --- source/mircoders/servlet/ServletModuleContent.java | 90 ++++++++++++++++++++++ templates-dist/de/contentlist.template | 4 +- 2 files changed, 93 insertions(+), 1 deletion(-) diff --git a/source/mircoders/servlet/ServletModuleContent.java b/source/mircoders/servlet/ServletModuleContent.java index 9e1a4d44..85de290b 100755 --- a/source/mircoders/servlet/ServletModuleContent.java +++ b/source/mircoders/servlet/ServletModuleContent.java @@ -11,6 +11,7 @@ import javax.servlet.http.*; import freemarker.template.*; import mir.servlet.*; +import mir.media.*; import mir.module.*; import mir.misc.*; import mir.storage.*; @@ -423,6 +424,95 @@ public class ServletModuleContent extends ServletModule if (theList == null || theList.getCount() == 0 || theList.getCount()>1) { SimpleHash modelRoot = HTMLTemplateProcessor.makeSimpleHashWithEntitylistInfos(theList); modelRoot.put("articletypeHash", DatabaseArticleType.getInstance().getHashData()); + + EntityContent currentContent; + EntityList upMediaEntityList; + EntityList imageEntityList; + EntityList currentMediaList; + Entity mediaType; + EntityMedia uploadedMedia; + SimpleList opList; + String imageRoot = MirConfig.getProp("Producer.ImageRoot"); + + SimpleHash contentHash; + Class mediaHandlerClass=null; + MirMedia mediaHandler=null; + String mediaHandlerName=null; + Database mediaStorage=null; + 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 + upMediaEntityList = DatabaseContentToMedia.getInstance().getUploadedMedia(currentContent); + if (upMediaEntityList!=null && upMediaEntityList.getCount()>=1) { + tinyIcon = null; + iconAlt = null; + mediaHandler = null; + mediaHandlerName = null; + for (int n=0; n < upMediaEntityList.size();n++) { + uploadedMedia = (EntityMedia)upMediaEntityList.elementAt(n); + mediaType = uploadedMedia.getMediaType(); + + //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); + mediaHandler = (MirMedia)mediaHandlerClass.newInstance(); + } catch (Exception e) { + theLog.printError("ProducerStartpage:problem in reflection: "+mediaHandlerName); + } + + //the "best" media type to show + if (mediaHandler.isVideo()) { + tinyIcon = MirConfig.getProp("Producer.Icon.TinyVideo"); + iconAlt = "Video"; + break; + } else if (mediaHandler.isAudio()) { + tinyIcon = MirConfig.getProp("Producer.Icon.TinyAudio"); + iconAlt = "Audio"; + } else if (tinyIcon == null && !mediaHandler.isImage()) { + tinyIcon = mediaHandler.getTinyIcon(); + iconAlt = mediaHandler.getIconAlt(); + } + } + } + //it only has image(s) + if (tinyIcon == null) { + tinyIcon = MirConfig.getProp("Producer.Icon.TinyImage"); + iconAlt = "Image"; + } + + // uploadedMedia Entity list is empty. + // we only have text + } else { + tinyIcon = MirConfig.getProp("Producer.Icon.TinyText"); + iconAlt = "Text"; + } + + try{ + //mediaList = HTMLTemplateProcessor.makeSimpleList(upMediaEntityList); + contentHash = (SimpleHash)opList.get(i); + contentHash.put("tiny_icon", imageRoot+"/"+tinyIcon); + contentHash.put("icon_alt", iconAlt); + } catch (Exception e){} + } + + deliver(req, res, modelRoot, templateListString); } else { // count = 1 _showObject(theList.elementAt(0).getId(), req, res); diff --git a/templates-dist/de/contentlist.template b/templates-dist/de/contentlist.template index 5e051964..10a0c89c 100755 --- a/templates-dist/de/contentlist.template +++ b/templates-dist/de/contentlist.template @@ -29,7 +29,9 @@ F- H- - + + ${entry.icon_alt} + ${articletypeHash[entry.to_article_type]["name"]} -- ${entry.place}: ${entry.title}
${entry.creator}  edit -- 2.11.0