protected function checkPermissions($action, $params) { try { $permissions = array(); if (!empty($this->permissions)) { foreach ($this->permissions as $key => $value) { if ($action === $key) { $permissions = array_merge($permissions, (array) $value); } elseif (substr($key, 0, 1) === '^' && $action !== substr($key, 1)) { $permissions = array_merge($permissions, (array) $value); } elseif (is_numeric($key)) { $permissions = array_merge($permissions, (array) $value); } } } if (!empty($permissions)) { Account::validate($permissions); } parent::beforeAction($action, $params); } catch (LoginRequiredException $e) { $loginUrl = array('route://admin_login', array('redirect' => \Simplify::request()->base() . \Simplify::request()->uri())); \Simplify::response()->redirect($loginUrl); } catch (SecurityException $e) { \Simplify::session()->warnings($e->getMessage()); \Simplify::response()->redirect('route://admin'); } }
/** * (non-PHPdoc) * @see Simplify_ViewInterface::render() */ public function render(\Simplify\RenderableInterface $object = null) { if (empty($object)) { $object = $this->object; } $template = $object->getTemplate(); if ($template === false) { return ''; } \Simplify::response()->header('Content-Type: text/html; charset=UTF-8'); $output = $this->internalRender($object, $template); $layout = $object->getLayout(); if ($layout !== false) { if (empty($layout)) { $layout = $this->getLayout(); } $view = new self(); $view->copyAll($object); $view->copyAll($this); $view->set('layout_content', $output); $view->setTemplate($layout); $view->setTemplatesPath($object->getLayoutsPath()); $view->setLayout(false); $output = $view->render(); } return $output; }
/** * * @return \Simplify\Response */ public static function response() { if (!self::$response) { self::$response = new Simplify\Response(); } return self::$response; }
/** * (non-PHPdoc) * * @see \Simplify\Application::pageNotFound() */ protected function pageNotFound() { \Simplify::response()->set404(); $view = \Simplify\View::factory(); $view->setTemplate('page_not_found'); $view->setLayout('layout/default'); return $this->outputResponse($view); }
protected function indexAction() { if (\Simplify::request()->get('activate')) { \Amplify\Modules::activateModule(\Simplify::request()->get('module')); \Simplify::response()->redirect(\Simplify::request()->route()); } elseif (\Simplify::request()->get('deactivate')) { \Amplify\Modules::deactivateModule(\Simplify::request()->get('module')); \Simplify::response()->redirect(\Simplify::request()->route()); } try { $modules = \Amplify\Modules::getAllModules(); $this->set('modules', $modules); } catch (AmplifyException $e) { // } }
protected function indexAction() { $username = ''; $email = ''; $password = ''; if (\Simplify::request()->method(\Simplify\Request::POST)) { try { $username = \Simplify::request()->post('username'); $email = \Simplify::request()->post('email'); $password = \Simplify::request()->post('password'); \Amplify\Install::performInstall($username, $email, $password); \Simplify::session()->notices(__('Instalação realizada com sucesso.')); $url = \Simplify::request()->get('redirect', \Simplify::router()->make('admin')); \Simplify::response()->redirect($url); } catch (\Simplify\ValidationException $e) { \Simplify::session()->warnings($e->getErrors()); } } $this->set('username', $username); $this->set('email', $email); $this->set('password', $password); }
/** * (non-PHPdoc) * * @see Simplify\Form\Action::onExecute() */ public function onExecute() { parent::onExecute(); $calendarAction = \Simplify::request()->get('calendarAction'); switch ($calendarAction) { case 'data': $this->onLoadData(); \Simplify::response()->output($this); exit; case 'create': case 'edit': $this->onLoadData(); if (\Simplify::request()->method('post')) { $this->onPostData(); $this->onValidate(); $this->onSave(); } break; case 'delete': $this->onLoadData(); $this->onValidate(); $this->onDelete(); } }
/** * * @param unknown_type $output * @return string */ protected function outputResponse($output) { return \Simplify::response()->output($output); }
/** * Render the action and return the result view * * @param string $action action name * @return \Simplify\Form */ public function render($action = null) { if (empty($action)) { $action = $this->getActionName(); } if ($action === 'services') { return $this; } $Action = $this->getAction($action); $result = $Action->onRender(); $this->set('actionBody', $result); if (\Simplify::request()->ajax()) { $this->setLayout('form_ajax_body'); \Simplify::response()->output($this); } $this->set('title', $this->getTitle()); $this->set('menu', $this->createMenu($Action)); $this->set('showMenu', $this->showMenu); \Simplify\AssetManager::load('moment/moment.min.js', 'vendor'); \Simplify\AssetManager::load('moment/lang/pt-br.js', 'vendor'); \Simplify\AssetManager::load('fullcalendar/fullcalendar.min.js', 'vendor'); \Simplify\AssetManager::load('fullcalendar/fullcalendar.min.css', 'vendor'); \Simplify\AssetManager::load('fullcalendar/lang/pt-br.js', 'vendor'); \Simplify\AssetManager::load('eonasdan-bootstrap-datetimepicker/css/bootstrap-datetimepicker.min.css', 'vendor'); \Simplify\AssetManager::load('eonasdan-bootstrap-datetimepicker/js/bootstrap-datetimepicker.min.js', 'vendor'); \Simplify\AssetManager::load('ckeditor/ckeditor.js', 'vendor', 0, false); \Simplify\AssetManager::load('simplify-form.js', 'vender'); return $this; }
public function onBeforeDelete(\Simplify\Form\Action $action, $row) { if (sy_get_param($row, Form::ID) == 1) { \Simplify::session()->warnings(__('Não é possível remover este usuário')); \Simplify::response()->redirect($this->Form->url()->extend()->set('formAction', null)); } }
/** * (non-PHPdoc) * * @see \Simplify\Controller::indexAction() */ protected function indexAction() { try { $result = $this->Form->execute(); if ($result == \Simplify\Form::RESULT_SUCCESS) { \Simplify::session()->notices('Success'); return \Simplify::response()->redirect($this->Form->url()->extend()->set('formAction', null)); } } catch (\Simplify\ValidationException $e) { \Simplify::session()->warnings(__('Verifique os erros abaixo')); $errors = (array) $e->getErrors(); foreach ($errors as $key => $errors) { if (is_int($key)) { \Simplify::session()->warnings($errors); } } } catch (\Exception $e) { \Simplify::session()->warnings($e->getMessage()); } $this->set('formBody', $this->Form->render()); }
/** * */ protected function logoutAction() { \Amplify\Account::logout(); $url = \Simplify::request()->get('redirect', 'route://admin'); return \Simplify::response()->redirect($url); }
/** * Renders the template * * @param RenderableInterface $object * @param string $template * @return string */ protected function internalRender(\Simplify\RenderableInterface $object, $template) { \Simplify::response()->header('Content-Type: text/html; charset=UTF-8'); extract($object->getAll(), EXTR_REFS); ob_start(); require $template; $output = ob_get_clean(); return $output; }