Author: vdegtyarev
Date: Fri Apr 25 08:21:39 2014
New Revision: 1589952
URL: http://svn.apache.org/r1589952
Log:
OPENMEETINGS-983 minor changes. Verification URL is generated correctly.
Added:
openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFor.java
Modified:
openmeetings/trunk/singlewebapp/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java
openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/mail/EmailManager.java
Modified:
openmeetings/trunk/singlewebapp/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java
URL:
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java?rev=1589952&r1=1589951&r2=1589952&view=diff
==============================================================================
---
openmeetings/trunk/singlewebapp/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java
(original)
+++
openmeetings/trunk/singlewebapp/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java
Fri Apr 25 08:21:39 2014
@@ -648,16 +648,14 @@ public class UserManager implements IUse
boolean checkEmail =
usersDao.checkUserEMail(email, null);
if (checkName && checkEmail) {
- String link =
configurationDao.getBaseUrl();
String hash = activatedHash;
if (hash == null){
hash =
ManageCryptStyle.getInstanceOfCrypt().createPassPhrase(login
+
CalendarPatterns.getDateWithTimeByMiliSeconds(new Date()));
}
- link += "activate?u=" + hash;
if (sendWelcomeMessage &&
email.length() != 0) {
- String sendMail =
emailManagement.sendMail(login, password, email, link, sendConfirmation);
+ String sendMail =
emailManagement.sendMail(login, password, email, hash, sendConfirmation);
if (!sendMail.equals("success"))
return new Long(-19);
}
Modified:
openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/mail/EmailManager.java
URL:
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/mail/EmailManager.java?rev=1589952&r1=1589951&r2=1589952&view=diff
==============================================================================
---
openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/mail/EmailManager.java
(original)
+++
openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/mail/EmailManager.java
Fri Apr 25 08:21:39 2014
@@ -25,6 +25,9 @@ import org.apache.openmeetings.db.dao.ba
import org.apache.openmeetings.web.app.WebSession;
import org.apache.openmeetings.web.mail.template.FeedbackTemplate;
import org.apache.openmeetings.web.mail.template.RegisterUserTemplate;
+import org.apache.openmeetings.web.pages.ActivatePage;
+import org.apache.openmeetings.web.util.OmUrlFor;
+import org.apache.wicket.request.mapper.parameter.PageParameters;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
@@ -34,6 +37,7 @@ import org.springframework.beans.factory
*
*/
public class EmailManager {
+
private static final Logger log =
Red5LoggerFactory.getLogger(EmailManager.class, webAppRootKey);
@Autowired
@@ -42,18 +46,21 @@ public class EmailManager {
private MailHandler mailHandler;
/**
- * sends a mail adress to the user with his account data
+ * sends a mail address to the user with his account data
*
* @param username
* @param userpass
* @param email
+ * @param hash
* @return
* @throws Exception
*/
- public String sendMail(String username, String userpass, String email,
String link, Boolean sendEmailWithVerficationCode) {
+ public String sendMail(String username, String userpass, String email,
String hash, Boolean sendEmailWithVerficationCode) {
log.debug("sendMail:: username = {}, email = {}", username,
email);
Integer sendEmailAtRegister =
configurationDao.getConfValue("sendEmailAtRegister", Integer.class, "0");
+ String link = new
OmUrlFor("active").urlForPage(ActivatePage.class, new PageParameters().add("u",
hash));
+
if (sendEmailAtRegister == 1) {
mailHandler.send(email, WebSession.getString(512)
, RegisterUserTemplate.getEmail(username,
userpass, email, sendEmailWithVerficationCode ? link : null));
Added:
openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFor.java
URL:
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFor.java?rev=1589952&view=auto
==============================================================================
---
openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFor.java
(added)
+++
openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFor.java
Fri Apr 25 08:21:39 2014
@@ -0,0 +1,58 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") + you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings.web.util;
+
+import static org.apache.openmeetings.web.app.Application.getBean;
+
+import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
+import org.apache.wicket.Component;
+import org.apache.wicket.Page;
+import org.apache.wicket.request.mapper.parameter.PageParameters;
+
+public class OmUrlFor extends Component {
+
+ private static final long serialVersionUID = 1L;
+
+ public OmUrlFor(String id) {
+ super(id);
+ }
+
+ @Override
+ protected void onRender() {
+ }
+
+ /**
+ * Returns URL that references a given page class using a given set of
page
+ * parameters.
+ *
+ * @param pageClass
+ * Class of page
+ * @param pp
+ * Parameters to page
+ *
+ */
+ public <C extends Page> String urlForPage(Class<C> pageClass,
PageParameters pp) {
+
+ String url =
getBean(ConfigurationDao.class).getBaseUrl().endsWith("/") ?
+ getBean(ConfigurationDao.class).getBaseUrl() :
getBean(ConfigurationDao.class).getBaseUrl() + "/";
+ url += urlFor(pageClass, pp).toString().substring(2);
+
+ return url;
+ }
+}