public function actionCreate()
 {
     $model = new FamilyMember();
     if ($model->load(Yii::$app->request->post())) {
         //TODO: só membros admin podem juntar membros
         return self::saveModelNewMember($model, 'create');
     } else {
         $model->family_id = yii::$app->user->identity->family_id;
         $model->user_type = \app\enum\UserType::Utilizador_não_registado;
     }
     return $this->render('create', ['model' => $model]);
 }
예제 #2
0
 public function actionInit()
 {
     $res = '';
     $model = new FamilyMember();
     if ($model->load(Yii::$app->request->post())) {
         $family_login = Yii::$app->request->post('login');
         $family_pass = Yii::$app->request->post('password');
         if ($family_login && $family_pass) {
             $user = \app\models\User::findByUsername($family_login);
             //&& $user->validatePassword($family_pass)
             if ($user && $user->family_login_user) {
                 $res = \app\models\FamilyMember::joinMemberToFamilyAndSave($model, Yii::$app->user->getId(), $user->family_login_user);
                 if (!is_string($res)) {
                     Yii::$app->getSession()->setFlash('success', '<h2>Sucesso !!!</h2>' . 'Passa a partir deste momento a fazer parte da família <b>' . $model->family->name . '</b>' . '<br>' . '<br>' . 'Tem ao seu dispor várias funcionalidades que foram pensadas especificamente para si como membro de uma família.' . 'Explore os cantos da casa e caso tenha alguma dúvida use o ' . '<a class="" href="/site/contact">formulário</a> que também pode ser acessado no menu "Contacto".');
                     return $this->redirect("/site/message");
                 }
             }
         }
         Yii::$app->getSession()->setFlash('danger', '<h2>Algo correu mal !!!</h2>' . 'Não foi possível adiciona-lo como membro da família pretendida.' . '<br>' . '<br>' . '<b>' . $res . '</b>' . '<br>' . '<br>' . 'P.f. confira dados e tente novamente.' . '<br>' . '<br>' . '<a class="btn btn-info" href="javascript:history.back()">Tentar novamente</a>');
         return $this->redirect("/site/message");
     }
     return $this->render('./init', ['model' => $model]);
 }