NIHVIVO-1234 Initial version of HomePageController and templates

This commit is contained in:
rjy7 2010-10-22 21:39:14 +00:00
parent 0ff41b8ac8
commit 3a0feaeff2
5 changed files with 61 additions and 17 deletions

View file

@ -333,6 +333,15 @@
<url-pattern>/about</url-pattern> <url-pattern>/about</url-pattern>
</servlet-mapping> </servlet-mapping>
<servlet>
<servlet-name>HomePageController</servlet-name>
<servlet-class>edu.cornell.mannlib.vitro.webapp.controller.freemarker.HomePageController</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HomePageController</servlet-name>
<url-pattern>/index.jsp</url-pattern>
</servlet-mapping>
<servlet> <servlet>
<servlet-name>FreemarkerTestController</servlet-name> <servlet-name>FreemarkerTestController</servlet-name>
<servlet-class>edu.cornell.mannlib.vitro.webapp.controller.freemarker.TestController</servlet-class> <servlet-class>edu.cornell.mannlib.vitro.webapp.controller.freemarker.TestController</servlet-class>
@ -932,18 +941,6 @@
<url-pattern>/TabEntitiesController</url-pattern> <url-pattern>/TabEntitiesController</url-pattern>
</servlet-mapping> </servlet-mapping>
<!-- NOTICE: index.jsp is mapped to TabControler so that we
can have the urls that use to be in the system still work even
though we no longer use index.jsp -->
<servlet>
<servlet-name>TabController</servlet-name>
<servlet-class>edu.cornell.mannlib.vitro.webapp.controller.TabController</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>TabController</servlet-name>
<url-pattern>/index.jsp</url-pattern>
</servlet-mapping>
<!-- <servlet> <!-- <servlet>
<servlet-name>EntityPropertyListController</servlet-name> <servlet-name>EntityPropertyListController</servlet-name>
<servlet-class>edu.cornell.mannlib.vitro.webapp.controller.EntityPropertyListController</servlet-class> <servlet-class>edu.cornell.mannlib.vitro.webapp.controller.EntityPropertyListController</servlet-class>

View file

@ -272,8 +272,17 @@ public class FreemarkerHttpServlet extends VitroHttpServlet {
root.putAll(getRootValues(vreq)); root.putAll(getRootValues(vreq));
// Add the values that we got, and merge to the template. // Add the values that we got, and merge to the template.
String bodyTemplate = values.getTemplateName();
String bodyString;
if (bodyTemplate != null) {
body.putAll(bodyMap); body.putAll(bodyMap);
root.put("body", mergeMapToTemplate(values.getTemplateName(), body, config)); bodyString = mergeMapToTemplate(bodyTemplate, body, config);
} else {
// The subcontroller has not defined a body template. All markup for the page
// is specified in the main page template.
bodyString = "";
}
root.put("body", bodyString);
writePage(root, config, response); writePage(root, config, response);
} }

View file

@ -0,0 +1,38 @@
package edu.cornell.mannlib.vitro.webapp.controller.freemarker;
import java.util.HashMap;
import java.util.Map;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import edu.cornell.mannlib.vitro.webapp.beans.Portal;
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.FreemarkerHttpServlet.ResponseValues;
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.FreemarkerHttpServlet.Template;
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.FreemarkerHttpServlet.TemplateResponseValues;
public class HomePageController extends FreemarkerHttpServlet {
private static final long serialVersionUID = 1L;
private static final Log log = LogFactory.getLog(HomePageController.class);
private static final String PAGE_TEMPLATE = "page-home.ftl";
// private static final String BODY_TEMPLATE = "home.ftl";
@Override
protected ResponseValues processRequest(VitroRequest vreq) {
Map<String, Object> body = new HashMap<String, Object>();
// return new TemplateResponseValues(BODY_TEMPLATE, body);
return new TemplateResponseValues(null, body);
}
@Override
protected String getTitle(String siteName) {
return siteName;
}
@Override
protected String getPageTemplateName() {
return PAGE_TEMPLATE;
}
}

View file

@ -1,3 +1,3 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ --> <#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
<h1>Welcome to VIVO</h1> <#include "page.ftl">

View file

@ -25,7 +25,7 @@
<div id="content"> <div id="content">
<#-- We don't do title here because some pages don't get a title, or it may not be the same as the <title> text. <#-- We don't do title here because some pages don't get a title, or it may not be the same as the <title> text.
<h2>${title}</h2> --> <h2>${title}</h2> -->
${body} ${body!}
</div> <!-- content --> </div> <!-- content -->
</div> <!-- contentwrap --> </div> <!-- contentwrap -->