Example #1
0
 /**
  * renderTemplate
  *
  * @since 3.0.0
  *
  * @return mixed
  */
 public static function renderTemplate()
 {
     $registry = Registry::getInstance();
     $request = Request::getInstance();
     $language = Language::getInstance();
     /* handle notification */
     if (!is_dir(self::$_configArray['directory']) && !mkdir(self::$_configArray['directory'])) {
         self::setNotification('error', $language->get('directory_not_found') . $language->get('colon') . ' ' . self::$_configArray['directory'] . $language->get('point'));
     }
     /* prevent as needed */
     if ($request->getPost() || $registry->get('noCache')) {
         return false;
     }
     /* cache as needed */
     $cache = new Cache();
     $cache->init(self::$_configArray['directory'], self::$_configArray['extension']);
     $fullRoute = $registry->get('fullRoute');
     /* load from cache */
     if ($cache->validate($fullRoute, self::$_configArray['lifetime'])) {
         $raw = $cache->retrieve($fullRoute);
         $content = preg_replace('/' . self::$_configArray['tokenPlaceholder'] . '/', $registry->get('token'), self::_uncompress($raw));
         return ['header' => function_exists('gzdeflate') ? 'content-encoding: deflate' : null, 'content' => self::_compress($content)];
     } else {
         $raw = Template\Tag::partial('templates/' . $registry->get('template') . '/index.phtml');
         $content = preg_replace('/' . $registry->get('token') . '/', self::$_configArray['tokenPlaceholder'], $raw);
         $cache->store($fullRoute, self::_compress($content));
         return ['content' => $raw];
     }
 }
Example #2
0
 /**
  * setUp
  *
  * @since 3.0.0
  */
 public function setUp()
 {
     $this->_registry = Registry::getInstance();
     $this->_language = Language::getInstance();
     $this->_request = Request::getInstance();
     $this->_config = Config::getInstance();
     $this->_configArray = $this->_config->get();
     $this->_config->set('dbPrefix', 'controller_');
 }
Example #3
0
 /**
  * render
  *
  * @since 2.6.0
  */
 public static function render()
 {
     $formElement = new Html\Form(Registry::getInstance(), Language::getInstance());
     $formElement->init(array('form' => array('class' => 'js_validate_form form_default'), 'label' => array('class' => 'label'), 'textarea' => array('class' => 'js_auto_resize js_editor_textarea field_textarea'), 'input' => array('email' => array('class' => 'field_text'), 'number' => array('class' => 'field_text'), 'text' => array('class' => 'field_text'), 'url' => array('class' => 'field_text')), 'button' => array('submit' => array('class' => 'js_submit button_default', 'name' => get_class()), 'reset' => array('class' => 'js_reset button_default', 'name' => get_class()))), array('captcha' => Db::getSettings('captcha') > 0));
     /* create the form */
     $formElement->append('<fieldset>')->legend()->append('<ul><li>')->label('* ' . Language::get('author'), array('for' => 'author'))->text(array('id' => 'author', 'name' => 'author', 'readonly' => Registry::get('myName') ? 'readonly' : null, 'required' => 'required', 'value' => Registry::get('myName') ? Registry::get('myName') : Request::getPost('author')))->append('</li><li>')->label('* ' . Language::get('email'), array('for' => 'email'))->email(array('id' => 'email', 'name' => 'email', 'readonly' => Registry::get('myEmail') ? 'readonly' : null, 'required' => 'required', 'value' => Registry::get('myEmail') ? Registry::get('myEmail') : Request::getPost('email')))->append('</li><li>')->label(Language::get('url'), array('for' => 'url'))->url(array('id' => 'url', 'name' => 'url', 'value' => Request::getPost('url')))->append('</li><li>')->label('* ' . Language::get('message'), array('for' => 'text'))->textarea(array('id' => 'text', 'name' => 'text', 'required' => 'required', 'value' => Request::getPost('text')))->append('</li>');
     if (Db::getSettings('captcha') > 0) {
         $formElement->append('<li>')->captcha('task')->append('</li>');
     }
     $formElement->append('</ul></fieldset>');
     if (Db::getSettings('captcha') > 0) {
         $formElement->captcha('solution');
     }
     $formElement->token()->submit()->reset();
     return $formElement;
 }
Example #4
0
 /**
  * render
  *
  * @since 2.6.0
  *
  * return Form
  */
 public static function render()
 {
     $formElement = new Html\Form(Registry::getInstance(), Language::getInstance());
     $formElement->init(['textarea' => ['class' => 'rs-js-auto-resize rs-js-editor-textarea rs-field-textarea'], 'button' => ['submit' => ['name' => get_class()]]], ['captcha' => Db::getSetting('captcha') > 0]);
     /* create the form */
     $formElement->append('<fieldset>')->legend()->append('<ul><li>')->label('* ' . Language::get('author'), ['for' => 'author'])->text(['id' => 'author', 'name' => 'author', 'readonly' => Registry::get('myName') ? 'readonly' : null, 'required' => 'required', 'value' => Registry::get('myName')])->append('</li><li>')->label('* ' . Language::get('email'), ['for' => 'email'])->email(['id' => 'email', 'name' => 'email', 'readonly' => Registry::get('myEmail') ? 'readonly' : null, 'required' => 'required', 'value' => Registry::get('myEmail')])->append('</li><li>')->label(Language::get('url'), ['for' => 'url'])->url(['id' => 'url', 'name' => 'url'])->append('</li><li>')->label('* ' . Language::get('message'), ['for' => 'text'])->textarea(['id' => 'text', 'name' => 'text', 'required' => 'required'])->append('</li>');
     if (Db::getSetting('captcha') > 0) {
         $formElement->append('<li>')->captcha('task')->append('</li>');
     }
     $formElement->append('</ul></fieldset>');
     if (Db::getSetting('captcha') > 0) {
         $formElement->captcha('solution');
     }
     $formElement->token()->submit()->reset();
     return $formElement;
 }
Example #5
0
/**
 * router
 *
 * @since 1.2.1
 * @deprecated 2.0.0
 *
 * @package Redaxscript
 * @category Center
 * @author Henry Ruhs
 */
function router()
{
    $firstParameter = Redaxscript\Registry::get('firstParameter');
    $secondParameter = Redaxscript\Registry::get('secondParameter');
    $thirdParameter = Redaxscript\Registry::get('thirdParameter');
    $thirdSubParameter = Redaxscript\Registry::get('thirdSubParameter');
    $config = Redaxscript\Config::getInstance();
    Redaxscript\Hook::trigger('routerStart');
    if (Redaxscript\Registry::get('routerBreak')) {
        return;
    }
    /* check token */
    $messenger = new Redaxscript\Messenger(Redaxscript\Registry::getInstance());
    if ($_POST && $_POST['token'] != Redaxscript\Registry::get('token')) {
        echo $messenger->setRoute(Redaxscript\Language::get('home'), Redaxscript\Registry::get('root'))->error(Redaxscript\Language::get('token_incorrect'), Redaxscript\Language::get('error_occurred'));
        return;
    }
    /* install routing */
    if (Redaxscript\Registry::get('file') === 'install.php' && $config->get('env') !== 'production') {
        if (Redaxscript\Request::getPost('Redaxscript\\View\\InstallForm')) {
            $installController = new Redaxscript\Controller\Install(Redaxscript\Registry::getInstance(), Redaxscript\Language::getInstance(), Redaxscript\Request::getInstance(), Redaxscript\Config::getInstance());
            echo $installController->process();
            return;
        } else {
            $systemStatus = new Redaxscript\View\SystemStatus(Redaxscript\Registry::getInstance(), Redaxscript\Language::getInstance());
            $installForm = new Redaxscript\View\InstallForm(Redaxscript\Registry::getInstance(), Redaxscript\Language::getInstance());
            echo $systemStatus->render() . $installForm->render();
            return;
        }
    }
    /* general routing */
    $post_list = ['Redaxscript\\View\\LoginForm' => 'Redaxscript\\Controller\\Login', 'Redaxscript\\View\\RegisterForm' => 'Redaxscript\\Controller\\Register', 'Redaxscript\\View\\ResetForm' => 'Redaxscript\\Controller\\Reset', 'Redaxscript\\View\\RecoverForm' => 'Redaxscript\\Controller\\Recover', 'Redaxscript\\View\\CommentForm' => 'Redaxscript\\Controller\\Comment'];
    foreach ($post_list as $key => $value) {
        if (Redaxscript\Request::getPost($key)) {
            if (class_exists($value)) {
                $controller = new $value(Redaxscript\Registry::getInstance(), Redaxscript\Language::getInstance(), Redaxscript\Request::getInstance());
                echo $controller->process();
            }
            return;
        }
    }
    /* search routing */
    if (Redaxscript\Request::getPost('Redaxscript\\View\\SearchForm')) {
        $messenger = new Redaxscript\Messenger(Redaxscript\Registry::getInstance());
        $table = Redaxscript\Request::getPost('table');
        if ($table) {
            $table = '/' . $table;
        }
        echo $messenger->setRoute(Redaxscript\Language::get('continue'), 'search' . $table . '/' . Redaxscript\Request::getPost('search'))->doRedirect(0)->success(Redaxscript\Language::get('search'));
    }
    /* parameter routing */
    switch ($firstParameter) {
        case 'admin':
            if (Redaxscript\Registry::get('loggedIn') == Redaxscript\Registry::get('token')) {
                admin_router();
            } else {
                echo $messenger->setRoute(Language::get('login'), 'login')->error(Language::get('access_no'), Language::get('error_occurred'));
            }
            return;
        case 'login':
            switch ($secondParameter) {
                case 'recover':
                    if (Redaxscript\Db::getSetting('recovery') == 1) {
                        $recoverForm = new Redaxscript\View\RecoverForm(Redaxscript\Registry::getInstance(), Redaxscript\Language::getInstance());
                        echo $recoverForm->render();
                        return;
                    }
                case 'reset':
                    if (Redaxscript\Db::getSetting('recovery') == 1 && $thirdParameter && $thirdSubParameter) {
                        $resetForm = new Redaxscript\View\ResetForm(Redaxscript\Registry::getInstance(), Redaxscript\Language::getInstance());
                        echo $resetForm->render();
                        return;
                    }
                    /* show error */
                    echo $messenger->setRoute(Language::get('login'), 'login')->error(Language::get('access_no'), Language::get('error_occurred'));
                    return;
                default:
                    $loginForm = new Redaxscript\View\LoginForm(Redaxscript\Registry::getInstance(), Redaxscript\Language::getInstance());
                    echo $loginForm->render();
                    return;
            }
        case 'logout':
            if (Redaxscript\Registry::get('loggedIn') == Redaxscript\Registry::get('token')) {
                $logoutController = new Redaxscript\Controller\Logout(Redaxscript\Registry::getInstance(), Redaxscript\Language::getInstance(), Redaxscript\Request::getInstance());
                echo $logoutController->process();
                return;
            }
            /* show error */
            echo $messenger->setRoute(Language::get('login'), 'login')->error(Language::get('access_no'), Language::get('error_occurred'));
            return;
        case 'register':
            if (Redaxscript\Db::getSetting('registration')) {
                $registerForm = new Redaxscript\View\RegisterForm(Redaxscript\Registry::getInstance(), Redaxscript\Language::getInstance());
                echo $registerForm->render();
                return;
            }
            /* show error */
            echo $messenger->setRoute(Language::get('home'), Redaxscript\Registry::get('root'))->error(Language::get('access_no'), Language::get('error_occurred'));
            return;
        case 'search':
            $searchController = new Redaxscript\Controller\Search(Redaxscript\Registry::getInstance(), Redaxscript\Language::getInstance(), Redaxscript\Request::getInstance());
            echo $searchController->process();
            return;
        default:
            contents();
            return;
    }
    Redaxscript\Hook::trigger('routerEnd');
}
Example #6
0
 /**
  * setUp
  *
  * @since 2.6.0
  */
 public function setUp()
 {
     $this->_registry = Registry::getInstance();
     $this->_language = Language::getInstance();
     $this->_request = Request::getInstance();
 }
Example #7
0
 /**
  * language
  *
  * @since 2.6.0
  *
  * @param string $key
  * @param string $index
  *
  * @return string
  */
 public static function language($key = null, $index = null)
 {
     $language = Language::getInstance();
     return $language->get($key, $index);
 }
 /**
  * setUp
  *
  * @since 2.6.0
  */
 protected function setUp()
 {
     $this->_registry = Registry::getInstance();
     $this->_language = Language::getInstance();
 }
 /**
  * setUp
  *
  * @since 2.1.0
  */
 protected function setUp()
 {
     $this->_language = Language::getInstance();
 }
Example #10
0
 /**
  * setUp
  *
  * @since 2.1.0
  */
 public function setUp()
 {
     $this->_language = Language::getInstance();
 }
Example #11
0
 /**
  * get the transport
  *
  * @since 3.0.0
  *
  * @return string
  */
 public static function getTransport()
 {
     $transport = new Assetic\Transport(Registry::getInstance(), Language::getInstance());
     return $transport->getArray();
 }
Example #12
0
 /**
  * transport javascript variables
  *
  * @since 3.0.0
  *
  * @param string $key
  * @param mixed $value
  *
  * @return Script
  */
 public function transportVar($key = null, $value = null)
 {
     $transport = new Assetic\Transport(Registry::getInstance(), Language::getInstance());
     $inline = $transport->render($key, $value);
     $this->appendInline($inline);
     return $this;
 }