X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Fclasses%2Fmain%2Fpoints%2Fclass_UserPoints.php;h=faf396c3cdf32d8580f5a8ed4d396dadb74fe016;hb=8d8803b0e26be08bd5684c30e6e76778ca9371b4;hp=a76cf3ca6fd59f0bd58eded26f1d412a4b677cad;hpb=4535fdd1b20a19f4535c12494d48fe633a7bc88f;p=core.git diff --git a/inc/classes/main/points/class_UserPoints.php b/inc/classes/main/points/class_UserPoints.php index a76cf3ca..faf396c3 100644 --- a/inc/classes/main/points/class_UserPoints.php +++ b/inc/classes/main/points/class_UserPoints.php @@ -2,11 +2,11 @@ /** * A class for handling user points which can be real or Internet currency * - * @author Roland Haeder + * @author Roland Haeder * @version 0.0.0 - * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 Core Developer Team + * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2013 Core Developer Team * @license GNU GPL 3.0 or any newer version - * @link http://www.ship-simu.org + * @link http://www.shipsimu.org * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -43,7 +43,7 @@ class UserPoints extends BaseFrameworkSystem implements Registerable, BookablePo * @param $userInstance An instance of a user class * @return $pointsInstance An instance of this class */ - public final static function createUserPoints (ManageableAccount $userInstance) { + public static final function createUserPoints (ManageableAccount $userInstance) { // Get a new instance $pointsInstance = new UserPoints(); @@ -63,8 +63,11 @@ class UserPoints extends BaseFrameworkSystem implements Registerable, BookablePo // Get result back $resultInstance = $wrapperInstance->doSelectByCriteria($searchInstance); + // Advance to first entry by default + $resultInstance->next(); + // Set it in this instance - $pointsInstance->setResultInstance(); + $pointsInstance->setResultInstance($resultInstance); // Return instance return $pointsInstance; @@ -90,19 +93,22 @@ class UserPoints extends BaseFrameworkSystem implements Registerable, BookablePo } /** - * Checks wether the user has the required amount of points left for the specified action + * Checks whether the user has the required amount of points left for the specified action * * @param $action The action or configuration entry plus prefix the user wants to perform - * @return $hasRequired Wether the user has the required points + * @return $hasRequired Whether the user has the required points * @todo Finish loading part of points */ public function ifUserHasRequiredPoints ($action) { // Default is that everyone is poor... ;-) - $hasRequired = false; + $hasRequired = FALSE; // Get the required points entry $requiredPoints = $this->getConfigInstance()->getConfigEntry($action . '_action_points'); + // Rewind always + $this->getResultInstance()->rewind(); + // Do we have an entry? if ($this->getResultInstance()->next()) { // Get the entry @@ -123,6 +129,9 @@ class UserPoints extends BaseFrameworkSystem implements Registerable, BookablePo * @return void */ function bookPointsDirectly ($amount) { + // Rewind always + $this->getResultInstance()->rewind(); + // Do we have an entry? if ($this->getResultInstance()->next()) { // Get the entry @@ -157,10 +166,11 @@ class UserPoints extends BaseFrameworkSystem implements Registerable, BookablePo /** * Adds registration elements to a given dataset instance * - * @param $criteriaInstance An instance of a storeable criteria + * @param $criteriaInstance An instance of a StoreableCriteria class + * @param $requestInstance An instance of a Requestable class * @return void */ - public function addElementsToDataSet (StoreableCriteria $criteriaInstance) { + public function addElementsToDataSet (StoreableCriteria $criteriaInstance, Requestable $requestInstance = NULL) { // Add user id $criteriaInstance->addCriteria(UserPointsDatabaseWrapper::DB_COLUMN_POINTS_UID, $this->getUserInstance()->getUserId());