Пример #1
0
 public function user_edit()
 {
     // auth
     Auth::isAdminAuthorized($this->signedUser, 'admin.user', true, '/user');
     // check
     $save = Converter::string('save', 'post');
     $id = \Rebond\Util\Converter::int('id');
     $user = \Rebond\Core\User\Data::loadById($id, true);
     $id = $user->getId();
     $form = new \Rebond\Core\User\Form($user);
     // action
     if (isset($save)) {
         Auth::isAdminAuthorized($this->signedUser, 'admin.user.edit', true, '/user/edit?id=' . $id);
         if ($form->setFromPost()->validate()->isValid()) {
             if ($user->getId() == 0) {
                 $user->setPassword(\Rebond\Util\Security::encryptPassword($user->getPassword()));
             }
             $user->save();
             $userSettings = \Rebond\Cms\UserSettings\Data::loadByUserId($user->getId());
             if (!isset($userSettings)) {
                 $userSettings = new \Rebond\Cms\UserSettings\Model();
                 $userSettings->setUserId($user->getId());
                 $userSettings->save();
             }
             Session::adminSuccess('saved', '/user');
         } else {
             Session::set('adminError', $form->getValidation()->getMessage());
         }
     }
     // view
     $this->setTpl();
     // main
     $tplMain = new Template(Template::MODULE, ['core', 'user']);
     $tplMain->set('item', $form);
     // layout
     if (Auth::isAdminAuthorized($this->signedUser, 'admin.user.edit', false)) {
         if ($id == 0) {
             $this->tplLayout->set('column1', $tplMain->render('register'));
         } else {
             $this->tplLayout->set('column1', $tplMain->render('editor'));
         }
     } else {
         $this->tplLayout->set('column1', $tplMain->render('view'));
     }
     // master
     $this->tplMaster->set('layout', $this->tplLayout->render('layout-1-col'));
     $this->tplMaster->set('jsLauncher', 'userEdit');
     return $this->tplMaster->render('tpl-default');
 }
Пример #2
0
 public function settings()
 {
     // auth
     Auth::isAdminAuthorized($this->signedUser, null, true, '/profile/sign-in');
     // prep
     $save = Converter::string('save', 'post');
     // check
     $userSetting = \Rebond\Cms\UserSettings\Data::loadById($this->signedUser->getId());
     if (!isset($userSetting)) {
         $userSetting = new \Rebond\Cms\UserSettings\Model();
         $userSetting->setUserId($this->signedUser->getId());
         $userSetting->save();
     }
     $form = new \Rebond\Cms\UserSettings\Form($userSetting);
     // action
     if (isset($save)) {
         if ($form->setFromPost()->validate()->isValid()) {
             $userSetting->save();
             Session::adminSuccess('saved', '/profile/settings');
         } else {
             Session::set('adminError', $form->getValidation()->getMessage());
         }
     }
     // view
     $this->setTpl();
     $tplMain = new Template(Template::MODULE, ['cms', 'userSettings']);
     $tplMain->set('item', $form);
     // layout
     $this->tplLayout->set('column1', $tplMain->render('editor'));
     // master
     $this->tplMaster->set('layout', $this->tplLayout->render('layout-1-col'));
     $this->tplMaster->set('jsLauncher', 'profile');
     return $this->tplMaster->render('tpl-default');
 }
Пример #3
0
 protected static function mapper(array $row, $alias = 'user_settings')
 {
     $model = new \Rebond\Cms\UserSettings\Model(false);
     if (isset($row[$alias . 'Id'])) {
         $model->setId($row[$alias . 'Id']);
     }
     if (isset($row[$alias . 'UserId'])) {
         $model->setUserId($row[$alias . 'UserId']);
         $model->setUser(\Rebond\Core\User\Data::join($row, $alias . '_user'));
     }
     if (isset($row[$alias . 'MediaView'])) {
         $model->setMediaView($row[$alias . 'MediaView']);
     }
     if (isset($row[$alias . 'MediaPaging'])) {
         $model->setMediaPaging($row[$alias . 'MediaPaging']);
     }
     if (isset($row[$alias . 'ContentPaging'])) {
         $model->setContentPaging($row[$alias . 'ContentPaging']);
     }
     if (isset($row[$alias . 'Paging'])) {
         $model->setPaging($row[$alias . 'Paging']);
     }
     return $model;
 }