- With root installation
- Core css
- App inside server root
- Secondary apps directory outside server root
- With an installation in a sub directory
- Core css
- App inside server root
- Secondary apps directory outside server root
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Currently static CSS files work fine in apps outside of the root.
However, as soon as an app uses SCSS, Nextcloud starts being unable to
find the web root.
Fix this problem by backporting select snippets from master
specifically targeting this issue, and add a test to ensure it doesn't
regress.
Fix#5289
Signed-off-by: Kyle Fazzari <kyrofa@ubuntu.com>
Currently, if the app path includes a symlink, the calculated webDir
will be incorrect when generating CSS and URLs will be pointing to the
wrong place, breaking CSS.
Use realpath when retrieving app path, and these issues go away.
Fix#6028
Signed-off-by: Kyle Fazzari <kyrofa@ubuntu.com>
Else when an upgrade happens we will recompile all the SCSS files all
the time (until the cache expires).
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Fixes#4886
Caching on first read leads to the bug that if the files are updated we
will never cache again. Since we will always fetch from the memcache
(which works) and then see that the files are newer.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
* currently there are two ways to access default values:
OCP\Defaults or OC_Defaults (which is extended by
OCA\Theming\ThemingDefaults)
* our code used a mixture of both of them, which made
it hard to work on theme values
* this extended the public interface with the missing
methods and uses them everywhere to only rely on the
public interface
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
works like "enforce password protection", but let the
user optionally remove the password protection after the
password is set. by Timo Benk
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
* fixes following log output, because there was empty string
stored in the cache
Invalid argument supplied for foreach() at lib/private/Template/JSCombiner.php#108
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
Since in production the SCSS files are compiled once and the javascript
files are combined once we can just as well gzip them aggresively.
This means that once they are requested and the browser supports gzip we
can just serve the gzipped file saving precious bandwidth.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
When the instance is not installed don't run the JSCombiner as the appdata folder does not yet exist.
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
Since reading a file from disks can be costly. Lets store the dependency
json also in memcache.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
test files against ignore_files list on upload
fix typo and indentation
Move blacklist declaration to lib/public/Files/FileInfo.php,
Rename *ignored to *blacklisted
Mocked blacklist_files for testing
Mocked blacklist_files for testing
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
This allows us to combine multiple sass files that we have to always
load together anyway.
Fixes#3389
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
* shows a info when list is potentially truncated
* shows a warning when characters length is not enough
Signed-off-by: Morris Jobke <hey@morrisjobke.de>