Commit 399724ce by Nilu Committed by Harsh Shah

adding sorting to shortlist tabs and refactoring content

parent 05cd3958
...@@ -9,38 +9,9 @@ ...@@ -9,38 +9,9 @@
Job job = (Job) process.getAttribute("Job"); Job job = (Job) process.getAttribute("Job");
List<JobApplication> applications = (List<JobApplication>) getData(request, "applications"); List<JobApplication> applications = (List<JobApplication>) getData(request, "applications");
String currentPage = (String) getData(request, "currentPage"); String currentPage = (String) getData(request, "currentPage");
AppSortOption appSortOpt = (AppSortOption) getData(request, "sortOption");
%> %>
<oneit:dynIncluded> <oneit:dynIncluded>
<div class="second-part view-app-area">
<div class="main-applicants-filter">
<div class="appli-list-shorting">
<div class="appli-shorting-dropdown appli-left">
<span class="appli-order-label">Bulk Update</span>
<select class="form-control">
<option>To Shortlist</option>
</select>
</div>
<div class="appli-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 = currentPage + "&JobID=" + job.getID() + "&AppSortOption=" + sortOption.getName() ;
%>
<option <%= (appSortOpt != null && appSortOpt == sortOption ? "selected" : "" )%> value="<%= optionLink %>">
<oneit:toString value="<%= sortOption.getDescription() %>" mode="EscapeHTML"/>
</option>
<%
}
%>
</select>
</div>
</div>
</div>
<div class="view-appli-list"> <div class="view-appli-list">
<% <%
int j = 0; int j = 0;
...@@ -118,5 +89,4 @@ ...@@ -118,5 +89,4 @@
} }
%> %>
</div> </div>
</div>
</oneit:dynIncluded> </oneit:dynIncluded>
<%@ page extends="oneit.servlets.jsp.JSPInclude" %>
<%@ include file="/inc/stdimports50.jsp" %><%-- This is in cougar --%>
<%@ include file="/inc/stdcms.jsp" %><%-- This is in cougar --%>
<%@ include file="/extensions/performa/inc/stdimports.jsp" %>
<%@ page import="oneit.utils.text.FormatUtils"%>
<%
Job job = (Job) process.getAttribute("Job");
String currentPage = (String) getData(request, "currentPage");
AppSortOption appSortOpt = (AppSortOption) getData(request, "sortOption");
String tabNumber = (String) getData(request, "tabNumber");
%>
<oneit:dynIncluded>
<div class="main-applicants-filter">
<div class="appli-list-shorting">
<div class="appli-shorting-dropdown appli-left">
<span class="appli-order-label">Bulk Update</span>
<select class="form-control">
<option>To Shortlist</option>
</select>
</div>
<%
if(tabNumber != null)
{
String firstTab = WebUtils.getSamePageInRenderMode(request, WebUtils.APPLICANTS_SHORTLIST);
String secondTab = WebUtils.getSamePageInRenderMode(request, WebUtils.APPLICANTS_GRID);
%>
<div class="appli-filter">
<ul class="">
<li class="lable-appli-shorting">View</li>
<li class="<%= (tabNumber == "1" ? "active" : "" ) + " short-list"%>">
<oneit:button value="List" name="gotoPage" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", firstTab)
.mapEntry("procParams", CollectionUtils.mapEntry("Job", job).toMap())
.toMap() %>"/>
</li>
<li class="<%= (tabNumber == "2" ? "active" : "" ) + " grid-list"%>">
<oneit:button value="Grid" name="gotoPage" skin="link"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", secondTab)
.mapEntry("procParams", CollectionUtils.mapEntry("Job", job).toMap())
.toMap() %>"/>
</li>
</ul>
</div>
<div class="appli-shorting-dropdown">
<span class="appli-order-label">Export</span>
<select class="form-control">
<option>PDF</option>
<option>CSV</option>
<option>XML</option>
</select>
</div>
<%
}
%>
<div class="appli-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 = currentPage + "&JobID=" + job.getID() + "&AppSortOption=" + sortOption.getName() ;
%>
<option <%= (appSortOpt != null && appSortOpt == sortOption ? "selected" : "" )%> value="<%= optionLink %>">
<oneit:toString value="<%= sortOption.getDescription() %>" mode="EscapeHTML"/>
</option>
<%
}
%>
</select>
</div>
</div>
</div>
</oneit:dynIncluded>
...@@ -74,11 +74,18 @@ ...@@ -74,11 +74,18 @@
TabNumber="1" TabNumber="1"
data="<%= CollectionUtils.EMPTY_MAP%>"/> data="<%= CollectionUtils.EMPTY_MAP%>"/>
<div class="second-part view-app-area">
<oneit:dynInclude page="/extensions/adminportal/inc/application_sorting_bar.jsp"
sortOption="<%= appSortOpt %>"
currentPage="<%= currentPage %>"
data="<%= CollectionUtils.EMPTY_MAP%>"/>
<oneit:dynInclude page="/extensions/adminportal/inc/application_list_data.jsp" <oneit:dynInclude page="/extensions/adminportal/inc/application_list_data.jsp"
applications="<%= sortedApplications %>" applications="<%= sortedApplications %>"
sortOption="<%= appSortOpt %>"
currentPage="<%= currentPage %>" currentPage="<%= currentPage %>"
data="<%= CollectionUtils.EMPTY_MAP%>"/> data="<%= CollectionUtils.EMPTY_MAP%>"/>
</div> </div>
</div>
</oneit:form> </oneit:form>
</oneit:dynIncluded> </oneit:dynIncluded>
\ No newline at end of file
...@@ -9,10 +9,29 @@ ...@@ -9,10 +9,29 @@
<% <%
Job job = (Job) process.getAttribute("Job"); Job job = (Job) process.getAttribute("Job");
if(job==null && request.getParameter("JobID")!=null)
{
job = Job.getJobByID(transaction, Long.parseLong(request.getParameter("JobID")));
process.setAttribute("Job", job);
}
Debug.assertion(job != null, "Job is null in admin portal view applicants"); Debug.assertion(job != null, "Job is null in admin portal view applicants");
String firstTab = WebUtils.getSamePageInRenderMode(request, WebUtils.APPLICANTS_SHORTLIST); String currentPage = WebUtils.getSamePageInRenderMode(request, WebUtils.APPLICANTS_SHORTLIST);
String secondTab = WebUtils.getSamePageInRenderMode(request, WebUtils.APPLICANTS_GRID); AppSortOption appSortOpt = (AppSortOption) process.getAttribute("AppSortOption");
if(request.getParameter("AppSortOption") != null)
{
appSortOpt = AppSortOption.forName((String) request.getParameter("AppSortOption"));
}
if(appSortOpt == null)
{
appSortOpt = AppSortOption.RANK;
}
process.setAttribute("AppSortOption", appSortOpt);
%> %>
<script type="text/javascript"> <script type="text/javascript">
$(document).ready(function() $(document).ready(function()
...@@ -29,78 +48,16 @@ ...@@ -29,78 +48,16 @@
<div class="second-part view-app-area"> <div class="second-part view-app-area">
<oneit:dynInclude page="/extensions/adminportal/inc/shortlist_tabs.jsp" TabNumber="1" data="<%= CollectionUtils.EMPTY_MAP%>"/> <oneit:dynInclude page="/extensions/adminportal/inc/application_sorting_bar.jsp"
sortOption="<%= appSortOpt %>"
<div class="view-appli-list"> currentPage="<%= currentPage %>"
<% tabNumber="1"
int j = 0; data="<%= CollectionUtils.EMPTY_MAP%>"/>
for(JobApplication jobApplication : job.getShortlistedApplications()) <oneit:dynInclude page="/extensions/adminportal/inc/application_list_data.jsp"
{ applications="<%= job.getShortlistedApplications() %>"
String jobMatch = FormatUtils.stringify(jobApplication.getJobMatchPercentage(), "PercentageWholeNumber", "0"); currentPage="<%= currentPage %>"
String culture = FormatUtils.stringify(jobApplication.getCulturePercentage(), "PercentageWholeNumber", "0"); data="<%= CollectionUtils.EMPTY_MAP%>"/>
String criteria = FormatUtils.stringify(jobApplication.getCriteriaPercentage(), "PercentageWholeNumber", "0");
%>
<div class="appli-row">
<div class="appli-checkbox appli-l eq-second-height">
<div class="checkbox-list">
<oneit:ormInput obj="<%= jobApplication %>" id="<%= jobApplication.getID().toString()%>" attributeName="IsSelected" type="checkbox"/>
<oneit:recalcClass htmlTag="span" classScript="jobApplication.getIsSelected() != null && jobApplication.getIsSelected() ? 'checked': 'unchecked'" jobApplication="<%= jobApplication %>">
<label for="<%= jobApplication.getID().toString()%>"/>
</oneit:recalcClass>
</div>
</div>
<div class="appli-list-name appli-l eq-second-height">
<oneit:toString value="<%= jobApplication.getCandidate() %>" mode="EscapeHTML" />
<div class="appli-int-status">Interview 1 - schedulded</div>
</div>
<div class="appli-jcs appli-l eq-second-height">
<span class="appli-view-bar">
<div class="progress">
<div class="progress-bar" role="progressbar" aria-valuenow="<%= jobMatch %>" aria-valuemin="0" aria-valuemax="100"
style="<%= "width: " + jobMatch %>">
</div>
</div>
</span>
Job Match
</div>
<div class="appli-jcs appli-l eq-second-height">
<span class="appli-view-bar">
<div class="progress">
<div class="progress-bar" role="progressbar" aria-valuenow="<%= culture %>" aria-valuemin="0" aria-valuemax="100"
style="<%= "width: " + culture %>">
</div>
</div>
</span>
culture
</div>
<div class="appli-jcs appli-l eq-second-height">
<span class="appli-view-bar">
<div class="progress">
<div class="progress-bar" role="progressbar" aria-valuenow="<%= criteria %>" aria-valuemin="0" aria-valuemax="100"
style="<%= "width: " + criteria %>">
</div>
</div>
</span>
selection criteria
</div>
<div class="appli-status appli-l eq-second-height">
<!--TODO: logic needed to be worked out. Added to note that there are three colors-->
<div class="<%= "appli-percent-no " + (j == 0 ? "green" : (j < 3 ? "blue" : "grey" ))%>">
<oneit:toString value="<%= jobApplication.getOverallSuitability() %>" mode="Integer" />
</div>
<div class="appli-list-drop">
<select class="form-control">
<option>Interview</option>
</select>
</div>
</div>
</div>
<%
j++;
}
%>
</div>
</div> </div>
</div> </div>
</oneit:form> </oneit:form>
......
...@@ -9,9 +9,31 @@ ...@@ -9,9 +9,31 @@
<% <%
Job job = (Job) process.getAttribute("Job"); Job job = (Job) process.getAttribute("Job");
String applicationPage = WebUtils.getSamePageInRenderMode(request, WebUtils.VIEW_APPLICATION); if(job==null && request.getParameter("JobID")!=null)
{
job = Job.getJobByID(transaction, Long.parseLong(request.getParameter("JobID")));
process.setAttribute("Job", job);
}
Debug.assertion(job != null, "Job is null in admin portal view applicants"); Debug.assertion(job != null, "Job is null in admin portal view applicants");
String applicationPage = WebUtils.getSamePageInRenderMode(request, WebUtils.VIEW_APPLICATION);
String currentPage = WebUtils.getSamePageInRenderMode(request, WebUtils.APPLICANTS_GRID);
AppSortOption appSortOpt = (AppSortOption) process.getAttribute("AppSortOption");
if(request.getParameter("AppSortOption") != null)
{
appSortOpt = AppSortOption.forName((String) request.getParameter("AppSortOption"));
}
if(appSortOpt == null)
{
appSortOpt = AppSortOption.RANK;
}
process.setAttribute("AppSortOption", appSortOpt);
%> %>
<script type="text/javascript"> <script type="text/javascript">
...@@ -65,7 +87,11 @@ ...@@ -65,7 +87,11 @@
<div class="second-part view-app-area"> <div class="second-part view-app-area">
<oneit:dynInclude page="/extensions/adminportal/inc/shortlist_tabs.jsp" TabNumber="2" data="<%= CollectionUtils.EMPTY_MAP%>"/> <oneit:dynInclude page="/extensions/adminportal/inc/application_sorting_bar.jsp"
sortOption="<%= appSortOpt %>"
currentPage="<%= currentPage %>"
tabNumber="2"
data="<%= CollectionUtils.EMPTY_MAP%>"/>
<div class="five-boxs"> <div class="five-boxs">
<% <%
......
...@@ -67,11 +67,17 @@ ...@@ -67,11 +67,17 @@
TabNumber="3" TabNumber="3"
data="<%= CollectionUtils.EMPTY_MAP%>"/> data="<%= CollectionUtils.EMPTY_MAP%>"/>
<div class="second-part view-app-area">
<oneit:dynInclude page="/extensions/adminportal/inc/application_sorting_bar.jsp"
sortOption="<%= appSortOpt %>"
currentPage="<%= currentPage %>"
data="<%= CollectionUtils.EMPTY_MAP%>"/>
<oneit:dynInclude page="/extensions/adminportal/inc/application_list_data.jsp" <oneit:dynInclude page="/extensions/adminportal/inc/application_list_data.jsp"
applications="<%= sortedApplications %>" applications="<%= sortedApplications %>"
sortOption="<%= appSortOpt %>"
currentPage="<%= currentPage %>" currentPage="<%= currentPage %>"
data="<%= CollectionUtils.EMPTY_MAP%>"/> data="<%= CollectionUtils.EMPTY_MAP%>"/>
</div> </div>
</div>
</oneit:form> </oneit:form>
</oneit:dynIncluded> </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