1
This commit is contained in:
commit
17165b7a4f
@ -125,6 +125,7 @@ class Battle(object):
|
||||
['session_id','','session_id'],
|
||||
['battle_uuid','','battle_uuid'],
|
||||
['match_mode',0,'0:匹配 1:排位 2:pve'],
|
||||
['rank', 0, '当前段位'],
|
||||
['name','','用户名字'],
|
||||
['level',0,'用户等级'],
|
||||
['revive_coin',0,'复活币'],
|
||||
|
52
doc/FirstTopup.py
Normal file
52
doc/FirstTopup.py
Normal file
@ -0,0 +1,52 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
import _common
|
||||
|
||||
class FirstTopup(object):
|
||||
|
||||
def __init__(self):
|
||||
self.apis = [
|
||||
{
|
||||
'name': 'info',
|
||||
'desc': '首充信息',
|
||||
'group': 'FirstTopup',
|
||||
'url': 'webapp/index.php?c=FirstTopup&a=info',
|
||||
'params': [
|
||||
_common.ReqHead(),
|
||||
],
|
||||
'response': [
|
||||
_common.RspHead(),
|
||||
['complete', 0, '是否已经完成首充 0-未完成 1-已完成'],
|
||||
['!firstTopupList', [_common.Reward()], '奖励信息'],
|
||||
['!status', [0], '领取状态 0-未领取 1-可领取 2-已领取'],
|
||||
]
|
||||
},
|
||||
{
|
||||
'name': 'begin',
|
||||
'desc': '开始首充',
|
||||
'group': 'FirstTopup',
|
||||
'url': 'webapp/index.php?c=FirstTopup&a=begin',
|
||||
'params': [
|
||||
_common.ReqHead(),
|
||||
],
|
||||
'response': [
|
||||
_common.RspHead(),
|
||||
]
|
||||
},
|
||||
{
|
||||
'name': 'get',
|
||||
'desc': '获取首充奖励',
|
||||
'group': 'FirstTopup',
|
||||
'url': 'webapp/index.php?c=FirstTopup&a=get',
|
||||
'params': [
|
||||
_common.ReqHead(),
|
||||
['group', 0, '奖励组id'],
|
||||
],
|
||||
'response': [
|
||||
_common.RspHead(),
|
||||
['group', 0, '奖励组id'],
|
||||
['!status', [0], '领取状态 0-未领取 1-可领取 2-已领取'],
|
||||
['!reward', [_common.Reward()], '奖励信息'],
|
||||
]
|
||||
},
|
||||
]
|
35
doc/User.py
35
doc/User.py
@ -139,7 +139,8 @@ class User(object):
|
||||
'response': [
|
||||
_common.RspHead(),
|
||||
]
|
||||
},{
|
||||
},
|
||||
{
|
||||
'name': 'initRank',
|
||||
'desc': '排位初始化段位',
|
||||
'group': 'User',
|
||||
@ -151,7 +152,8 @@ class User(object):
|
||||
_common.RspHead(),
|
||||
['property_chg', _common.PropertyChg(), '属性变更'],
|
||||
]
|
||||
},{
|
||||
},
|
||||
{
|
||||
'name': 'selectFreeItem',
|
||||
'desc': '选择免费英雄和武器',
|
||||
'group': 'User',
|
||||
@ -165,7 +167,8 @@ class User(object):
|
||||
_common.RspHead(),
|
||||
['property_chg', _common.PropertyChg(), '属性变更'],
|
||||
]
|
||||
},{
|
||||
},
|
||||
{
|
||||
'name': 'getFreeItemList',
|
||||
'desc': '获取免费英雄和武器列表',
|
||||
'group': 'User',
|
||||
@ -178,4 +181,30 @@ class User(object):
|
||||
['!data', [], '列表'],
|
||||
]
|
||||
},
|
||||
{
|
||||
'name': 'getFreeItemList',
|
||||
'desc': '获取免费英雄和武器列表',
|
||||
'group': 'User',
|
||||
'url': 'webapp/index.php?c=User&a=getFreeItemList',
|
||||
'params': [
|
||||
_common.ReqHead(),
|
||||
],
|
||||
'response': [
|
||||
_common.RspHead(),
|
||||
['!data', [], '列表'],
|
||||
]
|
||||
},
|
||||
{
|
||||
'name': 'updateAddressBind',
|
||||
'desc': '更新钱包绑定信息',
|
||||
'group': 'User',
|
||||
'url': 'webapp/index.php?c=User&a=updateAddressBind',
|
||||
'params': [
|
||||
_common.ReqHead(),
|
||||
['jwt', '', 'jwt数据'],
|
||||
],
|
||||
'response': [
|
||||
_common.RspHead(),
|
||||
]
|
||||
},
|
||||
]
|
||||
|
@ -121,6 +121,7 @@ class UserInfo(object):
|
||||
['activated', 0, '是否已激活'],
|
||||
['rename_count', 0, '改名次数'],
|
||||
['account_id', '', '账号id'],
|
||||
['address', '', '钱包地址(空或者null表示没钱包)'],
|
||||
['name', '', '用户名字'],
|
||||
['head_id', 0, '头像id'],
|
||||
['head_frame', 0, '头像框id'],
|
||||
@ -1154,4 +1155,15 @@ class BattleReward(object):
|
||||
self.fields = [
|
||||
['hero', BattleCegReward(), '英雄奖励'],
|
||||
['!items', [BattleItemReward()], '碎片奖励'],
|
||||
]
|
||||
]
|
||||
|
||||
class Reward(object):
|
||||
|
||||
def __init__(self):
|
||||
self.fields = [
|
||||
['id', 0, 'id'],
|
||||
['group', '', 'group'],
|
||||
['goods_id', 0, 'goods_id'],
|
||||
['goods_num', 0, '堆叠数量'],
|
||||
['shop_icon', 0, '商店图标'],
|
||||
]
|
||||
|
@ -27,6 +27,7 @@ define('TN_HERO_MAX_LEVEL', 8008);
|
||||
define('TN_LAST_RANKING_TIME', 8009);
|
||||
define('TN_MISSION_STAR_SEASON', 8010);
|
||||
define('TN_RANK_STATUS', 8011);
|
||||
define('TN_FIRST_TUPOP_STATUS', 8012);
|
||||
|
||||
|
||||
define('TN_DAILY_BEGIN', 9001);
|
||||
|
@ -38,6 +38,7 @@ class BaseAuthedController extends BaseController {
|
||||
private $accountId = '';
|
||||
private $sessionId = '';
|
||||
private $mysqlConn = null;
|
||||
private $address = null;
|
||||
|
||||
private function isWhiteList()
|
||||
{
|
||||
|
@ -216,6 +216,7 @@ class BattleController extends BaseAuthedController {
|
||||
'account_id' => $account_id,
|
||||
'session_id' => $session_id,
|
||||
'battle_uuid' => $battle_uuid,
|
||||
'rank' => 0,
|
||||
'name' => '',
|
||||
'level' =>'',
|
||||
'hero_uniid' => '',
|
||||
@ -243,6 +244,7 @@ class BattleController extends BaseAuthedController {
|
||||
$userDb = User::find($account_id);
|
||||
if ($userDb){
|
||||
$userPresetInfo = User::toPreset($userDb);
|
||||
$info['rank'] = $userDb['rank'];
|
||||
$info['name'] = $userPresetInfo['name'];
|
||||
$info['level'] = $userPresetInfo['level'];
|
||||
$info['parachute'] = $userPresetInfo['parachute'];
|
||||
|
205
webapp/controller/FirstTopupController.class.php
Normal file
205
webapp/controller/FirstTopupController.class.php
Normal file
@ -0,0 +1,205 @@
|
||||
<?php
|
||||
|
||||
require_once 'mt/FirstTopup.php';
|
||||
require_once('services/PropertyChgService.php');
|
||||
|
||||
use mt\FirstTopup;
|
||||
use phpcommon\SqlHelper;
|
||||
|
||||
use models\Bag;
|
||||
use models\Hero;
|
||||
use models\HeroSkin;
|
||||
use models\Gun;
|
||||
use models\GunSkin;
|
||||
use models\Chip;
|
||||
|
||||
class FirstTopupController extends BaseAuthedController
|
||||
{
|
||||
|
||||
public function info()
|
||||
{
|
||||
$complete = false;
|
||||
|
||||
$conn = myself()->_getMysql('');
|
||||
|
||||
$status = $this->getStatusFromDB($conn);
|
||||
|
||||
// 检查所有 奖励都 领取完成
|
||||
$complete = ($status[0] == 2 && $status[1] == 2 && $status[2] == 2) ? 1 : 0;
|
||||
if ($complete == 1) {
|
||||
$this->_setV(TN_FIRST_TUPOP_STATUS, 0, 1);
|
||||
}
|
||||
|
||||
$this->_rspData(
|
||||
array(
|
||||
'complete' => $complete,
|
||||
'firstTopupList' => mt\FirstTopup::getGroups(),
|
||||
'status' => $status,
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
public function begin()
|
||||
{
|
||||
$conn = myself()->_getMysql('');
|
||||
|
||||
$exist = SqlHelper::selectOne(
|
||||
$conn,
|
||||
't_first_topup',
|
||||
array('account_id'),
|
||||
array('account_id' => myself()->_getAccountId())
|
||||
);
|
||||
if ($exist) {
|
||||
$this->_rspErr(1, '首充奖励活动已经开启');
|
||||
return;
|
||||
}
|
||||
|
||||
// 开始首充奖励活动进程
|
||||
$chk = SqlHelper::insert(
|
||||
$conn,
|
||||
't_first_topup',
|
||||
array(
|
||||
'account_id' => myself()->_getAccountId(),
|
||||
'createtime' => myself()->_getNowTime(),
|
||||
'status1' => 0,
|
||||
'status2' => 0,
|
||||
'status3' => 0,
|
||||
)
|
||||
);
|
||||
|
||||
if ($chk) {
|
||||
$this->_rspOk();
|
||||
} else {
|
||||
$this->_rspErr(1, '首充奖励活动开启失败');
|
||||
}
|
||||
}
|
||||
|
||||
public function get()
|
||||
{
|
||||
$group = getReqVal('group', 1);
|
||||
|
||||
$conn = myself()->_getMysql('');
|
||||
|
||||
$status = $this->getStatusFromDB($conn);
|
||||
|
||||
$test = $status[$group - 1];
|
||||
|
||||
if ($test == 1) {
|
||||
$status[$group - 1] = 2;
|
||||
$chk = SqlHelper::update(
|
||||
$conn,
|
||||
't_first_topup',
|
||||
array(
|
||||
'account_id' => myself()->_getAccountId(),
|
||||
),
|
||||
array(
|
||||
'status' . $group => 2,
|
||||
)
|
||||
);
|
||||
// 发放奖励
|
||||
$reward = mt\FirstTopup::getByGroup($group);
|
||||
|
||||
$propertyChgService = new services\PropertyChgService();
|
||||
|
||||
for ($i = 0; $i < count($reward); $i++) {
|
||||
$item = $reward[$i];
|
||||
$itemMeta = mt\Item::get($item['goods_id']);
|
||||
for ($j = 0; $j < $item['goods_num']; $j++) {
|
||||
$this->internalAddItem($propertyChgService, $itemMeta, 1);
|
||||
}
|
||||
}
|
||||
|
||||
$complete = ($status[0] == 2 && $status[1] == 2 && $status[2] == 2) ? 1 : 0;
|
||||
if ($complete == 1) {
|
||||
$this->_setV(TN_FIRST_TUPOP_STATUS, 0, 1);
|
||||
}
|
||||
|
||||
$this->_rspData(
|
||||
array(
|
||||
'group' => $group,
|
||||
'status' => $status,
|
||||
'reward' => $reward,
|
||||
)
|
||||
);
|
||||
} else if ($test >= 2) {
|
||||
$this->_rspErr(2, "already received the reward");
|
||||
} else if ($test < 1) {
|
||||
// 未到领取时间 英文 怎么说
|
||||
$this->_rspErr(1, "not yet to receive the reward");
|
||||
}
|
||||
}
|
||||
|
||||
private function getStatus($group, $time)
|
||||
{
|
||||
$beginDayTime = myself()->_getDaySeconds($time);
|
||||
$now = myself()->_getNowTime();
|
||||
|
||||
$diff = $now - ($beginDayTime + $group * 24 * 3600);
|
||||
if ($diff >= 0) {
|
||||
return 1;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
private function getStatusFromDB($conn)
|
||||
{
|
||||
// 从数据库中获取 status
|
||||
$row = SqlHelper::selectOne(
|
||||
$conn,
|
||||
't_first_topup',
|
||||
array('createtime', 'status1', 'status2', 'status3'),
|
||||
array('account_id' => myself()->_getAccountId())
|
||||
);
|
||||
|
||||
// 0 未领取 1 可领取 2 已领取
|
||||
$status = [(int)$row['status1'], (int)$row['status2'], (int)$row['status3']];
|
||||
$time = $row['createtime'];
|
||||
|
||||
for ($i = 0; $i < 3; $i++) {
|
||||
if ($status[$i] < 2) {
|
||||
// 检测是否到了可以领取的时间
|
||||
$status[$i] = $this->getStatus($i, $time);
|
||||
}
|
||||
}
|
||||
|
||||
return $status;
|
||||
}
|
||||
|
||||
private function internalAddItem($propertyChgService, $itemMeta, $count)
|
||||
{
|
||||
switch ($itemMeta['type']) {
|
||||
case mt\Item::HERO_TYPE: {
|
||||
Hero::addHero($itemMeta);
|
||||
$propertyChgService->addHeroChg();
|
||||
$propertyChgService->addUserChg();
|
||||
}
|
||||
break;
|
||||
case mt\Item::HERO_SKIN_TYPE: {
|
||||
HeroSkin::addSkin($itemMeta);
|
||||
$propertyChgService->addHeroSkinChg();
|
||||
}
|
||||
break;
|
||||
case mt\Item::GUN_TYPE: {
|
||||
Gun::addGun($itemMeta);
|
||||
$propertyChgService->addGunChg();
|
||||
}
|
||||
break;
|
||||
case mt\Item::GUN_SKIN_TYPE: {
|
||||
GunSkin::addSkin($itemMeta);
|
||||
$propertyChgService->addGunSkinChg();
|
||||
}
|
||||
break;
|
||||
case mt\Item::CHIP_TYPE: {
|
||||
Chip::addChip($itemMeta);
|
||||
$propertyChgService->addChip();
|
||||
}
|
||||
break;
|
||||
default: {
|
||||
Bag::addItem($itemMeta['id'], $count);
|
||||
$propertyChgService->addBagChg();
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
@ -64,6 +64,14 @@ class UserController extends BaseAuthedController {
|
||||
$this->_updateUserInfo(array(
|
||||
'last_login_time'=>myself()->_getNowTime(),
|
||||
));
|
||||
if ($this->_getChannel() == BC_CHANNEL &&
|
||||
empty($userInfo['address'])
|
||||
) {
|
||||
User::Update(array(
|
||||
'address' => $this->_getOpenId()
|
||||
));
|
||||
$userInfo['address'] = $this->_getOpenId();
|
||||
}
|
||||
$this->updateLastSeason($userInfo);
|
||||
$this->_rspData(array(
|
||||
'info' => User::show($userInfo),
|
||||
@ -253,6 +261,36 @@ class UserController extends BaseAuthedController {
|
||||
$haveHeadHeroList[rand() % count($haveHeadHeroList)]['hero_head'] : 0;
|
||||
}
|
||||
//Hero::randHero($heroUniId, $heroId);
|
||||
$fields = array(
|
||||
'account_id' => $this->_getAccountId(),
|
||||
'channel' => $this->_getChannel(),
|
||||
'name' => $userName,
|
||||
'sex' => rand() % 2,
|
||||
#'avatar_url' => $avatar_url,
|
||||
'gold' => $gold,
|
||||
'diamond' => $diamond,
|
||||
'head_frame' => $headFrame,
|
||||
'level' => 1,
|
||||
'exp' => 0,
|
||||
'rank' => $initRankMeta ? $initRankMeta['id'] : 1,
|
||||
'history_best_rank' => $initRankMeta ? $initRankMeta['id'] : 1,
|
||||
'score' => $initRankMeta ? $initRankMeta['rank_score'] : 0,
|
||||
'history_best_score' => $initRankMeta ? $initRankMeta['rank_score'] : 0,
|
||||
'head_id' => $headId,
|
||||
'hero_id' => $heroId,
|
||||
'last_season_id' => $currSeasonMeta ? $currSeasonMeta['id'] : 0,
|
||||
'head_list' => json_encode($headList),
|
||||
'head_frame_list' => json_encode($headFrameList),
|
||||
'score_modifytime' => $this->_getNowTime(),
|
||||
'best_rank_modifytime' => $this->_getNowTime(),
|
||||
'createtime' => $this->_getNowTime(),
|
||||
'modifytime' => $this->_getNowTime(),
|
||||
'last_login_time' => $this->_getNowTime(),
|
||||
);
|
||||
if ($this->_getChannel() == BC_CHANNEL) {
|
||||
$fields['address'] = $this->_getOpenId();
|
||||
}
|
||||
|
||||
SqlHelper::upsert
|
||||
($this->_getSelfMysql(),
|
||||
't_user',
|
||||
@ -261,32 +299,7 @@ class UserController extends BaseAuthedController {
|
||||
),
|
||||
array(
|
||||
),
|
||||
array(
|
||||
'account_id' => $this->_getAccountId(),
|
||||
'channel' => $this->_getChannel(),
|
||||
'name' => $userName,
|
||||
'sex' => rand() % 2,
|
||||
#'avatar_url' => $avatar_url,
|
||||
'gold' => $gold,
|
||||
'diamond' => $diamond,
|
||||
'head_frame' => $headFrame,
|
||||
'level' => 1,
|
||||
'exp' => 0,
|
||||
'rank' => $initRankMeta ? $initRankMeta['id'] : 1,
|
||||
'history_best_rank' => $initRankMeta ? $initRankMeta['id'] : 1,
|
||||
'score' => $initRankMeta ? $initRankMeta['rank_score'] : 0,
|
||||
'history_best_score' => $initRankMeta ? $initRankMeta['rank_score'] : 0,
|
||||
'head_id' => $headId,
|
||||
'hero_id' => $heroId,
|
||||
'last_season_id' => $currSeasonMeta ? $currSeasonMeta['id'] : 0,
|
||||
'head_list' => json_encode($headList),
|
||||
'head_frame_list' => json_encode($headFrameList),
|
||||
'score_modifytime' => $this->_getNowTime(),
|
||||
'best_rank_modifytime' => $this->_getNowTime(),
|
||||
'createtime' => $this->_getNowTime(),
|
||||
'modifytime' => $this->_getNowTime(),
|
||||
'last_login_time' => $this->_getNowTime(),
|
||||
)
|
||||
$fields
|
||||
);
|
||||
$awardService = new services\AwardService();
|
||||
$propertyChgService = new services\PropertyChgService();
|
||||
@ -787,6 +800,12 @@ class UserController extends BaseAuthedController {
|
||||
]);
|
||||
}
|
||||
|
||||
public function updateAddressBind()
|
||||
{
|
||||
$hero_uniid = getReqVal('jwt', '');
|
||||
$this->_rspOk();
|
||||
}
|
||||
|
||||
private function dampingElo($userInfo){
|
||||
//每天elo衰减
|
||||
$time_diff = myself()->_getNowTime()-$userInfo['last_login_time'];
|
||||
@ -821,33 +840,38 @@ class UserController extends BaseAuthedController {
|
||||
|
||||
private function createNewUserV2($userName){
|
||||
$currSeasonMeta = mt\RankSeason::getCurrentSeason();
|
||||
SqlHelper::upsert
|
||||
($this->_getSelfMysql(),
|
||||
't_user',
|
||||
array(
|
||||
'account_id' => $this->_getAccountId()
|
||||
),
|
||||
array(
|
||||
),
|
||||
array(
|
||||
'account_id' => $this->_getAccountId(),
|
||||
'channel' => $this->_getChannel(),
|
||||
'name' => $userName,
|
||||
'sex' => rand() % 2,
|
||||
'gold' => 0,
|
||||
'diamond' => 0,
|
||||
'level' => 1,
|
||||
'rank' => 0,
|
||||
'score' => 0,
|
||||
'exp' => 0,
|
||||
'last_season_id' => $currSeasonMeta ? $currSeasonMeta['id'] : 0,
|
||||
'score_modifytime' => $this->_getNowTime(),
|
||||
'best_rank_modifytime' => $this->_getNowTime(),
|
||||
'createtime' => $this->_getNowTime(),
|
||||
'modifytime' => $this->_getNowTime(),
|
||||
'last_login_time' => $this->_getNowTime(),
|
||||
)
|
||||
$fields = array(
|
||||
'account_id' => $this->_getAccountId(),
|
||||
'channel' => $this->_getChannel(),
|
||||
'name' => $userName,
|
||||
'sex' => rand() % 2,
|
||||
'gold' => 0,
|
||||
'diamond' => 0,
|
||||
'level' => 1,
|
||||
'rank' => 0,
|
||||
'score' => 0,
|
||||
'exp' => 0,
|
||||
'last_season_id' => $currSeasonMeta ? $currSeasonMeta['id'] : 0,
|
||||
'score_modifytime' => $this->_getNowTime(),
|
||||
'best_rank_modifytime' => $this->_getNowTime(),
|
||||
'createtime' => $this->_getNowTime(),
|
||||
'modifytime' => $this->_getNowTime(),
|
||||
'last_login_time' => $this->_getNowTime(),
|
||||
);
|
||||
if ($this->_getChannel() == BC_CHANNEL) {
|
||||
$fields['address'] = $this->_getOpenId();
|
||||
}
|
||||
|
||||
SqlHelper::upsert
|
||||
($this->_getSelfMysql(),
|
||||
't_user',
|
||||
array(
|
||||
'account_id' => $this->_getAccountId()
|
||||
),
|
||||
array(
|
||||
),
|
||||
$fields
|
||||
);
|
||||
}
|
||||
|
||||
private function updateLastSeason($userInfo){
|
||||
|
@ -66,6 +66,7 @@ class User extends BaseModel {
|
||||
'activated' => $row['activated'],
|
||||
'rename_count' => $row['rename_count'],
|
||||
'account_id' => $row['account_id'],
|
||||
'address' => $row['address'],
|
||||
'name' => $row['name'],
|
||||
'sex' => $row['sex'],
|
||||
'head_id' => $row['head_id'],
|
||||
@ -125,6 +126,7 @@ class User extends BaseModel {
|
||||
'activated' => $row['activated'],
|
||||
'rename_count' => $row['rename_count'],
|
||||
'account_id' => $row['account_id'],
|
||||
'address' => $row['address'],
|
||||
'name' => $row['name'],
|
||||
'sex' => $row['sex'],
|
||||
'head_id' => $row['head_id'],
|
||||
@ -178,7 +180,7 @@ class User extends BaseModel {
|
||||
|
||||
return array(
|
||||
'account_id' => $row['account_id'],
|
||||
'address' => phpcommon\extractOpenId($row['account_id']),
|
||||
'address' => $row['address'],
|
||||
'name' => $row['name'],
|
||||
'sex' => $row['sex'],
|
||||
'head_id' => $row['head_id'],
|
||||
@ -207,7 +209,7 @@ class User extends BaseModel {
|
||||
$skinDb = HeroSkin::findBx($heroId);
|
||||
return array(
|
||||
'account_id' => $row['account_id'],
|
||||
'address' => phpcommon\extractOpenId($row['account_id']),
|
||||
'address' => $row['address'],
|
||||
'name' => $row['name'],
|
||||
// 'sex' => $row['sex'],
|
||||
// 'head_id' => $row['head_id'],
|
||||
|
56
webapp/mt/FirstTopup.php
Normal file
56
webapp/mt/FirstTopup.php
Normal file
@ -0,0 +1,56 @@
|
||||
<?php
|
||||
|
||||
namespace mt;
|
||||
|
||||
use phpcommon;
|
||||
|
||||
class FirstTopup
|
||||
{
|
||||
|
||||
public static function get($id)
|
||||
{
|
||||
return getXVal(self::getMetaList(), $id);
|
||||
}
|
||||
|
||||
public static function getByGroup($group)
|
||||
{
|
||||
self::all();
|
||||
return getXVal(self::$groupList, $group);
|
||||
}
|
||||
|
||||
public static function getGroups()
|
||||
{
|
||||
self::all();
|
||||
return self::$groupList;
|
||||
}
|
||||
|
||||
public static function all()
|
||||
{
|
||||
if (!self::$firstTopupList) {
|
||||
self::$firstTopupList = array();
|
||||
self::$groupList = array();
|
||||
|
||||
foreach (self::getMetaList() as $meta) {
|
||||
array_push(self::$firstTopupList, $meta);
|
||||
if (!getXVal(self::$groupList, $meta['group'], null)) {
|
||||
self::$groupList[$meta['group']] = array();
|
||||
}
|
||||
array_push(self::$groupList[$meta['group']], $meta);
|
||||
}
|
||||
}
|
||||
|
||||
return self::$firstTopupList;
|
||||
}
|
||||
|
||||
protected static function getMetaList()
|
||||
{
|
||||
if (!self::$metaList) {
|
||||
self::$metaList = getMetaTable('FirstTopup@FirstTopup.php');
|
||||
}
|
||||
return self::$metaList;
|
||||
}
|
||||
|
||||
protected static $groupList;
|
||||
protected static $firstTopupList;
|
||||
protected static $metaList;
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user