Commit graph

160 commits

Author SHA1 Message Date
Joas Schilling
615a8e60ba
App summary is optional
Fixing:
Error: Undefined index: summary at /var/www/html/apps/theming/lib/Controller/ThemingController.php#392

Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-11-19 14:02:03 +01:00
Carl Schwan
719dbafd13
Add support for Delegation Settings for more apps
* This adds support for the sharing, groupware, theming and user_ldap
  app
* This adds some code who disapeared during a rebase in the initial
  delegation PR (provisioning_api)

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-10-15 18:41:00 +02:00
Joas Schilling
37f40cdd46
Fix translated app details
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-09-30 09:08:17 +02:00
szaimen
0758e0258d improve webmanifest
Signed-off-by: szaimen <szaimen@e.mail.de>
2021-08-24 11:42:04 +02:00
John Molakvoæ (skjnldsv)
215aef3cbd
Update php licenses
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-06-04 22:02:41 +02:00
Christoph Wurst
d89a75be0b
Update all license headers for Nextcloud 21
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-16 18:48:22 +01:00
nhirokinet
3a05334f18 manifest to report correct favicon size
In the environment where php-imagick with SVG support is correctly installed, this endpoint returns 512x512 image.
d9015a8c94/apps/theming/lib/Controller/IconController.php (L146)

The problem is in the environment without php-imagick or without SVG support, this will fall back to original, whose default is 128x128; but I thought this is a separate problem. (For this, default image may be enlarged. Should I create another issue if this is important one?)

Signed-off-by: nhirokinet <nhirokinet@nhiroki.net>
2020-10-16 15:36:56 +00:00
Christoph Wurst
d9015a8c94
Format code to a single space around binary operators
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-05 20:25:24 +02:00
Julius Härtl
aa95b3d71b
Add occ command to set theming values
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-09-24 08:22:07 +02:00
Roeland Jago Douma
3f1b6e2ce9
Move theming js to initial state
A bit more elegant. Plus it will allow us to also write a proper
@nextcloud/theming package. To make life easier down the line for all.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-06-05 11:01:49 +02:00
Christoph Wurst
cb057829f7
Update license headers for 19
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-29 11:57:22 +02:00
Christoph Wurst
caff1023ea
Format control structures, classes, methods and function
To continue this formatting madness, here's a tiny patch that adds
unified formatting for control structures like if and loops as well as
classes, their methods and anonymous functions. This basically forces
the constructs to start on the same line. This is not exactly what PSR2
wants, but I think we can have a few exceptions with "our" style. The
starting of braces on the same line is pracrically standard for our
code.

This also removes and empty lines from method/function bodies at the
beginning and end.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 14:19:56 +02:00
Christoph Wurst
1a9330cd69
Update the license headers for Nextcloud 19
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-31 14:52:54 +02:00
Christoph Wurst
74936c49ea
Remove unused imports
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-25 22:08:08 +01:00
Daniel Kesselberg
e35b76a12b
Don't try to resize a svg uploaded as background image.
image* are gd functions without support for svg hence we are not able to resize svg.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-03-01 21:19:07 +01:00
Christoph Wurst
5bf3d1bb38
Update license headers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-12-05 15:38:45 +01:00
Julius Härtl
9691360f6e
Allow inline styles for theming images
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-11-27 20:26:57 +01:00
Roeland Jago Douma
68748d4f85
Some php-cs fixes
* Order the imports
* No leading slash on imports
* Empty line before namespace
* One line per import
* Empty after imports
* Emmpty line at bottom of file

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-22 20:52:10 +01:00
Julius Härtl
47a0254bb3
Validate urls in theming settings and properly handle error messages
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-07-31 10:20:57 +02:00
Thomas Citharel
d63de5471b Don't require Same Site Cookies on assets
Which can be used for public iframe embeeding

See https://github.com/nextcloud/calendar/issues/169

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-10-17 09:24:21 +02:00
Michael Weimann
38ea5d14b3
Disables SVG favicon uploads when imagemagick is missing.
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2018-09-05 20:50:21 +02:00
Julius Härtl
80efb51a1a
[theming] reload css variables instead of the whole server css
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-06-20 19:20:51 +02:00
Morris Jobke
8f6acbff62
Merge pull request #9258 from nextcloud/theming-logo-png
Convert theming app logo to PNG to show it properly in emails
2018-06-15 17:02:14 +02:00
Roeland Jago Douma
e4db293cc1
Fix possible test timing issues in IconController
Since the response now handles the caching. We need to provide a default
ITimeFactory mock. Else you might have failing tests.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-06-13 22:54:08 +02:00
Roeland Jago Douma
f65a6e782c
Mock the timefactory in the theming tests
Now that the cache logic is moved to the theming controller we must
properly overwrite this service. Else it could do 💥 in tests.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-06-07 11:42:21 +02:00
Julius Härtl
5b0ce806a3
Minor fixes and cleanup
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-06-06 13:15:52 +02:00
Julius Härtl
d132527aa9
Use svg opt out as parameter
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-06-05 16:47:38 +02:00
Julius Härtl
4a5826cddb
Generate PNG version of the theming app logo for mails
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-06-05 16:47:38 +02:00
Roeland Jago Douma
e5cc8be9d5
Fix usage
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-06-04 08:48:54 +02:00
Arthur Schiwon
16c061818e
also add a privacy link
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-05-24 23:32:07 +02:00
Roeland Jago Douma
9236c20a28
Merge pull request #9437 from nextcloud/feature/noid/imprint
allow to specify a link to a legal notice
2018-05-17 21:16:03 +02:00
Julius Härtl
5b3ca8f7c6
Add Content-Disposition header
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-05-17 12:21:57 +02:00
Julius Härtl
2bf51c7b9e
Properly check mime type of the uploaded file
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-05-17 11:46:01 +02:00
Arthur Schiwon
62f1156a56
allow to specify a link to a legal notice
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-05-09 15:52:41 +02:00
Julius Härtl
b385f1c7d5
Fix theming tests
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-04-19 20:14:40 +02:00
Julius Härtl
39f44e1452
Add typehints
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-04-19 20:14:40 +02:00
Julius Härtl
272b392cac
Move to more generic image handling and add extra images
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-04-19 20:14:38 +02:00
rakekniven
d88db9b496
Update ThemingController.php
Changed file according to discussion on PR.
2018-03-19 15:00:27 +01:00
rakekniven
b2ceb29484
Update ThemingController.php
Changed wording according to discussion at Transifex. See https://www.transifex.com/nextcloud/nextcloud/translate/#de/$/121491259?issue=yes
Aligned ending of error messages
2018-03-16 18:45:20 +01:00
rakekniven
4fc4e6dcaa
Update ThemingController.php
Improved translation string.
Reported at Transifex. See https://www.transifex.com/nextcloud/nextcloud/translate/#de/$/121491256?issue=yes
2018-03-10 12:57:05 +01:00
Kyle Fazzari
8dcbea124e
Remove null check
Signed-off-by: Kyle Fazzari <kyrofa@ubuntu.com>
2018-02-25 07:08:59 -08:00
Kyle Fazzari
a1f1824116
theming: handle not being in the serverroot
Currently, the theming app assumes it's in the serverroot. However, with
Nextcloud's flexibility regarding configurable app paths, this is not a
safe assumption to make. If it happens to be an incorrect assumption,
the theming app fails to work.

Instead of relying on the serverroot, just use the path from the
AppManager and utilize relative paths for assets from there.

Fix #8462

Signed-off-by: Kyle Fazzari <kyrofa@ubuntu.com>
2018-02-20 22:45:10 -08:00
Morris Jobke
d3d045dd5c
Remove unused import statements
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-02-14 16:55:43 +01:00
Julius Härtl
422e20569b
Theming: adjust background image resizing
Support high resolution login images by resizing only images that are wider than 4096px

fixes #7459

Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-01-19 13:34:43 +01:00
Julius Härtl
3379290a73
Fix SCSS processing when undoing theming values
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-01-09 14:18:03 +01:00
Julius Härtl
24233162a0
Fix faulty path in theming scss generation
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-01-05 09:43:09 +01:00
Morris Jobke
0eebff152a
Update license headers
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-11-06 16:56:19 +01:00
Julius Härtl
f15e85c4f5
Theming: Add tests for mimetype and upload error checks
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2017-10-03 15:34:44 +02:00
Julius Härtl
c0d104087b
Theming: Check valid image format also for logo
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2017-10-03 15:32:50 +02:00
Julius Härtl
c337c8fa45
Theming: Handle errors on uploaded files properly
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2017-10-03 15:32:50 +02:00
Julius Härtl
770aae42f6
Add themed manifest.json to theming app
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2017-09-12 09:23:12 +02:00
Daniel Calviño Sánchez
db52e861dd Provide "server.css" URL in ThemingController response
Pull request #5429 made cached SCSS files depend on a hash of the base
URL, so the "/css/core/server.css" file does no longer exist. The
"server.css" URL must be known by the Theming app in order to update the
stylesheets when previewing the changes to the theme, so the
DataResponse from the controller now provides the full URL to the
"server.css" file that has to be reloaded (if any).

The "server.css" URL provided by the response will be taken into account
by the JavaScript front-end in a following commit.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-08-10 12:37:57 +02:00
Julius Härtl
489131333a
Inject FileAccessHelper for proper testing
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2017-05-18 10:45:42 +02:00
Julius Härtl
edb5502b9d
Add proper Content-Type to icons
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2017-05-17 10:11:29 +02:00
Julius Härtl
1157f413c9
Fallback to default favicon
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2017-05-17 10:11:29 +02:00
Julius Härtl
510f7cf1b6
Fix tests for theming backgroundColor
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2017-05-08 10:16:30 +02:00
Julius Haertl
4199a56912
Theming app: Add plain background color option
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2017-05-08 10:16:29 +02:00
Julius Härtl
7c69c117e2
Delete theming images when logo/background is reset to default
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2017-04-30 11:04:55 -03:00
Julius Härtl
6e215a0874
Code cleanup and preview for undo actions
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2017-04-29 00:40:15 -03:00
Julius Härtl
6b8341ce4b
Use generated SCSS for theming preview
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2017-04-29 00:40:15 -03:00
Julius Haertl
68a63ad3f3
Implement scss variable injection by OC_Defaults
Signed-off-by: Julius Haertl <jus@bitgrid.net>

Add Scss variables to example theme and theming app

Signed-off-by: Julius Haertl <jus@bitgrid.net>

Use SCSSCacher to build theming css

Signed-off-by: Julius Härtl <jus@bitgrid.net>

Update theming.scss

Signed-off-by: Julius Härtl <jus@bitgrid.net>

Code cleanup

Signed-off-by: Julius Härtl <jus@bitgrid.net>

Fix tests

Signed-off-by: Julius Härtl <jus@bitgrid.net>

Inject SCSSCacher for easier testing

Signed-off-by: Julius Härtl <jus@bitgrid.net>

Fix typehint

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>

Generate absolute URLs

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>

Fix tests to always use absolute urls for theming images

Signed-off-by: Julius Härtl <jus@bitgrid.net>

MailheaderColor -> ColorPrimary

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-04-25 11:39:45 +02:00
Joas Schilling
8c703c954d
Fix theming tests
Trying to configure method "shouldReplaceIcons" which cannot be configured
because it does not exist, has not been specified, is final, or is static

Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-04-20 13:10:34 +02:00
Morris Jobke
5b4adf66e5
Move OC_Defaults to OCP\Defaults
* 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>
2017-04-09 21:43:01 -05:00
Jan-Christoph Borchardt
9a75714c22
rename confusing getMailHeaderColor to getColorPrimary, ref #3491
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2017-03-29 18:23:23 +02:00
Julius Haertl
b2cbe3530d
Use ::class in tests and correct import
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2017-02-16 15:13:39 +01:00
Julius Haertl
6a9d5d60dc
Move theming images to AppData
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2017-02-16 15:13:38 +01:00
Morris Jobke
8565011b8d Merge pull request #3144 from nextcloud/use-data-download-response
Use DataDownloadResponse
2017-01-19 15:36:31 -06:00
Morris Jobke
3798f842c0
theme app navigation menu highlight color
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-01-18 21:42:50 -06:00
Lukas Reschke
be3ec7ffb7
Use DataDownloadResponse
1. As documented
2. No need to show this inline, downloading has security advantages

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-01-18 17:00:09 +01:00
Julius Haertl
5fbadee95f
Check if image files for theming are empty
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-12-09 12:54:03 +01:00
Julius Haertl
6c4664bc82
Workaround for PHP bug when calling imagescale
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-22 12:12:59 +01:00
Morris Jobke
faee255ff4 Merge pull request #840 from nextcloud/theming-icon-endpoint
Add dynamic icon creation
2016-11-18 15:35:34 +01:00
Robin Appelman
8b9ad46ba3 Merge pull request #768 from nextcloud/s3-objectstore
Add S3 objectstore backend
2016-11-18 14:55:07 +01:00
Julius Haertl
d409fe1c52
Error handling and tests if file was not found
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:25 +01:00
Julius Haertl
78de213b85
Sanitize input and small fixes
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:25 +01:00
Julius Haertl
3a400f92d1
Replace null return with NotFoundException
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:25 +01:00
Julius Haertl
cc8b1d3829
Fix icon-folder css
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:24 +01:00
Julius Haertl
2e8dd21815
Improve caching
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:24 +01:00
Julius Haertl
492d0b9f9b
Caching for icon files using AppData
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:24 +01:00
Julius Haertl
9e28a3ba12
Theming: Code cleanup and cache buster for mime icons
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:24 +01:00
Julius Haertl
237034818d
Check if dynamic icons can be used
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:24 +01:00
Julius Haertl
af8976ab03
Add IconBuilder class to encapsulate icon generation
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:24 +01:00
Julius Haertl
b466628bfd
Improve unit tests for image generation
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:23 +01:00
Julius Haertl
ac7f852ed9
Theming: Add IconController tests
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:23 +01:00
Julius Haertl
4945592a86
Fix IconController after rebase
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:23 +01:00
Julius Haertl
6c7ebb1204
Theming: Add icon caching
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:23 +01:00
Julius Haertl
d1fcfe8e7d
Theming: Add colorized icon css from icons.css
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:23 +01:00
Julius Haertl
c7adcb85ae
Theming: Fix default parameters in icon routes
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:23 +01:00
Julius Haertl
64510bd87a
Theming: Add PHPdoc and icon fallback to theming logo
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:22 +01:00
Julius Haertl
2d65b8c600
Theming: Add favicon-touch and fix icon creation with non svg images
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:22 +01:00
Julius Haertl
b3eab7db01
Theming: Add dynamic icon and favicon endpoints
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-18 10:23:22 +01:00
Robin Appelman
eb21dc2bd3
fix theming images when using primary storage
Signed-off-by: Robin Appelman <robin@icewind.nl>
2016-11-16 15:30:36 +01:00
Julius Haertl
520f2f6221
Revert "Fix #1782"
This reverts commit bc5268bdc8.

Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-16 13:52:51 +01:00
John Molakvoæ
bc5268bdc8
Fix #1782
Fix checkbox left margin glitch
Fix tests
fix unit tests

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-11-02 15:07:24 +01:00
Jan-Christoph Borchardt
cbd9fb3c5c also fix log in button confirm arrow when theming, fix #1615
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2016-10-25 14:24:24 +02:00
Jan-Christoph Borchardt
551cffd1b8 remove slight transparency of primary action button, ref #1615
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2016-10-25 13:16:13 +02:00
Julius Haertl
d43c9b9e79
Theming: fix primary button for bright colors 2016-08-29 19:07:27 +02:00
Lukas Reschke
683f0e7f77
Use temporary file as cache 2016-08-27 21:38:41 +02:00
Lukas Reschke
73bc108451
Increase theming performance
1. Set proper caching headers (`Pragma: cache`)
2. Resize image proportionally to a max size of 1920px
3. Store images with progressive mode

This resizes a previous 2.8 MB picture to 300kb and makes it rendering going down from 11 seconds to less than 1 here. And future requests won't have to download the file newly.
2016-08-27 21:02:08 +02:00
Julius Haertl
218e2f7850
Theming: Adjust jquery ui elements 2016-08-26 12:07:52 +02:00