Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class ManagmentController extends Controller {
- public function init() {
- ini_set('memory_limit', '-1');
- set_time_limit(0);
- Yii::import("application.models.admincp.reseller.*");
- }
- final public function accessRules()
- {
- return array(
- array('allow',
- 'roles'=>array('admin')
- ),
- array('deny',
- 'users'=>array('*'),
- ),
- );
- }
- public function actionUpdateInfo() {
- $db_id = getParam('database_id');
- $db_name = getParam('database_name');
- $db_status = getParam('database_status');
- $db_checker = getParam('database_checker');
- $db_cvv = getParam('database_cvv');
- ## $db_checker = (in_array($db_checker,array('try2check','apino', 'checkmoney', 'cardok'))) ? $db_checker : '';
- $db_checker = (key_exists($db_checker,Yii::app()->params['checker'])) ? $db_checker : '';
- $db_refunds = getParam('database_refunds');
- //UPDATE INFO
- if(!empty($db_id) && !empty($db_name) && in_array($db_status,array(0,1))) {
- $model = R_Bases::model()->findByPk($db_id);
- if(!empty($model)) {
- $model->name = $db_name;
- $model->active = $db_status;
- $model->checker = $db_checker;
- $model->refunds = $db_refunds;
- $model->withcvv = $db_cvv;
- $model->price_approve = ($model->active==1)?1:0;
- //$model->last_updated = null;
- $model->save();
- }
- //ADDING PRICELIST:
- $priceList = arrayPath($_REQUEST, 'priceList',array());
- if(!empty($priceList)) :
- //MODIFY INCOME DATA:
- $searcharray = array();
- parse_str($priceList,$searcharray);
- $priceList = mergeArrayByKeys($searcharray['priceList']);
- //UPDATE PRICE LIST:
- $price = new R_Price();
- if(getParam('type') == 1) {
- $model->updatePriceListInDb(getParam('database_id'),$priceList,1);
- $price->CCS_rebuildPrice(getParam('database_id'));
- } elseif(getParam('type') == 2) {
- $model->updatePriceListInDb(getParam('database_id'),$priceList,2);
- $price->DUMPS_rebuildPrice(getParam('database_id'));
- } elseif(getParam('type') == 3) {
- $model->updatePriceListInDb(getParam('database_id'),$priceList,3);
- $price->ACCS_rebuildPrice(getParam('database_id'));
- }
- endif;
- noty('Information was updated','success');
- }
- }
- public function actionAddDatabase() {
- Yii::import("application.models.admincp.users.*");
- $db_name = getParam('database_name');
- $db_type = getParam('database_type');
- $db_cvv = getParam('database_cvv');
- $username = getParam('username');
- $seller_id = (empty($username)) ? UID() : AUsers::model()->findByAttributes(array("username"=>$username))->id;
- DAO()->insert("{{bases}}", array("name"=>$db_name,"type"=>$db_type,"withcvv"=>$db_cvv,"seller_id"=>$seller_id,'active'=>0));
- noty('Database was created','success');
- }
- public function actionAddPayout() {
- Yii::import("application.models.admincp.users.AUsers");
- $username = getParam('username');
- $amount = getParam('amount');
- $comment = getParam('comment');
- $base_id = getParam('base_id');
- if($amount < 0) {
- noty('Minimum $0','warning');
- return false;
- }
- if($amount > 1000) {
- noty('Maximum $1000','warning');
- return false;
- }
- $userInfo = Users::model()->findByAttributes(array("username"=>$username));
- if(empty($userInfo)) noty('Selected account not found','error');
- DAO()->insert("{{payouts}}", array(
- "amount"=>$amount,
- "base_id"=>$base_id,
- "user_id"=>$userInfo->id,
- "comment"=>$comment,
- "username"=>$userInfo->username,
- "created_at"=>expr("NOW()")
- ));
- noty('Payout was added','success');
- }
- public function actionDisplayPayoutsInfoByDatabase() {
- $modelPayouts = new R_Payouts();
- $modelPayouts->FilterByUserId(UID());
- $database_id = getParam('database_id');
- $this->render('_payoutStats', array(
- 'database_id'=>$database_id,
- 'modelPayouts'=>$modelPayouts
- ));
- }
- public function actionAddPartner() {
- Yii::import("application.models.admincp.users.AUsers");
- $username = getParam('username');
- $percent = getParam('percent');
- $base_id = getParam('base_id');
- $userInfo = Users::model()->findByAttributes(array("username"=>$username));
- if(empty($userInfo)) noty('Selected account not found','error');
- DAO()->insert("{{partners}}", array(
- "percent"=>$percent,
- "base_id"=>$base_id,
- "user_id"=>$userInfo->id,
- "username"=>$userInfo->username,
- "created_at"=>expr("NOW()")
- ));
- noty('Partner was added','success');
- }
- public function actionRemovePartner() {
- return DAO()->delete("{{partners}}",
- "user_id=:user_id AND base_id=:base_id",
- array(
- ":user_id"=>getParam('user_id'),
- ":base_id"=>getParam('base_id'),
- )
- );
- }
- public function actionCCSPrices() {
- $prices = new R_Prices('search');
- $prices->unsetAttributes();
- if(isset($_GET[$prices->name()])) {
- $prices->attributes=$_GET[$prices->name()];
- }
- $this->render('/admincp/reseller/managment/prices/ccs_prices',array(
- "model"=>$prices
- ));
- }
- public function actionCCSAlias() {
- $prices = new R_Alias('search');
- $prices->unsetAttributes();
- if(isset($_GET[$prices->name()])) {
- $prices->attributes=$_GET[$prices->name()];
- }
- $this->render('/admincp/reseller/managment/alias/alias_list',array(
- "model"=>$prices
- ));
- }
- public function actionAddPriceCountry() {
- $price = getParam('price');
- $fullz = getParam('fullz');
- $country_name = getParam('country_name');
- $timeout = getParam('timeout');
- //ADDING PRICE
- $prices = new R_Prices();
- $prices->price = $price;
- $prices->country_name = $country_name;
- $prices->fullz = $fullz;
- $prices->timeout = $timeout;
- $prices->save();
- $priceRules = new R_Price();
- $priceRules->CCS_updatePriceByCountry($country_name, $price, $fullz);
- $priceRules->CCS_rebuildPriceAll();
- noty('Country was added','success');
- }
- public function actionUpdateProfitAllCache() {
- Yii::import("application.models.admincp.reseller.*");
- $data = SQL("SELECT `id` FROM {{bases}};")->query();
- $total_profit_all = 0;
- foreach($data as $row) {
- $data2 = SQL("SELECT `user_id` FROM {{partners}} WHERE `base_id` = '".$row['id']."';")->query();
- if($data2) {
- foreach($data2 as $row2) {
- $total_profit_all+= R_Partners::model()->getCurrentProfit($row2['user_id'], $row['id']);
- }
- }
- }
- Yii::app()->cache->set('total_profit_all', $total_profit_all);
- Yii::import("application.models.admincp.operations.*");
- Yii::import("application.models.admincp.operations.bitcoin.*");
- Yii::import("application.models.admincp.operations.bitcoin.forms.*");
- $bitcoinModel = new Bitcoin();
- $btc_rate = $bitcoinModel->getBTC_rate(true);
- $info = $bitcoinModel->connection->getinfo();
- $balance = $info['balance']*$btc_rate;
- $total_profit_all = round($total_profit_all, 2);
- $balance = round($balance, 2);
- $free_balance = round(($balance-$total_profit_all), 2);
- if($free_balance <= 0) {
- $free_balance = '<b style="color:red">'.$free_balance.'</b>';
- }
- $total_users_balance = SQL("SELECT SUM(`balance`) as `total` FROM {{users}} WHERE `ban` != 1 AND `balance_confirmed` = 1;")->queryScalar();
- $line = '| Balance: $'.$balance.' | Total users profit: $'.$total_profit_all.' <br>| Free balance: $'.$free_balance.' | Total users balance: $'.$total_users_balance;
- noty($line,'success');
- }
- public function actionGetPriceList() {
- $model = new R_Bases();
- $list = $model->getPriceListInDb(getParam('id'),getParam('type'));
- echo CJSON::encode($list);
- }
- public function actionRebuildDumpSection() {
- $model = new R_Bases();
- $priceRules = new R_Price();
- $model->rebuildBinlistAll();
- $priceRules->DUMPS_rebuildPriceAll();
- }
- public function actionUpdatesList() {
- //BASES INFO
- $modelBases = new R_Bases();
- //CCS UPDATES:
- $modelUpdatesCCS = new R_Updates_CCS();
- //DUMPS UPDATES:
- $modelUpdatesDUMPS = new R_Updates_Dumps();
- //ACCS UPDATES:
- $modelUpdatesACCS = new R_Updates_ACCS();
- $this->render('/admincp/reseller/managment/updates/updateslist', array(
- 'modelUpdatesCCS'=>$modelUpdatesCCS,
- 'modelUpdatesDUMPS'=>$modelUpdatesDUMPS,
- 'modelUpdatesACCS'=>$modelUpdatesACCS,
- 'modelBases'=>$modelBases
- ));
- }
- public function actionRemoveMultipleBases() {
- $bases = getParam('bases');
- if(count($bases) == 0) {
- noty('Check bases', 'warning');
- }
- if(strlen(getParam('resellerPWD')) == 0) {
- noty('Insert password', 'warning');
- }
- foreach ($bases as $base) {
- $base = preg_replace("#[^0-9]+#", '', $base);
- $_GET['method'] = 'removeBase';
- $_GET['database_id'] = $base;
- $this->actionAjax();
- }
- noty('Success remove '.count($bases).' base(s)', 'success');
- }
- public function actionMassChangeChecker() {
- $checkers = Yii::app()->params['checker'];
- unset($checkers['default']);unset($checkers['default_dumps']);
- $checker = getParam('massChangeChecker');
- if(!key_exists($checker,$checkers)) {
- noty('Select checker from list', 'warning');
- }
- SQL("update {{bases}} set checker='".$checker."' where checker<>'' and (checker='".implode("' or checker='",array_keys($checkers))."')")->query();
- noty('Success setting "'.$checkers[$checker]['name'].'" checker on all bases', 'success');
- }
- public function actionIndex() {
- #+T
- $model = new R_Bases();
- $modelPayouts = new R_Payouts();
- $modelPartners = new R_Partners();
- $database_id = getParam('database_id');
- $import = getParam('import');
- $export = getParam('export');
- $database_info = $model->getInfoAboutDBbyID($database_id);
- $password = getParam('resellerPWD');
- $total_profit_all = Yii::app()->cache->get('total_profit_all');
- if(!$total_profit_all) {
- Yii::import("application.models.admincp.reseller.*");
- $data = SQL("SELECT `id` FROM {{bases}};")->query();
- // var_dump($data);
- $total_profit_all = 0;
- foreach($data as $row) {
- $data2 = SQL("SELECT `user_id` FROM {{partners}} WHERE `base_id` = '".$row['id']."';")->query();
- if($data2) {
- foreach($data2 as $row2) {
- $total_profit_all+= R_Partners::model()->getCurrentProfit($row2['user_id'], $row['id']);
- }
- }
- }
- Yii::app()->cache->set('total_profit_all', $total_profit_all);
- }
- Yii::import("application.models.admincp.operations.*");
- Yii::import("application.models.admincp.operations.bitcoin.*");
- Yii::import("application.models.admincp.operations.bitcoin.forms.*");
- /*$bitcoinModel = new Bitcoin();
- $btc_rate = $bitcoinModel->getBTC_rate(true);
- echo "ok";exit;
- $info = $bitcoinModel->connection->getinfo();*/
- $info['balance'] = rand(1,100);$btc_rate=rand(100,999); // for tests without access to btc server
- $model->unsetAttributes();
- if(isset($_GET[$model->name()])) {
- $model->attributes=$_GET[$model->name()];
- }
- if(getParam('removed') == 1) {
- $model_bases = $model;
- }else {
- $model_bases = $model->withoutDeleted();
- }
- $balance = $info['balance']*$btc_rate;
- $total_users_balance = SQL("SELECT SUM(`balance`) as `total` FROM {{users}} WHERE `ban` != 1 AND `balance_confirmed` = 1;")->queryScalar();
- $dataArray = array(
- 'database_id'=>$database_id,
- 'database_info'=>$database_info,
- 'model'=>$model_bases,
- 'modelPartners'=>$modelPartners,
- 'modelPayouts'=>$modelPayouts,
- 'import'=>$import,
- 'export'=>$export,
- 'importDataErrors'=>'',
- 'importDataSuccess'=>'',
- 'countryWithoutPrice'=>'',
- 'total_profit_all'=>round($total_profit_all, 2),
- 'balance'=>round($balance, 2),
- 'free_balance'=>round(($balance-$total_profit_all), 2),
- 'total_users_balance'=>round($total_users_balance, 2),
- );
- if($export == 1) {
- die();
- }
- //IF DATABASE WAS SELECTED
- Yii::import("application.models.admincp.import.*");
- if(!empty($database_id) && !empty($database_info)) {
- switch ($database_info['type']) {
- case 1:
- $modelUpdates = new R_Updates_CCS($database_info['type']);
- $modelUpdates = $modelUpdates->selectedBase($database_info['id']);
- break;
- case 2:
- $modelUpdates = new R_Updates_Dumps($database_info['type']);
- $modelUpdates = $modelUpdates->selectedBase($database_info['id']);
- break;
- case 3:
- $modelUpdates = new R_Updates_ACCS($database_info['type']);
- $modelUpdates = $modelUpdates->selectedBase($database_info['id']);
- break;
- default:
- break;
- }
- $dataArray['modelUpdates'] = $modelUpdates;
- $dataArray['modelDelayed'] = new ImportDelayed;
- $dataArray['modelDelayed'] = $dataArray['modelDelayed']->selectedBase($database_info['id']);
- //SET DEFAULT TABLE:
- switch ($database_info['type']) {
- case 1:
- $table_name = 'ccs';
- break;
- case 2:
- $table_name = 'dumps';
- break;
- case 3:
- $table_name = 'accounts';
- break;
- default:
- break;
- }
- $dataArray['countryList'] =
- SQL("
- SELECT c.country_name
- FROM {{".$table_name."}} as c
- WHERE base_id=:base_id
- GROUP BY c.country_name
- ")->bindParam(":base_id", $database_id)->queryAll();
- }
- //CHECK IMPORT
- if($import == 1 || ($export == 1 && $password == 'w3aux6mThVgGX3KwDiT62CK')) {
- //DEFAULT ARRAY:
- $dataArray['importDataErrors'] = '';
- $dataArray['importDataSuccess'] = '';
- $dataArray['countryWithoutPrice'] = '';
- $importData = (!empty($_POST['importData'])) ? $_POST['importData'] : null;
- $importType = (!empty($_POST['importType'])) ? $_POST['importType'] : null;
- switch ($importType) {
- case 1:
- $importFormat = (!empty($_POST['importFormatCC'])) ? $_POST['importFormatCC'] : null;
- break;
- case 2:
- $importFormat = (!empty($_POST['importFormatFullz'])) ? $_POST['importFormatFullz'] : null;
- break;
- case 3:
- $importFormat = (!empty($_POST['importFormatDumps'])) ? $_POST['importFormatDumps'] : null;
- break;
- case 4:
- $importFormat = (!empty($_POST['importFormatACCS'])) ? $_POST['importFormatACCS'] : null;
- break;
- default:
- break;
- }
- if(!empty($importFormat) && $importFormat != 0) {
- Yii::import("application.models.admincp.bases.*");
- if($_POST['delayed']==1){
- $importDataLines=explode("\n",trim($importData));
- $model = new ImportDelayed();
- $model->base_id=$database_id;
- $model->type=$importType;
- $model->format=$importFormat;
- $model->data=trim($importData);
- $model->lines_total=count($importDataLines);
- $model->lines_left=count($importDataLines);
- if($model->save())$dataArray['importDataSuccess']='Added succesfully!';
- else $dataArray['importDataErrors']='Error adding base!';
- }
- else{
- switch ($importType) {
- case 1:
- $model = new ImportCCS();
- $result = $model->loadCCS($importData,$importFormat,$database_id,$export);
- $dataArray['importDataErrors'] = $result['importDataErrors'];
- $dataArray['importDataSuccess'] = $result['importDataSuccess'];
- $dataArray['countryWithoutPrice'] = $result['countryWithoutPrice'];
- break;
- case 2:
- $model = new ImportCCS();
- $result = $model->loadFullz($importData,$importFormat,$database_id,$export);
- $dataArray['importDataErrors'] = $result['importDataErrors'];
- $dataArray['importDataSuccess'] = $result['importDataSuccess'];
- $dataArray['countryWithoutPrice'] = $result['countryWithoutPrice'];
- break;
- case 3:
- $model = new ImportDumps();
- $model->database_id = getParam('database_id');
- $model->code = rand_str(10);
- $result = $model->loadDumps($importData,$export);
- if(!empty($result['success'])) {
- $price = new R_Price();
- $base = new R_Bases();
- $base->rebuildBinlist(getParam('database_id'));
- $price->DUMPS_rebuildPrice(getParam('database_id'));
- }
- $dataArray['importDataErrors'] = implode("\r\n",$result['errors']);
- $dataArray['importDataSuccess'] = implode("\r\n",$result['success']);
- break;
- case 4:
- $model = new ImportACCS();
- $importData = preg_split('/\r\n/', $importData);
- $result = $model->loadAccs($importData,$importFormat,$database_id,$export);
- $dataArray['importDataErrors'] = $result['importDataErrors'];
- $dataArray['importDataSuccess'] = $result['importDataSuccess'];
- $dataArray['countryWithoutPrice'] = $result['countryWithoutPrice'];
- break;
- default:
- break;
- }
- }
- }
- }
- $this->render('/admincp/reseller/managment/form', $dataArray);
- #+E
- }
- public function actionAjax() {
- #+T
- $item_id = getParam('id');
- $method = getParam('method');
- switch ($method) {
- case 'removePriceCountry':
- $country = R_Prices::model()->findByPk($item_id);
- $country->delete();
- $priceRules = new R_Price();
- $priceRules->CCS_rebuildPriceAll();
- //RETURN MESSAGE:
- noty("Country was removed","success");
- break;
- case 'updatePriceCountry':
- $price = getParam('price');
- $fullz = getParam('fullz');
- $country_name = getParam('country_name');
- $timeout = getParam('timeout');
- //ADDING PRICE
- $prices = R_Prices::model()->findByAttributes(array("country_name"=>$country_name));
- $prices->price = $price;
- $prices->country_name = $country_name;
- $prices->fullz = $fullz;
- $prices->timeout = $timeout;
- $prices->save();
- $priceRules = new R_Price();
- $priceRules->CCS_updatePriceByCountry($country_name, $price, $fullz);
- $priceRules->CCS_rebuildPriceAll();
- noty('Country was added','success');
- break;
- case 'updateAlias':
- $search = getParam('search');
- $replace = getParam('replace');
- //UPDATE ALIAS
- $alias = R_Alias::model()->findByAttributes(array("search"=>$search));
- $alias->replace = $replace;
- $alias->save();
- noty('Alias was updated','success');
- break;
- case 'removeAlias':
- $search = getParam('search');
- $replace = getParam('replace');
- //UPDATE ALIAS
- $alias = R_Alias::model()->findByPk($item_id);
- $alias->delete();
- noty('Alias was deleted','success');
- break;
- case 'addAlias':
- $search = getParam('search');
- $replace = getParam('replace');
- //UPDATE ALIAS
- $alias = new R_Alias();
- $alias->search = $search;
- $alias->replace = $replace;
- $alias->save();
- noty('Alias was added','success');
- break;
- case 'removeBase':
- $base_id = getParam('database_id');
- $password = getParam('resellerPWD');
- if($password == 'H7e9vnjxFXNk6Pxp') {
- $bases = R_Bases::model()->findByPk($base_id);
- if(!empty($bases)) {
- //REMOVE EVERYTHING FROM STOCK:
- switch ($bases->type) {
- case 1:
- DAO()->delete("{{ccs}}","base_id=:base_id",array(":base_id"=>$base_id));
- break;
- case 2:
- DAO()->delete("{{dumps}}","base_id=:base_id",array(":base_id"=>$base_id));
- break;
- case 2:
- DAO()->delete("{{accounts}}","base_id=:base_id",array(":base_id"=>$base_id));
- break;
- default:
- break;
- }
- //CHANGE STATUS ABOUT DB:
- $bases->name = '[REMOVED]' . $bases->name;
- $bases->active = 0;
- $bases->visible = 0;
- $bases->save();
- }
- }
- break;
- case 'confirm_update':
- $ucode = getParam('ucode');
- $db_type = getParam('db_type');
- switch ($db_type) {
- case 1:
- R_Updates_CCS::model()->confirmUpdate($ucode,1);
- R_Updates_CCS::model()->moderateUpdate($ucode,1);
- break;
- case 2:
- R_Updates_Dumps::model()->confirmUpdate($ucode,1);
- R_Updates_Dumps::model()->moderateUpdate($ucode,1);
- $price = new R_Price();
- $model = new R_Bases();
- $model->rebuildBinlist($item_id);
- $price->DUMPS_rebuildPrice($item_id);
- break;
- case 3:
- R_Updates_ACCS::model()->confirmUpdate($ucode,1);
- R_Updates_ACCS::model()->moderateUpdate($ucode,1);
- break;
- default:
- break;
- }
- break;
- case 'unconfirm_update':
- $ucode = getParam('ucode');
- $db_type = getParam('db_type');
- switch ($db_type) {
- case 1:
- R_Updates_CCS::model()->confirmUpdate($ucode,0);
- R_Updates_CCS::model()->moderateUpdate($ucode,1);
- break;
- case 2:
- R_Updates_Dumps::model()->confirmUpdate($ucode,0);
- R_Updates_Dumps::model()->moderateUpdate($ucode,1);
- $price = new R_Price();
- $model = new R_Bases();
- $model->rebuildBinlist($item_id);
- $price->DUMPS_rebuildPrice($item_id);
- break;
- case 3:
- R_Updates_ACCS::model()->confirmUpdate($ucode,0);
- R_Updates_ACCS::model()->moderateUpdate($ucode,1);
- break;
- default:
- break;
- }
- break;
- case 'checkUpdate':
- Yii::import("application.components.checker.*");
- $ucode = (string) arrayPath($_POST,'ucode');
- $base_id = (string) arrayPath($_POST,'baseId');
- $base_type = (string) arrayPath($_POST,'baseType');
- switch ($base_type) {
- case 1:
- $modelUpdates = new R_Updates_CCS();
- break;
- case 2:
- $modelUpdates = new R_Updates_Dumps();
- break;
- default:
- break;
- }
- $checkLimit = $modelUpdates->getCheckLog($ucode);
- if($checkLimit <= 35) {
- //GET RANDOM CARD:
- $record = $modelUpdates->getRandomCard($ucode);
- if(!empty($record)) {
- require_once __DIR__ .("/try2api.class.php");
- //GET CHECKER FOR CARD
- $checkerName = DAO()->select('checker')
- ->from('{{bases}}')->where("id=:base_id",array(":base_id"=>$base_id))
- ->queryScalar();
- $checkerName = (!empty($checkerName)) ? $checkerName : false;
- if($base_type == 1) {
- $checker = new CCS_Checker(Yii::app()->params['checker'],$checkerName);
- $card = $record['ccnum'].'#'.$record['exp_m']."".$record['exp_y'];
- $request = array(
- "cmd" => "chk_g1",
- "data" => array(
- "act" => "set",
- "options" => array(
- "format" => array(
- "exp" => 2,
- "list" => 1
- ),
- "merchant" => array(
- "type_id" => 1
- ),
- "geo" => array(
- "type_id" => 1
- ),
- "amount" => array(
- "type_id" => 1,
- "id" => 1
- ),
- "safe" => false,
- "void" => true,
- "zerocheck" => false
- ),
- "data" => $card,
- )
- );
- $api = new Try2Api();
- $api->send($request);
- if ($request["cmd"] == "chk_g1" && $request["data"]["act"] == "set") {
- if (!isset($api->responseData["batch_id"])) {
- exit("api reponse data format error: ".json_encode($api->responseData)." | request: ".print('<pre>'.print_r($request, true).'</pre>'));
- }
- $batch_id = $api->responseData["batch_id"];
- }
- $request2 = array(
- "cmd" => "chk_g1",
- "data" => array(
- "act" => "get",
- "options" => array(
- "format" => array(
- "exp" => 2,
- "list" => 1
- ),
- "merchant" => array(
- "type_id" => 1
- ),
- "geo" => array(
- "type_id" => 1
- ),
- "amount" => array(
- "type_id" => 1,
- "id" => 1
- ),
- "safe" => false,
- "void" => true,
- "zerocheck" => false
- ),
- "data" => $batch_id,
- )
- );
- $success2 = false;
- while (TRUE) {
- $api = new Try2Api();
- if (!$api->ready)
- break;
- sleep(10);
- $send_success2 = $api->send($request2);
- if (!$send_success2)
- break;
- $success2 = true;
- break;
- }
- if (!$success2) {
- exit("api error code: ".$api->error_code." | error: ".$api->error);
- }
- if ($request2["cmd"] == "chk_g1" && $request2["data"]["act"] == "get") {
- if (!isset($api->responseData["info"])) {
- exit("api reponse data format error: ".json_encode($api->responseData)." | request: ".json_encode($request2));
- }
- $batch_info = $api->responseData["info"];
- if (!$batch_info["done"]) {
- exit("batch is not checked yet. poll to get results");
- sleep(3);
- $api->send($request2);
- }
- // checking g1: get, checked
- if ($batch_info["done"] && !isset($api->responseData["response"])) {
- exit("api reponse data format error: ".json_encode($api->responseData)." | request: ".json_encode($request2));
- }
- $checkInfo = $api->responseData["response"][0];
- }
- } elseif($base_type == 2 ) {
- $checker = new Dump_Checker(Yii::app()->params['checker'],$checkerName);
- $dumpCheck = trim(decrypt($record['track2']));
- $request = array(
- "cmd" => "chk_g1",
- "data" => array(
- "act" => "set",
- "options" => array(
- "format" => array(
- "exp" => 6,
- "list" => 8
- ),
- "merchant" => array(
- "type_id" => 1
- ),
- "geo" => array(
- "type_id" => 1
- ),
- "amount" => array(
- "type_id" => 1,
- "id" => 1
- ),
- "safe" => false,
- "void" => true,
- "zerocheck" => false
- ),
- "data" => $dumpCheck,
- )
- );
- $api = new Try2Api();
- $api->send($request);
- if ($request["cmd"] == "chk_g1" && $request["data"]["act"] == "set") {
- if (!isset($api->responseData["batch_id"])) {
- exit("api reponse data format error: ".json_encode($api->responseData)." | request: ".json_encode($request));
- }
- $batch_id = $api->responseData["batch_id"];
- }
- $request2 = array(
- "cmd" => "chk_g1",
- "data" => array(
- "act" => "get",
- "options" => array(
- "format" => array(
- "exp" => 6,
- "list" => 8
- ),
- "merchant" => array(
- "type_id" => 1
- ),
- "geo" => array(
- "type_id" => 1
- ),
- "amount" => array(
- "type_id" => 1,
- "id" => 1
- ),
- "safe" => false,
- "void" => true,
- "zerocheck" => false
- ),
- "data" => $batch_id,
- )
- );
- $success2 = false;
- while (TRUE) {
- $api = new Try2Api();
- if (!$api->ready)
- break;
- sleep(10);
- $send_success2 = $api->send($request2);
- if (!$send_success2)
- break;
- $success2 = true;
- break;
- }
- if (!$success2) {
- exit("api error code: ".$api->error_code." | error: ".$api->error);
- }
- if ($request2["cmd"] == "chk_g1" && $request2["data"]["act"] == "get") {
- if (!isset($api->responseData["info"])) {
- exit("api reponse data format error: ".json_encode($api->responseData)." | request: ".json_encode($request2));
- }
- $batch_info = $api->responseData["info"];
- if (!$batch_info["done"]) {
- exit("batch is not checked yet. poll to get results");
- }
- if ($batch_info["done"] && !isset($api->responseData["response"])) {
- exit("api reponse data format error: ".json_encode($api->responseData)." | request: ".json_encode($request2));
- }
- $checkInfo = $api->responseData["response"][0];
- }
- }
- $modelUpdates->addCheckLog(array(
- 'ucode'=>$ucode,
- 'ccnum'=>$record['ccnum'],
- 'auth_code'=>$checkInfo['auth_code'],
- 'auth_result'=>$checkInfo['auth_result'],
- ));
- if(!empty($checkInfo['auth_code'])) {
- switch ($base_type) {
- case 1: $_tableName = '{{ccs}}';
- break;
- case 2: $_tableName = '{{dumps}}';
- break;
- case 3: $_tableName = '{{accounts}}';
- break;
- default:
- break;
- }
- DAO()->delete($_tableName,"id=:id",array(":id"=>$record['id']));
- }
- die(json_encode(array("msg"=>(($checkInfo['auth_code'] . " " . $checkInfo['auth_result'])))));
- } else {
- die(json_encode(array("msg"=>"REQUEST ERROR")));;
- }
- } else {
- die(json_encode(array("msg"=>"TOO MANY CHECKS ON THIS UPDATE")));;
- }
- break;
- default:
- break;
- }
- #+E
- }
- public function actions()
- {
- return array(
- 'autocomplete'=>array(
- 'class'=>'application.extensions.EAutoCompleteAction',
- 'model'=>'R_Bases', //My model's class name
- 'limit'=>25,
- 'whitelist'=>array('name'),
- 'whitelist_vars'=>array('id','name'),
- 'extended'=>1,
- 'attribute'=>(!empty($_GET['attr'])) ? $_GET['attr'] : '', //The attribute of the model i will search
- ),
- );
- }
- /*
- public function actionExporttemporary()
- {
- if($_GET['pass']<>'rdV6VKA9aEvLZduJ9G9jWXegA9tzsLHz')die();
- $records = '';
- $exportRows = DAO()->select('id,original')
- ->from('{{ccs}}')
- ->where("base_id=:base_id",array(':base_id' => '1397'))
- ->limit(2500)
- ->query();
- foreach ($exportRows as $exportRow) {
- if(!empty($exportRow['original'])) {
- $exportRow['original'] = trim(decrypt($exportRow['original']));
- //DAO()->execute("delete from tbl_ccs where id='".$exportRow['id']."'");
- }
- $records .= implode('|', $exportRow) . "\n";
- }
- $result['importDataSuccess'] = $records;
- echo $result['importDataSuccess'];
- Yii::app()->end();
- }
- */
- }
Add Comment
Please, Sign In to add comment