Skip to content
Snippets Groups Projects
Commit 5fe18df3 authored by Tim Steiner's avatar Tim Steiner
Browse files

Basic sorting of requests on My Requests page re-added.

parent fe6d8630
Branches
Tags
No related merge requests found
......@@ -17,6 +17,7 @@ class Requests_IndexController extends App_Controller_Action
public function indexAction()
{
$this->_authorize->requireLogin();
$in = $this->getRequest()->getParams();
$user = Auth_UserModel::findCurrentUser();
$userRoles = Requests_ApprovalRoleModel::findByUser($user);
......@@ -45,6 +46,7 @@ class Requests_IndexController extends App_Controller_Action
$savedRequests = array();
}
$sortKeys = array();
$userRequestsData = array();
foreach ($userRequests as $requestId => $userRequest)
{
......@@ -62,8 +64,16 @@ class Requests_IndexController extends App_Controller_Action
if ($requestVotes[$requestId] instanceof Requests_ApproverVoteModel) {
$request['vote'] = $requestVotes[$requestId];
}
if ($in['sortBy'] == 'courseCode') {
$sortKeys[] = $request['currentCourse']->getCourseCode();
} else if ($in['sortBy'] == 'college') {
$sortKeys[] = $request['currentCourse']->getCollege();
} else if ($in['sortBy'] == 'requestType') {
$sortKeys[] = $request['request']->getType();
}
$userRequestsData[] = $request;
}
array_multisort($sortKeys, $userRequestsData);
$roleData = array();
foreach ($userRoles as $roleId => $userRole) {
......@@ -72,6 +82,7 @@ class Requests_IndexController extends App_Controller_Action
$role['requests'] = array();
if (Unl_Util::isArray($roleRequests[$roleId])) {
$sortKeys = array();
foreach($roleRequests[$roleId] as $requestId => $roleRequest) {
$request = array();
$request['request'] = $roleRequest;
......@@ -87,11 +98,20 @@ class Requests_IndexController extends App_Controller_Action
if ($requestVotes[$requestId] instanceof Requests_ApproverVoteModel) {
$request['vote'] = $requestVotes[$requestId];
}
if ($in['sortBy'] == 'courseCode') {
$sortKeys[] = $request['currentCourse']->getCourseCode();
} else if ($in['sortBy'] == 'college') {
$sortKeys[] = $request['currentCourse']->getCollege();
} else if ($in['sortBy'] == 'requestType') {
$sortKeys[] = $request['request']->getType();
}
$role['requests'][] = $request;
}
array_multisort($sortKeys, $role['requests']);
}
if (Unl_Util::isArray($watchingRequests[$roleId])) {
$sortKeys = array();
foreach($watchingRequests[$roleId] as $requestId => $watchingRequest) {
$request = array();
$request['request'] = $watchingRequest;
......@@ -104,8 +124,16 @@ class Requests_IndexController extends App_Controller_Action
} else {
$request['viewTime'] = 0;
}
if ($in['sortBy'] == 'courseCode') {
$sortKeys[] = $request['currentCourse']->getCourseCode();
} else if ($in['sortBy'] == 'college') {
$sortKeys[] = $request['currentCourse']->getCollege();
} else if ($in['sortBy'] == 'requestType') {
$sortKeys[] = $request['request']->getType();
}
$role['watchingRequests'][] = $request;
}
array_multisort($sortKeys, $role['watchingRequests']);
}
$roleData[] = $role;
}
......
......@@ -48,9 +48,9 @@
<table class="course_list">
<tr>
<!-- th id="check">&#160;</th -->
<th id="course">Course</th>
<th id="college">College</th>
<th id="type">Type</th>
<th class="course"><a href="<?php echo $this->url(array('sortBy' => 'courseCode')); ?>">Course</a></th>
<th class="college"><a href="<?php echo $this->url(array('sortBy' => 'college')); ?>">College</a></th>
<th class="type"><a href="<?php echo $this->url(array('sortBy' => 'requestType')); ?>">Type</a></th>
<th id="view_edit">View/Edit</th>
</tr>
<?php
......@@ -112,9 +112,9 @@
<table class="course_list">
<tr>
<!-- th id="check">&#160;</th -->
<th id="course"><a href="#">Course</a></th>
<th id="college"><a href="#">College</a></th>
<th id="type"><a href="#">Type</a></th>
<th id="course"><a href="<?php echo $this->url(array('sortBy' => 'courseCode')); ?>">Course</a></th>
<th id="college"><a href="<?php echo $this->url(array('sortBy' => 'college')); ?>">College</a></th>
<th id="type"><a href="<?php echo $this->url(array('sortBy' => 'requestType')); ?>">Type</a></th>
<th id="approval_body">Approval Body</th>
<th id="status">Status</th>
<th id="view_edit">View/Edit</th>
......@@ -249,9 +249,9 @@ foreach($this->roles as $roleData) {
<table class="course_list">
<tr>
<!-- th id="check">&#160;</th -->
<th class="course"><a href="#">Course</a></th>
<th class="college"><a href="#">College</a></th>
<th class="type"><a href="#">Type</a></th>
<th class="course"><a href="<?php echo $this->url(array('sortBy' => 'courseCode')); ?>">Course</a></th>
<th class="college"><a href="<?php echo $this->url(array('sortBy' => 'college')); ?>">College</a></th>
<th class="type"><a href="<?php echo $this->url(array('sortBy' => 'requestType')); ?>">Type</a></th>
<th class="pending_action">Pending Action</th>
<th class="status">Status</th>
<th class="view_edit">View/Edit</th>
......@@ -358,9 +358,9 @@ foreach($this->roles as $roleData) {
<table class="course_list">
<tr>
<!-- th id="check">&#160;</th -->
<th class="course">Course</th>
<th class="college">College</th>
<th class="type">Type</th>
<th class="course"><a href="<?php echo $this->url(array('sortBy' => 'courseCode')); ?>">Course</a></th>
<th class="college"><a href="<?php echo $this->url(array('sortBy' => 'college')); ?>">College</a></th>
<th class="type"><a href="<?php echo $this->url(array('sortBy' => 'requestType')); ?>">Type</a></th>
<th class="approval_body">Approval Body</th>
<th class="status">Status</th>
<th class="view_edit">View/Edit</th>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment