Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
| Total | |
100.00% |
1 / 1 |
|
100.00% |
5 / 5 |
CRAP | |
100.00% |
13 / 13 |
| Reputation | |
100.00% |
1 / 1 |
|
100.00% |
5 / 5 |
6 | |
100.00% |
13 / 13 |
| __construct(\aae\db\FunctionAPI $storageAPI) | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
| getRep($userEmail) | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
| updateAndGetRep($userEmail) | |
100.00% |
1 / 1 |
2 | |
100.00% |
8 / 8 |
|||
| _getRepForEvent($repEvent) | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
| registerReputationEvent($userEmail, $eventType, $benefactorId) | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
| <?php | |
| /** | |
| * | |
| */ | |
| namespace aae\app { | |
| use \aae\db\FunctionAPI as FAPI; | |
| /** | |
| * @author Axel Ancona Esselmann | |
| * @package aae\app | |
| */ | |
| class Reputation { | |
| private $_storageAPI; | |
| public function __construct(\aae\db\FunctionAPI $storageAPI) { | |
| $this->_storageAPI = $storageAPI; | |
| } | |
| public function getRep($userEmail) { | |
| return (int)$this->_storageAPI->getRep($userEmail); | |
| } | |
| /** | |
| * Calculates reputation for all uncounted reputation events and updates | |
| * the reputation of the user identified by $userEmail | |
| * | |
| * @param string $userEmail User Email | |
| * @return int The new reputation of that user. | |
| */ | |
| public function updateAndGetRep($userEmail) { | |
| $this->_storageAPI->setFetchMode(FAPI::FETCH_NUM_ARRAY); | |
| $repEvents = $this->_storageAPI->getNewReputationEvents($userEmail); | |
| $newRepPoints = 0; | |
| foreach ($repEvents as $repEvent) { | |
| $newRepPoints += $this->_getRepForEvent($repEvent); | |
| } | |
| $this->_storageAPI->setFetchMode(FAPI::RESET); | |
| return (int)$this->_storageAPI->updateRep($newRepPoints); | |
| } | |
| protected function _getRepForEvent($repEvent) { | |
| //var_dump($repEvent); | |
| return 5; | |
| } | |
| public function registerReputationEvent($userEmail, $eventType, $benefactorId) { | |
| return $this->_storageAPI->registerReputationEvent($userEmail, $eventType, $benefactorId); | |
| } | |
| } | |
| } |