コード例 #1
0
ファイル: Acl.php プロジェクト: frenchfrogs/acl
 /**
  * Remove interface from database
  *
  * @param $index
  */
 static function removeDatabaseInterface($index)
 {
     Db\User\UserInterface::find($index)->delete();
 }
コード例 #2
0
ファイル: AclController.php プロジェクト: frenchfrogs/acl
 /**
  *
  *
  * @param $id
  * @return mixed
  */
 public function postUser($id = null)
 {
     \ruler()->check($this->permission, ['id' => 'exists:user,user_id'], ['id' => $uuid = f($id, 'uuid')]);
     // Recuperation du model
     $user = User::findOrNew($uuid);
     $form = \form()->enableRemote();
     $form->setLegend('Utilisateur : ' . $user->name);
     $form->addText('name', 'Nom');
     $form->addEmail('email', 'Email');
     if (!$user->exists) {
         $form->addText('password', 'Mot de passe');
     }
     $interface = UserInterface::orderBY('name')->pluck('name', 'user_interface_id');
     $form->addSelect('user_interface_id', 'Interface', $interface);
     $form->addSubmit('Enregistrer');
     // enregistrement
     if (\request()->has('Enregistrer')) {
         $form->valid(\request()->all());
         if ($form->isValid()) {
             $data = $form->getFilteredAliasValues();
             try {
                 if ($user->exists) {
                     $user->email = $data['email'];
                     $user->user_interface_id = $data['user_interface_id'];
                     $user->name = $data['name'];
                     $user->save();
                 } else {
                     \Models\Business\User::init($data['email'], $data['password'], $data['user_interface_id'], $data['name']);
                 }
                 \js()->success()->closeRemoteModal()->reloadDataTable();
             } catch (\Exception $e) {
                 \js()->error($e->getMessage());
             }
         }
     } elseif ($user->exists) {
         $form->populate($user->toArray());
     } else {
         $form->populate(['password' => \FrenchFrogs\Models\Business\User::generateRandomPassword()]);
     }
     return response()->modal($form);
 }