Index: lams_admin/build.xml =================================================================== diff -u -r83eaff410956c21f0dc99b075e0daefa707ed5d4 -r3bc65f0652b50074ff432112d8e47a6df3728810 --- lams_admin/build.xml (.../build.xml) (revision 83eaff410956c21f0dc99b075e0daefa707ed5d4) +++ lams_admin/build.xml (.../build.xml) (revision 3bc65f0652b50074ff432112d8e47a6df3728810) @@ -290,6 +290,7 @@ + Index: lams_admin/conf/language/lams/ApplicationResources_en_AU.properties =================================================================== diff -u -r40f611112ac6303e7370a8b99b96e6b6668297b4 -r3bc65f0652b50074ff432112d8e47a6df3728810 --- lams_admin/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision 40f611112ac6303e7370a8b99b96e6b6668297b4) +++ lams_admin/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision 3bc65f0652b50074ff432112d8e47a6df3728810) @@ -43,7 +43,6 @@ admin.config.value =Value admin.register.sitename =Full Sitename admin.register.orgname =Organisation -admin.register.directory =Directory admin.register.directory.public =Public admin.register.directory.private =Private admin.register.heading.title =Register your server with the LAMS Community @@ -374,5 +373,12 @@ config.smtp.user =SMTP User config.smtp.password =SMTP Password +admin.register.enableLamsCommunity =Enable lamscommunity.org integration +admin.register.directory =Enable public directory +register.error.field =Required field +register.error.emailRequiredValid =Email is required in valid format +register.success =Your server has successfully been registered with lamscommunity.org. +register.error.noResponseFromLamsCommunity =Did not get a response from lamscommuunity.org. +register.error.registrationFailed =Registration has failed. #======= End labels: Exported 366 labels for en AU ===== Index: lams_admin/conf/xdoclet/struts-forms.xml =================================================================== diff -u -rdc670ce921e2b9d4fda9fae27392e9bb69560856 -r3bc65f0652b50074ff432112d8e47a6df3728810 --- lams_admin/conf/xdoclet/struts-forms.xml (.../struts-forms.xml) (revision dc670ce921e2b9d4fda9fae27392e9bb69560856) +++ lams_admin/conf/xdoclet/struts-forms.xml (.../struts-forms.xml) (revision 3bc65f0652b50074ff432112d8e47a6df3728810) @@ -82,30 +82,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/RegisterAction.java =================================================================== diff -u -ra6a4ed61ecf23c10bc18e4c1435dfe6f8b8855f6 -r3bc65f0652b50074ff432112d8e47a6df3728810 --- lams_admin/src/java/org/lamsfoundation/lams/admin/web/RegisterAction.java (.../RegisterAction.java) (revision a6a4ed61ecf23c10bc18e4c1435dfe6f8b8855f6) +++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/RegisterAction.java (.../RegisterAction.java) (revision 3bc65f0652b50074ff432112d8e47a6df3728810) @@ -22,35 +22,48 @@ */ package org.lamsfoundation.lams.admin.web; +import java.io.BufferedReader; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.net.URLEncoder; +import java.util.HashMap; import java.util.List; +import javax.crypto.Cipher; +import javax.crypto.spec.IvParameterSpec; +import javax.crypto.spec.SecretKeySpec; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.log4j.Logger; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; -import org.apache.struts.action.DynaActionForm; import org.lamsfoundation.lams.admin.service.AdminServiceProxy; +import org.lamsfoundation.lams.config.Registration; import org.lamsfoundation.lams.usermanagement.Organisation; import org.lamsfoundation.lams.usermanagement.OrganisationType; import org.lamsfoundation.lams.usermanagement.Role; -import org.lamsfoundation.lams.usermanagement.UserOrganisationRole; -import org.lamsfoundation.lams.usermanagement.dto.UserDTO; import org.lamsfoundation.lams.usermanagement.User; +import org.lamsfoundation.lams.usermanagement.dto.UserDTO; import org.lamsfoundation.lams.usermanagement.service.IUserManagementService; import org.lamsfoundation.lams.util.Configuration; import org.lamsfoundation.lams.util.ConfigurationKeys; +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.springframework.web.context.WebApplicationContext; +import org.springframework.web.context.support.WebApplicationContextUtils; +import sun.misc.BASE64Decoder; + /** * ConfigAction * - * @author Mitchell Seaton + * @author Mitchell Seaton, edited by Luke Foxton */ + /** * struts doclets * @@ -65,8 +78,12 @@ public class RegisterAction extends LamsDispatchAction { private static final Logger log = Logger.getLogger(RegisterAction.class); - private static IUserManagementService service; + private static final String LAMS_COMMUNITY_REGISTER_URL = "http://lamscommunity.org/x/registration"; + public static final String LAMS_COMMUNITY_KEY = "17^76iTkqYSywJ73"; + private static IUserManagementService userManagementService; + private Configuration configurationService; + public ActionForward unspecified(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { @@ -78,30 +95,69 @@ return mapping.findForward("error"); } - service = AdminServiceProxy.getService(getServlet().getServletContext()); + userManagementService = AdminServiceProxy.getService(getServlet().getServletContext()); + RegisterForm registerForm = (RegisterForm) form; + + configurationService = getConfiguration(); + + Registration reg = configurationService.getRegistration(); + if (reg == null) { + reg = new Registration(); + reg.setPublicDirectory(true); + } + updateForm(registerForm, reg); + + + RegisterDTO registerDTO = new RegisterDTO(); + + // Get Server statistics for registration + List groups = userManagementService.findByProperty(Organisation.class, "organisationType.organisationTypeId", + OrganisationType.COURSE_TYPE); + List subgroups = userManagementService.findByProperty(Organisation.class, + "organisationType.organisationTypeId", OrganisationType.CLASS_TYPE); + + registerDTO.setGroupNumber(Integer.valueOf(groups.size())); + registerDTO.setSubgroupNumber(Integer.valueOf(subgroups.size())); + registerDTO.setSysadminNumber(userManagementService.getCountRoleForSystem(Role.ROLE_SYSADMIN)); + registerDTO.setAdminNumber(userManagementService.getCountRoleForSystem(Role.ROLE_GROUP_ADMIN)); + registerDTO.setAuthorNumber(userManagementService.getCountRoleForSystem(Role.ROLE_AUTHOR)); + registerDTO.setMonitorNumber(userManagementService.getCountRoleForSystem(Role.ROLE_MONITOR)); + registerDTO.setManagerNumber(userManagementService.getCountRoleForSystem(Role.ROLE_GROUP_MANAGER)); + registerDTO.setLearnerNumber(userManagementService.getCountRoleForSystem(Role.ROLE_LEARNER)); + registerDTO.setAuthorAdminNumber(userManagementService.getCountRoleForSystem(Role.ROLE_AUTHOR_ADMIN)); + registerDTO.setUserNumber(Integer.valueOf(userManagementService.findAll(User.class).size())); + registerDTO.setServerUrl(Configuration.get(ConfigurationKeys.SERVER_URL)); + registerDTO.setServerVersion(Configuration.get(ConfigurationKeys.VERSION)); + registerDTO.setServerBuild(Configuration.get(ConfigurationKeys.SERVER_VERSION_NUMBER)); + registerDTO.setServerLocale(Configuration.get(ConfigurationKeys.SERVER_LANGUAGE)); + registerDTO.setServerLanguageDate(Configuration.get(ConfigurationKeys.DICTIONARY_DATE_CREATED)); + + request.setAttribute("registerDTO", registerDTO); + + /* DynaActionForm registerForm = (DynaActionForm) form; - /** Set Server Configuration details in dyna form */ + // Set Server Configuration details in dyna form registerForm.set("serverurl", Configuration.get(ConfigurationKeys.SERVER_URL)); registerForm.set("serverversion", Configuration.get(ConfigurationKeys.VERSION)); registerForm.set("serverbuild", Configuration.get(ConfigurationKeys.SERVER_VERSION_NUMBER)); registerForm.set("serverlocale", Configuration.get(ConfigurationKeys.SERVER_LANGUAGE)); registerForm.set("langdate", Configuration.get(ConfigurationKeys.DICTIONARY_DATE_CREATED)); - /** Set user details for registration */ + // Set user details for registration UserDTO sysadmin = (UserDTO) SessionManager.getSession().getAttribute(AttributeNames.USER); registerForm.set("rname", sysadmin.getFirstName() + " " + sysadmin.getLastName()); registerForm.set("remail", sysadmin.getEmail()); - /** Get Server statistics for registration */ + // Get Server statistics for registration List groups = service.findByProperty(Organisation.class, "organisationType.organisationTypeId", OrganisationType.COURSE_TYPE); List subgroups = service.findByProperty(Organisation.class, "organisationType.organisationTypeId", OrganisationType.CLASS_TYPE); - /** Set statistics in dyna form */ + //Set statistics in dyna form registerForm.set("groupno", Integer.valueOf(groups.size())); registerForm.set("subgroupno", Integer.valueOf(subgroups.size())); registerForm.set("sysadminno", service.getCountRoleForSystem(Role.ROLE_SYSADMIN)); @@ -112,8 +168,184 @@ registerForm.set("learnerno", service.getCountRoleForSystem(Role.ROLE_LEARNER)); registerForm.set("authoradminno", service.getCountRoleForSystem(Role.ROLE_AUTHOR_ADMIN)); registerForm.set("userno", Integer.valueOf(service.findAll(User.class).size())); + */ return mapping.findForward("register"); } + @SuppressWarnings("unchecked") + public void updateForm(RegisterForm registerForm, Registration reg) { + UserDTO sysadmin = (UserDTO) SessionManager.getSession().getAttribute(AttributeNames.USER); + + if (reg.getName() != null) { + registerForm.setName(reg.getName()); + } else { + registerForm.setName(sysadmin.getFirstName() + " " + sysadmin.getLastName()); + } + + if (reg.getEmail() != null) { + registerForm.setEmail(reg.getEmail()); + } else { + registerForm.setEmail(sysadmin.getEmail()); + } + + // setting the persistent register values + registerForm.setSiteName(reg.getSiteName()); + registerForm.setOrganisation(reg.getOrganisation()); + registerForm.setServerCountry(reg.getServerCountry()); + + registerForm.setPublicDirectory(reg.isPublicDirectory()); + registerForm.setEnableLamsCommunityIntegration(reg.isEnableLamsCommunityIntegration()); + + // setting the config values +// registerForm.setServerUrl(Configuration.get(ConfigurationKeys.SERVER_URL)); +// registerForm.setServerVersion(Configuration.get(ConfigurationKeys.VERSION)); +// registerForm.setServerBuild(Configuration.get(ConfigurationKeys.SERVER_VERSION_NUMBER)); +// registerForm.setServerLocale(Configuration.get(ConfigurationKeys.SERVER_LANGUAGE)); +// registerForm.setServerLanguageDate(Configuration.get(ConfigurationKeys.DICTIONARY_DATE_CREATED)); + + // Get Server statistics for registration +// List groups = userManagementService.findByProperty(Organisation.class, "organisationType.organisationTypeId", +// OrganisationType.COURSE_TYPE); +// List subgroups = userManagementService.findByProperty(Organisation.class, +// "organisationType.organisationTypeId", OrganisationType.CLASS_TYPE); +// +// registerForm.setGroupNumber(Integer.valueOf(groups.size())); +// registerForm.setSubgroupNumber(Integer.valueOf(subgroups.size())); +// registerForm.setSysadminNumber(userManagementService.getCountRoleForSystem(Role.ROLE_SYSADMIN)); +// registerForm.setAdminNumber(userManagementService.getCountRoleForSystem(Role.ROLE_GROUP_ADMIN)); +// registerForm.setAuthorNumber(userManagementService.getCountRoleForSystem(Role.ROLE_AUTHOR)); +// registerForm.setMonitorNumber(userManagementService.getCountRoleForSystem(Role.ROLE_MONITOR)); +// registerForm.setManagerNumber(userManagementService.getCountRoleForSystem(Role.ROLE_GROUP_MANAGER)); +// registerForm.setLearnerNumber(userManagementService.getCountRoleForSystem(Role.ROLE_LEARNER)); +// registerForm.setAuthorAdminNumber(userManagementService.getCountRoleForSystem(Role.ROLE_AUTHOR_ADMIN)); +// registerForm.setUserNumber(Integer.valueOf(userManagementService.findAll(User.class).size())); + } + + public void updateRegistration(RegisterForm registerForm, Registration reg) { + reg.setName(registerForm.getName()); + reg.setEmail(registerForm.getEmail()); + reg.setSiteName(registerForm.getSiteName()); + reg.setOrganisation(registerForm.getOrganisation()); + reg.setServerCountry(registerForm.getServerCountry()); + reg.setPublicDirectory(registerForm.isPublicDirectory()); + reg.setEnableLamsCommunityIntegration(registerForm.isEnableLamsCommunityIntegration()); + } + + @SuppressWarnings("unchecked") + public ActionForward register(ActionMapping mapping, ActionForm form, HttpServletRequest request, + HttpServletResponse response) throws Exception { + + RegisterForm registerForm = (RegisterForm) form; + + // get the default registration if there is any + configurationService = getConfiguration(); + Registration reg = configurationService.getRegistration(); + + if (reg == null) { + reg = new Registration(); + } + + if (reg.getServerKey() == null) { + updateRegistration(registerForm, reg); + + String url = LAMS_COMMUNITY_REGISTER_URL; + + HashMap params = new HashMap(); + params.put("sitename", URLEncoder.encode(registerForm.getSiteName(), "UTF8")); + params.put("organisation", URLEncoder.encode(registerForm.getOrganisation(), "UTF8")); + params.put("rname", URLEncoder.encode(registerForm.getName(), "UTF8")); + params.put("remail", URLEncoder.encode(registerForm.getEmail(), "UTF8")); + params.put("servercountry", URLEncoder.encode(registerForm.getServerCountry(), "UTF8")); + params.put("public", "" + registerForm.isPublicDirectory()); + + + + params.put("serverurl", URLEncoder.encode(Configuration.get(ConfigurationKeys.SERVER_URL), "UTF8")); + params.put("serverversion", URLEncoder.encode(Configuration.get(ConfigurationKeys.VERSION), "UTF8")); + params.put("serverbuild", URLEncoder.encode(Configuration.get(ConfigurationKeys.SERVER_VERSION_NUMBER), + "UTF8")); + params.put("serverlocale", URLEncoder.encode(Configuration.get(ConfigurationKeys.SERVER_LANGUAGE), "UTF8")); + params.put("langdate", URLEncoder.encode(Configuration.get(ConfigurationKeys.DICTIONARY_DATE_CREATED), + "UTF8")); + + // Get Server statistics for registration + List groups = userManagementService.findByProperty(Organisation.class, + "organisationType.organisationTypeId", OrganisationType.COURSE_TYPE); + List subgroups = userManagementService.findByProperty(Organisation.class, + "organisationType.organisationTypeId", OrganisationType.CLASS_TYPE); + + params.put("groupno", Integer.valueOf(groups.size()).toString()); + params.put("subgroupno", Integer.valueOf(subgroups.size()).toString()); + params.put("sysadminno", userManagementService.getCountRoleForSystem(Role.ROLE_SYSADMIN).toString()); + params.put("adminno", userManagementService.getCountRoleForSystem(Role.ROLE_GROUP_ADMIN).toString()); + params.put("managerno", userManagementService.getCountRoleForSystem(Role.ROLE_GROUP_MANAGER).toString()); + params.put("authorno", userManagementService.getCountRoleForSystem(Role.ROLE_AUTHOR).toString()); + params.put("monitorno", userManagementService.getCountRoleForSystem(Role.ROLE_MONITOR).toString()); + params.put("learnerno", userManagementService.getCountRoleForSystem(Role.ROLE_LEARNER).toString()); + params.put("authoradminno", userManagementService.getCountRoleForSystem(Role.ROLE_AUTHOR_ADMIN).toString()); + params.put("userno", Integer.valueOf(userManagementService.findAll(User.class).size()).toString()); + + // make the request to lamscommunity.org + InputStream is = WebUtil.getResponseInputStreamFromExternalServer(url, params); + BufferedReader isReader = new BufferedReader(new InputStreamReader(is)); + String str = isReader.readLine(); + log.debug("Response from lamscommunity: " + str); + + // get the serverId,serverKey pair result back from lamscommunity + if (str!=null) + { + String result[] = str.split(","); + + if (result.length == 2 && result[0].equals("success")) + { + String decrypted = decrypt(result[1], LAMS_COMMUNITY_KEY); + String decryptedResult[] = decrypted.split(","); + reg.setServerKey(decryptedResult[0]); + reg.setServerID(decryptedResult[1]); + configurationService.saveOrUpdateRegistration(reg); + request.setAttribute("successKey", "register.success"); + } + else + { + request.setAttribute("errorKey", "register.error.registrationFailed"); + } + } + else + { + request.setAttribute("errorKey", "register.error.noResponseFromLamsCommunity"); + } + } + + return unspecified(mapping, registerForm, request, response); + } + + private Configuration getConfiguration() { + if (configurationService == null) { + WebApplicationContext ctx = WebApplicationContextUtils.getRequiredWebApplicationContext(getServlet() + .getServletContext()); + configurationService = (Configuration) ctx.getBean("configurationService"); + + } + return configurationService; + } + + public static String decrypt(String text, String password) throws Exception{ + Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding"); + + //setup key + byte[] keyBytes= new byte[16]; + byte[] b= password.getBytes("UTF-8"); + int len= b.length; + if (len > keyBytes.length) len = keyBytes.length; + System.arraycopy(b, 0, keyBytes, 0, len); + SecretKeySpec keySpec = new SecretKeySpec(keyBytes, "AES"); + IvParameterSpec ivSpec = new IvParameterSpec(keyBytes); + cipher.init(Cipher.DECRYPT_MODE,keySpec,ivSpec); + + BASE64Decoder decoder = new BASE64Decoder(); + byte [] results = cipher.doFinal(decoder.decodeBuffer(text)); + return new String(results,"UTF-8"); + } + } Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/RegisterDTO.java =================================================================== diff -u --- lams_admin/src/java/org/lamsfoundation/lams/admin/web/RegisterDTO.java (revision 0) +++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/RegisterDTO.java (revision 3bc65f0652b50074ff432112d8e47a6df3728810) @@ -0,0 +1,166 @@ +/**************************************************************** + * Copyright (C) 2008 LAMS Foundation (http://lamsfoundation.org) + * ============================================================= + * License Information: http://lamsfoundation.org/licensing/lams/2.0/ + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2.0 + * as published by the Free Software Foundation. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA + * + * http://www.gnu.org/licenses/gpl.txt + * **************************************************************** + */ + +/* $Id$ */ +package org.lamsfoundation.lams.admin.web; + +public class RegisterDTO { + + int groupNumber; + int subgroupNumber; + int sysadminNumber; + int adminNumber; + int authorNumber; + int managerNumber; + int monitorNumber; + int learnerNumber; + int authorAdminNumber; + int userNumber; + String serverUrl; + String serverVersion; + String serverBuild; + String serverLocale; + String serverLanguageDate; + + public RegisterDTO() { + } + + public int getGroupNumber() { + return groupNumber; + } + + public void setGroupNumber(int groupNumber) { + this.groupNumber = groupNumber; + } + + public int getSubgroupNumber() { + return subgroupNumber; + } + + public void setSubgroupNumber(int subgroupNumber) { + this.subgroupNumber = subgroupNumber; + } + + public int getSysadminNumber() { + return sysadminNumber; + } + + public void setSysadminNumber(int sysadminNumber) { + this.sysadminNumber = sysadminNumber; + } + + public int getAdminNumber() { + return adminNumber; + } + + public void setAdminNumber(int adminNumber) { + this.adminNumber = adminNumber; + } + + public int getAuthorNumber() { + return authorNumber; + } + + public void setAuthorNumber(int authorNumber) { + this.authorNumber = authorNumber; + } + + public int getManagerNumber() { + return managerNumber; + } + + public void setManagerNumber(int managerNumber) { + this.managerNumber = managerNumber; + } + + public int getMonitorNumber() { + return monitorNumber; + } + + public void setMonitorNumber(int monitorNumber) { + this.monitorNumber = monitorNumber; + } + + public int getLearnerNumber() { + return learnerNumber; + } + + public void setLearnerNumber(int learnerNumber) { + this.learnerNumber = learnerNumber; + } + + public int getAuthorAdminNumber() { + return authorAdminNumber; + } + + public void setAuthorAdminNumber(int authorAdminNumber) { + this.authorAdminNumber = authorAdminNumber; + } + + public int getUserNumber() { + return userNumber; + } + + public void setUserNumber(int userNumber) { + this.userNumber = userNumber; + } + + public String getServerUrl() { + return serverUrl; + } + + public void setServerUrl(String serverUrl) { + this.serverUrl = serverUrl; + } + + public String getServerVersion() { + return serverVersion; + } + + public void setServerVersion(String serverVersion) { + this.serverVersion = serverVersion; + } + + public String getServerBuild() { + return serverBuild; + } + + public void setServerBuild(String serverBuild) { + this.serverBuild = serverBuild; + } + + public String getServerLocale() { + return serverLocale; + } + + public void setServerLocale(String serverLocale) { + this.serverLocale = serverLocale; + } + + public String getServerLanguageDate() { + return serverLanguageDate; + } + + public void setServerLanguageDate(String serverLanguageDate) { + this.serverLanguageDate = serverLanguageDate; + } +} Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/RegisterForm.java =================================================================== diff -u --- lams_admin/src/java/org/lamsfoundation/lams/admin/web/RegisterForm.java (revision 0) +++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/RegisterForm.java (revision 3bc65f0652b50074ff432112d8e47a6df3728810) @@ -0,0 +1,254 @@ +/**************************************************************** + * Copyright (C) 2008 LAMS Foundation (http://lamsfoundation.org) + * ============================================================= + * License Information: http://lamsfoundation.org/licensing/lams/2.0/ + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2.0 + * as published by the Free Software Foundation. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA + * + * http://www.gnu.org/licenses/gpl.txt + * **************************************************************** + */ + +/* $Id$ */ +package org.lamsfoundation.lams.admin.web; + +import org.apache.struts.action.ActionForm; + +/** + * Form for registering a LAMS instance in lamscommunity, also used to get the + * server key for lams community integrations + * + * @author lfoxton + * + */ + +/** + * @struts.form name="RegisterForm" + */ +public class RegisterForm extends ActionForm { + + public static final long serialVersionUID = 3981332305712057100L; + + String siteName; + String organisation; + String name; + String email; + String serverCountry; + boolean publicDirectory; + boolean enableLamsCommunityIntegration; + String method; +// int groupNumber; +// int subgroupNumber; +// int sysadminNumber; +// int adminNumber; +// int authorNumber; +// int managerNumber; +// int monitorNumber; +// int learnerNumber; +// int authorAdminNumber; +// int userNumber; +// String serverUrl; +// String serverVersion; +// String serverBuild; +// String serverLocale; +// String serverLanguageDate; + + public RegisterForm() { + } + + public String getSiteName() { + return siteName; + } + + public void setSiteName(String siteName) { + this.siteName = siteName; + } + + public String getOrganisation() { + return organisation; + } + + public void setOrganisation(String organisation) { + this.organisation = organisation; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + + public String getServerCountry() { + return serverCountry; + } + + public void setServerCountry(String serverCountry) { + this.serverCountry = serverCountry; + } + + public boolean isPublicDirectory() { + return publicDirectory; + } + + public void setPublicDirectory(boolean publicDirectory) { + this.publicDirectory = publicDirectory; + } + + public boolean isEnableLamsCommunityIntegration() { + return enableLamsCommunityIntegration; + } + + public void setEnableLamsCommunityIntegration(boolean enableLamsCommunityIntegration) { + this.enableLamsCommunityIntegration = enableLamsCommunityIntegration; + } + + public String getMethod() { + return method; + } + + public void setMethod(String method) { + this.method = method; + } + + +// public int getGroupNumber() { +// return groupNumber; +// } +// +// public void setGroupNumber(int groupNumber) { +// this.groupNumber = groupNumber; +// } +// +// public int getSubgroupNumber() { +// return subgroupNumber; +// } +// +// public void setSubgroupNumber(int subgroupNumber) { +// this.subgroupNumber = subgroupNumber; +// } +// +// public int getSysadminNumber() { +// return sysadminNumber; +// } +// +// public void setSysadminNumber(int sysadminNumber) { +// this.sysadminNumber = sysadminNumber; +// } +// +// public int getAdminNumber() { +// return adminNumber; +// } +// +// public void setAdminNumber(int adminNumber) { +// this.adminNumber = adminNumber; +// } +// +// public int getAuthorNumber() { +// return authorNumber; +// } +// +// public void setAuthorNumber(int authorNumber) { +// this.authorNumber = authorNumber; +// } +// +// public int getManagerNumber() { +// return managerNumber; +// } +// +// public void setManagerNumber(int managerNumber) { +// this.managerNumber = managerNumber; +// } +// +// public int getMonitorNumber() { +// return monitorNumber; +// } +// +// public void setMonitorNumber(int monitorNumber) { +// this.monitorNumber = monitorNumber; +// } +// +// public int getLearnerNumber() { +// return learnerNumber; +// } +// +// public void setLearnerNumber(int learnerNumber) { +// this.learnerNumber = learnerNumber; +// } +// +// public int getAuthorAdminNumber() { +// return authorAdminNumber; +// } +// +// public void setAuthorAdminNumber(int authorAdminNumber) { +// this.authorAdminNumber = authorAdminNumber; +// } +// +// public int getUserNumber() { +// return userNumber; +// } +// +// public void setUserNumber(int userNumber) { +// this.userNumber = userNumber; +// } +// +// public String getServerUrl() { +// return serverUrl; +// } +// +// public void setServerUrl(String serverUrl) { +// this.serverUrl = serverUrl; +// } +// +// public String getServerVersion() { +// return serverVersion; +// } +// +// public void setServerVersion(String serverVersion) { +// this.serverVersion = serverVersion; +// } +// +// public String getServerBuild() { +// return serverBuild; +// } +// +// public void setServerBuild(String serverBuild) { +// this.serverBuild = serverBuild; +// } +// +// public String getServerLocale() { +// return serverLocale; +// } +// +// public void setServerLocale(String serverLocale) { +// this.serverLocale = serverLocale; +// } +// +// public String getServerLanguageDate() { +// return serverLanguageDate; +// } +// +// public void setServerLanguageDate(String serverLanguageDate) { +// this.serverLanguageDate = serverLanguageDate; +// } +} Index: lams_admin/web/WEB-INF/struts/struts-config.xml =================================================================== diff -u -r72b80f6befe04cb189ab1e682082671d109a90b9 -r3bc65f0652b50074ff432112d8e47a6df3728810 --- lams_admin/web/WEB-INF/struts/struts-config.xml (.../struts-config.xml) (revision 72b80f6befe04cb189ab1e682082671d109a90b9) +++ lams_admin/web/WEB-INF/struts/struts-config.xml (.../struts-config.xml) (revision 3bc65f0652b50074ff432112d8e47a6df3728810) @@ -18,10 +18,18 @@ type="org.lamsfoundation.lams.admin.web.UserOrgRoleForm" /> + + @@ -61,6 +69,7 @@ + @@ -86,13 +95,9 @@ - - - - + - @@ -121,30 +126,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - @@ -215,6 +196,9 @@ @@ -269,6 +253,18 @@ /> + + + + @@ -645,6 +643,21 @@ /> + + + + + migration.systemname + lams + + + migration.databasetype + mysql + + + migration.patchpath + org/lamsfoundation/lams/dbupdates + + + migration.datasource + java:jdbc/lams-ds + + xls excel/ms-excel @@ -69,10 +86,18 @@ + com.tacitknowledge.util.migration.jdbc.WebAppJNDIMigrationLauncher + + org.springframework.web.context.ContextLoaderListener + + + org.lamsfoundation.lams.web.session.SetMaxTimeoutListener + + action @@ -120,6 +145,10 @@ /fckeditor/editor/filemanager/browser/default/connectors/jsp/connector + + 120 + + + + + + + + + +

-
+
+ + +

+ +

+
+ + +

+ +

+
+
+
+ + + + + @@ -374,44 +357,39 @@ @@ -424,97 +402,87 @@ + -
+ + + +
- +
- +
- "/> + +
- "/> +
- + + + Afghanistan + Aland Islands + Albania + Algeria + American Samoa + Andorra + Angola + Anguilla + Antarctica + Antigua And Barbuda + Argentina + Armenia + Aruba + Australia + Austria + Azerbaijan + Bahamas + Bahrain + Bangladesh + Barbados + Belarus + Belgium + Belize + Benin + Bermuda + Bhutan + Bolivia + Bosnia And Herzegovina + Botswana + Bouvet Island + Brazil + Brunei Darussalam + Bulgaria + Burkina Faso + Burundi + Cambodia + Cameroon + Canada + Cape Verde + Cayman Islands + Central African Republic + Chad + Chile + China + Christmas Island + Cocos (Keeling) Islands + Colombia + Comoros + Congo + Cook Islands + Costa Rica + Cote DIvoire + Croatia + Cuba + Cyprus + Czech Republic + Denmark + Djibouti + Dominica + Dominican Republic + Ecuador + Egypt + El Salvador + Equatorial Guinea + Eritrea + Estonia + Ethiopia + Faroe Islands + Fiji + Finland + France + French Guiana + French Polynesia + French Southern Territories + Gabon + Gambia + Georgia + Germany + Ghana + Gibraltar + Greece + Greenland + Grenada + Guadeloupe + Guam + Guatemala + Guinea + Guinea-Bissau + Guyana + Haiti + Holy See (Vatican City State) + Honduras + Hong Kong + Hungary + Iceland + India + Indonesia + Iran + Iraq + Ireland + Israel + Italy + Jamaica + Japan + Jordan + Kazakhstan + Kenya + Kiribati + North Korea + South Korea + Kuwait + Kyrgyzstan + Lao Peoples Democratic Republic + Latvia + Lebanon + Lesotho + Liberia + Libyan Arab Jamahiriya + Liechtenstein + Lithuania + Luxembourg + Macao + Macedonia, FYRO + Madagascar + Malawi + Malaysia + Maldives + Mali + Malta + Marshall Islands + Martinique + Mauritania + Mauritius + Mayotte + Mexico + Micronesia + Moldova + Monaco + Mongolia + Montserrat + Morocco + Mozambique + Myanmar + Namibia + Nauru + Nepal + Netherlands + Netherlands Antilles + New Caledonia + New Zealand + Nicaragua + Niger + Nigeria + Niue + Norfolk Island + Norway + Oman + Pakistan + Palau + Palestinian Territory + Panama + Papua New Guinea + Paraguay + Peru + Philippines + Pitcairn + Poland + Portugal + Puerto Rico + Qatar + Reunion + Romania + Russia + Rwanda + Saint Helena + Saint Kitts And Nevis + Saint Lucia + Saint Pierre And Miquelon + Saint Vincent And The Grenadines + Samoa + San Marino + Sao Tome And Principe + Saudi Arabia + Senegal + Serbia And Montenegro + Seychelles + Sierra Leone + Singapore + Slovakia + Slovenia + Solomon Islands + Somalia + South Africa + Spain + Sri Lanka + Sudan + Suriname + Swaziland + Sweden + Switzerland + Syria + Taiwan + Tajikistan + Tanzania + Thailand + Timor-Leste + Togo + Tokelau + Tonga + Trinidad And Tobago + Tunisia + Turkey + Turkmenistan + Tuvalu + Uganda + Ukraine + United Arab Emirates + United Kingdom + United States + Uruguay + Uzbekistan + Vanuatu + Venezuela + Viet Nam + Western Sahara + Yemen + Zambia + Zimbabwe +
-     -   +
- - "/> + ${registerDTO.serverUrl}
- - "/> + ${registerDTO.serverVersion}
- - "/> + ${registerDTO.serverBuild}
- - "/> + ${registerDTO.serverLocale}
- - "/> + ${registerDTO.serverLanguageDate}
- - "/> + ${registerDTO.groupNumber}
- - "/> + ${registerDTO.subgroupNumber}
- - "/> + ${registerDTO.sysadminNumber}
- - "/> + ${registerDTO.adminNumber}
- - "/> + ${registerDTO.managerNumber}
- - "/> + ${registerDTO.authorNumber}
- - "/> + ${registerDTO.monitorNumber}
- - "/> + ${registerDTO.learnerNumber}
- - "/> + ${registerDTO.authorAdminNumber}
- - "/> + ${registerDTO.userNumber}

"/> "/> - " onClick="javascript:history.back(-1)"/> + " onClick="javascript:window.location.href='/sysadminstart.do'"/>

- +