/*
- * put your module comment here
+ * Copyright (C) 2001, 2002 The Mir-coders group
+ *
+ * This file is part of Mir.
+ *
+ * Mir is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * Mir is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Mir; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ * In addition, as a special exception, The Mir-coders gives permission to link
+ * the code of this program with the com.oreilly.servlet library, any library
+ * licensed under the Apache Software License, The Sun (tm) Java Advanced
+ * Imaging library (JAI), The Sun JIMI library (or with modified versions of
+ * the above that use the same license as the above), and distribute linked
+ * combinations including the two. You must obey the GNU General Public
+ * License in all respects for all of the code used other than the above
+ * mentioned libraries. If you modify this file, you may extend this exception
+ * to your version of the file, but you are not obligated to do so. If you do
+ * not wish to do so, delete this exception statement from your version.
*/
-
package mir.misc;
import java.lang.*;
private static String audioHost;
private static String videoHost;
private static String imageHost;
+ private static String imagePath;
private static String openAction;
+ private static String defEncoding;
+ private static String generateFO;
+ private static String generatePDF;
protected static String producerDocRoot =
MirConfig.getProp("Producer.DocRoot");
protected static String producerStorageRoot =
actionRoot = docRoot + "/servlet/Mir";
+ defEncoding = MirConfig.getProp("Mir.DefaultEncoding");
openAction = MirConfig.getProp("Producer.OpenAction");
productionHost = MirConfig.getProp("Producer.ProductionHost");
videoHost = MirConfig.getProp("Producer.VideoHost");
audioHost = MirConfig.getProp("Producer.AudioHost");
imageHost = MirConfig.getProp("Producer.Image.Host");
+ imagePath = MirConfig.getProp("Producer.Image.Path");
producerDocRoot = MirConfig.getProp("Producer.DocRoot");
producerStorageRoot = MirConfig.getProp("Producer.StorageRoot");
+ generateFO = MirConfig.getProp("GenerateFO");
+ generatePDF = MirConfig.getProp("GeneratePDF");
}
/**
process(null,templateFilename, (TemplateModelRoot)null, out, locale);
}
-
+
/**
* Mischt die freemarker-Struktur <code>tmr</code> mit
* Template <code>templateFilename</code> und gibt das Ergebnis an den PrintWriter
TemplateModelRoot tmr, PrintWriter out, Locale locale)
throws HTMLParseException {
process(res,templateFilename,tmr,null,out,locale);
-
+
}
/**
* @exception HTMLParseException
*/
public static void process(HttpServletResponse res,String templateFilename,
- TemplateModelRoot tmr, TemplateModelRoot popups,
+ TemplateModelRoot tmr, TemplateModelRoot extra,
PrintWriter out, Locale locale)
throws HTMLParseException {
if (out==null) throw new HTMLParseException("no outputstream");
Template tmpl = getTemplateFor(templateFilename);
if (tmpl == null) throw new HTMLParseException("no template: " + templateFilename);
if (tmr==null) tmr = new SimpleHash();
-
+
/** @todo what is this for? (rk) */
String session="";
if (res!=null) {
session=res.encodeURL("");
}
+ // @todo wouldn't it be so much easier to just pass the whole damn config
+ // Hash here from Mirconfig... ??????? than we could access arbitrary config
+ // values in the templates. -mh
// put standard configuration into tempalteRootmodel
SimpleHash configHash = new SimpleHash();
+ configHash.put("defEncoding", new SimpleScalar(defEncoding));
configHash.put("producerDocRoot", new SimpleScalar(producerDocRoot));
configHash.put("storageRoot", new SimpleScalar(producerStorageRoot));
- configHash.put("productionHost", new SimpleScalar(productionHost));
+ configHash.put("productionHost", new SimpleScalar(productionHost));
configHash.put("openAction", new SimpleScalar(openAction));
configHash.put("actionRootLogin",new SimpleScalar(actionRoot));
configHash.put("docRoot", new SimpleScalar(docRoot));
configHash.put("now", new SimpleScalar(StringUtil.date2readableDateTime(new GregorianCalendar())));
configHash.put("actionRoot", new SimpleScalar(actionRoot+session));
- configHash.put("productionHost", new SimpleScalar(productionHost));
configHash.put("videoHost", new SimpleScalar(videoHost));
configHash.put("audioHost", new SimpleScalar(audioHost));
configHash.put("imageHost", new SimpleScalar(imageHost));
+ configHash.put("imagePath", new SimpleScalar(imagePath));
configHash.put("mirVersion", new SimpleScalar(MirConfig.getProp("Mir.Version")));
// this conform to updated freemarker syntax
configHash.put("compressWhitespace", new freemarker.template.utility.CompressWhitespace() );
-
+ configHash.put("generateFO", new SimpleScalar(generateFO));
+ configHash.put("generatePDF", new SimpleScalar(generatePDF));
+
SimpleHash outPutHash = new SimpleHash();
-
- if(popups!=null){
- outPutHash.put("popups",popups);
+
+ if(extra!=null){
+ outPutHash.put("extra",extra);
try{
- while(((SimpleList)popups).hasNext()){
- theLog.printDebugInfo(((SimpleList)popups).next().toString());
+ while(((SimpleList)extra).hasNext()){
+ theLog.printDebugInfo(((SimpleList)extra).next().toString());
}
}catch(Exception e){}
}
outPutHash.put("data",tmr);
outPutHash.put("config", configHash);
-
- MessageResources messages = MessageResources.getMessageResources("admin");
+
+ MessageResources messages = MessageResources.getMessageResources("bundles.admin");
outPutHash.put("lang", new MessageMethodModel(locale, messages) );
-
+
tmpl.process(outPutHash,out);
}