public function validateCode() { $code = substr($this->code, -4, 4); $bank = substr($this->code, 0, strlen($this->code) - 7); $code = Code::findOne(['z_b_id' => $bank, 'code' => $code]); if (!$code) { return false; } else { return $code; } }
public function actionChangeStatus() { $id = Yii::$app->request->getQueryParam('id'); $status = Yii::$app->request->getQueryParam('status'); $code = Code::findOne($id); if ($code == null) { throw new NotFoundHttpException(Yii::t('happycode', 'Given ID was not found in database.')); } $code->approved = $status; $code->save(); $message = Yii::t('happycode', $status == 1 ? 'Paste <strong>#{id}</strong> was successfully approved.' : 'Paste <strong>#{id}</strong> was successfully declined.', ['id' => $id]); if (Yii::$app->request->isAjax) { Yii::$app->response->format = Response::FORMAT_JSON; return ['id' => $id, 'status' => $status, 'message' => $message]; } else { AlertHelper::appendAlert('success', $message); return $this->redirect(['admin/pending']); } }
public function validateCode() { $code = substr($this->code, -4, 4); $bank = substr($this->code, 0, strlen($this->code) - 7); $code = Code::findOne(['z_b_id' => $bank, 'code' => $code]); $original = $this->code; if (!$code) { $this->addError('z_b_id', 'Bank gesperrt, Code ungültig oder bereits verwendet. Anmeldung fehlgeschlagen'); return false; } else { if (!$code->groupNotLocked('z_p_id') || !$code->bankNotLocked('z_b_id')) { $errors = $code->getFirstErrors(); foreach ($errors as $error => $attribute) { $this->addError($attribute, $error); } return false; } else { return array('code' => $code, 'original' => $original); } } }
public function actionForm() { if (!isset(Yii::$app->session['anketData'])) { $this->redirect('/site/index'); } $data = Yii::$app->session['anketData']; $form = Form::findOne($data['form']); $questions = $form->getQuestions(); $status = Code::findOne($data['code']['z_id'])->status; if (Yii::$app->request->post('q')) { $userAnswers = Yii::$app->request->post('q'); $status = $form->saveAnswers($data['code'], $userAnswers); $data['status'] = $status; $data['code']['status'] = $status; } Yii::$app->session['anketData'] = $data; if (!($status < $form->getQuestionsCount($questions))) { $code = Code::findOne($data['code']['z_id']); $code->used = 1; $code->save(); $this->redirect('/site/end'); } return $this->render('form', ['status' => $status, 'percent' => round($status / $form->getQuestionsCount($questions) * 100), 'questions' => $questions, 'anket' => $form, 'bank' => $data['bank']['b_id']]); }
function html_str($url) { /* $qihao = $this->grab->find('div[class=mod-aside mod-aside-xssckj]',0)->find('div[class=hd clearfix]',0)->find('em[class=red]',0)->innertext; $code1 = $this->grab->find('div[class=mod-aside mod-aside-xssckj]',0)->find('div[class=hd clearfix]',0)->find('ul[id=open_code_list]',0)->find('li[class=ico-ball3]',0)->innertext; $code2 = $this->grab->find('div[class=mod-aside mod-aside-xssckj]',0)->find('div[class=hd clearfix]',0)->find('ul[id=open_code_list]',0)->find('li[class=ico-ball3]',1)->innertext; $code3 = $this->grab->find('div[class=mod-aside mod-aside-xssckj]',0)->find('div[class=hd clearfix]',0)->find('ul[id=open_code_list]',0)->find('li[class=ico-ball3]',2)->innertext; $code4 = $this->grab->find('div[class=mod-aside mod-aside-xssckj]',0)->find('div[class=hd clearfix]',0)->find('ul[id=open_code_list]',0)->find('li[class=ico-ball3]',3)->innertext; $code5 = $this->grab->find('div[class=mod-aside mod-aside-xssckj]',0)->find('div[class=hd clearfix]',0)->find('ul[id=open_code_list]',0)->find('li[class=ico-ball3]',4)->innertext; $msg = $this->grab->find('div[class=mod-aside mod-aside-xssckj]',0)->find('div[class=hd clearfix]',0)->find('p[class=kj-date]',0)->find('em[class=kj-date-txt]',0)->innertext; echo $qihao.'<br/>'; echo $code1.'<br/>'; echo $code2.'<br/>'; echo $code3.'<br/>'; echo $code4.'<br/>'; echo $code5.'<br/>'; echo $msg.'<br/>'; exit; */ $qihao2 = $this->grab->find('div[class=mod-aside mod-aside-xssckj]', 0)->find('div[class=bd]', 0)->find('div[class=kpkjcode]', 0)->find('table', 0)->find('tr', 1)->find('td', 0)->plaintext; $code = $this->grab->find('div[class=mod-aside mod-aside-xssckj]', 0)->find('div[class=bd]', 0)->find('div[class=kpkjcode]', 0)->find('table', 0)->find('tr', 1)->find('td', 1)->plaintext; if ($code != '--') { // == '--' 正在开奖中 $isKaiJiang = $this->grab->find('div[class=mod-aside mod-aside-xssckj]', 0)->find('div[class=bd]', 0)->find('div[class=kpkjcode]', 0)->find('table', 0)->find('tr', 1)->find('td', 2)->plaintext; if ($isKaiJiang != '--' && $isKaiJiang != '开奖中') { //能读取到数据 $sizeProportion = $this->grab->find('div[class=mod-aside mod-aside-xssckj]', 0)->find('div[class=bd]', 0)->find('div[class=kpkjcode]', 0)->find('table', 0)->find('tr', 1)->find('td', 2)->find('span', 0)->plaintext; $jioubili = $this->grab->find('div[class=mod-aside mod-aside-xssckj]', 0)->find('div[class=bd]', 0)->find('div[class=kpkjcode]', 0)->find('table', 0)->find('tr', 1)->find('td', 2)->find('span', 1)->plaintext; $codeArr = explode(" ", $code); list($one, $two, $three, $four, $five) = $codeArr; $result = Code::findOne(['qishu' => $qihao2, 'type' => $this->codeType[$url]]); if ($result) { $urlName = array_keys($this->urlArr, $url); echo $urlName[0] . ' - [新时时彩] 最新数据已经采集过了<br/>'; return; } $model = new Code(); $model->qishu = $qihao2; $model->one = $one; $model->two = $two; $model->three = $three; $model->four = $four; $model->five = $five; $model->type = $this->codeType[$url]; $model->size = $sizeProportion; $model->jiou = $jioubili; $model->time = time(); if ($model->validate() && $model->save()) { $urlName = array_keys($this->urlArr, $url); $logModel = new Log(); $logModel->type = 1; $logModel->content = $urlName[0] . '.开奖信息抓取成功'; $logModel->time = time(); $logModel->save(); echo $urlName[0] . '.开奖信息抓取成功-[新时时彩]<br/>'; $this->find($qihao2, $urlName[0], $codeArr, $model->id); return; } } else { $urlName = array_keys($this->urlArr, $url); echo $urlName[0] . '等待开奖...<br/>'; } } else { $urlName = array_keys($this->urlArr, $url); echo $urlName[0] . ' -[新时时彩] 等待开奖...<br/>'; return; } }
public function actionPaste() { $id = Yii::$app->request->getQueryParam('id'); $model = Code::findOne($id); return $this->render('paste', ['model' => $model]); }
public function actionDeleteCode($bankId, $cid) { Code::findOne($cid)->delete(); return $this->redirect(['bank/' . $bankId . '/codes']); }
/** * Finds the Code model based on its primary key value. * If the model is not found, a 404 HTTP exception will be thrown. * @param integer $id * @return Poll the loaded model * @throws NotFoundHttpException if the model cannot be found */ protected function findCode($id) { // todo: where can whe add the check vor a bruteforce attack if (($model = Code::findOne($id)) !== null) { return $model; } else { throw new NotFoundHttpException(Yii::t('app/error', 'The requested page does not exist.')); } }
/** * Finds the Code model based on its primary key value. * If the model is not found, a 404 HTTP exception will be thrown. * @param integer $id * @return Code the loaded model * @throws NotFoundHttpException if the model cannot be found */ protected function findModel($id) { if (($model = Code::findOne($id)) !== null) { return $model; } else { throw new NotFoundHttpException(Yii::t('app/error', 'The requested page does not exist.')); } }
public function saveAnswers($code, $answers) { $questions = $this->getQuestions(); foreach ($answers as $key => $answer) { $aq = $this->getQuestionByPosition($questions, $key); $fr_id = $aq['fr_id']; $answer = $this->answerToDefault($fr_id, $answer); if (is_array($answer)) { $answer = implode(";", $answer); } $count = Result::find()->andWhere(['e_z_id' => $code['z_id'], 'e_fr_id' => $fr_id])->count(); if (!$count) { if (!trim($answer)) { if (isset($aq['dset'])) { $aid = $aq['dset']; } else { $aid = "err"; $answer = ""; } } else { $aid = $this->getAnswerId($aq, $answer); } if ($aq['display'] == "radio" && $aid !== "err") { $result = new Result(); $result->e_z_id = $code['z_id']; $result->e_fr_id = $fr_id; $result->a_id = $aid; $result->save(); } else { $result = new Result(); $result->e_z_id = $code['z_id']; $result->e_fr_id = $fr_id; $result->antwort = $answer; $result->save(); } } $status = $key; } $codeObj = Code::findOne($code['z_id']); $codeObj->status = $status; $codeObj->save(); return $status; }
public function actionForm() { if (!isset(Yii::$app->session['anketData'])) { $this->redirect(['/site/index']); } $data = Yii::$app->session['anketData']; $form = Form::findOne($data['form']); $questions = $form->getQuestions($bank_id = $data["bank"]["b_id"]); $status = isset($data['status']) && !empty($data['status']) ? $data['status'] : Code::findOne($data['code']['z_id'])->status; if (Yii::$app->request->post('q')) { $userAnswers = Yii::$app->request->post('q'); $status = $form->saveAnswers($data['code'], $userAnswers); $data['status'] = $status; $data['code']['status'] = $status; $code = Code::findOne($data['code']['z_id']); $code->used = 0; //workaround $code->count = 1; $code->status = $status; $code->save(); } Yii::$app->session['anketData'] = $data; if (!($status < $form->getQuestionsCount($questions))) { $code = Code::findOne($data['code']['z_id']); $code->used = 1; $meta = Meta::findOne($data['code']['z_id']); $meta->time_end = time(); $meta->save(); //workaround. Doesn't affect nothing at all $code->count = 1; $code->save(); $this->redirect(['/site/end']); } return $this->render('form', ['status' => $status, 'percent' => round($status / $form->getQuestionsCount($questions) * 100), 'questions' => $questions, 'anket' => $form, 'bank' => $data['bank']['b_id'], 'style' => $data['style']]); }