Commit 49f2f36c by Nilu

fix issues in ajax and auto save. Need to add timer

parent 3a54f5dd
...@@ -222,14 +222,18 @@ public class JobApplication extends BaseJobApplication ...@@ -222,14 +222,18 @@ public class JobApplication extends BaseJobApplication
public int getActualQuestionNumber() public int getActualQuestionNumber()
{ {
return getCandidate().pipelineCandidate().toProfileAssessmentAnswers().uniqueVals().size() + 1; Filter<Answer> filter = Answer.SearchByAll().andAnswerNo(new NotEqualsFilter<>(0));
return getCandidate().pipelineCandidate().toProfileAssessmentAnswers(filter).uniqueVals().size() + 1;
} }
public int getQuestionNumber() public int getQuestionNumber()
{ {
return getCandidate().pipelineCandidate().toProfileAssessmentAnswers().uniqueVals().size() Filter<Answer> filter = Answer.SearchByAll().andAnswerNo(new NotEqualsFilter<>(0));
- getCandidate().pipelineCandidate().toProfileAssessmentAnswers().toQuestion().toRightQuestion().uniqueVals().size();
return getCandidate().pipelineCandidate().toProfileAssessmentAnswers(filter).uniqueVals().size()
- getCandidate().pipelineCandidate().toProfileAssessmentAnswers(filter).toQuestion().toRightQuestion().uniqueVals().size();
} }
......
...@@ -158,9 +158,7 @@ ...@@ -158,9 +158,7 @@
%> %>
</div> </div>
<div class="section-btn text-center"> <div class="section-btn text-center">
<oneit:button value="Save and exit" name="gotoPage" id="saveAndExitWorkStyle" cssClass="box-btn-gray" <a href="<%= exitPage%>" class="btn box-btn-gray">Save and exit</a>
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", exitPage)
.toMap() %>"/>
</div> </div>
<% <%
} }
...@@ -171,6 +169,8 @@ ...@@ -171,6 +169,8 @@
</div> </div>
<oneit:button value="Submit Application" name="completeApplication" id="gotoPageNext" cssClass="box-btn hide" <oneit:button value="Submit Application" name="completeApplication" id="gotoPageNext" cssClass="box-btn hide"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", nextPage) requestAttribs="<%= CollectionUtils.mapEntry("nextPage", nextPage)
.mapEntry ("restartProcess", Boolean.TRUE)
.mapEntry("attribNamesToRestore", Collections.singleton("JobApplication"))
.toMap() %>"/> .toMap() %>"/>
</oneit:evalBody> </oneit:evalBody>
......
...@@ -10,7 +10,21 @@ ...@@ -10,7 +10,21 @@
String nextPage = WebUtils.getSamePageInRenderMode(request, "SubmitApplication"); String nextPage = WebUtils.getSamePageInRenderMode(request, "SubmitApplication");
ObjectTransaction objTran = ObjectTransaction.getTransaction(); ObjectTransaction objTran = ObjectTransaction.getTransaction();
Long jobAppId = (Long) process.getAttribute("JobApplicationID"); Long jobAppId = (Long) process.getAttribute("JobApplicationID");
JobApplication jobApplication = JobApplication.getJobApplicationByID(objTran, jobAppId); JobApplication jobApplication = null;
if(jobAppId != null)
{
jobApplication = JobApplication.getJobApplicationByID(objTran, jobAppId);
}
else
{
jobApplication = (JobApplication) process.getAttribute("JobApplication");
process.setAttribute("JobApplicationID" , jobApplication.getID().longValue());
}
Debug.assertion(jobApplication != null, "Job Application cannot be null in applicant portal - job match assessment ");
Job job = jobApplication.getJob(); Job job = jobApplication.getJob();
Candidate candidate = jobApplication.getCandidate(); Candidate candidate = jobApplication.getCandidate();
int questionNumber = process.getAttribute("QuestionNumber")!= null ? (int) process.getAttribute("QuestionNumber") : jobApplication.getQuestionNumber(); int questionNumber = process.getAttribute("QuestionNumber")!= null ? (int) process.getAttribute("QuestionNumber") : jobApplication.getQuestionNumber();
...@@ -84,12 +98,6 @@ ...@@ -84,12 +98,6 @@
function gotoNextQuestion(questionNumber, actualNumber, completeApplication, answerNo) function gotoNextQuestion(questionNumber, actualNumber, completeApplication, answerNo)
{ {
if(completeApplication)
{
$("#gotoPageNext").click();
return false;
}
ajaxProcessAddJQ ("<%= request.getContextPath() %>/extensions/applicantportal/inc/save_job_match_answers.jsp", 'form' , ajaxProcessAddJQ ("<%= request.getContextPath() %>/extensions/applicantportal/inc/save_job_match_answers.jsp", 'form' ,
{questionNumber : questionNumber, answerNo: answerNo, actualNumber: actualNumber, completeApplication: completeApplication}, {questionNumber : questionNumber, answerNo: answerNo, actualNumber: actualNumber, completeApplication: completeApplication},
function () {}, function () {},
...@@ -101,6 +109,11 @@ ...@@ -101,6 +109,11 @@
} }
}, },
"POST"); "POST");
if(completeApplication)
{
$("#gotoPageNext").click();
return false;
}
$('.section-job-match').empty(); $('.section-job-match').empty();
ajaxProcessAddJQ ("<%= request.getContextPath() %>/extensions/applicantportal/inc/job_match_questions.jsp", '.section-job-match' , {questionNumber : questionNumber, actualNumber: actualNumber}); ajaxProcessAddJQ ("<%= request.getContextPath() %>/extensions/applicantportal/inc/job_match_questions.jsp", '.section-job-match' , {questionNumber : questionNumber, actualNumber: actualNumber});
......
...@@ -159,10 +159,20 @@ ...@@ -159,10 +159,20 @@
<% <%
if(cultureQuestionNo < total) if(cultureQuestionNo < total)
{ {
Set<String> attribsToRestore = new HashSet<String> ();
attribsToRestore.add ("CultureQuestionNo");
attribsToRestore.add ("JobApplication");
process.setAttribute("CultureQuestionNo", (cultureQuestionNo + 1));
%> %>
<oneit:button value=" " name="gotoPage" id="nextButton" skin="link" <oneit:button value=" " name="saveAndExitCulture" id="nextButton" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", currentPage) requestAttribs="<%= CollectionUtils.mapEntry("nextPage", currentPage)
.mapEntry("procParams", CollectionUtils.mapEntry("CultureQuestionNo", (cultureQuestionNo + 1)).toMap()) .mapEntry("procParams", CollectionUtils.mapEntry("CultureQuestionNo", (cultureQuestionNo + 1))
.mapEntry("JobApplication", jobApplication).toMap())
.mapEntry("attribNamesToRestore", attribsToRestore)
.mapEntry(NotificationUtils.DISPLAY_NOTIFICATION_PARAM, false)
.mapEntry ("restartProcess", Boolean.TRUE)
.toMap() %>"/> .toMap() %>"/>
<% <%
} }
...@@ -179,23 +189,29 @@ ...@@ -179,23 +189,29 @@
<oneit:button value="Complete" name="completeApplication" id="nextButton" cssClass="box-btn" <oneit:button value="Complete" name="completeApplication" id="nextButton" cssClass="box-btn"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", nextPage) requestAttribs="<%= CollectionUtils.mapEntry("nextPage", nextPage)
.mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).toMap()) .mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).toMap())
.mapEntry ("restartProcess", Boolean.TRUE)
.mapEntry("attribNamesToRestore", Collections.singleton("JobApplication")) .mapEntry("attribNamesToRestore", Collections.singleton("JobApplication"))
.mapEntry("restartProcess", Boolean.TRUE)
.toMap() %>"/> .toMap() %>"/>
<% <%
} }
else if(isLast) else if(isLast)
{ {
%> %>
<oneit:button value="Proceed to next step" name="saveAndExitCulture" cssClass="box-btn m-hide" id="gotoPage"
<oneit:button value="Proceed to next step" name="gotoPage" cssClass="box-btn m-hide" id="gotoPage"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", nextPage) requestAttribs="<%= CollectionUtils.mapEntry("nextPage", nextPage)
.mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).toMap()) .mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).toMap())
.toMap() %>"/> .mapEntry ("restartProcess", Boolean.TRUE)
<oneit:button value="Proceed" name="gotoPage" cssClass="box-btn show-mobile" .mapEntry(NotificationUtils.DISPLAY_NOTIFICATION_PARAM, false)
.mapEntry("attribNamesToRestore", Collections.singleton("JobApplication"))
.toMap() %>"/>
<oneit:button value="Proceed" name="saveAndExitCulture" cssClass="box-btn show-mobile"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", nextPage) requestAttribs="<%= CollectionUtils.mapEntry("nextPage", nextPage)
.mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).toMap()) .mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).toMap())
.toMap() %>"/> .mapEntry ("restartProcess", Boolean.TRUE)
.mapEntry(NotificationUtils.DISPLAY_NOTIFICATION_PARAM, false)
.mapEntry("attribNamesToRestore", Collections.singleton("JobApplication"))
.toMap() %>"/>
<% <%
} }
%> %>
......
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