public function render(array $params = array()) { if (!isset($params['member']) && !$params['member'] instanceof \Member) { throw new \Exception('Invalid param member for account index view.'); } $this->member = $params['member']; $this->recipient = isset($params['recipient']) ? $params['recipient'] : null; $this->formVal = \Member::initBonusLevelForm(isset($params['formVal']) ? $params['formVal'] : $_REQUEST); $this->formErrors = isset($params['formErrors']) ? $params['formErrors'] : []; $this->successmsg = isset($params['successmsg']) ? true : false; $query = \MemberQuery::create()->joinActivity()->select(['Num', 'BonusLevel', 'Activity.Meta', 'Activity.Date'])->where('Activity.MemberId = ?', $this->member->getId())->orderBy('Activity.Date', \Criteria::DESC)->limit(100); $objBonusMembers = $query->find(); $arrBonusMembers = []; $currencySymbol = \Tbmt\Localizer::get('currency_symbol.' . \Transaction::$BASE_CURRENCY); $dateFormat = \Tbmt\Localizer::get('datetime_format_php.long'); foreach ($objBonusMembers as $bonusMembers) { $meta = json_decode($bonusMembers['Activity.Meta'], true); $amount = isset($meta[\Activity::MK_BONUS_PAYMENT_AMOUNT]) ? \Tbmt\Localizer::currencyFormat($meta[\Activity::MK_BONUS_PAYMENT_AMOUNT], $currencySymbol) : ' - '; $arrBonusMembers[] = [$bonusMembers['Num'], $amount, (new \DateTime($bonusMembers['Activity.Date']))->format($dateFormat)]; } $this->bonusMembers = $arrBonusMembers; return $this->renderFile(dirname(__FILE__) . DIRECTORY_SEPARATOR . 'tab.bonus_levels.account.html', $params); }
/** * [currencyArrToString description] * @param [type] $arrCurrencies * @return [type] */ static function currencyArrToString($arrCurrencies) { if (empty($arrCurrencies)) { return ' - '; } $arr = []; foreach ($arrCurrencies as $currency => $amount) { $arr[] = \Tbmt\Localizer::currencyFormat($amount, $currency); } return implode(', ', $arr); }