Commit 949ed158 by nilu

S21294007 # Client - Incoming Issues (raised by Client) #Free Trial

b. For that 1 Job, only the top 2 applicant’s identification details are shown, for all other applicants these fields are hidden:

i. Name

ii. Phone number

iii. CV

iv. Cover Letter
parent befe79dc
......@@ -18,6 +18,7 @@
List<WorkFlow> sortedWorkFlows = ObjstoreUtils.sort(job.getApplicantWFs(),
new ObjectTransform[]{WorkFlow.pipesWorkFlow().toSortOrder()},
new Comparator[]{CollectionUtils.DEFAULT_COMPARATOR_NULLS_FIRST});
HiringTeam hiringTeam = job.getHiringTeam();
%>
<oneit:dynIncluded>
......@@ -69,79 +70,86 @@
.mapEntry("Job", job)
.toMap() %>" />
</div>
<div class="appli-filter">
<%
if(!CollectionUtils.equals(workflowStatus,ApplicationStatus.DRAFT))
{
%>
<ul class="">
<li class="lable-appli-shorting">View</li>
<li class="<%= (appView == AppView.LIST ? "active" : "" ) + " short-list"%>">
<oneit:button value="List" name="gotoPage" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicantsPage)
.mapEntry("procParams", CollectionUtils.mapEntry("Job", job).mapEntry("AppView", AppView.LIST).toMap())
.toMap() %>"/>
</li>
<li class="<%= (appView == AppView.GRID ? "active" : "" ) + " grid-list"%>">
<oneit:button value="Grid" name="gotoPage" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicantsPage)
.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() %>"/>
</li>
</ul>
<% } %>
</div>
<div class="shorting-dropdown application_sorting_bar">
<div class="appli-order-label">Search Applicants</div>
<oneit:ormInput obj="<%= searchApplicant %>" type="text" attributeName="Details" cssClass="form-control search-input" id="searchText" />
<span class="search-icon-btn"></span>
</div>
<oneit:button value="Search" name="search" cssClass="btn btn-primary search-real-btn" style="display:none;"/>
<%
if(showOrderBy)
if(!(CollectionUtils.equals(workflowStatus,ApplicationStatus.DRAFT) && hiringTeam.isTrue(hiringTeam.getOnTrial())))
{
%>
<div class="shorting-dropdown">
<span class="appli-order-label">order by</span>
<select class="form-control" onChange="location=this.value">
<%
for (AppSortOption sortOption : AppSortOption.getAppSortOptionArray())
{
String optionLink = applicantsPage + "&AppSortOption=" + sortOption.getName();
%>
<option <%= (appSortOpt != null && appSortOpt == sortOption ? "selected" : "" )%> value="<%= optionLink %>">
<oneit:toString value="<%= sortOption.getDescription() %>" mode="EscapeHTML"/>
</option>
<%
}
%>
</select>
</div>
<%
}
%>
<div class="shorting-dropdown">
<span class="appli-order-label">Showing</span>
<select class="form-control status-img" onChange="location=this.value">
<div class="appli-filter">
<%
if(!CollectionUtils.equals(workflowStatus,ApplicationStatus.DRAFT))
{
%>
<ul class="">
<li class="lable-appli-shorting">View</li>
<li class="<%= (appView == AppView.LIST ? "active" : "" ) + " short-list"%>">
<oneit:button value="List" name="gotoPage" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicantsPage)
.mapEntry("procParams", CollectionUtils.mapEntry("Job", job).mapEntry("AppView", AppView.LIST).toMap())
.toMap() %>"/>
</li>
<li class="<%= (appView == AppView.GRID ? "active" : "" ) + " grid-list"%>">
<oneit:button value="Grid" name="gotoPage" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicantsPage)
.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() %>"/>
</li>
</ul>
<% } %>
</div>
<div class="shorting-dropdown application_sorting_bar">
<div class="appli-order-label">Search Applicants</div>
<oneit:ormInput obj="<%= searchApplicant %>" type="text" attributeName="Details" cssClass="form-control search-input" id="searchText" />
<span class="search-icon-btn"></span>
</div>
<oneit:button value="Search" name="search" cssClass="btn btn-primary search-real-btn" style="display:none;"/>
<%
for (ApplicationFilter applicationFilter : ApplicationFilter.getApplicationFilterArray())
if(showOrderBy)
{
String optionLink = applicantsPage + "&ApplicationFilter=" + applicationFilter.getName();
%>
<option data-image="images/<%= applicationFilter.getName().toLowerCase() %>.png" <%= (appFilter != null && appFilter == applicationFilter ? "selected" : "" )%> value="<%= optionLink %>">
<oneit:toString value="<%= applicationFilter.getDescription() %>" mode="EscapeHTML"/>
</option>
<div class="shorting-dropdown">
<span class="appli-order-label">order by</span>
<select class="form-control" onChange="location=this.value">
<%
for (AppSortOption sortOption : AppSortOption.getAppSortOptionArray())
{
String optionLink = applicantsPage + "&AppSortOption=" + sortOption.getName();
%>
<option <%= (appSortOpt != null && appSortOpt == sortOption ? "selected" : "" )%> value="<%= optionLink %>">
<oneit:toString value="<%= sortOption.getDescription() %>" mode="EscapeHTML"/>
</option>
<%
}
%>
</select>
</div>
<%
}
%>
</select>
</div>
<div class="shorting-dropdown">
<span class="appli-order-label">Showing</span>
<select class="form-control status-img" onChange="location=this.value">
<%
for (ApplicationFilter applicationFilter : ApplicationFilter.getApplicationFilterArray())
{
String optionLink = applicantsPage + "&ApplicationFilter=" + applicationFilter.getName();
%>
<option data-image="images/<%= applicationFilter.getName().toLowerCase() %>.png" <%= (appFilter != null && appFilter == applicationFilter ? "selected" : "" )%> value="<%= optionLink %>">
<oneit:toString value="<%= applicationFilter.getDescription() %>" mode="EscapeHTML"/>
</option>
<%
}
%>
</select>
</div>
<%
}
%>
</div>
<div class="checkbox-list select-all">
<input type='checkbox' id='select_all' value='select_all' class='norecalc'>
......
......@@ -14,6 +14,7 @@
List<WorkFlow> sortedWorkFlows = ObjstoreUtils.sort(job.getIncompleteApplicantWFs(),
new ObjectTransform[]{WorkFlow.pipesWorkFlow().toSortOrder()},
new Comparator[]{CollectionUtils.DEFAULT_COMPARATOR_NULLS_FIRST});
HiringTeam hiringTeam = job.getHiringTeam();
%>
<oneit:dynIncluded>
......@@ -75,7 +76,11 @@
</div>
</div>
<div class="appli-list-name appli-l eq-second-height wider-box">
<oneit:button value=" " name="gotoPage" cssClass="<%= jobApplication.getID() + ""%>" skin="link"
<%
if(!hiringTeam.isTrue(hiringTeam.getOnTrial()) || j < 2)
{
%>
<oneit:button value=" " name="<%= hiringTeam.isTrue(hiringTeam.getOnTrial()) ? "" : "gotoPage"%>" cssClass="<%= jobApplication.getID() + ""%>" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicationPage)
.mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).mapEntry("Applications", applications).toMap())
.toMap() %>">
......@@ -99,15 +104,15 @@
+ "&aid=" + candidate.getID()
+ "&pin=" + candidate.getVerificationKey();
%>
<oneit:toString value="<%= candidate %>" mode="EscapeHTML" />
<span style="float:right; padding-right: 5px;">
<a style="float:right; padding-right: 10px;" onclick="copyHTMLToClip('.<%= jobApplication.getID().toString() + "link"%>', <%= candidate.getIsAccountVerified()%>)">
<img src="images/copy-icon.jpg">
<span style="display:none;" class='<%= jobApplication.getID().toString() + "link"%>'>
<%= jobLink %>
</span>
</a>
</span>
<oneit:toString value="<%= candidate %>" mode="EscapeHTML" />
<span style="float:right; padding-right: 5px;">
<a style="float:right; padding-right: 10px;" onclick="copyHTMLToClip('.<%= jobApplication.getID().toString() + "link"%>', <%= candidate.getIsAccountVerified()%>)">
<img src="images/copy-icon.jpg">
<span style="display:none;" class='<%= jobApplication.getID().toString() + "link"%>'>
<%= jobLink %>
</span>
</a>
</span>
</oneit:button>
<div class="appli-int-status">
<span>
......@@ -139,6 +144,9 @@
}
%>
</div>
<%
}
%>
</div>
<%
String widthClass = (job.showAssessmentCriteriaSection() && job.showCultureCriteriaSection()) ? "appli-jcs" :
......
......@@ -8,6 +8,7 @@
<oneit:dynIncluded>
<%
Job job = (Job) process.getAttribute("Job");
HiringTeam hiringTeam = job.getHiringTeam();
List<JobApplication> applications = (List<JobApplication>) getData(request, "applications");
String applicationPage = WebUtils.getSamePageInRenderMode(request, WebUtils.VIEW_APPLICATION);
......@@ -69,6 +70,8 @@
Integer overallRank = jobApplication.getOverallRank();
Boolean isTopRank = CollectionUtils.equals(overallRank, 1);
boolean missingReq = jobApplication.hasFailedEssentialRequirements();
Boolean isVisible = CollectionUtils.equals(overallRank, 2) || isTopRank;
Boolean onTrial = hiringTeam.isTrue(hiringTeam.getOnTrial());
%>
<div class="appl-c-box application-row">
<!--TODO: need to work on the logic. just added to demonstrate that there are 3 different colors for this-->
......@@ -77,12 +80,12 @@
<div class="checkbox-list">
<input type="checkbox" name="IsSelected" value="<%= jobApplication.getObjectID().toString() %>" id="<%= appID %>" class="applicant" >
<label for="<%= appID %>">
<oneit:toString value="<%= jobApplication.getCandidate() %>" mode="EscapeHTML" />
<oneit:toString value="<%= onTrial && !isVisible ? "" : jobApplication.getCandidate() %>" mode="EscapeHTML" />
</label>
</div>
</div>
</div>
<oneit:button value=" " name="gotoPage" cssClass="<%= jobApplication.getID() + ""%>" skin="link"
<oneit:button value=" " name="<%= onTrial && !isVisible ? "" : "gotoPage"%>" cssClass="<%= jobApplication.getID() + ""%>" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicationPage)
.mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).mapEntry("Applications", applications).toMap())
.toMap() %>">
......
......@@ -7,6 +7,7 @@
<%
Job job = (Job) process.getAttribute("Job");
HiringTeam hiringTeam = job.getHiringTeam();
List<JobApplication> applications = (List<JobApplication>) getData(request, "applications");
String currentPage = (String) getData(request, "currentPage");
ApplicationStatus appStatus = (ApplicationStatus) getData(request, "WorkFlowStatus");
......@@ -42,6 +43,8 @@
String appID = "app-id-" + jobApplication.getID().toString();
Integer overallRank = jobApplication.getOverallRank();
Boolean isTopRank = CollectionUtils.equals(overallRank, 1);
Boolean isVisible = CollectionUtils.equals(overallRank, 2) || isTopRank;
Boolean onTrial = hiringTeam.isTrue(hiringTeam.getOnTrial());
WorkFlow workflow = job.getWorkFlowByStatus(jobApplication.getApplicationStatus());
boolean missingReq = jobApplication.hasFailedEssentialRequirements();
......@@ -55,15 +58,22 @@
</div>
</div>
<div class="appli-list-name appli-l eq-second-height">
<oneit:button value=" " name="gotoPage" cssClass="<%= jobApplication.getID() + ""%>" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicationPage)
.mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).mapEntry("Applications", applications).toMap())
.toMap() %>">
<oneit:toString value="<%= jobApplication.getCandidate() %>" mode="EscapeHTML" />
<div class="appli-int-status">
<oneit:toString value="<%= jobApplication.getApplicantStatusStr() %>" mode="EscapeHTML" />
</div>
</oneit:button>
<%
if(!onTrial || (onTrial && isVisible))
{
%>
<oneit:button value=" " name="gotoPage" cssClass="<%= jobApplication.getID() + ""%>" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicationPage)
.mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).mapEntry("Applications", applications).toMap())
.toMap() %>">
<oneit:toString value="<%= jobApplication.getCandidate() %>" mode="EscapeHTML" />
<div class="appli-int-status">
<oneit:toString value="<%= jobApplication.getApplicantStatusStr() %>" mode="EscapeHTML" />
</div>
</oneit:button>
<%
}
%>
</div>
<div class="appli-overall appli-l eq-second-height">
<div class="rank">
......
......@@ -8,6 +8,7 @@
<oneit:dynIncluded>
<%
Job job = (Job) process.getAttribute("Job");
HiringTeam hiringTeam = job.getHiringTeam();
List<JobApplication> applications = (List<JobApplication>) getData(request, "applications");
String applicationPage = WebUtils.getSamePageInRenderMode(request, WebUtils.VIEW_APPLICATION);
......@@ -67,6 +68,8 @@
String appID = "app-id-" + jobApplication.getID().toString();
Integer overallRank = jobApplication.getOverallRank();
Boolean isTopRank = CollectionUtils.equals(overallRank, 1);
Boolean isVisible = CollectionUtils.equals(overallRank, 2) || isTopRank;
Boolean onTrial = hiringTeam.isTrue(hiringTeam.getOnTrial());
%>
<div class="<%= "appl-c-box " + (i == 0 ? " cb-one" : "")%> ">
<!--TODO: need to work on the logic. just added to demonstrate that there are 3 different colors for this-->
......@@ -75,12 +78,12 @@
<div class="checkbox-list">
<input type="checkbox" name="IsSelected" value="<%= jobApplication.getObjectID().toString() %>" id="<%= appID %>" class="applicant" >
<label for="<%= appID %>">
<oneit:toString value="<%= candidate %>" mode="EscapeHTML" />
<oneit:toString value="<%= onTrial && !isVisible ? "" : candidate %>" mode="EscapeHTML" />
</label>
</div>
</div>
</div>
<oneit:button value=" " name="gotoPage" skin="link"
<oneit:button value=" " name="<%= onTrial && !isVisible ? "" : "gotoPage"%>" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", applicationPage)
.mapEntry("procParams", CollectionUtils.mapEntry("JobApplication", jobApplication).mapEntry("Applications", applications).toMap())
.toMap() %>">
......
......@@ -11,6 +11,7 @@
JobApplication prevApp = (JobApplication) getData(request, "prevApp");
JobApplication nextApp = (JobApplication) getData(request, "nextApp");
Job job = jobApplication.getJob();
HiringTeam hiringTeam = job.getHiringTeam();
Candidate candidate = jobApplication.getCandidate();
String tabText = candidate.getToString();
String currentPage = WebUtils.getSamePageInRenderMode(request, WebUtils.VIEW_APPLICATION);
......@@ -20,7 +21,10 @@
List<WorkFlow> sortedWorkFlows = ObjstoreUtils.sort(jobApplication.getApplicationStatus() == ApplicationStatus.DRAFT ? job.getIncompleteApplicantWFs() : job.getApplicantWFs(),
new ObjectTransform[]{WorkFlow.pipesWorkFlow().toSortOrder()},
new Comparator[]{CollectionUtils.DEFAULT_COMPARATOR_NULLS_FIRST});
Integer overallRank = jobApplication.getOverallRank();
boolean onTrial = hiringTeam.isTrue(hiringTeam.getOnTrial());
boolean isVisible = CollectionUtils.equals(overallRank, 2) || CollectionUtils.equals(overallRank, 1);
jobApplication.setWorkFlow(workflow);
Map<FactorClass, Tuple.T3<Double, ColorCode, Double>> roleScoreMap = (Map<FactorClass, Tuple.T3<Double, ColorCode, Double>>)jobApplication.getRoleFit();
......@@ -101,29 +105,34 @@
<img src="images/arrow-left-prev.svg" />
</oneit:button>
<div class="main-appli-name">
<div class="appli-name"><oneit:toString value="<%= candidate.getToString() %>" mode="EscapeHTML"/></div>
<div class="appli-name"><oneit:toString value="<%= onTrial && !isVisible ? "" : candidate.getToString() %>" mode="EscapeHTML"/></div>
<div class="appli-applied">
Applied <oneit:toString value="<%= jobApplication.getSubmittedDate() %>" mode="MidDate"/>
</div>
</div>
<div class="main-export">
<%
if(jobApplication.getCV() != null && jobApplication.getCoverLetter() != null)
if((onTrial && isVisible) || !onTrial)
{
if(jobApplication.getCV() != null && jobApplication.getCoverLetter() != null)
{
%>
<a href="#" class="btn cv-cover-letter" onclick="previewCV()">
<img src="images/icon-paper-clip.png" />CV & Cover Letter
</a>
<a href="#" class="btn cv-cover-letter" onclick="previewCV()">
<img src="images/icon-paper-clip.png" />CV & Cover Letter
</a>
<%
}
%>
<span class="export-candidate" style="display: none;">
<select class="form-control">
<option>Export Candidate Report</option>
<option>PDF</option>
<option>Excel</option>
</select>
</span>
<%
}
%>
<span class="export-candidate" style="display: none;">
<select class="form-control">
<option>Export Candidate Report</option>
<option>PDF</option>
<option>Excel</option>
</select>
</span>
<span class="appli-status-short">
<tagfile:ormsingleasso_select obj="<%= jobApplication %>" assocName="WorkFlow" cssClass="form-control app-process"
......@@ -585,50 +594,66 @@
<div class="contact-title">Contact</div>
<div class="contact-row">
<div class="contact-label">E</div>
<div class="contact-value">
<a href="<%= "mailto:" + candidate.getUser().getEmail() %>">
<oneit:toString value="<%= candidate.getUser().getEmail() %>" mode="EscapeHTML" />
</a>
</div>
<%
if((onTrial && isVisible) || !onTrial)
{
%>
<div class="contact-value">
<a href="<%= "mailto:" + candidate.getUser().getEmail() %>">
<oneit:toString value="<%= candidate.getUser().getEmail() %>" mode="EscapeHTML" />
</a>
</div>
<%
}
%>
</div>
<div class="contact-row">
<div class="contact-label">P</div>
<div class="contact-value">
<oneit:toString value="<%= candidate.getPhone() %>" mode="EscapeHTML" />
</div>
<%
if((onTrial && isVisible) || !onTrial)
{
%>
<div class="contact-value">
<oneit:toString value="<%= candidate.getPhone() %>" mode="EscapeHTML" />
</div>
<%
}
%>
</div>
<div class="contact-row" style="display:none;">
<div class="contact-label"><img src="images/linkdin-icon.png" /></div>
<div class="contact-value"><a href="#">View LinkedIn profile</a></div>
</div>
<%
if(jobApplication.getCV() != null)
if((onTrial && isVisible) || !onTrial)
{
if(jobApplication.getCV() != null)
{
%>
<div class="contact-row">
<div class="contact-label"><img src="images/download-icon.png" /></div>
<div class="contact-value">
<a target='blank' href='<%= request.getContextPath() + "/" + BinaryContentHandler.getRelativeURL(request, jobApplication, "CV", jobApplication.getCV(), true) %>'>
Download CV
</a>
<div class="contact-row">
<div class="contact-label"><img src="images/download-icon.png" /></div>
<div class="contact-value">
<a target='blank' href='<%= request.getContextPath() + "/" + BinaryContentHandler.getRelativeURL(request, jobApplication, "CV", jobApplication.getCV(), true) %>'>
Download CV
</a>
</div>
</div>
</div>
<%
}
%>
<%
if(jobApplication.getCoverLetter() != null)
{
%>
<div class="contact-row">
<div class="contact-label"><img src="images/download-icon.png" /></div>
<div class="contact-value">
<a target='blank' href='<%= request.getContextPath() + "/" + BinaryContentHandler.getRelativeURL(request, jobApplication, "CoverLetter", jobApplication.getCoverLetter(), true) %>'>
Download Cover Letter
</a>
<%
}
if(jobApplication.getCoverLetter() != null)
{
%>
<div class="contact-row">
<div class="contact-label"><img src="images/download-icon.png" /></div>
<div class="contact-value">
<a target='blank' href='<%= request.getContextPath() + "/" + BinaryContentHandler.getRelativeURL(request, jobApplication, "CoverLetter", jobApplication.getCoverLetter(), true) %>'>
Download Cover Letter
</a>
</div>
</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