From 7c9d922b96f9a88b350d6e07f5bde84ccc40f9b0 Mon Sep 17 00:00:00 2001 From: thomascube <thomas@roundcube.net> Date: Tue, 02 Mar 2010 16:27:53 -0500 Subject: [PATCH] New recent check based on UIDs --- program/include/rcube_template.php | 33 ++++++++++++++++++++++----------- 1 files changed, 22 insertions(+), 11 deletions(-) diff --git a/program/include/rcube_template.php b/program/include/rcube_template.php index 3d894b5..5272ace 100755 --- a/program/include/rcube_template.php +++ b/program/include/rcube_template.php @@ -73,7 +73,7 @@ $this->add_script($javascript, 'head_top'); $this->add_script($javascript_foot, 'foot'); $this->scripts_path = 'program/js/'; - $this->include_script('jquery-1.3.min.js'); + $this->include_script('jquery-1.4.min.js'); $this->include_script('common.js'); $this->include_script('app.js'); @@ -290,7 +290,9 @@ if ($templ != 'iframe') { // prevent from endless loops if ($exit != 'recur' && $this->app->plugins->is_processing('render_page')) { - raise_error(array('code' => 505, 'type' => 'php', 'message' => 'Recursion alert: ignoring output->send()'), true, false); + raise_error(array('code' => 505, 'type' => 'php', + 'file' => __FILE__, 'line' => __LINE__, + 'message' => 'Recursion alert: ignoring output->send()'), true, false); return; } $this->parse($templ, false); @@ -455,7 +457,16 @@ { $GLOBALS['__version'] = Q(RCMAIL_VERSION); $GLOBALS['__comm_path'] = Q($this->app->comm_path); - return preg_replace('/\$(__[a-z0-9_\-]+)/e', '$GLOBALS["\\1"]', $input); + return preg_replace_callback('/\$(__[a-z0-9_\-]+)/', + array($this, 'globals_callback'), $input); + } + + /** + * Callback funtion for preg_replace_callback() in parse_with_globals() + */ + private function globals_callback($matches) + { + return $GLOBALS[$matches[1]]; } /** @@ -544,7 +555,7 @@ * Parses expression and replaces variables * * @param string Expression statement - * @return string Expression statement + * @return string Expression value */ private function parse_expression($expression) { @@ -552,9 +563,9 @@ array( '/session:([a-z0-9_]+)/i', '/config:([a-z0-9_]+)(:([a-z0-9_]+))?/i', - '/env:([a-z0-9_]+)/i', - '/request:([a-z0-9_]+)/i', - '/cookie:([a-z0-9_]+)/i', + '/env:([a-z0-9_-]+)/i', + '/request:([a-z0-9_-]+)/i', + '/cookie:([a-z0-9_-]+)/i', '/browser:([a-z0-9_]+)/i' ), array( @@ -975,7 +986,7 @@ return $username; } - // get e-mail address form default identity + // get e-mail address from default identity if ($sql_arr = $this->app->user->get_identity()) { $username = $sql_arr['email']; } @@ -1005,8 +1016,8 @@ if (empty($url) && !preg_match('/_(task|action)=logout/', $_SERVER['QUERY_STRING'])) $url = $_SERVER['QUERY_STRING']; - $input_user = new html_inputfield(array('name' => '_user', 'id' => 'rcmloginuser', 'size' => 30) + $attrib); - $input_pass = new html_passwordfield(array('name' => '_pass', 'id' => 'rcmloginpwd', 'size' => 30) + $attrib); + $input_user = new html_inputfield(array('name' => '_user', 'id' => 'rcmloginuser') + $attrib); + $input_pass = new html_passwordfield(array('name' => '_pass', 'id' => 'rcmloginpwd') + $attrib); $input_action = new html_hiddenfield(array('name' => '_action', 'value' => 'login')); $input_tzone = new html_hiddenfield(array('name' => '_timezone', 'id' => 'rcmlogintz', 'value' => '_default_')); $input_url = new html_hiddenfield(array('name' => '_url', 'id' => 'rcmloginurl', 'value' => $url)); @@ -1026,7 +1037,7 @@ } } else if (empty($default_host)) { - $input_host = new html_inputfield(array('name' => '_host', 'id' => 'rcmloginhost', 'size' => 30)); + $input_host = new html_inputfield(array('name' => '_host', 'id' => 'rcmloginhost') + $attrib); } $form_name = !empty($attrib['form']) ? $attrib['form'] : 'form'; -- Gitblit v1.9.1