diff options
author | thomascube <thomas@roundcube.net> | 2011-04-15 16:07:01 +0000 |
---|---|---|
committer | thomascube <thomas@roundcube.net> | 2011-04-15 16:07:01 +0000 |
commit | ef27a6a72375c92850c4ed17fa7476c6fb188d37 (patch) | |
tree | 7c8b30d8146c62d0b1f2c5b0cf69b268d3e89c11 /program | |
parent | d1e08fc9058188f4a6f2580d304592e2c92aae85 (diff) |
Add hook for request token creation (upon user request)
Diffstat (limited to 'program')
-rw-r--r-- | program/include/rcmail.php | 3 | ||||
-rwxr-xr-x | program/include/rcube_template.php | 4 |
2 files changed, 5 insertions, 2 deletions
diff --git a/program/include/rcmail.php b/program/include/rcmail.php index d1e86c6ca..17b82198c 100644 --- a/program/include/rcmail.php +++ b/program/include/rcmail.php @@ -1108,7 +1108,8 @@ class rcmail { $sess_id = $_COOKIE[ini_get('session.name')]; if (!$sess_id) $sess_id = session_id(); - return md5('RT' . $this->task . $this->config->get('des_key') . $sess_id); + $plugin = $this->plugins->exec_hook('request_token', array('value' => md5('RT' . $this->task . $this->config->get('des_key') . $sess_id))); + return $plugin['value']; } diff --git a/program/include/rcube_template.php b/program/include/rcube_template.php index f66b2904d..0a64d1cb1 100755 --- a/program/include/rcube_template.php +++ b/program/include/rcube_template.php @@ -69,7 +69,6 @@ class rcube_template extends rcube_html_page //$this->framed = $framed; $this->set_env('task', $task); - $this->set_env('request_token', $this->app->get_request_token()); // load the correct skin (in case user-defined) $this->set_skin($this->config['skin']); @@ -342,6 +341,9 @@ class rcube_template extends rcube_html_page else if ($unlock) { array_unshift($this->js_commands, array('hide_message', $unlock)); } + + $this->set_env('request_token', $this->app->get_request_token()); + // write all env variables to client $js = $this->framed ? "if(window.parent) {\n" : ''; $js .= $this->get_js_commands() . ($this->framed ? ' }' : ''); |