1 package mircoders.producer;
7 import freemarker.template.*;
14 import mircoders.entity.*;
17 * Title: mir - another content management system
19 * Copyright: Copyright (c) 2001
25 public class ProducerNavigation extends Producer {
27 private static String naviPageTemplate = MirConfig.getProp("Producer.Navigation.Template");
29 public void handle(PrintWriter htmlout, EntityUsers user, boolean forced, boolean sync)
30 throws mir.module.ModuleException, mir.storage.StorageObjectException {
32 printHTML(htmlout, "Producer.Navigation: started");
34 long sessionConnectTime = 0;
35 long startTime = (new java.util.Date()).getTime();
36 String nowWebdbDate = StringUtil.date2webdbDate(new GregorianCalendar());
39 FileWriter outputFile;
41 EntityContent currentContent;
42 EntityList entityList;
43 SimpleHash naviPageModel;
46 entityList = linksImcsModule.getByWhereClause("", "sortpriority, title", -1);
47 SimpleList imcList = HTMLTemplateProcessor.makeSimpleList(entityList);
49 EntityList theParentList = linksImcsModule.getByWhereClause("to_parent_id=NULL", "sortpriority, title", -1);
50 SimpleList parentList = HTMLTemplateProcessor.makeSimpleList(theParentList);
52 // put the informations into the navipagemodel
53 naviPageModel = new SimpleHash();
54 naviPageModel.put("topics", topicsModule.getTopicsList());
55 naviPageModel.put("imclist", imcList);
56 naviPageModel.put("parentlist", parentList);
58 htmlFileName = producerDocRoot + "/navigation.inc";
60 produce(naviPageTemplate, htmlFileName, naviPageModel, new LineFilterWriter(htmlout));
63 sessionConnectTime = new java.util.Date().getTime() - startTime;
64 logHTML(htmlout, "Producer.Navigation finished: " + sessionConnectTime + " ms.");
68 logHTML(htmlout, "Producer.Startseite: rsync done");