1
0
Fork 0
mirror of https://github.com/janickiy/yii2-nomer synced 2025-03-09 15:39:59 +00:00
yii2-nomer/modules/admin/controllers/PlatiController.php
2020-02-05 06:34:26 +03:00

46 lines
No EOL
1.4 KiB
PHP

<?php
namespace app\modules\admin\controllers;
use app\components\coupon;
use app\models\PlatiCode;
use yii\data\ActiveDataProvider;
class PlatiController extends AdminController {
public function actionNew() {
$checks = \Yii::$app->request->get("checks");
$count = \Yii::$app->request->get("count");
$codes = coupon::generate_coupons($count, [
"length" => 12,
"letters" => true,
"numbers" => true,
"symbols" => false,
"mixed_case" => true,
"mask" => "XXX-XXX-XXX-XXX"
]);
$newCodes = [];
foreach($codes as $code) {
$platiCode = PlatiCode::find()->where(["code" => $code])->one();
if($platiCode) continue;
$platiCode = new PlatiCode();
$platiCode->code = $code;
$platiCode->checks = $checks;
$platiCode->save();
$newCodes[] = $code."<br>Для зачисления проверок введите код на сайте https://nomer.io/pay/coupon";
}
$file = \Yii::getAlias('@runtime')."/".uniqid("coupons").".txt";
file_put_contents($file, join("\n", $newCodes));
\Yii::$app->response->sendFile($file);
}
public function actionIndex() {
$dataProvider = new ActiveDataProvider([
'query' => PlatiCode::find()
]);
return $this->render('index', ["dataProvider" => $dataProvider]);
}
}