예제 #1
0
 /**
  * Creates a new Clientes model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  * @return mixed
  */
 public function actionCreate()
 {
     $model = new Clientes();
     $model->setScenario('register');
     $post = Yii::$app->request->post();
     $formName = basename($model->className());
     if ($model->load($post)) {
         // Default value
         $model->role = isset($post[$formName]['role']) ? $post[$formName]['role'] : 20;
         $model->fecha_conexion = isset($post[$formName]['fecha_conexion']) ? $post[$formName]['fecha_conexion'] : Yii::$app->fn->GetDate('none');
         $model->fecha_modif = isset($post[$formName]['fecha_modif']) ? $post[$formName]['fecha_modif'] : Yii::$app->fn->GetDate('none');
         $model->fecha_registro = isset($post[$formName]['fecha_registro']) ? $post[$formName]['fecha_registro'] : Yii::$app->fn->GetDate();
         $model->id_estado = isset($post[$formName]['id_estado']) ? $post[$formName]['id_estado'] : 1;
         // VALIDATE: Provincia
         if (!empty($model->id_provincia)) {
             $nombre_provincia = Provincias::findOne(['id' => $model->id_provincia])->nombre_provincia;
         }
         if (empty($model->id_provincia) && empty($model->provincia)) {
             $model->addError($model->provincia, 'Please fill the provincia field.');
         } elseif (!empty($model->id_provincia) && !empty($model->provincia) && $nombre_provincia != $model->provincia) {
             $model->addError($model->id_provincia, 'Please select provincia from the list or fill manually your provincia.');
         } elseif (!empty($model->id_provincia)) {
             $model->provincia = $nombre_provincia;
         } else {
             $model->id_provincia = null;
         }
         if (!count($model->errors) && $model->validate()) {
             $model->setPassword();
             $model->generateAuthKey();
             if ($model->save()) {
                 return $this->redirect(['view', 'id' => $model->id]);
             }
         }
     }
     // Load empty/error form
     return $this->render('create', ['model' => $model]);
 }