Commit 11bb67ca by Nilu Committed by Harsh Shah

displaying only one question at a time in C006 - Culture criteria

parent a6092453
......@@ -5,6 +5,9 @@ import oneit.logging.LoggingArea;
import oneit.objstore.StorageException;
import oneit.objstore.rdbms.filters.EqualsFilter;
import oneit.objstore.rdbms.filters.IsNotNullFilter;
import oneit.objstore.utils.ObjstoreUtils;
import oneit.utils.CollectionUtils;
import oneit.utils.ObjectTransform;
import oneit.utils.filter.CollectionFilter;
import oneit.utils.filter.Filter;
import oneit.utils.parsers.FieldException;
......@@ -115,6 +118,12 @@ public class JobApplication extends BaseJobApplication
return safeRedirect;
}
public List<CultureCriteriaAnswer> getSortedCultureCriteriaAnswers()
{
return ObjstoreUtils.sort(getCultureCriteriaAnswersSet(),
new ObjectTransform[] {CultureCriteriaAnswer.pipesCultureCriteriaAnswer().toObjectID()},
new Comparator[]{CollectionUtils.DEFAULT_COMPARATOR});
}
public boolean initAssessmentAnswers(List<Question> questions) throws StorageException, FieldException
{
......
......@@ -1913,6 +1913,14 @@ table.pos-table{
margin-bottom: 13px;
width: 100%;
}
.question-y-n{
border-radius: 3px;
background-color: #ffffff;
border: solid 2px #d3d3d3;
position: relative;
top: -2px;
padding: 30px 33px;
}
.question-y-n label.second-label{
margin-bottom: 24px;
font-weight: normal;
......@@ -1979,6 +1987,7 @@ table.pos-table{
}
.main-wc-section {
padding: 63px 70px;
background-color: #fbfbfb;
}
.full-width {
display: block;
......
......@@ -5,23 +5,42 @@
<oneit:dynIncluded>
<%
ObjectTransaction objTran = process.getTransaction ();
String nextPage = WebUtils.getSamePageInRenderMode(request, "JobMatchAssessment");
JobApplication jobApplication = (JobApplication) process.getAttribute("JobApplication");
Job job = jobApplication.getJob();
String exitPage = WebUtils.getArticleLink(request, objTran, WebUtils.APPLY_JOB, "Page");
exitPage = exitPage + "&id=" + job.getID() + "&key=" + job.getRandomKey();
boolean toRedirect = jobApplication.createCultureCriteriaObjects();
ObjectTransaction objTran = process.getTransaction ();
String currentPage = WebUtils.getSamePageInRenderMode(request, "WorkplaceCulture");
String nextPage = WebUtils.getSamePageInRenderMode(request, "JobMatchAssessment");
JobApplication jobApplication = (JobApplication) process.getAttribute("JobApplication");
Job job = jobApplication.getJob();
int cultureQuestionNo = process.getAttribute("CultureQuestionNo")!= null ? (int) process.getAttribute("CultureQuestionNo") : jobApplication.getCultureCriteriaAnswersCount();
String exitPage = WebUtils.getArticleLink(request, objTran, WebUtils.APPLY_JOB, "Page") + "&id=" + job.getID() + "&key=" + job.getRandomKey();
boolean toRedirect = jobApplication.createCultureCriteriaObjects();
if(toRedirect)
{
process.setAttribute("CultureQuestionNo", cultureQuestionNo);
%><%@include file="/saferedirect.jsp" %><%
}
int total = jobApplication.getCultureCriteriaAnswersCount();
boolean isLast = total == cultureQuestionNo;
if(isLast)
{
cultureQuestionNo = total -1;
}
CultureCriteriaAnswer answer = jobApplication.getSortedCultureCriteriaAnswers().get(cultureQuestionNo);
String numberText = (cultureQuestionNo + 1) + "/" + total;
process.setAttribute("JobApplication", jobApplication);
%>
<script>
$(document.body).addClass('bg-color');
function gotoNextQuestion()
{
$("#nextButton").click();
}
</script>
<div class="main-application-outline">
......@@ -59,21 +78,20 @@
</div>
<div class="selection-br-line"></div>
<div class="main-sc-section main-wc-section">
<div class="rateing-title">
Rate the importance of each item below
<span><oneit:toString value="<%= numberText %>" mode="EscapeHTML"/></span>
</div>
<%
FormTag applicationForm = FormTag.getActiveFormTag(request);
FormBuilder formBuilder = applicationForm.getFormBuilder();
int i = 1;
int size = jobApplication.getCultureCriteriaAnswersCount();
for(CultureCriteriaAnswer answer: jobApplication.getCultureCriteriaAnswersSet())
{
CultureCriteria criteria = answer.getCultureCriteria();
Collection<CultureElementQuestion> questions = criteria.pipelineCultureCriteria().toCultureElement().toQuestions().vals();
String optionKey = WebUtils.getRadioSingleAssocKey(request, answer, CultureCriteriaAnswer.SINGLEREFERENCE_SelectedQuestion);
String formValue = formBuilder.fieldValue (optionKey, answer.getSelectedQuestion() == null ? "" : String.valueOf(answer.getSelectedQuestionID()));
CultureCriteria criteria = answer.getCultureCriteria();
Collection<CultureElementQuestion> questions = criteria.pipelineCultureCriteria().toCultureElement().toQuestions().vals();
String optionKey = WebUtils.getRadioSingleAssocKey(request, answer, CultureCriteriaAnswer.SINGLEREFERENCE_SelectedQuestion);
String formValue = formBuilder.fieldValue (optionKey, answer.getSelectedQuestion() == null ? "" : String.valueOf(answer.getSelectedQuestionID()));
%>
<div class="selection-form-title">Question <%= i++%></div>
<div class="form-group-new question-y-n">
<div class="form-group-new question-y-n">
<%
for(CultureElementQuestion question : questions)
{
......@@ -81,7 +99,7 @@
String selectedStr = (CollectionUtils.equals(questionId, formValue) ? "checked" : "");
%>
<div class="radio radio-primary second-radio-primary full-width">
<input type="radio" name="<%= optionKey %>" id="<%= questionId %>" class="element_rating_radio" value="<%= questionId %>" <%= selectedStr %> >
<input type="radio" name="<%= optionKey %>" id="<%= questionId %>" class="element_rating_radio" value="<%= questionId %>" <%= selectedStr %> onchange="<%= !isLast ? "gotoNextQuestion();": "return false;"%>">
<label for="<%= questionId %>">
<oneit:toString value="<%= question.getDescription() %>" mode="EscapeHTML" nullValue="-"/>
</label>
......@@ -89,32 +107,38 @@
<%
}
%>
</div>
<%
if(i<=size)
{
%>
<div class="section-br-inside"></div>
<%
}
%>
<%
}
%>
</div>
</div>
<div class="selection-br-line"></div>
<div class="main-sc-section-bottom btn-remove-padd">
<div class="section-btn text-center">
<%
if(cultureQuestionNo < total)
{
%>
<oneit:button value=" " name="gotoPage" id="nextButton" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", currentPage)
.mapEntry("procParams", CollectionUtils.mapEntry("CultureQuestionNo", (cultureQuestionNo + 1)).toMap())
.toMap() %>"/>
<%
}
%>
<oneit:button value="Save and exit" name="saveAndExitCulture" cssClass="box-btn-gray"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", exitPage)
.mapEntry ("JobApplication", jobApplication)
.mapEntry(UpdateMappedObjFP.FAIL_VALIDATION_ERRORS, Boolean.FALSE)
.toMap() %>"/>
<oneit:button value="Proceed to next step" name="gotoPage" cssClass="box-btn"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", nextPage)
.mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).toMap())
.toMap() %>"/>
<%
if(isLast)
{
%>
<oneit:button value="Proceed to next step" name="gotoPage" cssClass="box-btn"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", nextPage)
.mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).toMap())
.toMap() %>"/>
<%
}
%>
</div>
</div>
</div>
......
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