| | |
| | | $_SESSION['task'] = $this->task; |
| | | } |
| | | |
| | | // init output class |
| | | if (!empty($_REQUEST['_remote'])) |
| | | // init output class (not in CLI mode) |
| | | if (!empty($_REQUEST['_remote'])) { |
| | | $GLOBALS['OUTPUT'] = $this->json_init(); |
| | | else |
| | | } |
| | | else if ($_SERVER['REMOTE_ADDR']) { |
| | | $GLOBALS['OUTPUT'] = $this->load_gui(!empty($_REQUEST['_framed'])); |
| | | } |
| | | |
| | | // load plugins |
| | | $this->plugins->init($this, $this->task); |
| | |
| | | setlocale(LC_ALL, $lang . '.utf8', $lang . '.UTF-8', 'en_US.utf8', 'en_US.UTF-8'); |
| | | |
| | | // workaround for http://bugs.php.net/bug.php?id=18556 |
| | | if (version_compare(PHP_VERSION, '5.5.0', '<') && in_array($lang, array('tr_TR', 'ku', 'az_AZ'))) { |
| | | if (PHP_VERSION_ID < 50500 && in_array($lang, array('tr_TR', 'ku', 'az_AZ'))) { |
| | | setlocale(LC_CTYPE, 'en_US.utf8', 'en_US.UTF-8'); |
| | | } |
| | | } |
| | |
| | | } |
| | | |
| | | if ($absolute || $full) { |
| | | $prefix = ''; |
| | | |
| | | // prepend protocol://hostname:port |
| | | if ($full) { |
| | | $schema = 'http'; |
| | | $default_port = 80; |
| | | if (rcube_utils::https_check()) { |
| | | $schema = 'https'; |
| | | $default_port = 443; |
| | | } |
| | | $prefix = $schema . '://' . preg_replace('/:\d+$/', '', $_SERVER['HTTP_HOST']); |
| | | if ($_SERVER['SERVER_PORT'] != $default_port) { |
| | | $prefix .= ':' . $_SERVER['SERVER_PORT']; |
| | | } |
| | | } |
| | | |
| | | // add base path to this Roundcube installation |
| | | $base_path = preg_replace('![^/]+$!', '', strval($_SERVER['SCRIPT_NAME'])); |
| | | if ($base_path == '') $base_path = '/'; |
| | | $prefix .= $base_path; |
| | | $prefix = $base_path; |
| | | |
| | | // prepend protocol://hostname:port |
| | | if ($full) { |
| | | $prefix = rcube_utils::resolve_url($prefix); |
| | | } |
| | | |
| | | $prefix = rtrim($prefix, '/') . '/'; |
| | | } |
| | | else { |
| | | $prefix = './'; |