Commit b46f18a0 by Harsh Shah

Minor review changes

parent d5f156e0
package performa.form;
import java.util.Date;
import java.util.Map;
import java.util.*;
import javax.servlet.http.HttpServletRequest;
import oneit.business.content.Article;
import oneit.components.ParticipantInitialisationContext;
import oneit.email.ConfigurableEmailer;
import oneit.logging.*;
import oneit.net.LoopbackHTTP;
import oneit.objstore.ObjectTransaction;
import oneit.objstore.StorageException;
import oneit.objstore.*;
import oneit.objstore.rdbms.filters.EqualsFilter;
import oneit.security.SecUser;
import oneit.servlets.forms.*;
import oneit.servlets.process.*;
import oneit.utils.*;
import oneit.utils.transform.MapTransform;
import oneit.utils.transform.param.ErrorTransform;
import oneit.utils.transform.param.ORMTransform;
import oneit.utils.transform.param.PrefixCompoundTransform;
import performa.orm.Candidate;
import performa.orm.CompanyUser;
import performa.orm.Job;
import performa.utils.WebUtils;
import performa.orm.*;
import performa.utils.*;
public class ForgotPasswordFP extends SaveFP
{
private static LoggingArea LOG = LoggingArea.createLoggingArea("ForgotPasswordFP");
protected int DEFAULT_PASSWORD_LENGTH = 6;
protected ConfigurableEmailer resetCodeEmailer;
private static final LoggingArea LOG = LoggingArea.createLoggingArea("ForgotPasswordFP");
protected int DEFAULT_PASSWORD_LENGTH = 6;
protected ConfigurableEmailer resetCodeEmailer;
@Override
public SuccessfulResult processForm(ORMProcessState process, SubmissionDetails submission, Map params) throws BusinessException, StorageException
{
HttpServletRequest request = submission.getRequest();
ObjectTransaction objTran = process.getTransaction();
String email = (String) request.getParameter("email");
Job job = (Job) process.getAttribute("Job");
HttpServletRequest request = submission.getRequest();
ObjectTransaction objTran = process.getTransaction();
String email = (String) request.getParameter("email");
Job job = (Job) process.getAttribute("Job");
Debug.assertion(email != null, "Email not avaialble");
Debug.assertion(StringUtils.subBlanks(email) != null, "Email not avaialble");
email = StringUtils.trim(email);
LogMgr.log(LOG, LogLevel.PROCESSING1, "Started to send pasword reset link email.", email);
SecUser secUser = SecUser.searchNAME (process.getTransaction(), email);
SecUser secUser = SecUser.searchNAME (objTran, email);
if(secUser==null)
if(secUser == null)
{
SecUser[] userSearch = SecUser.SearchByALL().andEmail(new EqualsFilter<>(email)).search(objTran);
......@@ -59,38 +49,42 @@ public class ForgotPasswordFP extends SaveFP
}
}
if(secUser!=null)
if(secUser != null)
{
LogMgr.log(LOG, LogLevel.PROCESSING1, "Inside ForgotPasswordFP for send reset pasword link mail to ", email);
Map emailParams;
Map emailParams;
CompanyUser companyUser = secUser.getExtension(CompanyUser.REFERENCE_CompanyUser);
if(companyUser != null)
{
if(companyUser.getForgotPasswordKey() == null)
{
String resetCode = new RandomStringGen().generateHumanAlphaNum(new Integer(DEFAULT_PASSWORD_LENGTH));
String resetCode = new RandomStringGen().generateHumanAlphaNum(DEFAULT_PASSWORD_LENGTH);
companyUser.setForgotPasswordKey(resetCode);
}
companyUser.setForgotPasswordMailSendDate(new Date());
emailParams = CollectionUtils.mapEntry("resetcode", companyUser.getForgotPasswordKey())
.mapEntry("url", LoopbackHTTP.getRemoteAccessURL()
+ "/extensions/adminportal/reset_password.jsp"
+ "?id=" + companyUser.getID()
+ "&key=" + companyUser.getForgotPasswordKey()).toMap();
.mapEntry("url", LoopbackHTTP.getRemoteAccessURL() + "/extensions/adminportal/reset_password.jsp"
+ "?id=" + companyUser.getID()
+ "&key=" + companyUser.getForgotPasswordKey()).toMap();
}
else
{
Candidate candidate = secUser.getExtension(Candidate.REFERENCE_Candidate);
Article applyJobArticle = WebUtils.getArticleByShortCut(objTran, WebUtils.APPLY_JOB);
Candidate candidate = secUser.getExtension(Candidate.REFERENCE_Candidate);
if(candidate == null)
{
throw new BusinessException("Sorry, we don't recognize that email address.");
}
Article applyJobArticle = WebUtils.getArticleByShortCut(objTran, WebUtils.APPLY_JOB);
if(candidate.getForgotPasswordKey() == null)
{
String resetCode = new RandomStringGen().generateHumanAlphaNum(new Integer(DEFAULT_PASSWORD_LENGTH));
String resetCode = new RandomStringGen().generateHumanAlphaNum(DEFAULT_PASSWORD_LENGTH);
candidate.setForgotPasswordKey(resetCode);
}
......@@ -104,20 +98,13 @@ public class ForgotPasswordFP extends SaveFP
+ "&jid=" + job.getID()).toMap();
}
PrefixCompoundTransform compoundTransform = new PrefixCompoundTransform();
ObjectTransform defaultTransform = new MapTransform(emailParams);
compoundTransform.setDefault(defaultTransform);
compoundTransform.add("user", new ORMTransform(secUser));
ObjectTransform transform = new StringUtils.NullToBlankPostTransform(new ErrorTransform(compoundTransform));
ObjectTransform transform = Utils.createCompoundTransform(emailParams, secUser);
try
{
resetCodeEmailer.sendMail(transform, new String[] { email });
Utils.sendMail(resetCodeEmailer, transform, new String[]{email}, null, secUser);
LogMgr.log(LOG, LogLevel.PROCESSING1, "Mail has been sent from " + ForgotPasswordFP.class + " to :: ", email);
LogMgr.log(LOG, LogLevel.PROCESSING1, "Reset code email sent to :: ", email);
}
catch(Exception e)
{
......
......@@ -25,7 +25,6 @@ public class ResendVerificationFP extends SaveFP
public SuccessfulResult processForm(ORMProcessState process, SubmissionDetails submission, Map params) throws BusinessException, StorageException
{
HttpServletRequest request = submission.getRequest();
String nextPage = (String) request.getAttribute("nextPage");
CompanyUser companyUser = (CompanyUser) request.getAttribute("CompanyUser");
LogMgr.log(CompanyUser.LOG, LogLevel.PROCESSING1, "Inside ResendVerificationFP resending verification email to company user : ", companyUser);
......
......@@ -15,7 +15,7 @@ import performa.utils.Utils;
public class ResetPasswordFP extends ORMProcessFormProcessor
{
private static LoggingArea LOG = LoggingArea.createLoggingArea("ResetPasswordFP");
private static final LoggingArea LOG = LoggingArea.createLoggingArea("ResetPasswordFP");
@Override
......@@ -25,19 +25,16 @@ public class ResetPasswordFP extends ORMProcessFormProcessor
CompanyUser companyUser = user.getExtension(CompanyUser.REFERENCE_CompanyUser);
Candidate candidate = user.getExtension(Candidate.REFERENCE_Candidate);
LogMgr.log(LOG, LogLevel.PROCESSING1, "Inside ResetPasswordFP user:", user," companyUser:", companyUser, " candidate:", candidate);
if(companyUser != null)
{
LogMgr.log(LOG, LogLevel.PROCESSING1, "Inside ResetPasswordFP for Company User reset pasword to ", user);
companyUser.setForgotPasswordKey(null);
}
else if (candidate != null)
{
LogMgr.log(LOG, LogLevel.PROCESSING1, "Inside ResetPasswordFP for Candidate reset pasword to ", user);
candidate.setForgotPasswordKey(null);
}
return Utils.processSuccessfulLogin(process, submission, params, user);
}
......
......@@ -5,8 +5,7 @@ import javax.activation.DataSource;
import javax.servlet.http.*;
import oneit.appservices.config.ConfigMgr;
import oneit.business.content.Article;
import oneit.email.ConfigurableArticleTemplateEmailer;
import oneit.email.ConfigurableEmailerException;
import oneit.email.*;
import oneit.logging.LogLevel;
import oneit.logging.LogMgr;
import oneit.logging.LoggingArea;
......@@ -305,7 +304,7 @@ public class Utils
}
public static void sendMail(ConfigurableArticleTemplateEmailer emailer, ObjectTransform finalTransform, String[] emails, DataSource[] attachments, BaseBusinessClass bo) throws ConfigurableEmailerException
public static void sendMail(ConfigurableEmailer emailer, ObjectTransform finalTransform, String[] emails, DataSource[] attachments, BaseBusinessClass bo) throws ConfigurableEmailerException
{
LogMgr.log(LoggingArea.ALL, LogLevel.PROCESSING1, "Sending Mail from Utils class to" + Arrays.toString(emails));
......
......@@ -49,7 +49,7 @@
<div class="tab-content">
<div class="tab-pane active" id="company-detail">
<div class="tabpage-title">
My Detials
My Details
</div>
<div class="form-group">
<label><oneit:label GUIName="Email Address" /></label>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment