Commit 8a1b8c57 by Nilu Committed by Harsh Shah

assessment criteria and culture modifications : edit job

parent 26f41df1
......@@ -62,4 +62,10 @@ public class Job extends BaseJob
return CollectionFilter.filter(getAssessmentCriteriasSet(), filter);
}
public int getAssessmentCriteraCountByType(CriteriaType criteria)
{
return getAssessmentCriteraByType(criteria).size();
}
}
\ No newline at end of file
......@@ -1018,6 +1018,7 @@ input.btn.btn-primary.top-margin-25{
font-size: 12px;
font-weight: 500;
margin-bottom: 36px;
text-transform: uppercase;
}
.workplace-radio.radio label{
padding-left: 9px;
......
......@@ -22,6 +22,8 @@
<script type="text/javascript">
$(document).ready(function() {
setupRecalc ($("form#editJob"),{'recalcOnError': true});
$(".switch input[type='checkbox']").each(function()
{
$(this).parent('span').removeClass("checked" );
......@@ -57,10 +59,11 @@
});
});
function addCriteria(formBuilder) {
alert('adding criteria');
ajaxProcessAddJQ ("<%= request.getContextPath() %>/extensions/adminportal/inc/job_assessment_criteria_add.jsp", "#skill-title", {}, function (theHTML_JQ) {
$(".main-qualification").before (theHTML_JQ);
function addCriteria(criteria) {
alert(criteria);
var divID = "#" + criteria;
ajaxProcessAddJQ ("<%= request.getContextPath() %>/extensions/adminportal/inc/job_assessment_criteria_add.jsp", divID, {'CriteriaName' : criteria}, function (theHTML_JQ) {
$(divID).append (theHTML_JQ);
});
}
......@@ -127,127 +130,60 @@
<option>One 3</option>
</select>
</div>
<div class="form-brack-line-sub"></div>
<div class="form-group">
<div class="form-medium-title" id="skill-title">
Skills
<%
if(skills.size() == 0)
{
%>
<span class="skill-label">No skills currently added for this role.</span>
<%
}
%>
</div>
<%
for (AssessmentCriteria skill : skills)
{
%>
<oneit:dynInclude page="/extensions/adminportal/inc/job_assessment_criteria_add.jsp" AssessmentCriteria="<%= skill%>"
data="<%= CollectionUtils.EMPTY_MAP%>"/>
<%
}
%>
<div class="main-add-more">
<oneit:button value="Add Skill" name="newSkill" cssClass="add-more-btn" skin="link"
onClick="addCriteria(); return false;"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", secondPage)
.mapEntry("CriteriaType", CriteriaType.SKILL)
.toMap() %>"/>
</div>
</div>
<div class="form-brack-line-sub"></div>
<div class="form-group">
<div class="form-medium-title qualification-title">
Qualification
<%
if(qualifications.size() > 0)
{
%>
<span class="skill-label">
<oneit:toString value="<%= qualifications.size() %>" mode="EscapeHTML"/> Qualification added
</span>
<%
}
else
{
%>
<span class="skill-label">No qualifications currently added for this role.</span>
<%
}
%>
</div>
<%
for (AssessmentCriteria qualification : qualifications)
{
String optionKey = WebUtils.getInputKey(request, qualification, AssessmentCriteria.FIELD_Importance);
String formValue = formBuilder.fieldValue (optionKey, qualification.getImportance() == null ? "" : qualification.getImportance().getName());
%>
<div class="main-qualification">
<span class="delete-qualification"><span></span></span>
<oneit:ormInput obj="<%= qualification %>" type="text" attributeName="Name" cssClass="form-control" />
<div class="form-brack-line-sub"></div>
<%
for(CriteriaType criteria : CriteriaType.getCriteriaTypeArray())
{
Collection<AssessmentCriteria> assessmentCriterias = job.getAssessmentCriteraByType(criteria);
String name = criteria.getName();
%>
<div class="form-group">
<div class="form-medium-title" id="<%= name%>">
<oneit:toString value="<%= criteria %>" mode="EscapeHTML"/>
<%
for(Importance importance : Importance.getImportanceArray())
if(assessmentCriterias.size() > 0)
{
boolean isSelected = CollectionUtils.equals(formValue, importance.getName());
String id = "importance_" + importance.getName();
String selectedStr = (isSelected) ? "checked" : "";
%>
<div class="radio radio-primary qualification-radio">
<input type="radio" name="<%= optionKey %>" value="<%= importance.getName() %>" id="<%= id %>" <%= selectedStr %>/>
<label for="<%= id %>"><oneit:toString value="<%= importance %>" mode="EscapeHTML" /></label>
</div>
<span class="skill-label">
<oneit:recalc script="job.getAssessmentCriteraCountByType(criteria)" mode="EscapeHTML" job="<%= job %>" criteria="<%= criteria %>" />
<oneit:toString value="<%= criteria %>" mode="EscapeHTML"/> added
</span>
<%
}
else
{
%>
<span class="skill-label">No <oneit:toString value="<%= criteria %>" mode="EscapeHTML"/> currently added for this role.</span>
<%
}
%>
</div>
<%
}
%>
<div class="main-add-more">
<oneit:button value="Add Qualification" name="gotoPage" cssClass="add-more-btn"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", firstPage)
.mapEntry("procParams", CollectionUtils.mapEntry("Job", job).toMap()).toMap() %>"/>
</div>
</div>
<div class="form-brack-line-sub"></div>
<div class="form-group">
<div class="form-medium-title">
Experience
<%
if(experience.size() == 0)
{
%>
<span class="skill-label">No experience currently added for this role.</span>
<%
}
%>
</div>
<div class="main-add-more">
<div class="add-more-btn"><img src="images/plus-img.png"> Add Experience</div>
</div>
</div>
<div class="form-brack-line-sub"></div>
<div class="form-group">
<div class="form-medium-title">
Knowledge
<%
if(knowledge.size() == 0)
{
%>
<span class="skill-label">No knowledge currently added for this role.</span>
<%
}
%>
</div>
<div class="main-add-more">
<div class="add-more-btn"><img src="images/plus-img.png"> Add Experience</div>
</div>
</div>
<div class="form-brack-line-sub"></div>
<div id="skills">
<%
for (AssessmentCriteria assessmentCriteria : assessmentCriterias)
{
%>
<oneit:dynInclude page="/extensions/adminportal/inc/job_assessment_criteria_add.jsp" AssessmentCriteria="<%= assessmentCriteria %>"
CriteriaType="<%= criteria %>"
data="<%= CollectionUtils.EMPTY_MAP%>"/>
<%
}
%>
</div>
<div class="main-add-more">
<oneit:button value="<%= "Add " + name%>" name="newSkill" cssClass="add-more-btn" skin="link"
onClick="<%="addCriteria('" + name + "'); return false;"%>"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", secondPage)
.mapEntry("CriteriaType", CriteriaType.SKILL)
.toMap() %>"/>
</div>
</div>
<div class="form-brack-line-sub"></div>
<%
}
%>
<div class="form-group">
<div class="save-assess">
<div class="checkbox checkbox-primary">
......
......@@ -6,15 +6,18 @@
<%! protected String getName (ServletConfig config) { return "job_assessment_criteria_add_jsp"; } %>
<%
ORMProcessState process = (ORMProcessState)ProcessDecorator.getDefaultProcess(request);
ObjectTransaction objTran = process.getTransaction ();
Job job = (Job) process.getAttribute("Job");
AssessmentCriteria criteria = (AssessmentCriteria) getData(request, "AssessmentCriteria");
ORMProcessState process = (ORMProcessState)ProcessDecorator.getDefaultProcess(request);
ObjectTransaction objTran = process.getTransaction ();
Job job = (Job) process.getAttribute("Job");
AssessmentCriteria criteria = (AssessmentCriteria) getData(request, "AssessmentCriteria");
CriteriaType criteriaType = (CriteriaType) getData(request, "CriteriaType");
if(criteria == null)
{
criteria = AssessmentCriteria.createAssessmentCriteria(objTran);
criteria = AssessmentCriteria.createAssessmentCriteria(objTran);
criteriaType = CriteriaType.forName((String) request.getParameter("CriteriaName"));
criteria.setCriteriaType(criteriaType);
job.addToAssessmentCriterias(criteria);
}
%>
......
......@@ -5,7 +5,9 @@
<oneit:dynIncluded>
<%
Job job = (Job) process.getAttribute("Job");
ObjectTransaction objTran = (process == null ? ObjectTransaction.getTransaction () : process.getTransaction ());
Job job = (Job) process.getAttribute("Job");
String firstPage = HTTPRequestDetails.getFullURL(WebUtils.getSamePageInRenderMode(request, "Page"), ProcessDecorator.getRequestParameters(request, new String[0]), "");
String secondPage = HTTPRequestDetails.getFullURL(WebUtils.getSamePageInRenderMode(request, PerformaArticleUtil.ASSESSMENT_CRITERIA), ProcessDecorator.getRequestParameters(request, new String[0]), "");
String fourthPage = HTTPRequestDetails.getFullURL(WebUtils.getSamePageInRenderMode(request, PerformaArticleUtil.JOB_MATCH), ProcessDecorator.getRequestParameters(request, new String[0]), "");
......@@ -14,189 +16,135 @@
<oneit:form name="editJob" method="post" enctype="multipart/form-data" action="<%= fourthPage %>">
<div class="container-fluid">
<h1 class="page-title">Create a job <span class="active-time">(Active for 30 days)</span> </h1>
<div class="main-tab-form">
<ul class="nav nav-pills nav-justified">
<li class="<%= job.jobDetailsCompleted() ? "complate" : ""%>">
<a href="<%= firstPage %>"><span><%= job.jobDetailsCompleted() ? "<img src=\"images/right-mark.png\" />" : "1"%></span>
Job Detail
</a>
</li>
<li class="<%= job.assessmentCompleted() ? "complate" : ""%>">
<a href="<%= secondPage %>"><span><%= job.assessmentCompleted() ? "<img src=\"images/right-mark.png\" />" : "2"%></span>
Assessment Criteria
</a>
</li>
<li class="active">
<a href="#"><span><%= job.cultureCompleted() ? "<img src=\"images/right-mark.png\" />" : "3"%></span>
Workplace Culture
</a>
</li>
<li class="<%= job.jobMatchCompleted() ? "complate" : ""%>">
<a href="<%= fourthPage %>"><span><%= job.jobMatchCompleted() ? "<img src=\"images/right-mark.png\" />" : "3"%></span>
Job Match Assessment
</a>
</li>
<li>
<a href="<%= fifthPage %>"><span>5</span>
Review and Submit
</a>
</li>
</ul>
<h1 class="page-title">Create a job <span class="active-time">(Active for 30 days)</span> </h1>
<div class="main-tab-form">
<ul class="nav nav-pills nav-justified">
<li class="<%= job.jobDetailsCompleted() ? "complate" : ""%>">
<a href="<%= firstPage %>"><span><%= job.jobDetailsCompleted() ? "<img src=\"images/right-mark.png\" />" : "1"%></span>
Job Detail
</a>
</li>
<li class="<%= job.assessmentCompleted() ? "complate" : ""%>">
<a href="<%= secondPage %>"><span><%= job.assessmentCompleted() ? "<img src=\"images/right-mark.png\" />" : "2"%></span>
Assessment Criteria
</a>
</li>
<li class="active">
<a href="#"><span><%= job.cultureCompleted() ? "<img src=\"images/right-mark.png\" />" : "3"%></span>
Workplace Culture
</a>
</li>
<li class="<%= job.jobMatchCompleted() ? "complate" : ""%>">
<a href="<%= fourthPage %>"><span><%= job.jobMatchCompleted() ? "<img src=\"images/right-mark.png\" />" : "3"%></span>
Job Match Assessment
</a>
</li>
<li>
<a href="<%= fifthPage %>"><span>5</span>
Review and Submit
</a>
</li>
</ul>
</div>
<div class="form-page-area">
<div class="create-job">
<div class="assessment-criteria">
<div class="form-group">
<label class="label-16 work-title">Workplace Culture</label>
<p>
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit.
</p>
</div>
<div class="form-group">
<select class="form-control">
<option>Optional: Select previously defined Workplace Culture</option>
<option>One 1</option>
<option>One 2</option>
<option>One 3</option>
</select>
</div>
<div class="form-brack-line-sub"></div>
<%
for(CultureClass culture : CultureClass.getCultureClassArray())
{
%>
<div class="form-group">
<div class="work-belonging">
<oneit:toString value="<%= culture %>" mode="EscapeHTML"/>
</div>
<%
for(CultureElement element : CultureElement.SearchByAll().andCultureClass(new EqualsFilter<>(culture)).search(objTran))
{
%>
<div class="work-radio-title">
<oneit:toString value="<%= element.getDescription() %>" mode="EscapeHTML"/>
</div>
<div class="radio radio-primary workplace-radio">
<input type="radio" name="radio" id="radio11" value="option1" checked>
<label for="radio11">
Teamwork is vital
</label>
</div>
<div class="work-rating">
<div class="rate-background">
<span class="arrow-up-gray"></span>
<span class="rate-label">Rate Importance</span>
<span class="rate-toggle">
<ul class="nav nav-pills nav-justified">
<li><a href="javascript:void(0)">Not Applicable</a></li>
<li class="active"><a href="javascript:void(0)">Desirable</a></li>
<li><a href="javascript:void(0)">Highly Desirable</a></li>
<li><a href="javascript:void(0)">Essential</a></li>
</ul>
</span>
</div>
</div>
<div class="radio radio-primary workplace-radio">
<input type="radio" name="radio" id="radio12" value="option1" checked="">
<label for="radio12">
Some teamwork is involved
</label>
</div>
<div class="radio radio-primary workplace-radio margin-bottom-none">
<input type="radio" name="radio" id="radio13" value="option1" checked="">
<label for="radio13">
Little teamwork is neeeded
</label>
</div>
<%
}
%>
</div>
<div class="form-brack-line-sub"></div>
<%
}
%>
<div class="form-group">
<div class="save-assess">
<div class="checkbox checkbox-primary">
<input id="checkbox2" type="checkbox" checked>
<label for="checkbox2">
Save this Assessment Criteria as a template
</label>
</div>
</div>
</div>
<div class="form-group">
<div class="input-group input-group-lg">
<div class="icon-addon addon-lg">
<input type="text" placeholder="Template Name" class="form-control" id="email">
</div>
<span class="input-group-btn">
<button class="btn btn-primary" type="button">SAVE</button>
</span>
</div>
</div>
<div class="text-center">
<input type="button" class="btn btn-primary top-margin-25" value="Proceed to Job Match" />
</div>
<div class="form-page-area">
<div class="create-job">
<div class="assessment-criteria">
<div class="form-group">
<label class="label-16 work-title">Workplace Culture</label>
<p>
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit.
</p>
</div>
<div class="form-group">
<select class="form-control">
<option>Optional: Select previously defined Workplace Culture</option>
<option>One 1</option>
<option>One 2</option>
<option>One 3</option>
</select>
</div>
<div class="form-brack-line-sub"></div>
<div class="form-group">
<div class="work-belonging">Belonging</div>
<div class="work-radio-title">TEAMWORK</div>
<div class="radio radio-primary workplace-radio">
<input type="radio" name="radio" id="radio11" value="option1" checked>
<label for="radio11">
Teamwork is vital
</label>
</div>
<div class="work-rating">
<div class="rate-background">
<span class="arrow-up-gray"></span>
<span class="rate-label">Rate Importance</span>
<span class="rate-toggle">
<ul class="nav nav-pills nav-justified">
<li><a href="javascript:void(0)">Not Applicable</a></li>
<li class="active"><a href="javascript:void(0)">Desirable</a></li>
<li><a href="javascript:void(0)">Highly Desirable</a></li>
<li><a href="javascript:void(0)">Essential</a></li>
</ul>
</span>
</div>
</div>
<div class="radio radio-primary workplace-radio">
<input type="radio" name="radio" id="radio12" value="option1" checked="">
<label for="radio12">
Some teamwork is involved
</label>
</div>
<div class="radio radio-primary workplace-radio margin-bottom-none">
<input type="radio" name="radio" id="radio13" value="option1" checked="">
<label for="radio13">
Little teamwork is neeeded
</label>
</div>
</div>
<div class="form-brack-line-sub"></div>
<div class="form-group">
<div class="work-radio-title">LOYALTY</div>
<div class="radio radio-primary workplace-radio">
<input type="radio" name="radio" id="radio21" value="option1" checked>
<label for="radio21">
We are a very loyal ogranisation to employees
</label>
</div>
<div class="work-rating">
<div class="rate-background">
<span class="arrow-up-gray"></span>
<span class="rate-label">Rate Importance</span>
<span class="rate-toggle">
<ul class="nav nav-pills nav-justified">
<li><a href="javascript:void(0)">Not Applicable</a></li>
<li class="active"><a href="javascript:void(0)">Desirable</a></li>
<li><a href="javascript:void(0)">Highly Desirable</a></li>
<li><a href="javascript:void(0)">Essential</a></li>
</ul>
</span>
</div>
</div>
<div class="radio radio-primary workplace-radio">
<input type="radio" name="radio" id="radio22" value="option1" checked="">
<label for="radio22">
We have normal loyalty here
</label>
</div>
<div class="radio radio-primary workplace-radio margin-bottom-none">
<input type="radio" name="radio" id="radio23" value="option1" checked="">
<label for="radio23">
We do not offer loyalty to employees
</label>
</div>
</div>
<div class="form-brack-line-sub"></div>
<div class="form-group">
<div class="work-radio-title">FRIENDLINESS</div>
<div class="radio radio-primary workplace-radio">
<input type="radio" name="radio" id="radio14" value="option1" checked>
<label for="radio14">
It is important to be friendly
</label>
</div>
<div class="work-rating">
<div class="rate-background">
<span class="arrow-up-gray"></span>
<span class="rate-label">Rate Importance</span>
<span class="rate-toggle">
<ul class="nav nav-pills nav-justified">
<li><a href="javascript:void(0)">Not Applicable</a></li>
<li class="active"><a href="javascript:void(0)">Desirable</a></li>
<li><a href="javascript:void(0)">Highly Desirable</a></li>
<li><a href="javascript:void(0)">Essential</a></li>
</ul>
</span>
</div>
</div>
<div class="radio radio-primary workplace-radio">
<input type="radio" name="radio" id="radio15" value="option1" checked="">
<label for="radio15">
It is somewhat important to be friendly
</label>
</div>
<div class="radio radio-primary workplace-radio margin-bottom-none">
<input type="radio" name="radio" id="radio16" value="option1" checked="">
<label for="radio16">
Select title
</label>
</div>
</div>
<div class="form-brack-line-sub"></div>
<div class="form-group">
<div class="save-assess">
<div class="checkbox checkbox-primary">
<input id="checkbox2" type="checkbox" checked>
<label for="checkbox2">
Save this Assessment Criteria as a template
</label>
</div>
</div>
</div>
<div class="form-group">
<div class="input-group input-group-lg">
<div class="icon-addon addon-lg">
<input type="text" placeholder="Template Name" class="form-control" id="email">
</div>
<span class="input-group-btn">
<button class="btn btn-primary" type="button">SAVE</button>
</span>
</div>
</div>
<div class="text-center">
<input type="button" class="btn btn-primary top-margin-25" value="Proceed to Job Match" />
</div>
</div>
</div>
</div>
</div>
</oneit:form>
</div>
</div>
</oneit:form>
</oneit:dynIncluded>
\ No newline at end of file
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