X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=program%2Finclude%2Frcube_json_output.php;fp=program%2Finclude%2Frcube_json_output.php;h=00b7697bd687b1e39e70ae769bc4dc02cb3780dd;hb=3adad46e27086084a8b28a32fc4fbc953dbfef6c;hp=a633f8555e2eebe595f8ff7824f9367b740801a5;hpb=48e8459231a1efa3e97284d07a328776a5b7485b;p=roundcube.git diff --git a/program/include/rcube_json_output.php b/program/include/rcube_json_output.php index a633f85..00b7697 100644 --- a/program/include/rcube_json_output.php +++ b/program/include/rcube_json_output.php @@ -34,7 +34,7 @@ class rcube_json_output private $texts = array(); private $commands = array(); - public $task = ''; + public $type = 'js'; public $ajax_call = true; @@ -43,7 +43,6 @@ class rcube_json_output */ public function __construct($task) { - $this->task = $task; $this->config = rcmail::get_instance()->config; } @@ -60,12 +59,14 @@ class rcube_json_output } /** - * @ignore + * Issue command to set page title + * + * @param string New page title */ public function set_pagetitle($title) { - $name = $this->config->get('product_name'); - $this->command('set_pagetitle', JQ(empty($name) ? $title : $name.' :: '.$title)); + $name = $this->config->get('product_name'); + $this->command('set_pagetitle', JQ(empty($name) ? $title : $name.' :: '.$title)); } /** @@ -156,13 +157,26 @@ class rcube_json_output /** * Delete all stored env variables and commands */ - public public function reset() + public function reset() { $this->env = array(); $this->texts = array(); $this->commands = array(); } + /** + * Redirect to a certain url + * + * @param mixed Either a string with the action or url parameters as key-value pairs + * @see rcmail::url() + */ + public function redirect($p = array(), $delay = 1) + { + $location = rcmail::get_instance()->url($p); + $this->remote_response("window.setTimeout(\"location.href='{$location}'\", $delay);"); + exit; + } + /** * Send an AJAX response to the client.