Commit a323c912 by Harsh Shah

Finish Hotfix-20190502

parents 2e692848 84051538
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
<column name="open_date" type="Date" nullable="true"/> <column name="open_date" type="Date" nullable="true"/>
<column name="apply_by" type="Date" nullable="true"/> <column name="apply_by" type="Date" nullable="true"/>
<column name="include_assessment_criteria" type="Boolean" nullable="false"/> <column name="include_assessment_criteria" type="Boolean" nullable="false"/>
<column name="include_culture" type="Boolean" nullable="false"/>
<column name="assessment_type" type="String" nullable="false" length="200"/> <column name="assessment_type" type="String" nullable="false" length="200"/>
<column name="random_key" type="String" nullable="true" length="10"/> <column name="random_key" type="String" nullable="true" length="10"/>
<column name="job_type" type="String" nullable="false" length="200"/> <column name="job_type" type="String" nullable="false" length="200"/>
......
...@@ -14,6 +14,7 @@ CREATE TABLE tl_job ( ...@@ -14,6 +14,7 @@ CREATE TABLE tl_job (
open_date datetime NULL, open_date datetime NULL,
apply_by datetime NULL, apply_by datetime NULL,
include_assessment_criteria char(1) NOT NULL, include_assessment_criteria char(1) NOT NULL,
include_culture char(1) NOT NULL,
assessment_type varchar(200) NOT NULL, assessment_type varchar(200) NOT NULL,
random_key varchar(10) NULL, random_key varchar(10) NULL,
job_type varchar(200) NOT NULL, job_type varchar(200) NOT NULL,
......
...@@ -15,6 +15,7 @@ CREATE TABLE tl_job ( ...@@ -15,6 +15,7 @@ CREATE TABLE tl_job (
open_date date NULL, open_date date NULL,
apply_by date NULL, apply_by date NULL,
include_assessment_criteria char(1) NOT NULL, include_assessment_criteria char(1) NOT NULL,
include_culture char(1) NOT NULL,
assessment_type varchar2(200) NOT NULL, assessment_type varchar2(200) NOT NULL,
random_key varchar2(10) NULL, random_key varchar2(10) NULL,
job_type varchar2(200) NOT NULL, job_type varchar2(200) NOT NULL,
......
...@@ -15,6 +15,7 @@ CREATE TABLE tl_job ( ...@@ -15,6 +15,7 @@ CREATE TABLE tl_job (
open_date timestamp NULL, open_date timestamp NULL,
apply_by timestamp NULL, apply_by timestamp NULL,
include_assessment_criteria char(1) NOT NULL, include_assessment_criteria char(1) NOT NULL,
include_culture char(1) NOT NULL,
assessment_type varchar(200) NOT NULL, assessment_type varchar(200) NOT NULL,
random_key varchar(10) NULL, random_key varchar(10) NULL,
job_type varchar(200) NOT NULL, job_type varchar(200) NOT NULL,
......
...@@ -15,7 +15,7 @@ import oneit.utils.CollectionUtils; ...@@ -15,7 +15,7 @@ import oneit.utils.CollectionUtils;
import oneit.utils.RandomStringGen; import oneit.utils.RandomStringGen;
import performa.orm.JobApplication; import performa.orm.JobApplication;
import performa.orm.WorkFlow; import performa.orm.WorkFlow;
import performa.orm.types.ApplicationStatus; import performa.orm.types.AppView;
import performa.utils.PDFUtils; import performa.utils.PDFUtils;
...@@ -30,7 +30,7 @@ public class ApplicantReportFP extends ORMProcessFormProcessor ...@@ -30,7 +30,7 @@ public class ApplicantReportFP extends ORMProcessFormProcessor
HttpServletRequest request = submission.getRequest(); HttpServletRequest request = submission.getRequest();
RandomStringGen rand = new RandomStringGen(); RandomStringGen rand = new RandomStringGen();
final String randFileName = rand.generateAlphaNum(16) + ".pdf"; final String randFileName = rand.generateAlphaNum(16) + ".pdf";
boolean showList = (boolean) request.getAttribute("ShowList"); AppView appView = (AppView) request.getAttribute("AppView");
boolean detailed = (boolean) request.getAttribute("Detailed"); boolean detailed = (boolean) request.getAttribute("Detailed");
boolean applicantPage = (boolean) request.getAttribute("ApplicantPage"); boolean applicantPage = (boolean) request.getAttribute("ApplicantPage");
WorkFlow workflow = (WorkFlow) request.getAttribute("WorkFlow"); WorkFlow workflow = (WorkFlow) request.getAttribute("WorkFlow");
...@@ -49,7 +49,7 @@ public class ApplicantReportFP extends ORMProcessFormProcessor ...@@ -49,7 +49,7 @@ public class ApplicantReportFP extends ORMProcessFormProcessor
.mapEntry("WorkFlow", workflow) .mapEntry("WorkFlow", workflow)
.toMap(); .toMap();
if(CollectionUtils.equals(showList, true)) if(appView == AppView.LIST)
{ {
pdfBytes = PDFUtils.generateApplicantsListPDF(submission, data); pdfBytes = PDFUtils.generateApplicantsListPDF(submission, data);
} }
......
package performa.form;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import oneit.logging.*;
import oneit.objstore.ObjectTransaction;
import oneit.objstore.StorageException;
import oneit.servlets.forms.*;
import oneit.servlets.process.*;
import oneit.utils.BusinessException;
import performa.orm.*;
public class ChangeCultureCriteriaFP extends ORMProcessFormProcessor
{
@Override
public SuccessfulResult processForm(ORMProcessState process, SubmissionDetails submission, Map params) throws BusinessException, StorageException
{
HttpServletRequest request = submission.getRequest();
ObjectTransaction objTran = process.getTransaction();
Job job = (Job) request.getAttribute("Job");
LogMgr.log(Job.LOG, LogLevel.PROCESSING1, "Inside ChangeCultureCriteriaFP for ", job , " Include Culture:", job.getIncludeCulture());
if(!job.isTrue(job.getIncludeCulture()))
{
for(CultureCriteria cultureCriteria : job.getCultureCriteriasSet())
{
cultureCriteria.delete();
}
job.setSaveCultureTemplate(false);
job.setCultureTemplate(null);
}
else
{
for(CultureElement cultureElement : CultureElement.searchAll(objTran))
{
CultureCriteria cultureCriteria = CultureCriteria.createCultureCriteria(objTran);
cultureCriteria.setCultureElement(cultureElement);
job.addToCultureCriterias(cultureCriteria);
}
}
LogMgr.log(Job.LOG, LogLevel.PROCESSING1, "ChangeCultureCriteriaFP completed for ", job);
return RedisplayResult.getInstance();
}
}
...@@ -114,7 +114,7 @@ public class Candidate extends BaseCandidate ...@@ -114,7 +114,7 @@ public class Candidate extends BaseCandidate
{ {
int allAnswersCount = getCultureCriteriaAnswersCount(); int allAnswersCount = getCultureCriteriaAnswersCount();
if(allAnswersCount == job.getCultureCriteriasCount()) if(job.showCultureCriteriaSection() && allAnswersCount == job.getCultureCriteriasCount())
{ {
Filter filter = CultureCriteriaAnswer.SearchByAll().andSelectedQuestion(new IsNotNullFilter<>()); Filter filter = CultureCriteriaAnswer.SearchByAll().andSelectedQuestion(new IsNotNullFilter<>());
Collection selectedAnswers = pipelineCandidate().toCultureCriteriaAnswers(filter).vals(); Collection selectedAnswers = pipelineCandidate().toCultureCriteriaAnswers(filter).vals();
...@@ -127,7 +127,7 @@ public class Candidate extends BaseCandidate ...@@ -127,7 +127,7 @@ public class Candidate extends BaseCandidate
public double cultureCompletedPercentage(Job job) public double cultureCompletedPercentage(Job job)
{ {
return (getCultureCriteriaAnswersCount() * 100) / job.getCultureCriteriasCount() ; return job.showCultureCriteriaSection() ? (getCultureCriteriaAnswersCount() * 100) / job.getCultureCriteriasCount() : 0d;
} }
public double roleFitCompletedPercentage(Job job) public double roleFitCompletedPercentage(Job job)
......
package performa.orm; package performa.orm;
import oneit.utils.math.NullArith;
public class CandidateClassScore extends BaseCandidateClassScore public class CandidateClassScore extends BaseCandidateClassScore
{ {
...@@ -10,4 +12,9 @@ public class CandidateClassScore extends BaseCandidateClassScore ...@@ -10,4 +12,9 @@ public class CandidateClassScore extends BaseCandidateClassScore
{ {
// Do not add any code to this, always put it in initialiseNewObject // Do not add any code to this, always put it in initialiseNewObject
} }
public double getWeightedPercentage()
{
return NullArith.divide(getWghtdClassScore(), getMaxWghtdClassScore()) * 100;
}
} }
\ No newline at end of file
...@@ -415,6 +415,16 @@ public class Job extends BaseJob ...@@ -415,6 +415,16 @@ public class Job extends BaseJob
return isTrue(getIncludeAssessmentCriteria()); return isTrue(getIncludeAssessmentCriteria());
} }
public boolean showCultureCriteriaSection()
{
return isTrue(getIncludeCulture());
}
public int getNumberOfSections()
{
return (showCultureCriteriaSection() && showAssessmentCriteriaSection() ? 3 : (showCultureCriteriaSection() || showAssessmentCriteriaSection()) ? 2 : 1);
}
public int getMaxShortlistApplicants() public int getMaxShortlistApplicants()
{ {
return 25; return 25;
......
...@@ -38,6 +38,7 @@ ...@@ -38,6 +38,7 @@
<ATTRIB name="OpenDate" type="Date" dbcol="open_date"/> <ATTRIB name="OpenDate" type="Date" dbcol="open_date"/>
<ATTRIB name="ApplyBy" type="Date" dbcol="apply_by"/> <ATTRIB name="ApplyBy" type="Date" dbcol="apply_by"/>
<ATTRIB name="IncludeAssessmentCriteria" type="Boolean" dbcol="include_assessment_criteria" mandatory="true" defaultValue="Boolean.TRUE"/> <ATTRIB name="IncludeAssessmentCriteria" type="Boolean" dbcol="include_assessment_criteria" mandatory="true" defaultValue="Boolean.TRUE"/>
<ATTRIB name="IncludeCulture" type="Boolean" dbcol="include_culture" mandatory="true" defaultValue="Boolean.TRUE"/>
<ATTRIB name="AssessmentType" type="AssessmentType" dbcol="assessment_type" attribHelper="EnumeratedAttributeHelper" mandatory="true" defaultValue="AssessmentType.COMPREHENSIVE"/> <ATTRIB name="AssessmentType" type="AssessmentType" dbcol="assessment_type" attribHelper="EnumeratedAttributeHelper" mandatory="true" defaultValue="AssessmentType.COMPREHENSIVE"/>
<ATTRIB name="RandomKey" type="String" dbcol="random_key" length="10"/> <ATTRIB name="RandomKey" type="String" dbcol="random_key" length="10"/>
<ATTRIB name="JobType" type="JobType" dbcol="job_type" attribHelper="EnumeratedAttributeHelper" mandatory="true" defaultValue="JobType.FULL_TIME"/> <ATTRIB name="JobType" type="JobType" dbcol="job_type" attribHelper="EnumeratedAttributeHelper" mandatory="true" defaultValue="JobType.FULL_TIME"/>
......
...@@ -165,7 +165,7 @@ public class JobApplication extends BaseJobApplication ...@@ -165,7 +165,7 @@ public class JobApplication extends BaseJobApplication
Candidate candidate = getCandidate(); Candidate candidate = getCandidate();
//to skip culture test //to skip culture test
if(cultureCompleted()) if(!isIncludeCultureCriteria() || cultureCompleted())
{ {
return safeRedirect; return safeRedirect;
} }
...@@ -249,7 +249,7 @@ public class JobApplication extends BaseJobApplication ...@@ -249,7 +249,7 @@ public class JobApplication extends BaseJobApplication
public boolean cultureCompleted() public boolean cultureCompleted()
{ {
return getCandidate().cultureCompleted(getJob()); return isIncludeCultureCriteria() ? getCandidate().cultureCompleted(getJob()) : true;
} }
...@@ -280,6 +280,11 @@ public class JobApplication extends BaseJobApplication ...@@ -280,6 +280,11 @@ public class JobApplication extends BaseJobApplication
{ {
return getJob() != null && isTrue(getJob().getIncludeAssessmentCriteria()); return getJob() != null && isTrue(getJob().getIncludeAssessmentCriteria());
} }
public boolean isIncludeCultureCriteria()
{
return getJob() != null && isTrue(getJob().getIncludeCulture());
}
@Override @Override
public Map getRoleFit() public Map getRoleFit()
...@@ -709,7 +714,7 @@ public class JobApplication extends BaseJobApplication ...@@ -709,7 +714,7 @@ public class JobApplication extends BaseJobApplication
{ {
Tuple.T3<Double, ColorCode, Double> roleFitData = (getRoleFit() != null && getRoleFit().get(null) != null) ? (Tuple.T3<Double, ColorCode, Double>) getRoleFit().get(null) : null; Tuple.T3<Double, ColorCode, Double> roleFitData = (getRoleFit() != null && getRoleFit().get(null) != null) ? (Tuple.T3<Double, ColorCode, Double>) getRoleFit().get(null) : null;
double score = roleFitData != null ? roleFitData.get2() : 0d; double score = roleFitData != null ? roleFitData.get2() > 0 ? roleFitData.get2() : 0d : 0d;
Color color = roleFitData != null ? Utils.getColor(roleFitData.get1()) : RingChart.GREEN; Color color = roleFitData != null ? Utils.getColor(roleFitData.get1()) : RingChart.GREEN;
return new RingChart(getID().toString() + "rolefit.jpeg").addData("Completed", score , color).addData("Incomplete", (100 - score), RingChart.GREY).getChartImage(); return new RingChart(getID().toString() + "rolefit.jpeg").addData("Completed", score , color).addData("Incomplete", (100 - score), RingChart.GREY).getChartImage();
......
package performa.orm.types;
import java.util.*;
import oneit.utils.*;
/**
* This class was generated using constGen.bat.
* DO NOT MODIFY THIS CODE.
* Edit the associated .xml file, and regenerate this file
* constGen (directory) (file minus extension)
* e.g. constGen C:\...\sql FieldType
*/
public class AppView extends AbstractEnumerated
{
public static final EnumeratedFactory FACTORY_AppView = new AppViewFactory();
public static final AppView LIST = new AppView ("LIST", "LIST", "List", false);
public static final AppView GRID = new AppView ("GRID", "GRID", "Grid", false);
public static final AppView DETAILED_GRID = new AppView ("DETAILED_GRID", "DETAILED_GRID", "Detailed Grid", false);
private static final AppView[] allAppViews =
new AppView[] { LIST,GRID,DETAILED_GRID};
private static AppView[] getAllAppViews ()
{
return allAppViews;
}
private AppView (String name, String value, String description, boolean disabled)
{
super (name, value, description, disabled);
}
public static final Comparator COMPARE_BY_POSITION = new CompareEnumByPosition (allAppViews);
static
{
defineAdditionalData ();
}
public boolean isEqual (AppView other)
{
return this.name.equals (other.name);
}
public Enumeration getAllInstances ()
{
return AppView.getAll ();
}
private Object readResolve() throws java.io.ObjectStreamException
{
return AppView.forName (this.name);
}
public EnumeratedFactory getFactory ()
{
return FACTORY_AppView;
}
public static AppView forName (String name)
{
if (name == null) { return null; }
AppView[] all = getAllAppViews();
int enumIndex = AbstractEnumerated.getIndexForName (all, name);
return all[enumIndex];
}
public static AppView forValue (String value)
{
if (value == null) { return null; }
AppView[] all = getAllAppViews();
int enumIndex = AbstractEnumerated.getIndexForValue (getAllAppViews (), value);
return all[enumIndex];
}
public static java.util.Enumeration getAll ()
{
return AbstractEnumerated.getAll (getAllAppViews());
}
public static AppView[] getAppViewArray ()
{
return (AppView[])getAllAppViews().clone ();
}
public static void defineAdditionalData ()
{
}
static class AppViewFactory implements EnumeratedFactory
{
public AbstractEnumerated getForName (String name)
{
return AppView.forName (name);
}
public AbstractEnumerated getForValue (String name)
{
return AppView.forValue (name);
}
public Enumeration getAll ()
{
return AppView.getAll ();
}
}
public Map getAdditionalAttributes ()
{
Map attribs = new HashMap ();
return attribs;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<ROOT>
<CONSTANT package="performa.orm.types" name="AppView">
<VALUE name="LIST" value="LIST" description="List"/>
<VALUE name="GRID" value="GRID" description="Grid"/>
<VALUE name="DETAILED_GRID" value="DETAILED_GRID" description="Detailed Grid"/>
</CONSTANT>
</ROOT>
\ No newline at end of file
...@@ -423,9 +423,29 @@ public class AnalysisEngine ...@@ -423,9 +423,29 @@ public class AnalysisEngine
TestAnalysis testAnalysis = candidate.getTestAnalysisFor(level); TestAnalysis testAnalysis = candidate.getTestAnalysisFor(level);
Map<FactorClass, Tuple.T3<Double, ColorCode, Double>> scoreMap = new HashMap(); Map<FactorClass, Tuple.T3<Double, ColorCode, Double>> scoreMap = new HashMap();
boolean isExpress = level.getAppliedToExpress();
if(testAnalysis != null && testAnalysis.getCandidateClassScoresCount() > 0) if(testAnalysis != null && testAnalysis.getCandidateClassScoresCount() > 0)
{ {
Tuple.T3<Double, ColorCode, Double> suitabilityScore = getSuitabilityScore(testAnalysis);
double totalPercentage = 0d;
int count = 0;
for(LevelClassCriteria levelClassCriteria : level.getLevelClassCriteriasSet())
{
FactorClass factorClass = levelClassCriteria.getFactorClass();
Filter<CandidateClassScore> candidateClassScoreFilter = CandidateClassScore.SearchByAll().andFactorClass(new EqualsFilter(factorClass));
CandidateClassScore candidateClassScore = testAnalysis.pipelineTestAnalysis().toCandidateClassScores(candidateClassScoreFilter).val();
if(isExpress && candidateClassScore != null)
{
totalPercentage += candidateClassScore.getWeightedPercentage();
count++;
}
}
double average = totalPercentage / count;
double ratio = (average / suitabilityScore.get2());
for(LevelClassCriteria levelClassCriteria : level.getLevelClassCriteriasSet()) for(LevelClassCriteria levelClassCriteria : level.getLevelClassCriteriasSet())
{ {
FactorClass factorClass = levelClassCriteria.getFactorClass(); FactorClass factorClass = levelClassCriteria.getFactorClass();
...@@ -437,16 +457,23 @@ public class AnalysisEngine ...@@ -437,16 +457,23 @@ public class AnalysisEngine
Double scorePercentage = 0d; Double scorePercentage = 0d;
ColorCode colorCode = null; ColorCode colorCode = null;
if(candidateClassScore != null && classNormalisation != null && NullArith.greaterThan(classNormalisation.getWghtStddevScore(), 0d)) if(isExpress && candidateClassScore != null)
{
score = (double)candidateClassScore.getWghtdClassScore();
scorePercentage = NullArith.round(NullArith.divide(candidateClassScore.getWeightedPercentage(), ratio), 2);
colorCode = candidateClassScore.getColorCode();
}
else if(candidateClassScore != null && classNormalisation != null && NullArith.greaterThan(classNormalisation.getWghtStddevScore(), 0d))
{ {
score = classNormalisation.getRoleFitScore(candidateClassScore.getWghtdClassScore()); score = classNormalisation.getRoleFitScore(candidateClassScore.getWghtdClassScore());
maxScore = classNormalisation.getRoleFitScore(candidateClassScore.getMaxWghtdClassScore()); maxScore = classNormalisation.getRoleFitScore(candidateClassScore.getMaxWghtdClassScore());
colorCode = candidateClassScore.getColorCode(); colorCode = candidateClassScore.getColorCode();
scorePercentage = NullArith.round(NullArith.divide(NullArith.multiply(score, 100), maxScore), 2); scorePercentage = NullArith.round(NullArith.divide(NullArith.multiply(score, 100), maxScore), 2);
} }
scoreMap.put(factorClass, new Tuple.T3(score, colorCode, scorePercentage)); scoreMap.put(factorClass, new Tuple.T3(score, colorCode, scorePercentage));
} }
scoreMap.put(null, getSuitabilityScore(testAnalysis)); scoreMap.put(null, suitabilityScore);
} }
LogMgr.log(JobApplication.LOG, LogLevel.PROCESSING1, "AnalysisEngine --> getRoleFitSuitability completed for candidate ", candidate, " Level ", level); LogMgr.log(JobApplication.LOG, LogLevel.PROCESSING1, "AnalysisEngine --> getRoleFitSuitability completed for candidate ", candidate, " Level ", level);
......
...@@ -275,14 +275,22 @@ public class PerformaEmailFetcher implements Runnable, InitialisationParticipant ...@@ -275,14 +275,22 @@ public class PerformaEmailFetcher implements Runnable, InitialisationParticipant
if(message.getAllRecipients() != null && message.getAllRecipients().length > 0) if(message.getAllRecipients() != null && message.getAllRecipients().length > 0)
{ {
tmpRecipient = ((InternetAddress) message.getAllRecipients()[0]).getAddress(); for(Address receipientAddress : message.getAllRecipients())
{
tmpRecipient = ((InternetAddress)receipientAddress).getAddress();
if(StringUtils.subBlanks(tmpRecipient) != null && tmpRecipient.contains("job"))
{
tmpJobId = getJobIdentifierFromEmail(tmpRecipient);
if(tmpJobId != null && !tmpJobId.isEmpty() && StringUtils.isNumber(tmpJobId))
{
break;
}
}
}
} }
if(StringUtils.subBlanks(tmpRecipient) != null)
{
tmpJobId = getJobIdentifierFromEmail(tmpRecipient);
}
tmpEmailText = EmailFetcher.getText(message, new ArrayList<>()); tmpEmailText = EmailFetcher.getText(message, new ArrayList<>());
tmpContents = getAttachments(message); tmpContents = getAttachments(message);
} }
...@@ -476,8 +484,8 @@ public class PerformaEmailFetcher implements Runnable, InitialisationParticipant ...@@ -476,8 +484,8 @@ public class PerformaEmailFetcher implements Runnable, InitialisationParticipant
public static String getJobIdentifierFromEmail(String strReceipient) public static String getJobIdentifierFromEmail(String strReceipient)
{ {
int index = strReceipient.indexOf('@'); int index = strReceipient.indexOf('@');
return strReceipient.substring(0, index).replace("job", ""); return strReceipient.substring(0, index).replace("job", "");
} }
private static List<FileBinaryContent> getAttachments(Message message) throws IOException, MessagingException private static List<FileBinaryContent> getAttachments(Message message) throws IOException, MessagingException
......
...@@ -4447,6 +4447,14 @@ no-applicant.inactive a:hover,no-applicant.inactive a:hover span{ ...@@ -4447,6 +4447,14 @@ no-applicant.inactive a:hover,no-applicant.inactive a:hover span{
text-transform: uppercase; text-transform: uppercase;
width: 20%; width: 20%;
} }
.appli-jcs3 {
color: #4a4a4a;
font-size: 11px;
letter-spacing: 1px;
padding: 26px 18px 5px;
text-transform: uppercase;
width: 40%;
}
.appli-overall{ .appli-overall{
color: #4a4a4a; color: #4a4a4a;
font-size: 11px; font-size: 11px;
...@@ -4678,12 +4686,24 @@ span.right-img { ...@@ -4678,12 +4686,24 @@ span.right-img {
margin-right: 8px; margin-right: 8px;
margin-top: 4px; margin-top: 4px;
} }
.detailed-grid-list a:before{
background-image: url('../images/details-icon-black.jpg');
width: 13px;
height: 13px;
content: '';
float: left;
margin-right: 8px;
margin-top: 4px;
}
.short-list.active a:before{ .short-list.active a:before{
background-image: url('../images/list-active.png'); background-image: url('../images/list-active.png');
} }
.grid-list.active a:before{ .grid-list.active a:before{
background-image: url('../images/grid-active.png'); background-image: url('../images/grid-active.png');
} }
.detailed-grid-list.active a:before{
background-image: url('../images/details-icon.jpg');
}
.appli-list-shorting.main-shortlist{ .appli-list-shorting.main-shortlist{
margin-top: 0; margin-top: 0;
} }
......
...@@ -27,6 +27,7 @@ ...@@ -27,6 +27,7 @@
<NODE name="dynamic_content_form::ADMIN_PORTAL" factory="Participant"> <NODE name="dynamic_content_form::ADMIN_PORTAL" factory="Participant">
<FORM name="*.changeAssessmentCriteria" factory="Participant" class="performa.form.ChangeAssessmentCriteriaFP"/> <FORM name="*.changeAssessmentCriteria" factory="Participant" class="performa.form.ChangeAssessmentCriteriaFP"/>
<FORM name="*.changeCultureCriteria" factory="Participant" class="performa.form.ChangeCultureCriteriaFP"/>
<FORM name="*.saveJob" factory="Participant" class="performa.form.SaveJobFP"/> <FORM name="*.saveJob" factory="Participant" class="performa.form.SaveJobFP"/>
<FORM name="*.saveRequirementTemplate" factory="Participant" class="performa.form.SaveRequirementsTemplateFP"/> <FORM name="*.saveRequirementTemplate" factory="Participant" class="performa.form.SaveRequirementsTemplateFP"/>
<FORM name="*.saveCultureTemplate" factory="Participant" class="performa.form.SaveCultureTemplateFP"/> <FORM name="*.saveCultureTemplate" factory="Participant" class="performa.form.SaveCultureTemplateFP"/>
......
...@@ -242,43 +242,48 @@ ...@@ -242,43 +242,48 @@
<label class="label-16 blue-label">Culture</label> <label class="label-16 blue-label">Culture</label>
</div> </div>
<div class="form-brack-line-sub"></div> <div class="form-brack-line-sub"></div>
<div class="row">
<div class="col-md-12 review-medium-title">
<oneit:label GUIName="Organisation Culture Statement" />
<span class="skill-label">
<oneit:toString value="<%= job.getCultureStatement() %>" mode="ParagraphHTML" />
</span>
</div>
</div>
<% <%
for(CultureClass cultureClass : CultureClass.getCultureClassArray()) if(job.showCultureCriteriaSection())
{ {
%> %>
<div class="form-brack-line-sub"></div> <div class="row">
<div class="form-group"> <div class="col-md-12 review-medium-title">
<div class="beloning"> <oneit:label GUIName="Organisation Culture Statement" />
<oneit:toString value="<%= cultureClass %>" mode="EscapeHTML"/> <span class="skill-label">
<oneit:toString value="<%= job.getCultureStatement() %>" mode="ParagraphHTML" />
</span>
</div> </div>
</div> </div>
<div class="form-group"> <%
<% for(CultureClass cultureClass : CultureClass.getCultureClassArray())
for (CultureCriteria criteria : job.getCultureCriteriasForClass(cultureClass)) {
{ %>
if(criteria.getIsApplicable()) <div class="form-brack-line-sub"></div>
<div class="form-group">
<div class="beloning">
<oneit:toString value="<%= cultureClass %>" mode="EscapeHTML"/>
</div>
</div>
<div class="form-group">
<%
for (CultureCriteria criteria : job.getCultureCriteriasForClass(cultureClass))
{ {
%> if(criteria.getIsApplicable())
<div class="row main-review-label"> {
<div class="col-sm-4 col-xs-12 review-label culture-element"> %>
<oneit:toString value="<%= criteria.getCultureElement() %>" mode="EscapeHTML"/> <div class="row main-review-label">
</div> <div class="col-sm-4 col-xs-12 review-label culture-element">
<div class="col-sm-8 col-xs-12 review-data"> <oneit:toString value="<%= criteria.getCultureElement() %>" mode="EscapeHTML"/>
<oneit:toString value="<%= criteria.getCultureElementRating()!= null ? criteria.getCultureElementRating().getDescription() : ""%>" mode="EscapeHTML"/> </div>
(<oneit:toString value="<%= criteria.getImportance() %>" mode="EscapeHTML"/>) <div class="col-sm-8 col-xs-12 review-data">
<oneit:toString value="<%= criteria.getCultureElementRating()!= null ? criteria.getCultureElementRating().getDescription() : ""%>" mode="EscapeHTML"/>
(<oneit:toString value="<%= criteria.getImportance() %>" mode="EscapeHTML"/>)
</div>
</div> </div>
</div> <%
<% }
} }
} }
%> %>
</div> </div>
<% <%
......
...@@ -42,7 +42,7 @@ ...@@ -42,7 +42,7 @@
} }
%> %>
</span> by <oneit:toString value="<%= job.getCreatedBy() %>" mode="EscapeHTML" nullValue=""/> &nbsp;&nbsp;.&nbsp;&nbsp; </span> by <oneit:toString value="<%= job.getCreatedBy() %>" mode="EscapeHTML" nullValue=""/> &nbsp;&nbsp;.&nbsp;&nbsp;
<oneit:toString value="<%= job.getLevel() %>" mode="EscapeHTML" /> <oneit:toString value="<%= job.getOccupation() %>" mode="EscapeHTML" />
</div> </div>
</div> </div>
<div class="white-header"> <div class="white-header">
...@@ -105,7 +105,7 @@ ...@@ -105,7 +105,7 @@
<div class="view-appli-list"> <div class="view-appli-list">
<!--Requirements--> <!--Requirements-->
<% <%
if(job.getIncludeAssessmentCriteria() == Boolean.TRUE) if(job.showAssessmentCriteriaSection())
{ {
%> %>
<table width="100%" cellspacing="0" cellpadding="0" class="charts-table"> <table width="100%" cellspacing="0" cellpadding="0" class="charts-table">
...@@ -304,7 +304,7 @@ ...@@ -304,7 +304,7 @@
for(FactorClass factorClass : factorClassDtls.keySet()) for(FactorClass factorClass : factorClassDtls.keySet())
{ {
Map<FactorLevelLink, Map> factorDetails = factorClassDtls.get(factorClass); Map<FactorLevelLink, Map> factorDetails = factorClassDtls.get(factorClass);
Double rating = roleScoreMap.get(factorClass).get2(); Double rating = roleScoreMap.get(factorClass).get2() > 0 ? roleScoreMap.get(factorClass).get2() : 0d;
index++; index++;
...@@ -382,6 +382,7 @@ ...@@ -382,6 +382,7 @@
</div> </div>
</span> </span>
</div> </div>
<% <%
if(detailed) if(detailed)
{ {
...@@ -433,7 +434,7 @@ ...@@ -433,7 +434,7 @@
</tr> </tr>
</table> </table>
<% <%
if(detailed) if(detailed && job.showCultureCriteriaSection())
{ {
%> %>
<p style="page-break-before: always"></p> <p style="page-break-before: always"></p>
...@@ -442,6 +443,10 @@ ...@@ -442,6 +443,10 @@
%> %>
<!--Culture Fit Data--> <!--Culture Fit Data-->
<%
if(job.showCultureCriteriaSection())
{
%>
<table width="100%" cellspacing="0" cellpadding="0" class="charts-table culture"> <table width="100%" cellspacing="0" cellpadding="0" class="charts-table culture">
<tr> <tr>
<td class="chart-cell"> <td class="chart-cell">
...@@ -543,6 +548,9 @@ ...@@ -543,6 +548,9 @@
</td> </td>
</tr> </tr>
</table> </table>
<%
}
%>
</div> </div>
</div> </div>
</oneit:dynIncluded> </oneit:dynIncluded>
\ No newline at end of file
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
Job job = (Job) process.getAttribute("Job"); Job job = (Job) process.getAttribute("Job");
ApplicationStatus appStatus = (ApplicationStatus) getData(request, "WorkFlowStatus"); ApplicationStatus appStatus = (ApplicationStatus) getData(request, "WorkFlowStatus");
WorkFlow workFlow = (WorkFlow) getData(request, "WorkFlow"); WorkFlow workFlow = (WorkFlow) getData(request, "WorkFlow");
boolean showList = (boolean) getData(request, "ShowList"); AppView appView = (AppView) getData(request, "AppView");
String applicantsPage = WebUtils.getSamePageInRenderMode(request, WebUtils.VIEW_APPLICANTS); String applicantsPage = WebUtils.getSamePageInRenderMode(request, WebUtils.VIEW_APPLICANTS);
List<JobApplication> applications = (List<JobApplication>) getData(request, "applications"); List<JobApplication> applications = (List<JobApplication>) getData(request, "applications");
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
applicantPage="<%= false %>" applicantPage="<%= false %>"
applications="<%= applications %>" applications="<%= applications %>"
WorkFlow="<%= workFlow %>" WorkFlow="<%= workFlow %>"
ShowList="<%= showList %>"/> AppView="<%= appView %>"/>
<div class="int-timeline"> <div class="int-timeline">
<ul> <ul>
<li class="<%= "incomplete " + (noOfIncomplete > 0 ? "has-applicant" : "no-applicant") %> <%= appStatus == ApplicationStatus.DRAFT ? "active" : "inactive" %>"> <li class="<%= "incomplete " + (noOfIncomplete > 0 ? "has-applicant" : "no-applicant") %> <%= appStatus == ApplicationStatus.DRAFT ? "active" : "inactive" %>">
......
...@@ -112,17 +112,22 @@ ...@@ -112,17 +112,22 @@
<oneit:toString value="<%= jobApplication.getRoleFitPercentage() %>" mode="PercentageWholeNumber" /> <oneit:toString value="<%= jobApplication.getRoleFitPercentage() %>" mode="PercentageWholeNumber" />
</div> </div>
</div> </div>
<div class="culture jcc">
<div class="jcc-title">
<img src="file:///<%= PDFUtils.FILE_BASE_PATH %>/images/culture-icon.png" /> culture fit
</div>
<div class="jcc-precentage">
<oneit:toString value="<%= jobApplication.getCultureFitScore() %>" mode="PercentageWholeNumber" />
</div>
</div>
<% <%
if(job.getIncludeAssessmentCriteria()==Boolean.TRUE) if(job.showCultureCriteriaSection())
{
%>
<div class="culture jcc">
<div class="jcc-title">
<img src="file:///<%= PDFUtils.FILE_BASE_PATH %>/images/culture-icon.png" /> culture fit
</div>
<div class="jcc-precentage">
<oneit:toString value="<%= jobApplication.getCultureFitScore() %>" mode="PercentageWholeNumber" />
</div>
</div>
<%
}
if(job.showAssessmentCriteriaSection())
{ {
%> %>
<div class="criteria jcc <%=(missingReq ? "red-bg" : "green-bg")%> "> <div class="criteria jcc <%=(missingReq ? "red-bg" : "green-bg")%> ">
......
...@@ -69,7 +69,7 @@ ...@@ -69,7 +69,7 @@
%> %>
</span> by <oneit:toString value="<%= job.getCreatedBy() %>" mode="EscapeHTML" nullValue=""/> </span> by <oneit:toString value="<%= job.getCreatedBy() %>" mode="EscapeHTML" nullValue=""/>
&nbsp;&nbsp;.&nbsp;&nbsp; &nbsp;&nbsp;.&nbsp;&nbsp;
<oneit:toString value="<%= job.getLevel() %>" mode="EscapeHTML" /> <oneit:toString value="<%= job.getOccupation() %>" mode="EscapeHTML" />
</div> </div>
</div> </div>
...@@ -114,20 +114,25 @@ ...@@ -114,20 +114,25 @@
</span> </span>
role fit role fit
</div> </div>
<%
<div class="appli-jcs appli-l eq-second-height"> if(job.showCultureCriteriaSection())
<span class="appli-view-bar"> {
<div class="progress"> %>
<div class="progress-bar" role="progressbar" aria-valuenow="<%= culture %>" aria-valuemin="0" aria-valuemax="100" <div class="appli-jcs appli-l eq-second-height">
style="<%= "width: " + culture %>"> <span class="appli-view-bar">
<span class="show-precentage"><%= culture %></span> <div class="progress">
</div> <div class="progress-bar" role="progressbar" aria-valuenow="<%= culture %>" aria-valuemin="0" aria-valuemax="100"
style="<%= "width: " + culture %>">
<span class="show-precentage"><%= culture %></span>
</div>
</div>
</span>
culture fit
</div> </div>
</span>
culture fit
</div>
<% <%
if(job.getIncludeAssessmentCriteria() == Boolean.TRUE) }
if(job.showAssessmentCriteriaSection())
{ {
long criteriaVal = jobApplication.getRequirementFitScore(); long criteriaVal = jobApplication.getRequirementFitScore();
String criteria = FormatUtils.stringify(criteriaVal, "PercentageWholeNumber", "0"); String criteria = FormatUtils.stringify(criteriaVal, "PercentageWholeNumber", "0");
......
...@@ -9,9 +9,10 @@ ...@@ -9,9 +9,10 @@
Job job = (Job) process.getAttribute("Job"); Job job = (Job) process.getAttribute("Job");
AppSortOption appSortOpt = (AppSortOption) getData(request, "SortOption"); AppSortOption appSortOpt = (AppSortOption) getData(request, "SortOption");
ApplicationStatus workflowStatus = (ApplicationStatus) getData(request, "WorkFlowStatus"); ApplicationStatus workflowStatus = (ApplicationStatus) getData(request, "WorkFlowStatus");
boolean isDraft = workflowStatus == ApplicationStatus.DRAFT;
ApplicationFilter appFilter = (ApplicationFilter) getData(request, "ApplicationFilter"); ApplicationFilter appFilter = (ApplicationFilter) getData(request, "ApplicationFilter");
Boolean showOrderBy = getData(request, "ShowOrderBy")!= null ? (Boolean) getData(request, "ShowOrderBy") : Boolean.FALSE; Boolean showOrderBy = getData(request, "ShowOrderBy")!= null ? (Boolean) getData(request, "ShowOrderBy") : Boolean.FALSE;
boolean showList = (boolean) getData(request,"ShowList"); AppView appView = (AppView) getData(request,"AppView");
SearchApplicant searchApplicant = (SearchApplicant) getData(request, "SearchApplicant"); SearchApplicant searchApplicant = (SearchApplicant) getData(request, "SearchApplicant");
String applicantsPage = WebUtils.getSamePageInRenderMode(request, WebUtils.VIEW_APPLICANTS) + "&JobID=" + job.getID() + "&WorkFlowStatus=" + workflowStatus.getName(); String applicantsPage = WebUtils.getSamePageInRenderMode(request, WebUtils.VIEW_APPLICANTS) + "&JobID=" + job.getID() + "&WorkFlowStatus=" + workflowStatus.getName();
List<WorkFlow> sortedWorkFlows = ObjstoreUtils.sort(job.getApplicantWFs(), List<WorkFlow> sortedWorkFlows = ObjstoreUtils.sort(job.getApplicantWFs(),
...@@ -36,13 +37,14 @@ ...@@ -36,13 +37,14 @@
$("#select_all").on("click",function(){ $("#select_all").on("click",function(){
$('.checkbox-list input:checkbox').not(this).prop('checked', this.checked); $('.checkbox-list input:checkbox').not(this).prop('checked', this.checked);
enableBulkEdit(); enableBulkEdit();
}); });
}); });
function enableBulkEdit() { function enableBulkEdit() {
$("[name$='AppStatusWorkFlow']").prop("disabled",$('input[class=applicant]:checked').length===0); var disable = <%= isDraft %> || $('input[class=applicant]:checked').length === 0;
$("[name$='AppStatusWorkFlow']").prop("disabled", disable);
} }
$(function(){ $(function(){
...@@ -74,16 +76,22 @@ ...@@ -74,16 +76,22 @@
%> %>
<ul class=""> <ul class="">
<li class="lable-appli-shorting">View</li> <li class="lable-appli-shorting">View</li>
<li class="<%= (showList ? "active" : "" ) + " short-list"%>"> <li class="<%= (appView == AppView.LIST ? "active" : "" ) + " short-list"%>">
<oneit:button value="List" name="gotoPage" skin="link" <oneit:button value="List" name="gotoPage" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicantsPage) requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicantsPage)
.mapEntry("procParams", CollectionUtils.mapEntry("Job", job).mapEntry("ShowList", true).toMap()) .mapEntry("procParams", CollectionUtils.mapEntry("Job", job).mapEntry("AppView", AppView.LIST).toMap())
.toMap() %>"/> .toMap() %>"/>
</li> </li>
<li class="<%= (!showList ? "active" : "" ) + " grid-list"%>"> <li class="<%= (appView == AppView.GRID ? "active" : "" ) + " grid-list"%>">
<oneit:button value="Grid" name="gotoPage" skin="link" <oneit:button value="Grid" name="gotoPage" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicantsPage) requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicantsPage)
.mapEntry("procParams", CollectionUtils.mapEntry("Job", job).mapEntry("ShowList", false).toMap()) .mapEntry("procParams", CollectionUtils.mapEntry("Job", job).mapEntry("AppView", AppView.GRID).toMap())
.toMap() %>"/>
</li>
<li class="<%= (appView == AppView.DETAILED_GRID ? "active" : "" ) + " detailed-grid-list"%>">
<oneit:button value="Detailed Grid" name="gotoPage" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicantsPage)
.mapEntry("procParams", CollectionUtils.mapEntry("Job", job).mapEntry("AppView", AppView.DETAILED_GRID).toMap())
.toMap() %>"/> .toMap() %>"/>
</li> </li>
</ul> </ul>
......
...@@ -20,6 +20,8 @@ ...@@ -20,6 +20,8 @@
<script type="text/javascript"> <script type="text/javascript">
$(document).ready(function() $(document).ready(function()
{ {
$("[name$='WorkFlow']").prop("disabled",true);
$("[name$='WorkFlow']").change(function() $("[name$='WorkFlow']").change(function()
{ {
var id = $(this).closest('.appli-row').attr('id'); var id = $(this).closest('.appli-row').attr('id');
...@@ -139,14 +141,10 @@ ...@@ -139,14 +141,10 @@
</div> </div>
</div> </div>
<% <%
String widthClass = "appli-jcs2"; String widthClass = (job.showAssessmentCriteriaSection() && job.showCultureCriteriaSection()) ? "appli-jcs" :
(job.showAssessmentCriteriaSection() || job.showCultureCriteriaSection()) ? "appli-jcs2" : "appli-jcs3";
if(job.getIncludeAssessmentCriteria() == Boolean.TRUE)
{
widthClass = "appli-jcs";
}
if(job.getIncludeAssessmentCriteria() == Boolean.TRUE) if(job.showAssessmentCriteriaSection())
{ {
%> %>
<div class="<%= widthClass %> appli-l eq-second-height"> <div class="<%= widthClass %> appli-l eq-second-height">
...@@ -166,19 +164,25 @@ ...@@ -166,19 +164,25 @@
</div> </div>
<% <%
} }
if(job.showCultureCriteriaSection())
{
%> %>
<div class="<%= widthClass %> appli-l eq-second-height"> <div class="<%= widthClass %> appli-l eq-second-height">
<span class="appli-view-bar"> <span class="appli-view-bar">
<div class="progress"> <div class="progress">
<div class="completion-progress-bar <%= cultureVal == 100 ? "green-bar": (cultureVal >= 50 && cultureVal < 100 ? "orange-bar" : "red-bar") %>" role="progressbar" aria-valuenow="<%= culture %>" aria-valuemin="0" aria-valuemax="100" <div class="completion-progress-bar <%= cultureVal == 100 ? "green-bar": (cultureVal >= 50 && cultureVal < 100 ? "orange-bar" : "red-bar") %>" role="progressbar" aria-valuenow="<%= culture %>" aria-valuemin="0" aria-valuemax="100"
style="<%= "width: " + culture %>"> style="<%= "width: " + culture %>">
<span class="show-precentage"><%= culture %></span> <span class="show-precentage"><%= culture %></span>
</div> </div>
</div>
</span>
culture fit
</div> </div>
</span> <%
culture fit }
</div> %>
<div class="<%= widthClass %> appli-l eq-second-height"> <div class="<%= widthClass %> appli-l eq-second-height">
<span class="appli-view-bar"> <span class="appli-view-bar">
<div class="progress"> <div class="progress">
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
<% <%
Job job = (Job) process.getAttribute("Job"); Job job = (Job) process.getAttribute("Job");
boolean applicantPage = (boolean) getData(request, "applicantPage"); boolean applicantPage = (boolean) getData(request, "applicantPage");
boolean showList = (boolean) getData(request, "ShowList"); AppView appView = (AppView) getData(request, "AppView");
WorkFlow workFlow = (WorkFlow) getData(request, "WorkFlow"); WorkFlow workFlow = (WorkFlow) getData(request, "WorkFlow");
String editJobPage = WebUtils.getSamePageInRenderMode(request, WebUtils.EDIT_JOB); String editJobPage = WebUtils.getSamePageInRenderMode(request, WebUtils.EDIT_JOB);
String sharePage = WebUtils.getSamePageInRenderMode(request, WebUtils.CREATED_JOB); String sharePage = WebUtils.getSamePageInRenderMode(request, WebUtils.CREATED_JOB);
...@@ -60,7 +60,7 @@ ...@@ -60,7 +60,7 @@
<div class="off-name"> <div class="off-name">
<oneit:toString value="<%= job.getAssessmentType() %>" mode="EscapeHTML" nullValue=""/>: <oneit:toString value="<%= job.getAssessmentType() %>" mode="EscapeHTML" nullValue=""/>:
<span class="ex-management"> <span class="ex-management">
<oneit:toString value="<%= job.getLevel() %>" mode="EscapeHTML" /> <oneit:toString value="<%= job.getOccupation() %>" mode="EscapeHTML" />
</span> </span>
</div> </div>
<div class="off-name"> <div class="off-name">
...@@ -124,11 +124,11 @@ ...@@ -124,11 +124,11 @@
EDIT JOB EDIT JOB
</oneit:button> </oneit:button>
<% <%
if(!applicantPage || !job.isExpressJob()) if(applicantPage)
{ {
%> %>
<oneit:button value=" " cssClass="job-edit-menu-item" name="downloadApplicantReport" skin="link" <oneit:button value=" " cssClass="job-edit-menu-item" name="downloadApplicantReport" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("ShowList", showList) requestAttribs="<%= CollectionUtils.mapEntry("AppView", appView)
.mapEntry("ApplicantPage", applicantPage) .mapEntry("ApplicantPage", applicantPage)
.mapEntry("Applications", applications) .mapEntry("Applications", applications)
.mapEntry("Detailed", false) .mapEntry("Detailed", false)
...@@ -136,14 +136,9 @@ ...@@ -136,14 +136,9 @@
.toMap() %>"> .toMap() %>">
EXPORT APPLICANT REPORT EXPORT APPLICANT REPORT
</oneit:button> </oneit:button>
<%
}
if(applicantPage)
{
%>
<oneit:button value=" " cssClass="job-edit-menu-item" name="downloadApplicantReport" skin="link" <oneit:button value=" " cssClass="job-edit-menu-item" name="downloadApplicantReport" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("ShowList", showList) requestAttribs="<%= CollectionUtils.mapEntry("AppView", appView)
.mapEntry("ApplicantPage", applicantPage) .mapEntry("ApplicantPage", applicantPage)
.mapEntry("Applications", applications) .mapEntry("Applications", applications)
.mapEntry("Detailed", true) .mapEntry("Detailed", true)
......
...@@ -104,19 +104,25 @@ ...@@ -104,19 +104,25 @@
</oneit:button> </oneit:button>
</span> </span>
</div> </div>
<div class="culture jcc">
<img src="images/culture-icon.svg"> culture fit
<span>
<oneit:button value=" " name="gotoPage" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicationPage)
.mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).toMap())
.toMap() %>">
<oneit:toString value="<%= jobApplication.getCultureFitScore() %>" mode="PercentageWholeNumber" />
</oneit:button>
</span>
</div>
<% <%
if(job.getIncludeAssessmentCriteria()==Boolean.TRUE) if(job.showCultureCriteriaSection())
{
%>
<div class="culture jcc">
<img src="images/culture-icon.svg"> culture fit
<span>
<oneit:button value=" " name="gotoPage" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicationPage)
.mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).toMap())
.toMap() %>">
<oneit:toString value="<%= jobApplication.getCultureFitScore() %>" mode="PercentageWholeNumber" />
</oneit:button>
</span>
</div>
<%
}
if(job.showAssessmentCriteriaSection())
{ {
%> %>
<div class="criteria jcc <%=(missingReq ? "red-bg" : "green-bg")%> "> <div class="criteria jcc <%=(missingReq ? "red-bg" : "green-bg")%> ">
......
...@@ -75,12 +75,8 @@ ...@@ -75,12 +75,8 @@
</div> </div>
</div> </div>
<% <%
String widthClass = "appli-jcs2"; String widthClass = (job.showAssessmentCriteriaSection() && job.showCultureCriteriaSection()) ? "appli-jcs" :
(job.showAssessmentCriteriaSection() || job.showCultureCriteriaSection()) ? "appli-jcs2" : "appli-jcs3";
if(job.getIncludeAssessmentCriteria() == Boolean.TRUE)
{
widthClass = "appli-jcs";
}
%> %>
<div class="<%= widthClass %> appli-l eq-second-height"> <div class="<%= widthClass %> appli-l eq-second-height">
<span class="appli-view-bar"> <span class="appli-view-bar">
...@@ -94,20 +90,26 @@ ...@@ -94,20 +90,26 @@
</span> </span>
role fit role fit
</div> </div>
<div class="<%= widthClass %> appli-l eq-second-height"> <%
<span class="appli-view-bar"> if(job.showCultureCriteriaSection())
<div class="progress"> {
<div class="progress-bar" role="progressbar" aria-valuenow="<%= culture %>" aria-valuemin="0" aria-valuemax="100" %>
style="<%= "width: " + culture %>"> <div class="<%= widthClass %> appli-l eq-second-height">
<span class="show-precentage"><%= culture %></span> <span class="appli-view-bar">
</div> <div class="progress">
<div class="progress-bar" role="progressbar" aria-valuenow="<%= culture %>" aria-valuemin="0" aria-valuemax="100"
style="<%= "width: " + culture %>">
<span class="show-precentage"><%= culture %></span>
</div>
</div>
</span>
culture fit
</div> </div>
</span>
culture fit
</div>
<% <%
if(job.getIncludeAssessmentCriteria() == Boolean.TRUE) }
if(job.showAssessmentCriteriaSection())
{ {
%> %>
<div class="<%= widthClass %> appli-l eq-second-height"> <div class="<%= widthClass %> appli-l eq-second-height">
......
...@@ -180,39 +180,44 @@ ...@@ -180,39 +180,44 @@
</div> </div>
<% <%
} }
if(job.showCultureCriteriaSection())
{
%> %>
<div class="culture jcc"> <div class="culture jcc">
<img src="images/culture-icon.svg"> culture fit <img src="images/culture-icon.svg"> culture fit
<span> <span>
<oneit:button value=" " name="gotoPage" skin="link" <oneit:button value=" " name="gotoPage" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicationPage) requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicationPage)
.mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).toMap()) .mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).toMap())
.toMap() %>"> .toMap() %>">
<oneit:toString value="<%= jobApplication.getCultureFitScore() %>" mode="PercentageWholeNumber" /> <oneit:toString value="<%= jobApplication.getCultureFitScore() %>" mode="PercentageWholeNumber" />
</oneit:button> </oneit:button>
</span> </span>
</div> </div>
<div class="detail-box"> <div class="detail-box">
<% <%
Map<CultureClass, Tuple.T2<Long, Set<Tuple.T3>>> cultureFitData = (Map<CultureClass, Tuple.T2<Long, Set<Tuple.T3>>>)jobApplication.getCultureFit(); Map<CultureClass, Tuple.T2<Long, Set<Tuple.T3>>> cultureFitData = (Map<CultureClass, Tuple.T2<Long, Set<Tuple.T3>>>)jobApplication.getCultureFit();
for(CultureClass cClass: cultureFitData.keySet()) for(CultureClass cClass: cultureFitData.keySet())
{ {
if(cClass==null) if(cClass==null)
{ {
continue; continue;
} }
%> %>
<div class="detail-row"> <div class="detail-row">
<div class="detail-label"><oneit:toString value="<%= cClass %>" mode="EscapeHTML"/></div> <div class="detail-label"><oneit:toString value="<%= cClass %>" mode="EscapeHTML"/></div>
<div class="detail-no"><oneit:toString value="<%= cultureFitData.get(cClass) != null ? cultureFitData.get(cClass).get0() : 0 %>" mode="PercentageWholeNumber" /></div> <div class="detail-no"><oneit:toString value="<%= cultureFitData.get(cClass) != null ? cultureFitData.get(cClass).get0() : 0 %>" mode="PercentageWholeNumber" /></div>
</div> </div>
<% <%
} }
%> %>
</div> </div>
<% <%
if(job.getIncludeAssessmentCriteria()==Boolean.TRUE) }
if(job.showAssessmentCriteriaSection())
{ {
%> %>
<div class="jcc"> <div class="jcc">
......
...@@ -298,57 +298,63 @@ ...@@ -298,57 +298,63 @@
</div> </div>
<div class="form-brack-line-sub"></div> <div class="form-brack-line-sub"></div>
<div class="row">
<div class="col-md-12 review-medium-title">
<oneit:label GUIName="Organisation Culture Statement" />
<span class="skill-label">
<oneit:toString value="<%= job.getCultureStatement() %>" mode="ParagraphHTML" />
</span>
</div>
</div>
<div class=" job-detail-subsection">
<% <%
for(CultureClass cultureClass : CultureClass.getCultureClassArray()) if(job.showCultureCriteriaSection())
{ {
%>
boolean firstCulture = true; <div class="row">
<div class="col-md-12 review-medium-title">
for (CultureCriteria criteria : job.getCultureCriteriasForClass(cultureClass)) <oneit:label GUIName="Organisation Culture Statement" />
{ <span class="skill-label">
if(criteria.getIsApplicable()) <oneit:toString value="<%= job.getCultureStatement() %>" mode="ParagraphHTML" />
</span>
</div>
</div>
<div class=" job-detail-subsection">
<%
for(CultureClass cultureClass : CultureClass.getCultureClassArray())
{ {
if(firstCulture)
boolean firstCulture = true;
for (CultureCriteria criteria : job.getCultureCriteriasForClass(cultureClass))
{ {
firstCulture = false; if(criteria.getIsApplicable())
%> {
<div class="form-brack-line-sub"></div> if(firstCulture)
{
<div class="form-group"> firstCulture = false;
<div class="beloning"> %>
<oneit:toString value="<%= cultureClass %>" mode="EscapeHTML"/> <div class="form-brack-line-sub"></div>
<div class="form-group">
<div class="beloning">
<oneit:toString value="<%= cultureClass %>" mode="EscapeHTML"/>
</div>
</div>
<%
}
%>
<div class="row">
<div class="col-md-4 review-label culture-element">
<oneit:toString value="<%= criteria.getCultureElement() %>" mode="EscapeHTML"/>
</div>
<div class="col-md-8 review-data">
<oneit:toString value="<%= criteria.getCultureElementRating()!= null ? criteria.getCultureElementRating().getDescription() : ""%>" mode="EscapeHTML"/>
(<oneit:toString value="<%= criteria.getImportance() %>" mode="EscapeHTML"/>)
</div>
</div> </div>
</div> <%
<% }
} }
%>
<div class="row">
<div class="col-md-4 review-label culture-element">
<oneit:toString value="<%= criteria.getCultureElement() %>" mode="EscapeHTML"/>
</div>
<div class="col-md-8 review-data">
<oneit:toString value="<%= criteria.getCultureElementRating()!= null ? criteria.getCultureElementRating().getDescription() : ""%>" mode="EscapeHTML"/>
(<oneit:toString value="<%= criteria.getImportance() %>" mode="EscapeHTML"/>)
</div>
</div>
<%
}
}
firstCulture = true; firstCulture = true;
} }
%> %>
</div> </div>
<%
}
%>
<div class="text-center"> <div class="text-center">
<oneit:button value="Save as Draft and go to your jobs" name="saveJob" cssClass="btn btn-primary btn-gray largeBtn" <oneit:button value="Save as Draft and go to your jobs" name="saveJob" cssClass="btn btn-primary btn-gray largeBtn"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", jobsPage) requestAttribs="<%= CollectionUtils.mapEntry("nextPage", jobsPage)
......
<?xml version="1.0" encoding="UTF-8"?>
<!-- @AutoRun -->
<OBJECTS name="" xmlns:oneit="http://www.1iT.com.au">
<NODE name="Script" factory="Vector">
<NODE name="DDL" factory="Participant" class="oneit.sql.transfer.RedefineTableOperation">
<tableName factory="String">tl_job</tableName>
<column name="include_culture" type="Boolean" nullable="true"/>
</NODE>
</NODE>
</OBJECTS>
\ No newline at end of file
update tl_job set include_culture = 'Y' where include_culture is null;
...@@ -113,30 +113,25 @@ ...@@ -113,30 +113,25 @@
applicantList = job.filterEssentialRequirements(appFilter == ApplicationFilter.HAS_REQ , applicantList); applicantList = job.filterEssentialRequirements(appFilter == ApplicationFilter.HAS_REQ , applicantList);
} }
if((process.getAttribute("ShowList") != null && process.getAttribute("ShowList") == Boolean.TRUE) || CollectionUtils.equals(workflowStatus,ApplicationStatus.DRAFT)) if(process.getAttribute("AppView") != null)
{ {
session.setAttribute("ShowList",true); session.setAttribute("AppView", (AppView) process.getAttribute("AppView"));
}
else if(process.getAttribute("ShowList") != null && process.getAttribute("ShowList") == Boolean.FALSE)
{
session.setAttribute("ShowList",false);
} }
boolean showList = session.getAttribute("ShowList") != null ? (boolean) session.getAttribute("ShowList") : true; AppView appView = (session.getAttribute("AppView") != null && !CollectionUtils.equals(workflowStatus,ApplicationStatus.DRAFT))? (AppView) session.getAttribute("AppView") : AppView.LIST;
List<JobApplication> sortedApplications = Utils.getApplicationsSorted(applicantList, appSortOpt); List<JobApplication> sortedApplications = Utils.getApplicationsSorted(applicantList, appSortOpt);
process.setAttribute("AppSortOption", appSortOpt); process.setAttribute("AppSortOption", appSortOpt);
process.setAttribute("ApplicationFilter", appFilter); process.setAttribute("ApplicationFilter", appFilter);
process.setAttribute("WorkFlowStatus", workflowStatus); process.setAttribute("WorkFlowStatus", workflowStatus);
process.setAttribute("ShowList", showList); process.setAttribute("AppView", appView);
%> %>
<oneit:form name="viewApplicants" method="post" enctype="multipart/form-data"> <oneit:form name="viewApplicants" method="post" enctype="multipart/form-data">
<div class="dashboard-content-area"> <div class="dashboard-content-area">
<oneit:dynInclude page="/extensions/adminportal/inc/applicant_view_tabs.jsp" <oneit:dynInclude page="/extensions/adminportal/inc/applicant_view_tabs.jsp"
ShowList="<%= showList %>" AppView="<%= appView %>"
applications="<%= sortedApplications %>" applications="<%= sortedApplications %>"
WorkFlowStatus="<%= workflowStatus %>" WorkFlowStatus="<%= workflowStatus %>"
WorkFlow="<%= workflow %>" WorkFlow="<%= workflow %>"
...@@ -145,7 +140,7 @@ ...@@ -145,7 +140,7 @@
<div class="second-part view-app-area"> <div class="second-part view-app-area">
<oneit:dynInclude page="/extensions/adminportal/inc/application_sorting_bar.jsp" <oneit:dynInclude page="/extensions/adminportal/inc/application_sorting_bar.jsp"
ShowList="<%= showList %>" AppView="<%= appView %>"
SearchApplicant="<%= searchApplicant %>" SearchApplicant="<%= searchApplicant %>"
ShowOrderBy="<%= sortedApplications.size() > 1 %>" ShowOrderBy="<%= sortedApplications.size() > 1 %>"
ApplicationFilter="<%= appFilter %>" ApplicationFilter="<%= appFilter %>"
...@@ -154,7 +149,7 @@ ...@@ -154,7 +149,7 @@
data="<%= CollectionUtils.EMPTY_MAP%>"/> data="<%= CollectionUtils.EMPTY_MAP%>"/>
<% <%
if(showList) if(appView == AppView.LIST)
{ {
if(workflowStatus == ApplicationStatus.DRAFT) if(workflowStatus == ApplicationStatus.DRAFT)
{ {
...@@ -178,27 +173,24 @@ ...@@ -178,27 +173,24 @@
<% <%
} }
} }
else else if(appView == AppView.GRID)
{ {
if(workflowStatus == ApplicationStatus.SHORTLISTED)
{
%> %>
<oneit:dynInclude page="/extensions/adminportal/inc/view_applicants_shortlist_grid.jsp" <oneit:dynInclude page="/extensions/adminportal/inc/view_applicants_grid.jsp"
applications="<%= sortedApplications %>" applications="<%= sortedApplications %>"
currentPage="<%= currentPage %>" currentPage="<%= currentPage %>"
data="<%= CollectionUtils.EMPTY_MAP%>"/> data="<%= CollectionUtils.EMPTY_MAP%>"/>
<% <%
} }
else else
{ {
%> %>
<oneit:dynInclude page="/extensions/adminportal/inc/view_applicants_grid.jsp" <oneit:dynInclude page="/extensions/adminportal/inc/view_applicants_shortlist_grid.jsp"
applications="<%= sortedApplications %>" applications="<%= sortedApplications %>"
currentPage="<%= currentPage %>" currentPage="<%= currentPage %>"
data="<%= CollectionUtils.EMPTY_MAP%>"/> data="<%= CollectionUtils.EMPTY_MAP%>"/>
<% <%
}
} }
%> %>
</div> </div>
......
...@@ -20,6 +20,10 @@ ...@@ -20,6 +20,10 @@
$(document).ready(function(){ $(document).ready(function(){
recalcFunction = setupRecalc ($("form#editJob"), {'recalcOnError':true}); recalcFunction = setupRecalc ($("form#editJob"), {'recalcOnError':true});
$(".switch input[type='checkbox']").change(function() {
$("button[name$='changeCultureCriteria']").click();
});
}); });
</script> </script>
...@@ -44,58 +48,80 @@ ...@@ -44,58 +48,80 @@
.toMap() %>" /> .toMap() %>" />
<div class="form-page-area nopadding"> <div class="form-page-area nopadding">
<div class="create-job"> <div class="create-job">
<% <div class="form-page-section" style="padding-bottom: 0px">
if(templates.length > 0)
{
%>
<div class="form-page-section" style="padding-bottom: 0px">
<div class="form-group">
<label class="label-16 work-title">Culture</label>
</div>
<div class="form-group row wider-select">
<div class="col-md-12">
<tagfile:ormsingleasso_select obj="<%= job %>" assocName="CultureTemplate" options="<%= templates %>"
blankValue="Optional: Select from previously defined Cultures"/>
</div>
</div>
</div>
<%
}
%>
<div class="form-page-section darkbg">
<div class="form-group"> <div class="form-group">
<label><oneit:label GUIName="Organisation Culture Statement" /> <a href="#" title="Note description gose here." class="info-icon"><img src="images/info-icon.png" /></a></label> <label>Include Culture for this Job?</label>
<oneit:ormtextarea obj="<%= job %>" attributeName="CultureStatement" cssClass="form-control textarea-box"/> <span class="pull-right">
<label class="switch">
<oneit:recalcClass htmlTag="span" classScript="job.showCultureCriteriaSection() ? 'checkbox checked': 'checkbox unchecked'" job="<%= job %>">
<oneit:ormInput obj="<%= job %>" attributeName="IncludeCulture" type="checkbox"/>
</oneit:recalcClass>
<div class="slider round"></div>
</label>
<oneit:button value=" " name="changeCultureCriteria" cssClass="hide"
requestAttribs="<%= CollectionUtils.mapEntry ("Job", job)
.mapEntry (UpdateMappedObjFP.FAIL_VALIDATION_ERRORS, Boolean.FALSE)
.toMap() %>" />
</span>
</div> </div>
</div> </div>
<oneit:recalcClass htmlTag="div" classScript="job.showCultureCriteriaSection() ? 'show': 'hide'" job="<%= job %>">
<oneit:dynInclude page="/extensions/adminportal/inc/culture_details.jsp" Job="<%= job %>" data="<%= CollectionUtils.EMPTY_MAP%>"/> <%
<div class="form-page-section"> if(templates.length > 0)
<div class="form-group"> {
<div class="styled_checkboxes"> %>
<div class="checkbox checkbox-primary"> <div class="form-page-section" style="padding-bottom: 0px; padding-top: 0px;">
<oneit:ormInput obj="<%= job %>" id="save-assess-check" attributeName="SaveCultureTemplate" type="checkbox"/> <div class="form-group">
<oneit:recalcClass htmlTag="span" classScript="job.showSaveCultureTemplate() ? 'checked': 'unchecked'" job="<%= job %>"> <label class="label-16 work-title">Culture</label>
<label for="save-assess-check"> </div>
<oneit:ormlabel obj="<%= job %>" field="SaveCultureTemplate" />
</label> <div class="form-group row wider-select">
</oneit:recalcClass> <div class="col-md-12">
<tagfile:ormsingleasso_select obj="<%= job %>" assocName="CultureTemplate" options="<%= templates %>"
blankValue="Optional: Select from previously defined Cultures"/>
</div>
</div>
</div> </div>
<%
}
%>
<div class="form-page-section darkbg">
<div class="form-group">
<label><oneit:label GUIName="Organisation Culture Statement" /> <a href="#" title="Note description gose here." class="info-icon"><img src="images/info-icon.png" /></a></label>
<oneit:ormtextarea obj="<%= job %>" attributeName="CultureStatement" cssClass="form-control textarea-box"/>
</div> </div>
</div> </div>
<oneit:recalcClass htmlTag="div" classScript="job.showSaveCultureTemplate() ? 'form-group template-save show': 'form-group template-save hide'" job="<%= job %>">
<div class="input-group input-group-lg"> <oneit:dynInclude page="/extensions/adminportal/inc/culture_details.jsp" Job="<%= job %>" data="<%= CollectionUtils.EMPTY_MAP%>"/>
<div class="icon-addon addon-lg"> </oneit:recalcClass>
<oneit:ormInput obj="<%= job %>" type="text" attributeName="CultureTemplateName" cssClass="form-control" />
<div class="form-page-section">
<oneit:recalcClass htmlTag="div" classScript="job.showCultureCriteriaSection() ? 'show': 'hide'" job="<%= job %>">
<div class="form-group">
<div class="styled_checkboxes">
<div class="checkbox checkbox-primary">
<oneit:ormInput obj="<%= job %>" id="save-assess-check" attributeName="SaveCultureTemplate" type="checkbox"/>
<oneit:recalcClass htmlTag="span" classScript="job.showSaveCultureTemplate() ? 'checked': 'unchecked'" job="<%= job %>">
<label for="save-assess-check">
<oneit:ormlabel obj="<%= job %>" field="SaveCultureTemplate" />
</label>
</oneit:recalcClass>
</div>
</div> </div>
<span class="input-group-btn">
<oneit:button value="SAVE" name="saveCultureTemplate" cssClass="btn btn-primary"
requestAttribs="<%= CollectionUtils.mapEntry("Job", job)
.mapEntry (UpdateMappedObjFP.FAIL_VALIDATION_ERRORS, Boolean.FALSE)
.toMap() %>" />
</span>
</div> </div>
<oneit:recalcClass htmlTag="div" classScript="job.showSaveCultureTemplate() ? 'form-group template-save show': 'form-group template-save hide'" job="<%= job %>">
<div class="input-group input-group-lg">
<div class="icon-addon addon-lg">
<oneit:ormInput obj="<%= job %>" type="text" attributeName="CultureTemplateName" cssClass="form-control" />
</div>
<span class="input-group-btn">
<oneit:button value="SAVE" name="saveCultureTemplate" cssClass="btn btn-primary"
requestAttribs="<%= CollectionUtils.mapEntry("Job", job)
.mapEntry (UpdateMappedObjFP.FAIL_VALIDATION_ERRORS, Boolean.FALSE)
.toMap() %>" />
</span>
</div>
</oneit:recalcClass>
</oneit:recalcClass> </oneit:recalcClass>
<div class="text-center"> <div class="text-center">
<oneit:button value="Save as draft" name="saveJob" cssClass="btn btn-primary top-margin-25 largeBtn greyBtn" <oneit:button value="Save as draft" name="saveJob" cssClass="btn btn-primary top-margin-25 largeBtn greyBtn"
......
...@@ -78,7 +78,7 @@ ...@@ -78,7 +78,7 @@
if(job.getIncludeAssessmentCriteria()) if(job.getIncludeAssessmentCriteria())
{ {
%> %>
<div class="col-sm-4 col-xs-12 app-block eq-height"> <div class="<%= (job.getNumberOfSections() == 3 ? "col-sm-4" : (job.getNumberOfSections() == 2 ? "col-sm-6" : "col-sm-12" )) + " col-xs-12 app-block eq-height"%>">
<div class="block-icon <%= isSelectionComplete ? "app-outline-complete" : "" %>"> <div class="block-icon <%= isSelectionComplete ? "app-outline-complete" : "" %>">
<div class="<%= isSelectionComplete ? "app-outline-complete-icon" : "app-outline-selection-icon" %>"></div> <div class="<%= isSelectionComplete ? "app-outline-complete-icon" : "app-outline-selection-icon" %>"></div>
</div> </div>
...@@ -105,35 +105,41 @@ ...@@ -105,35 +105,41 @@
</div> </div>
<% <%
} }
if(job.showCultureCriteriaSection())
{
%> %>
<div class="<%= (job.getIncludeAssessmentCriteria() ? "col-sm-4 app-second-block " : " col-sm-6 app-block " ) + " col-xs-12 app-block eq-height "%> "> <div class="<%= (job.getNumberOfSections() == 3 ? "col-sm-4 app-second-block " : (job.getNumberOfSections() == 2 ? " col-sm-6 app-block " : " col-sm-12 app-block " )) + " col-xs-12 app-block eq-height "%> ">
<div class="block-icon <%= isCultureComplete ? "app-outline-complete" : "" %>"> <div class="block-icon <%= isCultureComplete ? "app-outline-complete" : "" %>">
<div class="<%= isCultureComplete ? "app-outline-complete-icon" : "app-outline-culture-icon" %>"></div> <div class="<%= isCultureComplete ? "app-outline-complete-icon" : "app-outline-culture-icon" %>"></div>
</div> </div>
<div class="app-block-title">Your preferences about where you work</div> <div class="app-block-title">Your preferences about where you work</div>
<div class="estimated-time"> <div class="estimated-time">
<% <%
if(isCultureComplete) if(isCultureComplete)
{ {
%> %>
<span>Completed</span> <span>Completed</span>
<% <%
} }
else else
{ {
%> %>
Estimated time to complete: <span>5 mins</span> Estimated time to complete: <span>5 mins</span>
<% <%
} }
%> %>
</div> </div>
<p> <p>
A job isn't just about what one does, but the environment where one does it. A job isn't just about what one does, but the environment where one does it.
This questionnaire will help us both learn what's most important to you in a workplace environment. This questionnaire will help us both learn what's most important to you in a workplace environment.
There are no right or wrong answers, so please choose what best fits you (not what you think might be right for a particular job). There are no right or wrong answers, so please choose what best fits you (not what you think might be right for a particular job).
</p> </p>
</div> </div>
<div class="<%= (job.getIncludeAssessmentCriteria() ? "col-sm-4 " : "col-sm-6 app-thired-block " ) + "col-xs-12 app-block eq-height last-border"%>"> <%
}
%>
<div class="<%= (job.getNumberOfSections() == 3 ? "col-sm-4 " : (job.getNumberOfSections() == 2 ? " col-sm-6 app-thired-block " :"col-sm-12 " )) + "col-xs-12 app-block eq-height last-border"%>">
<div class="block-icon <%= isAssesmentComplete ? "app-outline-complete" : "" %>"> <div class="block-icon <%= isAssesmentComplete ? "app-outline-complete" : "" %>">
<div class="<%= isAssesmentComplete ? "app-outline-complete-icon" : "app-outline-assesmet-icon" %>"></div> <div class="<%= isAssesmentComplete ? "app-outline-complete-icon" : "app-outline-assesmet-icon" %>"></div>
</div> </div>
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
String secondPage = WebUtils.getSamePageInRenderMode(request, "WorkplaceCulture"); String secondPage = WebUtils.getSamePageInRenderMode(request, "WorkplaceCulture");
String thirdPage = WebUtils.getSamePageInRenderMode(request, "JobMatchAssessment"); String thirdPage = WebUtils.getSamePageInRenderMode(request, "JobMatchAssessment");
boolean includeAssessment = jobApplication.isIncludeAssessmentCriteria(); boolean includeAssessment = jobApplication.isIncludeAssessmentCriteria();
boolean includeCulture = jobApplication.isIncludeCultureCriteria();
// Boolean alreadyCompletedCulture = (Boolean) process.getAttribute("AlreadyCompletedCulture"); // Boolean alreadyCompletedCulture = (Boolean) process.getAttribute("AlreadyCompletedCulture");
// Boolean alreadyCompletedRole = (Boolean) process.getAttribute("AlreadyCompletedRole"); // Boolean alreadyCompletedRole = (Boolean) process.getAttribute("AlreadyCompletedRole");
...@@ -41,18 +42,24 @@ ...@@ -41,18 +42,24 @@
</li> </li>
<% <%
} }
if(includeCulture)
{
%>
<li class="<%= pageNumber == "2" ? "active" : isCultureComplete ? "complate" : ""%>">
<oneit:button value=" " name="validateApplication" skin="link" disabled="<%= isCultureComplete ? "true" : "false"%>"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", secondPage)
.mapEntry("JobApplication", jobApplication)
.mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).toMap())
.mapEntry("fromRequirements", fromRequirements)
.toMap() %>">
<span><%= isCultureComplete ? "<img src=\"images/right-mark.png\" />" : (includeAssessment ? "2" : "1")%></span>
<div class="mobile-hide">Workplace Preferences</div>
</oneit:button>
</li>
<%
}
%> %>
<li class="<%= pageNumber == "2" ? "active" : isCultureComplete ? "complate" : ""%>">
<oneit:button value=" " name="validateApplication" skin="link" disabled="<%= isCultureComplete ? "true" : "false"%>"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", secondPage)
.mapEntry("JobApplication", jobApplication)
.mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).toMap())
.mapEntry("fromRequirements", fromRequirements)
.toMap() %>">
<span><%= isCultureComplete ? "<img src=\"images/right-mark.png\" />" : (includeAssessment ? "2" : "1")%></span>
<div class="mobile-hide">Workplace Preferences</div>
</oneit:button>
</li>
<li class="<%= pageNumber == "3" ? "active" : isAssesmentComplete ? "complate" : ""%>"> <li class="<%= pageNumber == "3" ? "active" : isAssesmentComplete ? "complate" : ""%>">
<oneit:button value=" " name="validateApplication" skin="link" disabled="<%= isAssesmentComplete ? "true" : "false"%>" <oneit:button value=" " name="validateApplication" skin="link" disabled="<%= isAssesmentComplete ? "true" : "false"%>"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", thirdPage) requestAttribs="<%= CollectionUtils.mapEntry("nextPage", thirdPage)
...@@ -60,11 +67,11 @@ ...@@ -60,11 +67,11 @@
.mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).toMap()) .mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).toMap())
.mapEntry("fromRequirements", fromRequirements) .mapEntry("fromRequirements", fromRequirements)
.toMap() %>"> .toMap() %>">
<span><%= isAssesmentComplete ? "<img src=\"images/right-mark.png\" />" : (includeAssessment ? "3" : "2")%></span> <span><%= isAssesmentComplete ? "<img src=\"images/right-mark.png\" />" : (includeAssessment && includeCulture ? "3" : ( (includeAssessment || includeCulture) ? "2" : "1"))%></span>
<div class="mobile-hide">Your Work Style</div> <div class="mobile-hide">Your Work Style</div>
</oneit:button> </oneit:button>
</li> </li>
<li><a href="#"><span><%= includeAssessment ? "4" : "3" %></span><div class="mobile-hide">Submit Application</div></a></li> <li><a href="#"><span><%= (includeAssessment && includeCulture ? "4" : ( (includeAssessment || includeCulture) ? "3" : "2")) %></span><div class="mobile-hide">Submit Application</div></a></li>
</ul> </ul>
</div> </div>
</oneit:dynIncluded> </oneit:dynIncluded>
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