plugins/kolab_files
Aleksander Machniak
machniak at kolabsys.com
Tue Aug 19 18:42:32 CEST 2014
plugins/kolab_files/lib/kolab_files_engine.php | 28 ++++++++++++++++++++++++-
1 file changed, 27 insertions(+), 1 deletion(-)
New commits:
commit 96205f1347190f99a8cbdde7ebc3749418b9d990
Author: Aleksander Machniak <machniak at kolabsys.com>
Date: Mon Aug 18 14:36:53 2014 -0400
Support relative URL as Chwala destination (#2436)
diff --git a/plugins/kolab_files/lib/kolab_files_engine.php b/plugins/kolab_files/lib/kolab_files_engine.php
index 425f3be..6e81e1a 100644
--- a/plugins/kolab_files/lib/kolab_files_engine.php
+++ b/plugins/kolab_files/lib/kolab_files_engine.php
@@ -34,7 +34,7 @@ class kolab_files_engine
*/
public function __construct($plugin, $url)
{
- $this->url = $url;
+ $this->url = $this->resolve_url($url);
$this->plugin = $plugin;
$this->rc = $plugin->rc;
}
@@ -1017,4 +1017,30 @@ class kolab_files_engine
return $mimetypes;
}
+
+ /**
+ * Resolve relative URL
+ */
+ protected function resolve_url($url)
+ {
+ // prepend protocol://hostname:port
+ if (!preg_match('|^https?://|', $url)) {
+ $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'];
+ }
+
+ $url = $prefix . ($url[0] == '/' ? '' : '/') . $url;
+ }
+
+ return $url;
+ }
}
More information about the commits
mailing list