/** * Index method */ public function actionIndex() { //检查是否登入 Nbt::app()->login->checkIsLogin(); try { $this->replaceSeoTitle(CUtil::i18n('controllers,index_index_seoTitle')); // open redis $redis = $this->getRedis(); // 是否获取指定类型运算频率 $intFreq = null; if (SYS_INFO === 'SF3301_D_V1') { $intFreq = array(0, 1); } // 可调速度集合 $aryBTCSpeed = CUtilMachine::getSpeedList(SYS_INFO, is_null($intFreq) ? null : $intFreq[0]); $aryLTCSpeed = CUtilMachine::getSpeedList(SYS_INFO, is_null($intFreq) ? null : $intFreq[1]); // get default speed $intDefaultBTCSpeed = self::getDefaultSpeed(is_null($intFreq) ? null : $intFreq[0]); $intDefaultLTCSpeed = self::getDefaultSpeed(is_null($intFreq) ? null : $intFreq[1]); // Tip data $aryTipData = array(); $aryBTCData = array(); $aryLTCData = array(); $btcVal = $redis->readByKey('btc.setting'); $ltcVal = $redis->readByKey('ltc.setting'); $aryBTCData = empty($btcVal) ? array() : json_decode($btcVal, true); if (empty($aryBTCData['speed'])) { $aryBTCData['speed'] = $intDefaultBTCSpeed; } $aryLTCData = empty($ltcVal) ? array() : json_decode($ltcVal, true); if (empty($aryLTCData['speed'])) { $aryLTCData['speed'] = $intDefaultLTCSpeed; } // get run model $strRunMode = $this->getRunMode(); // if commit save if (Nbt::app()->request->isPostRequest) { $strBTCAddress = isset($_POST['address_btc']) ? htmlspecialchars($_POST['address_btc']) : ''; $strBTCAccount = isset($_POST['account_btc']) ? htmlspecialchars($_POST['account_btc']) : ''; $strBTCPassword = isset($_POST['password_btc']) ? htmlspecialchars($_POST['password_btc']) : ''; $intBTCSpeed = isset($_POST['run_speed_btc']) ? intval($_POST['run_speed_btc']) : $intDefaultBTCSpeed; $strLTCAddress = isset($_POST['address_ltc']) ? htmlspecialchars($_POST['address_ltc']) : ''; $strLTCAccount = isset($_POST['account_ltc']) ? htmlspecialchars($_POST['account_ltc']) : ''; $strLTCPassword = isset($_POST['password_ltc']) ? htmlspecialchars($_POST['password_ltc']) : ''; $intLTCSpeed = isset($_POST['run_speed_ltc']) ? intval($_POST['run_speed_ltc']) : $intDefaultLTCSpeed; $strGetRunMode = isset($_POST['runmodel']) ? htmlspecialchars($_POST['runmodel']) : ''; if (!empty($strGetRunMode) && in_array($strGetRunMode, array('L', 'LB'))) { RunModel::model()->storeRunMode($strGetRunMode); $strRunMode = $strGetRunMode; } $aryBTCData['ad'] = $strBTCAddress; $aryBTCData['ac'] = $strBTCAccount; $aryBTCData['pw'] = $strBTCPassword; $aryBTCData['speed'] = $intBTCSpeed; //$aryBTCData['su'] = isset( $aryBTCData['su'] ) ? $aryBTCData['su'] : 1; $aryLTCData['ad'] = $strLTCAddress; $aryLTCData['ac'] = $strLTCAccount; $aryLTCData['pw'] = $strLTCPassword; $aryLTCData['speed'] = $intLTCSpeed; //$aryLTCData['su'] = isset( $aryLTCData['su'] ) ? $aryLTCData['su'] : 1; if (in_array($strRunMode, array('L'))) { $boolCheck = CUtil::isParamsEmpty($aryLTCData); if ($boolCheck === false) { throw new CModelException(CUtil::i18n('exception,scrypt_setting_haveNullData')); } } else { if (in_array($strRunMode, array('B'))) { $boolCheck = CUtil::isParamsEmpty($aryBTCData); if ($boolCheck === false) { throw new CModelException(CUtil::i18n('exception,sha_setting_haveNullData')); } } } // store data $redis->writeByKey('btc.setting', json_encode($aryBTCData)); $redis->writeByKey('ltc.setting', json_encode($aryLTCData)); $redis->saveData(); $aryTipData['status'] = 'success'; $aryTipData['text'] = CUtil::i18n('controllers,index_saveData_success'); } } catch (Exception $e) { $aryTipData['status'] = 'error'; $aryTipData['text'] = $e->getMessage(); } $aryData = array(); $aryData['tip'] = $aryTipData; $aryData['btc'] = $aryBTCData; $aryData['ltc'] = $aryLTCData; $aryData['runmodel'] = $strRunMode; $aryData['speedDefBTC'] = $intDefaultBTCSpeed; $aryData['speedDefLTC'] = $intDefaultLTCSpeed; $aryData['speedBTC'] = $aryBTCData['speed']; $aryData['speedLTC'] = $aryLTCData['speed']; $aryData['aryBTCSpeed'] = $aryBTCSpeed; $aryData['aryLTCSpeed'] = $aryLTCSpeed; $this->render('index', $aryData); }