public function register() { $signedUser = $this->app->user(); // auth if (Util\Auth::isAuth($signedUser)) { header('Location: /profile'); exit; } // check $user = new \Rebond\Core\User\Model(); $form = new \Rebond\Core\User\Form($user); $tpl = new Util\Template(Util\Template::MODULE, ['app', 'User']); // register $register = Util\Converter::toString('register', 'post'); if (isset($register)) { if ($form->setFromPost()->validate(['username', 'email', 'password'])->isValid()) { $user->setStatus(0); $user->setPassword(Util\Security::encryptPassword($user->getPassword())); $resultUpload = Util\Media::upload($user->getUsername()); if ($resultUpload['result'] == ResultType::ERROR) { Util\Session::set('siteError', $resultUpload['message']); } else { if ($resultUpload['result'] == ResultType::SUCCESS) { $user->setAvatarId($resultUpload['mediaId']); } $user->save(); } // send email if (Mail::register($this->app->site()->getTitle(), $user)) { return $tpl->render('register-success'); } // mail could not be sent $user->setStatus(1); $userRole = new \Rebond\Core\UserRole\Model(); $userRole->setUserId($user->getId()); $userRole->setRoleId(\Rebond\Core\Role\Model::MEMBER); $userRole->save(); return $tpl->render('register-success-nomail'); } else { Util\Session::set('siteError', $form->getValidation()->getMessage()); } } // confirm email $confirm = Util\Converter::toString('confirm'); if (isset($confirm)) { $signedUser = \Rebond\Core\UserSecurity\Service::getUserBySecure($confirm, \Rebond\Core\UserSecurity\Model::CONFIRM); if (isset($signedUser) && $signedUser->getId() != 0) { $userRole = new \Rebond\Core\UserRole\Model(); $userRole->setUserId($signedUser->getId()); $userRole->setRoleId(\Rebond\Core\Role\Model::MEMBER); $userRole->save(); Util\Session::set('allSuccess', Util\Lang::lang('hi', [$signedUser->getUsername()])); Util\Session::set('signedUser', $signedUser->getId()); $this->app->setUser($signedUser); return $tpl->render('register-confirm'); } } $tpl->set('item', $form); return $tpl->render('register'); }
public function index() { // auth Util\Auth::isAuthorized($this->signedUser, 'member', true, '/'); $userForm = new \Rebond\Core\User\Form($this->signedUser, 'user'); $playerForm = new \Own\Bus\Player\Form($this->player, 'player'); // action $save = Util\Converter::toString('save', 'post'); if (isset($save)) { if ($userForm->setFromPost()->validate()->isValid()) { if ($playerForm->setFromPost()->validate()->isValid()) { $resultUpload = Util\Media::upload('avatarIduser', true); if ($resultUpload['result'] == ResultType::ERROR) { Util\Session::set('siteError', $resultUpload['message']); } else { if ($resultUpload['result'] == ResultType::SUCCESS) { $this->signedUser->setAvatarId($resultUpload['mediaId']); } $this->signedUser->save(); $this->player->save(); Util\Session::siteSuccess('saved', '/profile'); } } else { Util\Session::set('siteError', $playerForm->getValidation()->getMessage()); } } else { Util\Session::set('siteError', $userForm->getValidation()->getMessage()); } } // layout $tplPlayer = new Util\Template(Util\Template::MODULE, ['bus', 'player']); $tplPlayer->set('user', $userForm); $tplPlayer->set('player', $playerForm); return $this->response('tpl-default', ['title' => Util\Lang::lang('profile')], 'layout-home', ['column1' => $tplPlayer->render('editor')]); }
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); }