public function getUser($createIfNotExist = false) { if (!isset($this->user)) { $this->user = \Rebond\Core\User\Data::loadById($this->userId, $createIfNotExist); } return $this->user; }
public function player() { Util\Auth::isAdminAuthorized($this->signedUser, 'member', true, '/'); $playerId = Util\Converter::toInt('id'); if (!isset($playerId)) { Util\Session::adminError('item.not.found', [Util\Lang::lang('player'), $playerId], '/own'); } $user = \Rebond\Core\User\Data::loadById($playerId, true); $player = \Own\Bus\Player\Data::loadById($playerId, true); $userForm = new \Rebond\Core\User\Form($user); $playerForm = new \Own\Bus\Player\Form($player); // action $save = Util\Converter::toString('save', 'post'); $membershipIds = Util\Converter::toArray('membership', 'post'); if (isset($save)) { if ($user->getId() == 0) { $user->setUsername($user->getEmail()); $user->setPassword(Util\Security::encryptPassword($user->getPassword())); } if ($userForm->setFromPost()->validate()->isValid()) { if ($playerForm->setFromPost()->validate()->isValid()) { \Own\Bus\PlayerMembership\Data::deleteByPlayerId($player->getId()); $newMemberships = []; if (isset($membershipIds)) { foreach ($membershipIds as $membershipId) { $playerMembership = new \Own\Bus\PlayerMembership\Model(); $playerMembership->setPlayerId($player->getId()); $playerMembership->setMembershipId($membershipId); $newMemberships[] = $playerMembership; } } \Own\Bus\PlayerMembership\Data::saveAll($newMemberships); $user->save(); $player->save(); Util\Session::adminSuccess('saved', '/own/player?id=' . $user->getId()); } else { Util\Session::set('adminError', $playerForm->getValidation()->getMessage()); } } else { Util\Session::set('adminError', $userForm->getValidation()->getMessage()); } } $tplEditor = new Util\Template(Util\Template::SITE, ['admin']); $tplEditor->set('user', $userForm); $tplEditor->set('player', $playerForm); $tplInfo = new Util\Template(Util\Template::SITE, ['admin']); $tplInfo->set('user', $user); return $this->response('tpl-default', ['title' => Util\Lang::lang('own'), 'jsLauncher' => 'own'], 'layout-2-col', ['column1' => $tplEditor->render('player-editor'), 'column2' => $tplInfo->render('player-info')]); }
public function user() { if (isset($this->signedUser)) { return $this->signedUser; } if ($this->step != Config::STEP_RUNNING) { return new \Rebond\Core\User\Model(); } $session = Util\Session::int('signedUser'); $cookie = Util\Converter::string('signedUser', 'cookie'); if ($session != 0) { $this->signedUser = \Rebond\Core\User\Data::loadById($session); } else { if ($cookie != '') { $this->signedUser = \Rebond\Core\UserSecurity\Data::loadBySecure($cookie, \Rebond\Core\UserSecurity\Model::REMEMBER); } } if (isset($this->signedUser) && $this->signedUser->getId() != 0) { if ($this->signedUser->getIsDev()) { $this->setLogLevel(Config::ENV_LOCAL); } if ($session != $this->signedUser->getId()) { Util\Session::set('signedUser', $this->signedUser->getId()); } return $this->signedUser; } return new \Rebond\Core\User\Model(); }
public function user_role() { // auth Auth::isAdminAuthorized($this->signedUser, 'admin.user', true, '/user'); // check $id = \Rebond\Util\Converter::int('id'); $save = \Rebond\Util\Converter::int('save', 'post'); $roleIds = \Rebond\Util\Converter::arr('role', 'post'); $user = \Rebond\Core\User\Data::loadById($id); if (!isset($user)) { Session::adminError('itemNotFound', [$id], '/user'); } $form = new \Rebond\Core\User\Form($user); // action if (isset($save)) { Auth::isAdminAuthorized($this->signedUser, 'admin.user.edit', true, '/user/user-role?id=' . $id); \Rebond\Core\UserRole\Data::deleteByUserId($user->getId()); $newRoles = []; if (isset($roleIds)) { foreach ($roleIds as $roleId) { $userRole = new \Rebond\Core\UserRole\Model(); $userRole->setUserId($user->getId()); $userRole->setRoleId($roleId); $newRoles[] = $userRole; } } \Rebond\Core\UserRole\Data::saveAll($newRoles); Session::adminSuccess('saved', '/user'); } // 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)) { $this->tplLayout->set('column1', $tplMain->render('editor-role')); } else { // @todo create viewer-role template $this->tplLayout->set('column1', $tplMain->render('editor-role')); } // master $this->tplMaster->set('layout', $this->tplLayout->render('layout-1-col')); return $this->tplMaster->render('tpl-default'); }
public function uploadify() { $json = []; $json['result'] = ResultType::ERROR; // check $id = Converter::int('userId', 'post', 0); $this->signedUser = \Rebond\Core\User\Data::loadById($id); if (!isset($this->signedUser)) { $json['message'] = Lang::lang('accessNonAuthorized'); return json_encode($json); } if (!$this->hasPrivilege('admin.media.upload')) { return $this->noPrivilege('admin.media.upload'); } $folderId = Converter::int('folderId', 'post'); $isSelectable = Converter::int('isSelectable', 'post', 1); if (!isset($folderId)) { $json['message'] = Lang::lang('errorInvalidParameters'); return json_encode($json); } $upload = \Rebond\Util\Media::upload('', $_FILES['Filedata']); $originalName = $_FILES['Filedata']['name']; if ($upload == ResultType::ERROR) { $json['message'] = Lang::lang('errorFileUpload', [$originalName]); Log::log(Error::MEDIA_NOT_SAVED, $json['message'], __FILE__, __LINE__); return json_encode($json); } list($w, $h) = getimagesize(\Rebond\Config::getPath('media') . $upload); $ext = \Rebond\Util\File::getExtension(\Rebond\Config::getPath('media') . $upload); $noExt = \Rebond\Util\File::getNoExtension($originalName); $media = new \Rebond\Core\Media\Model(); $media->setFolderId($folderId); $media->setTitle($noExt); $media->setAlt($noExt); $media->setOriginalFilename($originalName); $media->setExtension($ext); $media->setWidth($w); $media->setHeight($h); $media->setFilesize(filesize(\Rebond\Config::getPath('media') . $upload)); $mimeType = new \finfo(FILEINFO_MIME_TYPE); $media->setMimetype($mimeType->file(\Rebond\Config::getPath('media') . $upload)); $media->setUpload($upload); $media->setIsSelectable($isSelectable); $media->save(); $json['result'] = ResultType::SUCCESS; $json['id'] = $media->getId(); $json['message'] = Lang::lang('mediaUploaded', [$originalName]); return json_encode($json); }