From 7b121c90ff5189f0e443a7ec45ebbb45b637b4d3 Mon Sep 17 00:00:00 2001
From: Tim Steiner <tsteiner2@unl.edu>
Date: Thu, 18 Jun 2009 20:01:27 +0000
Subject: [PATCH] Update course request view decision list to support View-Vote
 mode.

---
 .../courses/controllers/ViewController.php     | 18 ++++++++++++++++++
 .../courses/views/scripts/view/index.phtml     |  2 +-
 2 files changed, 19 insertions(+), 1 deletion(-)

diff --git a/application/modules/courses/controllers/ViewController.php b/application/modules/courses/controllers/ViewController.php
index 0ac3aeb2..c86808f3 100644
--- a/application/modules/courses/controllers/ViewController.php
+++ b/application/modules/courses/controllers/ViewController.php
@@ -68,6 +68,24 @@ class Courses_ViewController extends App_Controller_Action
         	if (count($editAllowedRoles) > 0) {
         	    $canEdit = true;
         	}
+        	
+        	if ($action) {
+                $selectedDecision = '_null';
+                $defaultDecision = '--Decision--';
+                
+            	$votes = Requests_ApproverVoteModel::findUsersVotesForRequests($user, $request);
+            	$vote = $votes[$request->getId()];
+            	
+                if ($vote) {
+                    if ($vote->getApprovalAction() == $action->getId() && $request->getLastApprovalTime()->isEarlier($vote->getTime())) {
+                        $selectedDecision = $vote->getVote();
+                    } else {
+                        $defaultDecision = 'PREVOTE: ' . $vote->getVote();
+                    }
+                }
+                $this->view->selectedDecision = $selectedDecision;
+                $this->view->defaultDecision = $defaultDecision;
+        	}
     	}
     	
     	$this->view->request = $request;
diff --git a/application/modules/courses/views/scripts/view/index.phtml b/application/modules/courses/views/scripts/view/index.phtml
index a88b1b66..0319f764 100644
--- a/application/modules/courses/views/scripts/view/index.phtml
+++ b/application/modules/courses/views/scripts/view/index.phtml
@@ -164,7 +164,7 @@ $this->layout()->breadcrumbs = array($breadcrumb . ': ' . $this->course->getCour
     <?php if ($this->action) { ?>
     <form id="decisionForm" action="<?php echo $this->baseUrl(); ?>/requests/index/decide.post">
         <?php echo $this->formHidden('returnUrl', '/courses/view/index/id/' . $this->request->getId()); ?>
-        <?php echo $this->formSelect('decisions[' . $this->request->getId() . ']', null, null, array('_null' => '--Decision--') + $this->action->getResultStatusStrings($this->user)); ?>
+        <?php echo $this->formSelect('decisions[' . $this->request->getId() . ']', $this->selectedDecision, null, array('_null' => $this->defaultDecision) + $this->action->getResultStatusStrings($this->user)); ?>
         <?php echo $this->formSubmit('submit', 'Submit Decision'); ?>
     </form>
     <?php } ?>
-- 
GitLab