summaryrefslogtreecommitdiffstats
path: root/lib/private/template/cssresourcelocator.php
diff options
context:
space:
mode:
authorBart Visscher <bartv@thisnet.nl>2013-10-02 07:42:06 +0200
committerBart Visscher <bartv@thisnet.nl>2013-10-02 07:42:06 +0200
commit46b5202f4a4d9addf44c9ceae885d893e7dc0aa1 (patch)
tree449740ac038633f39238fa2dce0e86d0e98ca9d6 /lib/private/template/cssresourcelocator.php
parent6619d8273aa264d39c34a13ecafe720fc2356f90 (diff)
parent5ade595911261cf47cdad17deb4d1a013f523245 (diff)
downloadnextcloud-server-46b5202f4a4d9addf44c9ceae885d893e7dc0aa1.tar.gz
nextcloud-server-46b5202f4a4d9addf44c9ceae885d893e7dc0aa1.zip
Merge branch 'master' into convert-oc_appconfig
Diffstat (limited to 'lib/private/template/cssresourcelocator.php')
-rw-r--r--lib/private/template/cssresourcelocator.php43
1 files changed, 43 insertions, 0 deletions
diff --git a/lib/private/template/cssresourcelocator.php b/lib/private/template/cssresourcelocator.php
new file mode 100644
index 00000000000..8e7831ca549
--- /dev/null
+++ b/lib/private/template/cssresourcelocator.php
@@ -0,0 +1,43 @@
+<?php
+/**
+ * Copyright (c) 2013 Bart Visscher <bartv@thisnet.nl>
+ * This file is licensed under the Affero General Public License version 3 or
+ * later.
+ * See the COPYING-README file.
+ */
+
+namespace OC\Template;
+
+class CSSResourceLocator extends ResourceLocator {
+ public function doFind( $style ) {
+ if (strpos($style, '3rdparty') === 0
+ && $this->appendIfExist($this->thirdpartyroot, $style.'.css')
+ || $this->appendIfExist($this->serverroot, $style.$this->form_factor.'.css')
+ || $this->appendIfExist($this->serverroot, $style.'.css')
+ || $this->appendIfExist($this->serverroot, 'core/'.$style.$this->form_factor.'.css')
+ || $this->appendIfExist($this->serverroot, 'core/'.$style.'.css')
+ ) {
+ return;
+ }
+ $app = substr($style, 0, strpos($style, '/'));
+ $style = substr($style, strpos($style, '/')+1);
+ $app_path = \OC_App::getAppPath($app);
+ $app_url = $this->webroot . '/index.php/apps/' . $app;
+ if ($this->appendIfExist($app_path, $style.$this->form_factor.'.css', $app_url)
+ || $this->appendIfExist($app_path, $style.'.css', $app_url)
+ ) {
+ return;
+ }
+ throw new \Exception('css file not found: style:'.$style);
+ }
+
+ public function doFindTheme( $style ) {
+ $theme_dir = 'themes/'.$this->theme.'/';
+ $this->appendIfExist($this->serverroot, $theme_dir.'apps/'.$style.$this->form_factor.'.css')
+ || $this->appendIfExist($this->serverroot, $theme_dir.'apps/'.$style.'.css')
+ || $this->appendIfExist($this->serverroot, $theme_dir.$style.$this->form_factor.'.css')
+ || $this->appendIfExist($this->serverroot, $theme_dir.$style.'.css')
+ || $this->appendIfExist($this->serverroot, $theme_dir.'core/'.$style.$this->form_factor.'.css')
+ || $this->appendIfExist($this->serverroot, $theme_dir.'core/'.$style.'.css');
+ }
+}