Index: lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/dao/IGmapConfigItemDAO.java
===================================================================
diff -u
--- lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/dao/IGmapConfigItemDAO.java (revision 0)
+++ lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/dao/IGmapConfigItemDAO.java (revision a8324ce68a8de301097e84ef4919751ecd0b8fe8)
@@ -0,0 +1,11 @@
+package org.lamsfoundation.lams.tool.gmap.dao;
+
+
+import org.lamsfoundation.lams.dao.IBaseDAO;
+import org.lamsfoundation.lams.tool.gmap.model.GmapConfigItem;
+
+public interface IGmapConfigItemDAO extends IBaseDAO
+{
+ void saveOrUpdate(GmapConfigItem toConfig);
+ public GmapConfigItem getConfigItemByKey(final String configKey);
+}
Index: lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/dao/hibernate/GmapConfigItemDAO.java
===================================================================
diff -u
--- lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/dao/hibernate/GmapConfigItemDAO.java (revision 0)
+++ lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/dao/hibernate/GmapConfigItemDAO.java (revision a8324ce68a8de301097e84ef4919751ecd0b8fe8)
@@ -0,0 +1,32 @@
+package org.lamsfoundation.lams.tool.gmap.dao.hibernate;
+
+import org.hibernate.HibernateException;
+import org.hibernate.Session;
+import org.lamsfoundation.lams.dao.hibernate.BaseDAO;
+import org.lamsfoundation.lams.tool.gmap.dao.IGmapConfigItemDAO;
+import org.lamsfoundation.lams.tool.gmap.model.GmapConfigItem;
+import org.springframework.orm.hibernate3.HibernateCallback;
+public class GmapConfigItemDAO extends BaseDAO implements IGmapConfigItemDAO
+{
+ private static final String LOAD_CONFIG_ITEM_BY_KEY = "from GmapConfigItem configuration"
+ + " where configuration.configKey=:key";
+
+ public GmapConfigItem getConfigItemByKey(final String configKey)
+ {
+ return (GmapConfigItem) getHibernateTemplate().execute(new HibernateCallback()
+ {
+ public Object doInHibernate(Session session) throws HibernateException
+ {
+ return session.createQuery(LOAD_CONFIG_ITEM_BY_KEY)
+ .setString("key",configKey)
+ .uniqueResult();
+ }
+ });
+
+ }
+
+ public void saveOrUpdate(GmapConfigItem mdlForumConfigItem) {
+ this.getHibernateTemplate().saveOrUpdate(mdlForumConfigItem);
+ this.getHibernateTemplate().flush();
+ }
+}
Index: lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/gmapApplicationContext.xml
===================================================================
diff -u -r866dc94326b7624341331da05940cfe57a8d9ccd -ra8324ce68a8de301097e84ef4919751ecd0b8fe8
--- lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/gmapApplicationContext.xml (.../gmapApplicationContext.xml) (revision 866dc94326b7624341331da05940cfe57a8d9ccd)
+++ lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/gmapApplicationContext.xml (.../gmapApplicationContext.xml) (revision a8324ce68a8de301097e84ef4919751ecd0b8fe8)
@@ -20,6 +20,7 @@
org/lamsfoundation/lams/tool/gmap/model/GmapUser.hbm.xml
org/lamsfoundation/lams/tool/gmap/model/GmapAttachment.hbm.xml
org/lamsfoundation/lams/tool/gmap/model/GmapMarker.hbm.xml
+ org/lamsfoundation/lams/tool/gmap/model/GmapConfigItem.hbm.xml
@@ -35,6 +36,7 @@
+
@@ -74,6 +76,10 @@
+
+
+
+
Index: lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/model/GmapConfigItem.java
===================================================================
diff -u
--- lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/model/GmapConfigItem.java (revision 0)
+++ lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/model/GmapConfigItem.java (revision a8324ce68a8de301097e84ef4919751ecd0b8fe8)
@@ -0,0 +1,61 @@
+package org.lamsfoundation.lams.tool.gmap.model;
+
+
+/**
+ * @hibernate.class table="tl_lagmap10_configuration"
+ */
+public class GmapConfigItem implements java.io.Serializable
+{
+
+ private static final long serialVersionUID = 930482766653472636L;
+
+ public static final String KEY_GMAP_KEY = "GmapKey";
+
+ Long id;
+ String configKey;
+ String configValue;
+
+ // empty contsructor
+ public GmapConfigItem() {}
+
+
+ /**
+ * @hibernate.id generator-class="native" type="java.lang.Long" column="uid"
+ *
+ */
+ public Long getId() {
+ return id;
+ }
+
+
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+
+
+ /**
+ * @hibernate.property column="config_key" length="30"
+ * not-null="false" unique="true"
+ */
+ public String getConfigKey() {
+ return configKey;
+ }
+
+ public void setConfigKey(String configKey) {
+ this.configKey = configKey;
+ }
+
+ /**
+ * @hibernate.property column="config_value" length="255"
+ * not-null="false"
+ */
+ public String getConfigValue() {
+ return configValue;
+ }
+
+ public void setConfigValue(String configValue) {
+ this.configValue = configValue;
+ }
+}
Index: lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/service/GmapService.java
===================================================================
diff -u -r3813117828096a5d4063e220506bbc6357be2683 -ra8324ce68a8de301097e84ef4919751ecd0b8fe8
--- lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/service/GmapService.java (.../GmapService.java) (revision 3813117828096a5d4063e220506bbc6357be2683)
+++ lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/service/GmapService.java (.../GmapService.java) (revision a8324ce68a8de301097e84ef4919751ecd0b8fe8)
@@ -30,7 +30,6 @@
import java.util.Date;
import java.util.HashSet;
import java.util.Hashtable;
-import java.util.Iterator;
import java.util.List;
import java.util.Set;
import java.util.SortedMap;
@@ -59,8 +58,8 @@
import org.lamsfoundation.lams.learningdesign.service.ExportToolContentException;
import org.lamsfoundation.lams.learningdesign.service.IExportToolContentService;
import org.lamsfoundation.lams.learningdesign.service.ImportToolContentException;
-import org.lamsfoundation.lams.notebook.service.ICoreNotebookService;
import org.lamsfoundation.lams.notebook.model.NotebookEntry;
+import org.lamsfoundation.lams.notebook.service.ICoreNotebookService;
import org.lamsfoundation.lams.tool.ToolContentImport102Manager;
import org.lamsfoundation.lams.tool.ToolContentManager;
import org.lamsfoundation.lams.tool.ToolOutput;
@@ -71,15 +70,17 @@
import org.lamsfoundation.lams.tool.exception.SessionDataExistsException;
import org.lamsfoundation.lams.tool.exception.ToolException;
import org.lamsfoundation.lams.tool.gmap.dao.IGmapAttachmentDAO;
+import org.lamsfoundation.lams.tool.gmap.dao.IGmapConfigItemDAO;
import org.lamsfoundation.lams.tool.gmap.dao.IGmapDAO;
+import org.lamsfoundation.lams.tool.gmap.dao.IGmapMarkerDAO;
import org.lamsfoundation.lams.tool.gmap.dao.IGmapSessionDAO;
import org.lamsfoundation.lams.tool.gmap.dao.IGmapUserDAO;
-import org.lamsfoundation.lams.tool.gmap.dao.IGmapMarkerDAO;
import org.lamsfoundation.lams.tool.gmap.model.Gmap;
import org.lamsfoundation.lams.tool.gmap.model.GmapAttachment;
+import org.lamsfoundation.lams.tool.gmap.model.GmapConfigItem;
+import org.lamsfoundation.lams.tool.gmap.model.GmapMarker;
import org.lamsfoundation.lams.tool.gmap.model.GmapSession;
import org.lamsfoundation.lams.tool.gmap.model.GmapUser;
-import org.lamsfoundation.lams.tool.gmap.model.GmapMarker;
import org.lamsfoundation.lams.tool.gmap.util.GmapConstants;
import org.lamsfoundation.lams.tool.gmap.util.GmapException;
import org.lamsfoundation.lams.tool.gmap.util.GmapToolContentHandler;
@@ -130,6 +131,8 @@
private IExportToolContentService exportContentService;
private ICoreNotebookService coreNotebookService;
+
+ private IGmapConfigItemDAO gmapConfigItemDAO;
public GmapService() {
super();
@@ -512,6 +515,18 @@
return gmapUser;
}
+ public GmapConfigItem getConfigItem(String key)
+ {
+ return gmapConfigItemDAO.getConfigItemByKey(key);
+ }
+
+ public void saveOrUpdateGmapConfigItem(GmapConfigItem item)
+ {
+ gmapConfigItemDAO.saveOrUpdate(item);
+ }
+
+
+
public IAuditService getAuditService() {
return auditService;
}
@@ -776,7 +791,14 @@
this.gmapMarkerDAO = gmapMarkerDAO;
}
-
+ public IGmapConfigItemDAO getGmapConfigItemDAO() {
+ return gmapConfigItemDAO;
+ }
+
+ public void setGmapConfigItemDAO(IGmapConfigItemDAO gmapConfigItemDAO) {
+ this.gmapConfigItemDAO = gmapConfigItemDAO;
+ }
+
public Long createNotebookEntry(Long id, Integer idType, String signature, Integer userID, String entry) {
return coreNotebookService.createNotebookEntry(id, idType, signature, userID, "", entry);
}
Index: lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/service/IGmapService.java
===================================================================
diff -u -r3813117828096a5d4063e220506bbc6357be2683 -ra8324ce68a8de301097e84ef4919751ecd0b8fe8
--- lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/service/IGmapService.java (.../IGmapService.java) (revision 3813117828096a5d4063e220506bbc6357be2683)
+++ lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/service/IGmapService.java (.../IGmapService.java) (revision a8324ce68a8de301097e84ef4919751ecd0b8fe8)
@@ -27,14 +27,15 @@
import java.util.List;
import org.apache.struts.upload.FormFile;
+import org.lamsfoundation.lams.notebook.model.NotebookEntry;
import org.lamsfoundation.lams.tool.gmap.model.Gmap;
import org.lamsfoundation.lams.tool.gmap.model.GmapAttachment;
+import org.lamsfoundation.lams.tool.gmap.model.GmapConfigItem;
+import org.lamsfoundation.lams.tool.gmap.model.GmapMarker;
import org.lamsfoundation.lams.tool.gmap.model.GmapSession;
import org.lamsfoundation.lams.tool.gmap.model.GmapUser;
-import org.lamsfoundation.lams.tool.gmap.model.GmapMarker;
import org.lamsfoundation.lams.tool.gmap.util.GmapException;
import org.lamsfoundation.lams.usermanagement.dto.UserDTO;
-import org.lamsfoundation.lams.notebook.model.NotebookEntry;
/**
* Defines the services available to the web layer from the Gmap Service
@@ -187,4 +188,18 @@
*
*/
void updateEntry(NotebookEntry notebookEntry);
+
+ /**
+ * Get the Gmap config item by key
+ * @param key
+ * @return
+ */
+ public GmapConfigItem getConfigItem(String key);
+
+ /**
+ * Save a Gmap configItem
+ * @param item
+ */
+ public void saveOrUpdateGmapConfigItem(GmapConfigItem item);
+
}
Index: lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/util/GmapConstants.java
===================================================================
diff -u -r9ed689d51b8f41ba820bd7e6be8e3253703096a8 -ra8324ce68a8de301097e84ef4919751ecd0b8fe8
--- lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/util/GmapConstants.java (.../GmapConstants.java) (revision 9ed689d51b8f41ba820bd7e6be8e3253703096a8)
+++ lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/util/GmapConstants.java (.../GmapConstants.java) (revision a8324ce68a8de301097e84ef4919751ecd0b8fe8)
@@ -43,6 +43,7 @@
// Attribute names
public static final String ATTR_MESSAGE = "message";
public static final String ATTR_SESSION_MAP = "sessionMap";
+ public static final String ATTR_GMAP_KEY = "gmapKey";
public static final String ATTR_USER_DTO = "gmapUserDTO";
public static final String ATTR_USER = "gmapUser";
Index: lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/AdminAction.java
===================================================================
diff -u
--- lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/AdminAction.java (revision 0)
+++ lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/AdminAction.java (revision a8324ce68a8de301097e84ef4919751ecd0b8fe8)
@@ -0,0 +1,72 @@
+package org.lamsfoundation.lams.tool.gmap.web.actions;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.struts.action.ActionForm;
+import org.apache.struts.action.ActionForward;
+import org.apache.struts.action.ActionMapping;
+import org.lamsfoundation.lams.tool.gmap.model.GmapConfigItem;
+import org.lamsfoundation.lams.tool.gmap.service.GmapServiceProxy;
+import org.lamsfoundation.lams.tool.gmap.service.IGmapService;
+import org.lamsfoundation.lams.tool.gmap.web.forms.AdminForm;
+import org.lamsfoundation.lams.web.action.LamsDispatchAction;
+
+/**
+ * @author
+ * @version
+ *
+ * @struts.action path="/lagmap10admin" parameter="dispatch" scope="request"
+ * name="lagmap10AdminForm" validate="false"
+ *
+ * @struts.action-forward name="config" path="/pages/admin/config.jsp"
+ */
+public class AdminAction extends LamsDispatchAction
+{
+ public IGmapService gmapService;
+
+
+ public ActionForward unspecified(ActionMapping mapping, ActionForm form,
+ HttpServletRequest request, HttpServletResponse response)
+ {
+ // set up mdlForumService
+ if (gmapService == null) {
+ gmapService = GmapServiceProxy.getGmapService(this.getServlet().getServletContext());
+ }
+
+ AdminForm adminForm = (AdminForm)form;
+
+ GmapConfigItem gmapKey = gmapService.getConfigItem(GmapConfigItem.KEY_GMAP_KEY);
+ if (gmapKey != null)
+ adminForm.setGmapKey(gmapKey.getConfigValue());
+
+ request.setAttribute("error", false);
+ return mapping.findForward("config");
+ }
+
+ public ActionForward saveContent(ActionMapping mapping, ActionForm form,
+ HttpServletRequest request, HttpServletResponse response)
+ {
+ AdminForm adminForm = (AdminForm)form;
+
+ if (adminForm.getGmapKey() != null && !adminForm.getGmapKey().equals(""))
+ {
+ // set up mdlForumService
+ if (gmapService == null) {
+ gmapService = GmapServiceProxy.getGmapService(this.getServlet().getServletContext());
+ }
+
+ GmapConfigItem gmapKey = gmapService.getConfigItem(GmapConfigItem.KEY_GMAP_KEY);
+ gmapKey.setConfigValue(adminForm.getGmapKey());
+ gmapService.saveOrUpdateGmapConfigItem(gmapKey);
+
+ request.setAttribute("savedSuccess", true);
+ return mapping.findForward("config");
+ }
+ else
+ {
+ request.setAttribute("error", true);
+ return mapping.findForward("config");
+ }
+ }
+}
Index: lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/AuthoringAction.java
===================================================================
diff -u -r3813117828096a5d4063e220506bbc6357be2683 -ra8324ce68a8de301097e84ef4919751ecd0b8fe8
--- lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/AuthoringAction.java (.../AuthoringAction.java) (revision 3813117828096a5d4063e220506bbc6357be2683)
+++ lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/AuthoringAction.java (.../AuthoringAction.java) (revision a8324ce68a8de301097e84ef4919751ecd0b8fe8)
@@ -30,14 +30,10 @@
import java.util.LinkedList;
import java.util.List;
import java.util.Set;
-import java.io.PrintWriter;
-import java.io.StringReader;
-import org.xml.sax.InputSource;
+
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
@@ -50,24 +46,21 @@
import org.lamsfoundation.lams.contentrepository.client.IToolContentHandler;
import org.lamsfoundation.lams.tool.ToolAccessMode;
import org.lamsfoundation.lams.tool.gmap.model.Gmap;
-import org.lamsfoundation.lams.tool.gmap.model.GmapUser;
import org.lamsfoundation.lams.tool.gmap.model.GmapAttachment;
+import org.lamsfoundation.lams.tool.gmap.model.GmapConfigItem;
import org.lamsfoundation.lams.tool.gmap.model.GmapMarker;
-import org.lamsfoundation.lams.tool.gmap.service.IGmapService;
+import org.lamsfoundation.lams.tool.gmap.model.GmapUser;
import org.lamsfoundation.lams.tool.gmap.service.GmapServiceProxy;
+import org.lamsfoundation.lams.tool.gmap.service.IGmapService;
import org.lamsfoundation.lams.tool.gmap.util.GmapConstants;
import org.lamsfoundation.lams.tool.gmap.web.forms.AuthoringForm;
+import org.lamsfoundation.lams.usermanagement.dto.UserDTO;
import org.lamsfoundation.lams.util.FileValidatorUtil;
import org.lamsfoundation.lams.util.WebUtil;
import org.lamsfoundation.lams.web.action.LamsDispatchAction;
+import org.lamsfoundation.lams.web.session.SessionManager;
import org.lamsfoundation.lams.web.util.AttributeNames;
import org.lamsfoundation.lams.web.util.SessionMap;
-import org.lamsfoundation.lams.usermanagement.dto.UserDTO;
-import org.lamsfoundation.lams.web.session.SessionManager;
-import org.w3c.dom.Document;
-import org.w3c.dom.NodeList;
-import org.w3c.dom.Node;
-import org.w3c.dom.NamedNodeMap;
/**
* @author
@@ -156,6 +149,13 @@
// add the sessionMap to HTTPSession.
request.getSession().setAttribute(map.getSessionID(), map);
request.setAttribute(GmapConstants.ATTR_SESSION_MAP, map);
+
+ // get the gmap API key from the config table and add it to the session
+ GmapConfigItem gmapKey = gmapService.getConfigItem(GmapConfigItem.KEY_GMAP_KEY);
+ if (gmapKey != null && gmapKey.getConfigValue() != null)
+ {
+ request.setAttribute(GmapConstants.ATTR_GMAP_KEY, gmapKey.getConfigValue());
+ }
return mapping.findForward("success");
}
@@ -236,6 +236,13 @@
authForm.setSessionMapID(map.getSessionID());
request.setAttribute(GmapConstants.ATTR_SESSION_MAP, map);
+
+ // get the gmap API key from the config table and add it to the session
+ GmapConfigItem gmapKey = gmapService.getConfigItem(GmapConfigItem.KEY_GMAP_KEY);
+ if (gmapKey != null && gmapKey.getConfigValue() != null)
+ {
+ request.setAttribute(GmapConstants.ATTR_GMAP_KEY, gmapKey.getConfigValue());
+ }
return mapping.findForward("success");
}
Index: lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/LearningAction.java
===================================================================
diff -u -r3813117828096a5d4063e220506bbc6357be2683 -ra8324ce68a8de301097e84ef4919751ecd0b8fe8
--- lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/LearningAction.java (.../LearningAction.java) (revision 3813117828096a5d4063e220506bbc6357be2683)
+++ lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/LearningAction.java (.../LearningAction.java) (revision a8324ce68a8de301097e84ef4919751ecd0b8fe8)
@@ -42,6 +42,7 @@
import org.lamsfoundation.lams.tool.gmap.dto.GmapUserDTO;
import org.lamsfoundation.lams.tool.gmap.dto.GmapSessionDTO;
import org.lamsfoundation.lams.tool.gmap.model.Gmap;
+import org.lamsfoundation.lams.tool.gmap.model.GmapConfigItem;
import org.lamsfoundation.lams.tool.gmap.model.GmapSession;
import org.lamsfoundation.lams.tool.gmap.model.GmapUser;
import org.lamsfoundation.lams.tool.gmap.service.IGmapService;
@@ -159,6 +160,13 @@
request.setAttribute("gmapSessionDTO", gmapSessionDTO);
+ // get the gmap API key from the config table and add it to the session
+ GmapConfigItem gmapKey = gmapService.getConfigItem(GmapConfigItem.KEY_GMAP_KEY);
+ if (gmapKey != null && gmapKey.getConfigValue() != null)
+ {
+ request.setAttribute(GmapConstants.ATTR_GMAP_KEY, gmapKey.getConfigValue());
+ }
+
// set readOnly flag.
if (mode.equals(ToolAccessMode.TEACHER) || (gmap.isLockOnFinished() && gmapUser.isFinishedActivity())) {
request.setAttribute("contentEditable", false);
Index: lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/MonitoringAction.java
===================================================================
diff -u -r910b2ac5592ed40624543c6e5d22f5a80547d588 -ra8324ce68a8de301097e84ef4919751ecd0b8fe8
--- lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/MonitoringAction.java (.../MonitoringAction.java) (revision 910b2ac5592ed40624543c6e5d22f5a80547d588)
+++ lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/MonitoringAction.java (.../MonitoringAction.java) (revision a8324ce68a8de301097e84ef4919751ecd0b8fe8)
@@ -36,6 +36,7 @@
import org.lamsfoundation.lams.tool.gmap.dto.GmapSessionDTO;
import org.lamsfoundation.lams.tool.gmap.dto.GmapUserDTO;
import org.lamsfoundation.lams.tool.gmap.model.Gmap;
+import org.lamsfoundation.lams.tool.gmap.model.GmapConfigItem;
import org.lamsfoundation.lams.tool.gmap.model.GmapSession;
import org.lamsfoundation.lams.tool.gmap.model.GmapUser;
import org.lamsfoundation.lams.tool.gmap.service.IGmapService;
@@ -114,6 +115,13 @@
}
}
+ // get the gmap API key from the config table and add it to the session
+ GmapConfigItem gmapKey = gmapService.getConfigItem(GmapConfigItem.KEY_GMAP_KEY);
+ if (gmapKey != null && gmapKey.getConfigValue() != null)
+ {
+ request.setAttribute(GmapConstants.ATTR_GMAP_KEY, gmapKey.getConfigValue());
+ }
+
request.setAttribute("gmapDTO", gmapDT0);
request.setAttribute("contentFolderID", contentFolderID);
return mapping.findForward("success");
Index: lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/forms/AdminForm.java
===================================================================
diff -u
--- lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/forms/AdminForm.java (revision 0)
+++ lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/forms/AdminForm.java (revision a8324ce68a8de301097e84ef4919751ecd0b8fe8)
@@ -0,0 +1,34 @@
+package org.lamsfoundation.lams.tool.gmap.web.forms;
+
+import javax.servlet.http.HttpServletRequest;
+
+import org.apache.struts.action.ActionErrors;
+import org.apache.struts.action.ActionForm;
+import org.apache.struts.action.ActionMapping;
+import org.apache.struts.action.ActionMessage;
+import org.apache.struts.action.ActionMessages;
+
+/**
+ * @struts.form name="lagmap10AdminForm"
+ */
+public class AdminForm extends ActionForm
+{
+ private static final long serialVersionUID = 414425664356226L;
+
+ String gmapKey;
+
+ @Override
+ public ActionErrors validate(ActionMapping arg0, HttpServletRequest arg1) {
+ ActionErrors ac = new ActionErrors();
+ ac.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage("this is an error"));
+ return ac;
+ }
+
+ public String getGmapKey() {
+ return gmapKey;
+ }
+
+ public void setGmapKey(String gmapKey) {
+ this.gmapKey = gmapKey;
+ }
+}
Index: lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/servlets/ExportServlet.java
===================================================================
diff -u -r46ba23ef919b23dbf3449d21555e549032706205 -ra8324ce68a8de301097e84ef4919751ecd0b8fe8
--- lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/servlets/ExportServlet.java (.../ExportServlet.java) (revision 46ba23ef919b23dbf3449d21555e549032706205)
+++ lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/servlets/ExportServlet.java (.../ExportServlet.java) (revision a8324ce68a8de301097e84ef4919751ecd0b8fe8)
@@ -38,6 +38,7 @@
import org.lamsfoundation.lams.tool.gmap.dto.GmapSessionDTO;
import org.lamsfoundation.lams.tool.gmap.dto.GmapUserDTO;
import org.lamsfoundation.lams.tool.gmap.model.Gmap;
+import org.lamsfoundation.lams.tool.gmap.model.GmapConfigItem;
import org.lamsfoundation.lams.tool.gmap.model.GmapSession;
import org.lamsfoundation.lams.tool.gmap.model.GmapUser;
import org.lamsfoundation.lams.tool.gmap.service.IGmapService;
@@ -92,6 +93,13 @@
logger.error("Cannot perform export for gmap tool.");
}
+ // get the gmap API key from the config table and add it to the session
+ GmapConfigItem gmapKey = gmapService.getConfigItem(GmapConfigItem.KEY_GMAP_KEY);
+ if (gmapKey != null && gmapKey.getConfigValue() != null)
+ {
+ request.getSession().setAttribute(GmapConstants.ATTR_GMAP_KEY, gmapKey.getConfigValue());
+ }
+
String basePath = request.getScheme() + "://" + request.getServerName()
+ ":" + request.getServerPort() + request.getContextPath();