* Mir.java - main servlet, that dispatches to servletmodules\r
*\r
* @author $Author: mh $\r
- * @version $Id: Mir.java,v 1.25 2002/12/23 03:00:11 mh Exp $\r
+ * @version $Id: Mir.java,v 1.26 2003/01/18 08:32:07 mh Exp $\r
*\r
*/\r
\r
private static ModuleMessage messageModule = null;\r
private final static HashMap servletModuleInstanceHash = new HashMap();\r
\r
+ //I don't know about making this static cause it removes the \r
+ //possibility to change the config on the fly.. -mh\r
private static List loginLanguages = null;\r
\r
public HttpSession session;\r
}\r
}\r
\r
+ // FIXME: this should probalby go into AbstractServlet so it can be used in \r
+ // OpenMir as well -mh\r
+ protected String getDefaultLanguage (HttpServletRequest req) {\r
+ String defaultlanguage = MirGlobal.getConfigPropertyWithDefault("Mir.Login.DefaultLanguage", "");\r
+ if (defaultlanguage.length() == 0) {\r
+ Locale locale = req.getLocale();\r
+ defaultlanguage = locale.getLanguage();\r
+ }\r
+ \r
+ return defaultlanguage; \r
+ }\r
+\r
public void doPost(HttpServletRequest req, HttpServletResponse res) throws\r
ServletException, IOException, UnavailableException {\r
\r
//make sure client browsers don't cache anything\r
setNoCaching(res);\r
\r
- res.setContentType("text/html; charset=" + MirConfig.getProp("Mir.DefaultHTMLCharset"));\r
+ //FIXME: this seems kind of hackish and only here because we can have \r
+ // default other than the one that the browser is set to.\r
+ Locale locale = new Locale(getDefaultLanguage(req), "");\r
+ MessageResources messageResources = MessageResources.getMessageResources("bundles.admin");\r
+ String htmlcharset = messageResources.getMessage(locale, "htmlcharset");\r
+\r
+ res.setContentType("text/html; charset=" + htmlcharset);\r
\r
String moduleName = req.getParameter("module");\r
checkLanguage(session, req);\r
\r
mergeData.put("session", sessionUrl);\r
\r
- String defaultlanguage = MirGlobal.getConfigPropertyWithDefault("Mir.Login.DefaultLanguage", "");\r
- if (defaultlanguage.length() == 0)\r
- defaultlanguage = req.getLocale().getLanguage();\r
- mergeData.put("defaultlanguage", defaultlanguage);\r
+ mergeData.put("defaultlanguage", getDefaultLanguage(req));\r
mergeData.put("languages", getLoginLanguages());\r
\r
HTMLTemplateProcessor.process(res, loginTemplate, mergeData, out, getLocale(req));\r