Ejemplo n.º 1
0
 function parse($html = null, $blockName = 'document', $blockParams = null, $noCycle = false)
 {
     $messages = SlConfigure::read2('Message');
     if ($messages) {
         SlSession::delete('Message');
     } else {
         $messages = array();
     }
     $this->vars['bufferedOutput'] = SlConfigure::read('View.bufferedOutput');
     SlConfigure::delete('View.bufferedOutput');
     if ($messages || $this->vars['bufferedOutput']) {
         $this->blocks["loop"]->params[0] = $messages;
         return parent::parse($html, $blockName);
     }
 }
Ejemplo n.º 2
0
 public function login()
 {
     $this->helpers[] = 'JsValidate.Validation';
     $this->AuthUser;
     $this->set('title', __t('Login'));
     if (!empty($this->data['AuthUser']['username'])) {
         if (SlAuth::login($this->data['AuthUser']['username'], $this->data['AuthUser']['password'], array('remember' => $this->data['AuthUser']['remember']))) {
             $key = empty($this->params['admin']) ? 'Auth.url.afterLogin' : 'Auth.url.afterAdminLogin';
             $url = SlConfigure::read2($key);
             SlSession::delete($key);
             $this->redirect($url);
         } else {
             $this->Session->setFlash(__t('Login error. Check username and password'));
         }
     }
 }
Ejemplo n.º 3
0
 /**
  * For compatibility with Cake
  */
 function flash($key = 'flash')
 {
     $out = false;
     $flash = SlSession::read('Message.' . $key);
     if ($flash['element'] == 'default') {
         if (!empty($flash['params']['class'])) {
             $class = $flash['params']['class'];
         } else {
             $class = 'message';
         }
         $out = '<div id="' . $key . 'Message" class="' . $class . '">' . $flash['message'] . '</div>';
     } elseif ($flash['element'] == '' || $flash['element'] == null) {
         $out = $flash['message'];
     } else {
         $view =& ClassRegistry::getObject('view');
         $tmpVars = $flash['params'];
         $tmpVars['message'] = $flash['message'];
         $out = $view->element($flash['element'], $tmpVars);
     }
     SlSession::delete('Message.' . $key);
     return $out;
 }
Ejemplo n.º 4
0
 /**
  * Redirects to given $url, after turning off $this->autoRender.
  * Script execution is halted after the redirect.
  *
  * @param mixed $url A string or array-based URL pointing to another location within the app, or an absolute URL
  * @param integer $status Optional HTTP status code (eg: 404)
  * @access public
  * @link http://book.cakephp.org/view/425/redirect
  */
 public function redirect($url, $status = null, $useReferer = true)
 {
     if ($useReferer) {
         $ref = SlSession::read('Routing.ref');
         if ($ref) {
             SlSession::delete('Routing.ref');
             if (Sl::url($ref) !== Sl::url()) {
                 $url = $ref;
             }
         }
     }
     // cyclic check
     if (Sl::url($url) === Sl::url()) {
         die('Infinite redirection loop detected.');
     }
     // code inspired from RequestHandlerComponent
     if ($this->RequestHandler->isAjax()) {
         foreach ($_POST as $key => $val) {
             unset($_POST[$key]);
         }
         echo Sl::requestAction($url, array('requested' => false));
         $this->_stop();
     }
     // show a human readable redirect message allowing debug output to be read
     if (headers_sent() || $this->output && Configure::read()) {
         $url = h(SL::url($url));
         if (empty($status)) {
             $status = 'null';
         }
         echo "<p style='background: #ff7; color: #000; padding: 1em;'>Redirect to <a href='{$url}'>{$url}</a> (code: {$status}) cancelled.</p>";
         while (ob_get_level()) {
             ob_end_flush();
         }
         $this->_stop();
     }
     parent::redirect(Sl::url($url, true), $status);
 }
Ejemplo n.º 5
0
 public function del($name)
 {
     return SlSession::delete($name);
 }