From: <gem...@li...> - 2012-04-08 16:27:38
|
Revision: 609 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=609&view=rev Author: matijsdejong Date: 2012-04-08 16:27:31 +0000 (Sun, 08 Apr 2012) Log Message: ----------- Did some more testing on the forward loop and fixed some return issues Modified Paths: -------------- trunk/library/classes/Gems/Default/AskAction.php trunk/library/classes/Gems/User/User.php Modified: trunk/library/classes/Gems/Default/AskAction.php =================================================================== --- trunk/library/classes/Gems/Default/AskAction.php 2012-04-08 15:05:02 UTC (rev 608) +++ trunk/library/classes/Gems/Default/AskAction.php 2012-04-08 16:27:31 UTC (rev 609) @@ -105,13 +105,12 @@ */ public function forwardAction() { - $tracker = $this->loader->getTracker(); - /************** * Find token * **************/ if ($tokenId = $this->_getParam(MUtil_Model::REQUEST_ID)) { + $tracker = $this->loader->getTracker(); $tokenId = $tracker->filterToken($tokenId); if ($token = $tracker->getToken($tokenId)) { @@ -129,16 +128,16 @@ // Snippet had nothing to display, because of an answer if ($this->getRequest()->getActionName() == 'return') { - $this->addMessage(sprintf($this->_('Thank you for answering. At the moment we have no further surveys for you to take.'), $tokenId)); + $this->addMessage(sprintf($this->_('Thank you for answering. At the moment we have no further surveys for you to take.'), strtoupper($tokenId))); } else { - $this->addMessage(sprintf($this->_('The survey for token %s has been answered and no further surveys are open.'), $tokenId)); + $this->addMessage(sprintf($this->_('The survey for token %s has been answered and no further surveys are open.'), strtoupper($tokenId))); } // Do not enter a loop!! Reroute! $this->_reroute(array('controller' => 'ask', 'action' => 'index'), true); } else { - $this->addMessage(sprintf($this->_('The token %s does not exist (any more).'), $tokenId)); + $this->addMessage(sprintf($this->_('The token %s does not exist (any more).'), strtoupper($tokenId))); } } @@ -152,8 +151,8 @@ */ public function indexAction() { - // Make sure to return to ask screen - $this->loader->getCurrentUser()->setSurveyReturn($this->getRequest()); + // Make sure to return to the forward screen + $this->loader->getCurrentUser()->setSurveyReturn(); $request = $this->getRequest(); $tracker = $this->loader->getTracker(); @@ -175,14 +174,13 @@ { $user = $this->loader->getCurrentUser(); - if ($user->isActive()) { + if ($user->isActive() && ($parameters = $user->getSurveyReturn())) { $tracker = $this->loader->getTracker(); $token = $tracker->getToken($tracker->filterToken($this->_getParam(MUtil_Model::REQUEST_ID))); // Check for completed tokens $this->loader->getTracker()->processCompletedTokens($token->getRespondentId(), $user->getUserId()); - $parameters = $user->getSurveyReturn(); if (! $parameters) { // Default $request = $this->getRequest(); Modified: trunk/library/classes/Gems/User/User.php =================================================================== --- trunk/library/classes/Gems/User/User.php 2012-04-08 15:05:02 UTC (rev 608) +++ trunk/library/classes/Gems/User/User.php 2012-04-08 16:27:31 UTC (rev 609) @@ -1343,8 +1343,13 @@ * @param mixed $return Zend_Controller_Request_Abstract, array of something that can be turned into one. * @return Gems_User_User */ - public function setSurveyReturn($return) + public function setSurveyReturn($return = null) { + if (null === $return) { + $this->_unsetVar('surveyReturn'); + return $this; + } + if ($return instanceof Zend_Controller_Request_Abstract) { $return = $return->getParams(); } elseif (! is_array($return)) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |