]> BookStack Code Mirror - bookstack/log
bookstack
3 years agoApplied StyleCI changes, updated readme badges & roadmap
Dan Brown [Sun, 13 Feb 2022 13:16:43 +0000 (13:16 +0000)]
Applied StyleCI changes, updated readme badges & roadmap

3 years agoUpdated github actions to ignore language branch
Dan Brown [Sun, 13 Feb 2022 13:03:41 +0000 (13:03 +0000)]
Updated github actions to ignore language branch

Old branch filters did not seem to work since they are supposed to
reference the target branch, not source branch.
Instead used if statement to prevent run on crowdin branch.

3 years agoMade a pass to clean up UserRepo
Dan Brown [Sun, 13 Feb 2022 12:56:26 +0000 (12:56 +0000)]
Made a pass to clean up UserRepo

3 years agoMerge pull request #3260 from BookStackApp/wysiwyg_details
Dan Brown [Wed, 9 Feb 2022 19:33:53 +0000 (19:33 +0000)]
Merge pull request #3260 from BookStackApp/wysiwyg_details

WYSIWYG details/summary blocks

3 years agoRevamped workings of WYSIWYG code blocks 3260/head
Dan Brown [Wed, 9 Feb 2022 19:24:27 +0000 (19:24 +0000)]
Revamped workings of WYSIWYG code blocks

Code blocks in tinymce could sometimes end up exploded into the sub
elements of the codemirror display.
This changes the strategy to render codemirror within the shadow dom of
a custom element while preserving the normal pre/code DOM structure.

Still a little instability when moving/adding code blocks within details
blocks but much harder to break things now.

3 years agoUpdated PDF export to open detail blocks
Dan Brown [Wed, 9 Feb 2022 11:33:23 +0000 (11:33 +0000)]
Updated PDF export to open detail blocks

3 years agoWYSIWYG details: Improved usage reliability and dark mdoe styles
Dan Brown [Wed, 9 Feb 2022 11:25:22 +0000 (11:25 +0000)]
WYSIWYG details: Improved usage reliability and dark mdoe styles

3 years agoImproved wysiwyg details/summary edit controls
Dan Brown [Wed, 9 Feb 2022 10:40:46 +0000 (10:40 +0000)]
Improved wysiwyg details/summary edit controls

- Added specific non-editable/editable filtering to make editing within
  box more reliable.
- Updated toolbar icons and controls.

3 years agoStarted support for WYSIWYG details/summary blocks
Dan Brown [Tue, 8 Feb 2022 23:08:00 +0000 (23:08 +0000)]
Started support for WYSIWYG details/summary blocks

3 years agoChanged editor bottom padding technique
Dan Brown [Tue, 8 Feb 2022 17:05:38 +0000 (17:05 +0000)]
Changed editor bottom padding technique

- Ensures padding works across FF & Chrome, was only working on FF
  before.
- Fixes sketchy editor positioning focus on FF, since tinyMCE would
  add a hidden element to the bottom of the body which would remove/add
  our body padding causing unstable positioning.

3 years agoMerged in editor translation strings
Dan Brown [Tue, 8 Feb 2022 15:57:19 +0000 (15:57 +0000)]
Merged in editor translation strings

3 years agoUpdated with latest styleci changes
Dan Brown [Tue, 8 Feb 2022 15:29:58 +0000 (15:29 +0000)]
Updated with latest styleci changes

3 years agoMerge branch 'tinymce' into development
Dan Brown [Tue, 8 Feb 2022 15:28:56 +0000 (15:28 +0000)]
Merge branch 'tinymce' into development

3 years agoMerge crowdin changes from users API changes
Dan Brown [Tue, 8 Feb 2022 15:14:18 +0000 (15:14 +0000)]
Merge crowdin changes from users API changes

3 years agoMerge pull request #3238 from BookStackApp/users_api
Dan Brown [Tue, 8 Feb 2022 13:32:45 +0000 (13:32 +0000)]
Merge pull request #3238 from BookStackApp/users_api

User Management API

3 years agoMerge pull request #3245 from BookStackApp/php7.4
Dan Brown [Tue, 8 Feb 2022 13:31:15 +0000 (13:31 +0000)]
Merge pull request #3245 from BookStackApp/php7.4

Updated minimum php version from 7.3 to 7.4

3 years agoNew Crowdin updates (#3251)
Dan Brown [Tue, 8 Feb 2022 13:29:16 +0000 (13:29 +0000)]
New Crowdin updates (#3251)

* New translations activities.php (Hebrew)

* New translations auth.php (Hebrew)

* New translations common.php (Hebrew)

* New translations activities.php (Hebrew)

* New translations common.php (Hebrew)

* New translations entities.php (Hebrew)

* New translations errors.php (Hebrew)

* New translations validation.php (Spanish)

3 years agoUpdate Korean translation (#3256)
ististyle [Tue, 8 Feb 2022 13:29:01 +0000 (22:29 +0900)]
Update Korean translation (#3256)

* Update validation.php

* Update activities.php

* Update passwords.php

* Update common.php

* Update common.php

* Update auth.php

* Update components.php

* Add files via upload

* Update errors.php

* Update entities.php

* Update entities.php

* Update entities.php

* Update auth.php

* Update activities.php

* Update components.php

* Update components.php

* Update entities.php

* Update components.php

* Update entities.php

* Update errors.php

* Update settings.php

* Update settings.php

* Add files via upload

* Update errors.php

3 years agoSplit out codemirror JS to its own module 3247/head
Dan Brown [Tue, 8 Feb 2022 11:10:01 +0000 (11:10 +0000)]
Split out codemirror JS to its own module

Added a cache-compatible module loading system/pattern to the codebase.

3 years agoUpdated wysiwyg with dark mode patches
Dan Brown [Tue, 8 Feb 2022 10:09:17 +0000 (10:09 +0000)]
Updated wysiwyg with dark mode patches

- To better fit in with default BookStack dark theme.

3 years agoRemoved unused scroll patch after testing
Dan Brown [Tue, 8 Feb 2022 09:42:18 +0000 (09:42 +0000)]
Removed unused scroll patch after testing

- Tested on android and ios
- Also checked on translations and removed todo.

3 years agoAligned some editor events, Changed wysiwyg custom styles loading
Dan Brown [Tue, 8 Feb 2022 01:01:37 +0000 (01:01 +0000)]
Aligned some editor events, Changed wysiwyg custom styles loading

- Removed old 'editor-*-update' commands to instead use the aligned
  'editor::replace' command that we already have.
- Changed the way custom styles are loaded for the WYSIWYG editor so we
  don't need an API call but instead scape content from the parent page
  header using comments as identifiers. Added tests to ensure comments
  exist and align.

3 years agoMerged color and formats wysiwyg groups
Dan Brown [Tue, 8 Feb 2022 00:20:36 +0000 (00:20 +0000)]
Merged color and formats wysiwyg groups

3 years agoAdded license references to readme attribution
Dan Brown [Tue, 8 Feb 2022 00:18:29 +0000 (00:18 +0000)]
Added license references to readme attribution

3 years agoSimplified wysiwyg toolbar with a overflow groups
Dan Brown [Mon, 7 Feb 2022 23:56:39 +0000 (23:56 +0000)]
Simplified wysiwyg toolbar with a overflow groups

3 years agoAdded help/about box to wysiwyg editor
Dan Brown [Mon, 7 Feb 2022 23:19:04 +0000 (23:19 +0000)]
Added help/about box to wysiwyg editor

- To display license info along with shortcuts.
- Extracted out plain layout from 503 error page.
- Added tests to ensure license references are as expected.

3 years agoMade WYSIWYG editor translatable
Dan Brown [Sun, 6 Feb 2022 21:17:08 +0000 (21:17 +0000)]
Made WYSIWYG editor translatable

- Created new translation file for editor view.
- Added simple logic to format for tinymce.
- Aligned some of the custom labels we were using.

3 years agoNew Crowdin updates (#3225)
Dan Brown [Sun, 6 Feb 2022 15:46:28 +0000 (15:46 +0000)]
New Crowdin updates (#3225)

3 years agoMerge branch 'fix-code-block-linefeed' into development
Dan Brown [Sun, 6 Feb 2022 15:19:52 +0000 (15:19 +0000)]
Merge branch 'fix-code-block-linefeed' into development

3 years agoWYSIWG: Improved handling of cross-block code block creation
Dan Brown [Sun, 6 Feb 2022 15:14:57 +0000 (15:14 +0000)]
WYSIWG: Improved handling of cross-block code block creation

- Updated code content to get specific text selection instead of using
  node-based handling which could return the whole document when
  multiple top-level nodes were in selection.
- Simplified how code gets applied into the page to not be node based
  but use native editor methods to replace the selection. Allows
  creation from half-way through a block.

Tested on chrome+Firefox on Fedora 35.
Builds upon changes in #3246.
For #3200.

3 years agoAdded missing validation.file message
Dan Brown [Sun, 6 Feb 2022 14:47:33 +0000 (14:47 +0000)]
Added missing validation.file message

- Included test to cover
- Also applied StyleCI fixes

Closes #3248

3 years agoPrevented PCRE limit issues in markdown base64 extraction
Dan Brown [Sun, 6 Feb 2022 07:51:38 +0000 (07:51 +0000)]
Prevented PCRE limit issues in markdown base64 extraction

For #3249

3 years agoAdded attachment API file size limit test
Dan Brown [Sun, 6 Feb 2022 05:05:17 +0000 (05:05 +0000)]
Added attachment API file size limit test

Created while testing for #3248, Was not something that's currently
failing within BookStack but will still add for coverage.

3 years agoModularised our tinymce config and plugins
Dan Brown [Sat, 5 Feb 2022 23:15:58 +0000 (23:15 +0000)]
Modularised our tinymce config and plugins

- Split everything into specific plugin/concern files to make things
  more managable. Means original component file is now simple and much
  of the core config is focused in one place.

3 years agoMade further tweaks to align with current editor
Dan Brown [Sat, 5 Feb 2022 21:20:20 +0000 (21:20 +0000)]
Made further tweaks to align with current editor

- Ensured each of the core actions worked at a high level.
- Handled some TinyMCE API changes.
- Moved code block insert to its own button.

3 years agoGot TinyMCE 5 added in barely working state
Dan Brown [Sat, 5 Feb 2022 16:55:53 +0000 (16:55 +0000)]
Got TinyMCE 5 added in barely working state

- Some extensions & custom actions not working.
- Updated anything visual to not be breaking (Icons) and anything
  functional that prevented loading.

3 years agofix(wysiwyg): preserves line feeds in code block mode 3246/head
julesdevops [Sat, 5 Feb 2022 09:17:13 +0000 (10:17 +0100)]
fix(wysiwyg): preserves line feeds in code block mode

3 years agoUpdated minimum php version from 7.3 to 7.4 3245/head
Dan Brown [Fri, 4 Feb 2022 13:26:39 +0000 (13:26 +0000)]
Updated minimum php version from 7.3 to 7.4

Closes #3152

3 years agoAddressed test failures from users API changes 3238/head
Dan Brown [Fri, 4 Feb 2022 01:02:13 +0000 (01:02 +0000)]
Addressed test failures from users API changes

3 years agoAdded user API examples
Dan Brown [Fri, 4 Feb 2022 00:44:56 +0000 (00:44 +0000)]
Added user API examples

3 years agoAdded user-create API endpoint
Dan Brown [Fri, 4 Feb 2022 00:26:19 +0000 (00:26 +0000)]
Added user-create API endpoint

- Required extracting logic into repo.
- Changed some existing creation paths to standardise behaviour.
- Added test to cover new endpoint.
- Added extra test for user delete to test migration.
- Changed how permission errors are thrown to ensure the right status
  code can be reported when handled in API.

3 years agoAdded user-update API endpoint
Dan Brown [Thu, 3 Feb 2022 16:52:28 +0000 (16:52 +0000)]
Added user-update API endpoint

- Required changing the docs generator to handle more complex
  object-style rules. Bit of a hack for some types (password).
- Extracted core update logic to repo for sharing with API.
- Moved user update language string to align with activity/logging
  system.
- Added tests to cover.

3 years agoAdded users-delete API endpoint
Dan Brown [Thu, 3 Feb 2022 15:12:50 +0000 (15:12 +0000)]
Added users-delete API endpoint

- Refactored some delete checks into repo.
- Added tests to cover.
- Moved some translations to align with activity/logging system.

3 years agoRefactored existing user API work
Dan Brown [Thu, 3 Feb 2022 12:33:26 +0000 (12:33 +0000)]
Refactored existing user API work

- Updated routes to use new format.
- Changed how hidden fields are exposed to be more flexible to different
  use-cases.
- Updated properties available on read/list results.
- Started adding testing coverage.
- Removed old unused UserRepo 'getAllUsers' function.

Related to #2701, Progression of #2734

3 years agoMerge branch 'api-endpoint-users' into users_api
Dan Brown [Thu, 3 Feb 2022 11:38:55 +0000 (11:38 +0000)]
Merge branch 'api-endpoint-users' into users_api

3 years agoApplied latest styleci changes
Dan Brown [Tue, 1 Feb 2022 11:49:30 +0000 (11:49 +0000)]
Applied latest styleci changes

3 years agoNew Crowdin updates (#3214)
Dan Brown [Tue, 1 Feb 2022 11:48:29 +0000 (11:48 +0000)]
New Crowdin updates (#3214)

* New translations auth.php (Spanish)

* New translations auth.php (Estonian)

* New translations entities.php (Estonian)

* New translations common.php (French)

* New translations common.php (Indonesian)

* New translations common.php (Turkish)

* New translations common.php (Ukrainian)

* New translations common.php (Chinese Simplified)

* New translations common.php (Chinese Traditional)

* New translations common.php (Vietnamese)

* New translations common.php (Portuguese, Brazilian)

* New translations common.php (Persian)

* New translations common.php (Slovenian)

* New translations common.php (Spanish, Argentina)

* New translations common.php (Croatian)

* New translations common.php (Estonian)

* New translations common.php (Latvian)

* New translations common.php (Bosnian)

* New translations common.php (Norwegian Bokmal)

* New translations common.php (Swedish)

* New translations common.php (Slovak)

* New translations common.php (Spanish)

* New translations common.php (Hebrew)

* New translations common.php (Arabic)

* New translations common.php (Bulgarian)

* New translations common.php (Catalan)

* New translations common.php (Czech)

* New translations common.php (Danish)

* New translations common.php (German)

* New translations common.php (Hungarian)

* New translations common.php (Russian)

* New translations common.php (Italian)

* New translations common.php (Japanese)

* New translations common.php (Korean)

* New translations common.php (Lithuanian)

* New translations common.php (Dutch)

* New translations common.php (Polish)

* New translations common.php (Portuguese)

* New translations common.php (German Informal)

* New translations common.php (Spanish)

* New translations common.php (Italian)

* New translations settings.php (Italian)

* New translations common.php (Spanish, Argentina)

3 years agoAdded language select to the user create form
Dan Brown [Mon, 31 Jan 2022 22:15:21 +0000 (22:15 +0000)]
Added language select to the user create form

- Updated user invite to take language from user.
- Added tests to cover.
- Added page/tab title to user create view.

For #2576 and #2408

3 years agoAdded external-auth-id option to create-admin command
Dan Brown [Mon, 31 Jan 2022 20:43:41 +0000 (20:43 +0000)]
Added external-auth-id option to create-admin command

- Added tests to cover.
- Refactored some existing testing.
- Requires password or external_auth_id to be provided. Defaults to
  password.
- Randomly sets password to 32 digit random chars if external_auth_id
  provided instead.

For #3222

3 years agoFixed default registration role display options
Dan Brown [Mon, 31 Jan 2022 14:16:56 +0000 (14:16 +0000)]
Fixed default registration role display options

- This also allows an admin to choose not to have a default role.
- Also applied latest styleCI fixes.

For #3220

3 years agoMerge branch 'development' of github.com:BookStackApp/BookStack into development
Dan Brown [Sun, 30 Jan 2022 17:41:16 +0000 (17:41 +0000)]
Merge branch 'development' of github.com:BookStackApp/BookStack into development

3 years agoAdded option to configure PDF export paper size
Dan Brown [Sun, 30 Jan 2022 17:40:42 +0000 (17:40 +0000)]
Added option to configure PDF export paper size

For #995

3 years agoApply fixes from StyleCI
StyleCI Bot [Sun, 30 Jan 2022 16:44:19 +0000 (16:44 +0000)]
Apply fixes from StyleCI

3 years agoUpdated default branch name references
Dan Brown [Sun, 30 Jan 2022 16:33:03 +0000 (16:33 +0000)]
Updated default branch name references

3 years agoMerge pull request #3210 from Julesdevops/simple-503-error-file
Dan Brown [Sun, 30 Jan 2022 16:24:24 +0000 (16:24 +0000)]
Merge pull request #3210 from Julesdevops/simple-503-error-file

Massively simplify the 503 error view

3 years agofix(503): massively simplify the 503 error view 3210/head
julesdevops [Sat, 29 Jan 2022 09:56:13 +0000 (10:56 +0100)]
fix(503): massively simplify the 503 error view

This view was relying on too much app logic, which could lead to errors
when rendering it.

3 years agoFixed OIDC JWT key parsing in microsoft environments
Dan Brown [Fri, 28 Jan 2022 14:00:55 +0000 (14:00 +0000)]
Fixed OIDC JWT key parsing in microsoft environments

Made existence of 'alg' optional when JWK array set so we instead infer
it as RSA256 if not existing.

Fixes #3206

3 years agoAdded cloudabove sponsor logo
Dan Brown [Wed, 26 Jan 2022 20:45:14 +0000 (20:45 +0000)]
Added cloudabove sponsor logo

3 years agoFixed test broken by PdfGenerator changes
Dan Brown [Mon, 24 Jan 2022 22:24:41 +0000 (22:24 +0000)]
Fixed test broken by PdfGenerator changes

3 years agoRefreshed markdown cm instance layout on size change
Dan Brown [Mon, 24 Jan 2022 22:08:36 +0000 (22:08 +0000)]
Refreshed markdown cm instance layout on size change

Intended to fix positioning quirks caused by changing codemirror
instance size when you have lines that wrap and cause line height
changes. Often caused by editor toolbox expand/collapse.

This adds a debounced resize observer to refresh editor layout on size
change.
Also tweaks toolbox expand/collapse to more consistently set aria
attribute.

For #3186

3 years agoPatched gallery duplication on multi-image upload
Dan Brown [Mon, 24 Jan 2022 21:38:11 +0000 (21:38 +0000)]
Patched gallery duplication on multi-image upload

Quick patch to clear the gallery display when getting the first page.
Duplication of the galler was occuring due to the mulitple upload events
loading the gallery mulitple times while only clearing the existing
gallery at the start of all refreshes.

A bit flashy in terms of user experience, as there will still be
mulitple load/clear events but fixes the duplication. Could be done more
elegently in future by communicating up image upload counts.

For #3160

3 years agoAdded parent context to recently updated items
Dan Brown [Mon, 24 Jan 2022 21:21:30 +0000 (21:21 +0000)]
Added parent context to recently updated items

- Includes tests to cover
For #3183

3 years agoUpdated translator attribution and StyleCI changes
Dan Brown [Mon, 24 Jan 2022 20:55:03 +0000 (20:55 +0000)]
Updated translator attribution and StyleCI changes

3 years agoNew Crowdin updates (#3158)
Dan Brown [Mon, 24 Jan 2022 20:53:36 +0000 (20:53 +0000)]
New Crowdin updates (#3158)

* New translations activities.php (Slovak)

* New translations activities.php (Slovak)

* New translations common.php (Russian)

* New translations settings.php (Russian)

* New translations common.php (Japanese)

* New translations settings.php (Japanese)

* New translations activities.php (Persian)

* New translations auth.php (Persian)

* New translations auth.php (Persian)

* New translations entities.php (Persian)

* New translations common.php (Persian)

* New translations auth.php (Persian)

* New translations entities.php (Persian)

* New translations settings.php (Persian)

* New translations entities.php (Persian)

* New translations validation.php (Persian)

* New translations settings.php (Persian)

* New translations settings.php (Spanish, Argentina)

* New translations common.php (Spanish, Argentina)

* New translations settings.php (Spanish, Argentina)

* New translations activities.php (Spanish, Argentina)

* New translations entities.php (Spanish, Argentina)

* New translations entities.php (Persian)

* New translations settings.php (Persian)

* New translations entities.php (Persian)

* New translations errors.php (Persian)

* New translations settings.php (French)

* New translations common.php (French)

* New translations settings.php (French)

* New translations entities.php (Persian)

* New translations settings.php (Persian)

* New translations entities.php (Persian)

* New translations errors.php (Persian)

3 years agoUpdated HTMLDiff package to address multibtye issue
Dan Brown [Mon, 24 Jan 2022 20:27:14 +0000 (20:27 +0000)]
Updated HTMLDiff package to address multibtye issue

Addresses potential issue when using multibyte characters.
Couple of other packages seemed to have updates also since earlier.

For #3170

3 years agoUpdated npm and php dependancies
Dan Brown [Mon, 24 Jan 2022 18:53:28 +0000 (18:53 +0000)]
Updated npm and php dependancies

3 years agoMerge pull request #3179 from Julesdevops/atomic-user-creation
Dan Brown [Mon, 24 Jan 2022 18:48:00 +0000 (18:48 +0000)]
Merge pull request #3179 from Julesdevops/atomic-user-creation

When creating a user, do not persist the user on invitation sending failure

3 years agoMerge branch 'show_more_informations_on_recently_updated_pages'
Dan Brown [Mon, 24 Jan 2022 18:23:47 +0000 (18:23 +0000)]
Merge branch 'show_more_informations_on_recently_updated_pages'

3 years agoAdded test to cover PR #3177
Dan Brown [Mon, 24 Jan 2022 18:23:16 +0000 (18:23 +0000)]
Added test to cover PR #3177

3 years agoMerge branch 'master' of github.com:BookStackApp/BookStack
Dan Brown [Mon, 24 Jan 2022 17:26:17 +0000 (17:26 +0000)]
Merge branch 'master' of github.com:BookStackApp/BookStack

3 years agoFurther adjusted linked image sizes on PDF export
Dan Brown [Mon, 24 Jan 2022 17:24:00 +0000 (17:24 +0000)]
Further adjusted linked image sizes on PDF export

Further fixes for #3120, Adds DOMPDF specific adjustments to prevent
full width linked images being cut-off as per last tweak.
This does not fix usage in smaller cases (tables) but tested on
master DOMPDF branch shows that will likely be fixed in next DOMPDF
upstream release.
DOMPDF fixes would break WKHTMLTOPDF presentation so system updated
to conditionally apply styles.

3 years agoMerge pull request #3193 from Julesdevops/xdebug-docker-compose-setup
Dan Brown [Mon, 24 Jan 2022 16:11:29 +0000 (16:11 +0000)]
Merge pull request #3193 from Julesdevops/xdebug-docker-compose-setup

chore(dev): add xdebug support for docker setup

3 years agodoc(dev): add xdebug informations 3193/head
julesdevops [Sun, 23 Jan 2022 13:26:01 +0000 (14:26 +0100)]
doc(dev): add xdebug informations

3 years agochore(dev): add xdebug support for docker setup
julesdevops [Sat, 22 Jan 2022 16:37:06 +0000 (17:37 +0100)]
chore(dev): add xdebug support for docker setup

3 years agoenh(recently updated): show updatedBy and updated_at 3177/head
julesdevops [Tue, 18 Jan 2022 21:08:01 +0000 (22:08 +0100)]
enh(recently updated): show updatedBy and updated_at

3 years agofix(User Creation): do not persist the user if invitation fails 3179/head
julesdevops [Wed, 19 Jan 2022 19:46:38 +0000 (20:46 +0100)]
fix(User Creation): do not persist the user if invitation fails

- Wrap the user creation process in a transaction
- Add test

3 years agoUpdated translator attribution before release v21.12.2
Dan Brown [Mon, 10 Jan 2022 18:22:43 +0000 (18:22 +0000)]
Updated translator attribution before release v21.12.2

3 years agoApplied latest styleci changes
Dan Brown [Mon, 10 Jan 2022 18:18:15 +0000 (18:18 +0000)]
Applied latest styleci changes

3 years agoNew Crowdin updates (#3148)
Dan Brown [Mon, 10 Jan 2022 18:17:28 +0000 (18:17 +0000)]
New Crowdin updates (#3148)

* New translations common.php (Czech)

* New translations common.php (Chinese Simplified)

* New translations settings.php (Chinese Simplified)

* New translations errors.php (Japanese)

* New translations entities.php (Japanese)

* New translations common.php (Japanese)

* New translations settings.php (Japanese)

* New translations entities.php (Japanese)

* New translations settings.php (Japanese)

* New translations auth.php (Japanese)

* New translations common.php (Portuguese, Brazilian)

* New translations activities.php (Portuguese, Brazilian)

* New translations activities.php (Portuguese, Brazilian)

3 years agoImproved loading for images with failed thumbnails
Dan Brown [Mon, 10 Jan 2022 18:12:11 +0000 (18:12 +0000)]
Improved loading for images with failed thumbnails

- A placeholder is now shown in the gallery.
- The page editors will use the original image url if the display
  thumbnail is missing.

For #3142

3 years agoFixed error on webhooks for recycle bin operations
Dan Brown [Mon, 10 Jan 2022 17:46:17 +0000 (17:46 +0000)]
Fixed error on webhooks for recycle bin operations

Updated the getUrl method on deletions to not require any passed
params to align with usage in webhooks.
Probably better to have a proper interface but would require a wider
change.

Fixes #3154

3 years agoImproved custom homepage check on item deletion
Dan Brown [Mon, 10 Jan 2022 17:04:01 +0000 (17:04 +0000)]
Improved custom homepage check on item deletion

Custom homepage usage will now be checked before any actioning
of deletion rather than potentially causing an exception acting
during the deletion.

Previously a deletion could still be created, within the recycle bin,
for the parent which may lead to the page being deleted anyway.

For #3150

3 years agoMerge pull request #3153 from AitorMatxi/patch-1
Dan Brown [Mon, 10 Jan 2022 16:10:39 +0000 (16:10 +0000)]
Merge pull request #3153 from AitorMatxi/patch-1

Update auth.php

3 years agoUpdate auth.php 3153/head
Aitor Matxinea [Mon, 10 Jan 2022 10:45:48 +0000 (11:45 +0100)]
Update auth.php

Fix misspelled word "As" to "Has".

3 years agoAddressed phpstan cases
Dan Brown [Fri, 7 Jan 2022 13:04:49 +0000 (13:04 +0000)]
Addressed phpstan cases

3 years agoUpdated translator attribution before release v21.12.1
Dan Brown [Thu, 6 Jan 2022 12:20:13 +0000 (12:20 +0000)]
Updated translator attribution before release v21.12.1

3 years agoApplied latest styleCI changes
Dan Brown [Thu, 6 Jan 2022 12:18:11 +0000 (12:18 +0000)]
Applied latest styleCI changes

3 years agoMerge branch 'sort_changes'
Dan Brown [Thu, 6 Jan 2022 12:03:15 +0000 (12:03 +0000)]
Merge branch 'sort_changes'

Related to #3134

3 years agoNew Crowdin updates (#3117)
Dan Brown [Thu, 6 Jan 2022 12:02:49 +0000 (12:02 +0000)]
New Crowdin updates (#3117)

* New translations auth.php (Bulgarian)

* New translations auth.php (Catalan)

* New translations auth.php (Czech)

* New translations auth.php (Danish)

* New translations auth.php (Hebrew)

* New translations auth.php (Swedish)

* New translations auth.php (Hungarian)

* New translations auth.php (Italian)

* New translations auth.php (Japanese)

* New translations auth.php (Korean)

* New translations auth.php (Lithuanian)

* New translations auth.php (Dutch)

* New translations auth.php (Polish)

* New translations auth.php (Russian)

* New translations auth.php (Slovak)

* New translations auth.php (Slovenian)

* New translations settings.php (Korean)

* New translations settings.php (Lithuanian)

* New translations settings.php (Portuguese, Brazilian)

* New translations settings.php (Norwegian Bokmal)

* New translations settings.php (Bosnian)

* New translations settings.php (Latvian)

* New translations settings.php (Estonian)

* New translations settings.php (Croatian)

* New translations settings.php (Spanish, Argentina)

* New translations settings.php (Persian)

* New translations settings.php (Indonesian)

* New translations settings.php (Vietnamese)

* New translations settings.php (Dutch)

* New translations settings.php (Chinese Traditional)

* New translations settings.php (Chinese Simplified)

* New translations settings.php (Turkish)

* New translations settings.php (Swedish)

* New translations settings.php (Slovenian)

* New translations settings.php (Slovak)

* New translations settings.php (Russian)

* New translations settings.php (Portuguese)

* New translations settings.php (Polish)

* New translations settings.php (German Informal)

* New translations settings.php (Spanish)

* New translations activities.php (Spanish)

* New translations auth.php (Spanish)

* New translations common.php (Spanish)

* New translations settings.php (Spanish)

* New translations auth.php (German)

* New translations passwords.php (German)

* New translations settings.php (German)

* New translations activities.php (German)

* New translations auth.php (German)

* New translations auth.php (German Informal)

* New translations common.php (German)

* New translations entities.php (German)

* New translations errors.php (German)

* New translations errors.php (German Informal)

* New translations settings.php (German)

* New translations settings.php (German Informal)

* New translations entities.php (Japanese)

* New translations entities.php (Vietnamese)

* New translations entities.php (Slovak)

* New translations entities.php (Slovenian)

* New translations entities.php (Swedish)

* New translations entities.php (Turkish)

* New translations entities.php (Chinese Simplified)

* New translations entities.php (Chinese Traditional)

* New translations entities.php (Portuguese, Brazilian)

* New translations entities.php (Polish)

* New translations entities.php (Indonesian)

* New translations entities.php (Persian)

* New translations entities.php (Croatian)

* New translations entities.php (Estonian)

* New translations entities.php (Latvian)

* New translations entities.php (Bosnian)

* New translations entities.php (Russian)

* New translations entities.php (Dutch)

* New translations entities.php (Portuguese)

* New translations entities.php (Bulgarian)

* New translations entities.php (Ukrainian)

* New translations entities.php (Spanish, Argentina)

* New translations entities.php (Norwegian Bokmal)

* New translations entities.php (French)

* New translations entities.php (Spanish)

* New translations entities.php (Arabic)

* New translations entities.php (Catalan)

* New translations entities.php (Lithuanian)

* New translations entities.php (Czech)

* New translations entities.php (Danish)

* New translations entities.php (German)

* New translations entities.php (Hebrew)

* New translations entities.php (Hungarian)

* New translations entities.php (Italian)

* New translations entities.php (Korean)

* New translations entities.php (German Informal)

* New translations entities.php (Spanish)

* New translations auth.php (Portuguese)

* New translations common.php (Portuguese)

* New translations errors.php (Portuguese)

* New translations settings.php (Portuguese)

* New translations activities.php (French)

* New translations activities.php (French)

* New translations auth.php (French)

* New translations common.php (French)

* New translations entities.php (French)

* New translations settings.php (French)

* New translations activities.php (Spanish, Argentina)

* New translations entities.php (Spanish, Argentina)

* New translations auth.php (Spanish, Argentina)

* New translations common.php (Spanish, Argentina)

* New translations activities.php (German Informal)

* New translations common.php (German Informal)

* New translations settings.php (Spanish, Argentina)

* New translations activities.php (Chinese Simplified)

* New translations activities.php (Chinese Simplified)

* New translations auth.php (Chinese Simplified)

* New translations common.php (Chinese Simplified)

* New translations entities.php (Chinese Simplified)

* New translations settings.php (Chinese Simplified)

* New translations activities.php (Estonian)

* New translations auth.php (Estonian)

* New translations common.php (Estonian)

* New translations entities.php (Chinese Simplified)

* New translations entities.php (Estonian)

* New translations settings.php (Chinese Simplified)

* New translations settings.php (Estonian)

* New translations settings.php (Estonian)

* New translations validation.php (Estonian)

* New translations auth.php (Italian)

* New translations common.php (Italian)

* New translations entities.php (Italian)

* New translations settings.php (Italian)

* New translations activities.php (Russian)

* New translations auth.php (Russian)

* New translations common.php (Russian)

* New translations activities.php (Russian)

* New translations entities.php (Russian)

* New translations settings.php (Russian)

* New translations activities.php (Japanese)

* New translations auth.php (Portuguese, Brazilian)

* New translations auth.php (Portuguese, Brazilian)

* New translations auth.php (Arabic)

* New translations activities.php (Czech)

* New translations auth.php (Czech)

* New translations activities.php (Czech)

* New translations auth.php (Czech)

* New translations common.php (Czech)

* New translations entities.php (Czech)

* New translations settings.php (Czech)

* New translations activities.php (Czech)

* New translations auth.php (Czech)

* New translations common.php (Czech)

* New translations entities.php (Czech)

* New translations settings.php (Czech)

* New translations auth.php (Czech)

* New translations entities.php (Czech)

* New translations settings.php (Czech)

* New translations auth.php (Czech)

* New translations auth.php (Czech)

* New translations activities.php (Latvian)

* New translations auth.php (Latvian)

* New translations common.php (Latvian)

* New translations entities.php (Latvian)

* New translations settings.php (Latvian)

* New translations activities.php (Latvian)

* New translations settings.php (Latvian)

* New translations activities.php (Italian)

* New translations entities.php (Italian)

* New translations activities.php (Italian)

* New translations settings.php (Italian)

* New translations common.php (Japanese)

* New translations settings.php (French)

* New translations common.php (Vietnamese)

* New translations common.php (Portuguese, Brazilian)

* New translations common.php (Indonesian)

* New translations common.php (Persian)

* New translations common.php (Croatian)

* New translations common.php (Estonian)

* New translations common.php (Latvian)

* New translations common.php (Bosnian)

* New translations common.php (German Informal)

* New translations settings.php (Spanish)

* New translations common.php (Chinese Simplified)

* New translations settings.php (Arabic)

* New translations settings.php (Bulgarian)

* New translations settings.php (Catalan)

* New translations settings.php (Czech)

* New translations settings.php (Danish)

* New translations settings.php (German)

* New translations settings.php (Hebrew)

* New translations settings.php (Hungarian)

* New translations settings.php (Italian)

* New translations settings.php (Japanese)

* New translations common.php (Chinese Traditional)

* New translations common.php (Turkish)

* New translations common.php (Portuguese)

* New translations common.php (Danish)

* New translations common.php (Ukrainian)

* New translations common.php (Spanish, Argentina)

* New translations common.php (Norwegian Bokmal)

* New translations settings.php (Ukrainian)

* New translations common.php (French)

* New translations common.php (Spanish)

* New translations common.php (Arabic)

* New translations common.php (Bulgarian)

* New translations common.php (Catalan)

* New translations common.php (Czech)

* New translations common.php (German)

* New translations common.php (Swedish)

* New translations common.php (Hebrew)

* New translations common.php (Hungarian)

* New translations common.php (Italian)

* New translations common.php (Korean)

* New translations common.php (Lithuanian)

* New translations common.php (Dutch)

* New translations common.php (Polish)

* New translations common.php (Russian)

* New translations common.php (Slovak)

* New translations common.php (Slovenian)

* New translations settings.php (Korean)

* New translations settings.php (Lithuanian)

* New translations settings.php (Portuguese, Brazilian)

* New translations settings.php (Norwegian Bokmal)

* New translations settings.php (Bosnian)

* New translations settings.php (Latvian)

* New translations settings.php (Estonian)

* New translations settings.php (Croatian)

* New translations settings.php (Spanish, Argentina)

* New translations settings.php (Persian)

* New translations settings.php (Indonesian)

* New translations settings.php (Vietnamese)

* New translations settings.php (Dutch)

* New translations settings.php (Chinese Traditional)

* New translations settings.php (Chinese Simplified)

* New translations settings.php (Turkish)

* New translations settings.php (Swedish)

* New translations settings.php (Slovenian)

* New translations settings.php (Slovak)

* New translations settings.php (Russian)

* New translations settings.php (Portuguese)

* New translations settings.php (Polish)

* New translations settings.php (German Informal)

* New translations common.php (Estonian)

* New translations entities.php (Estonian)

* New translations settings.php (Estonian)

* New translations common.php (Spanish)

* New translations settings.php (Spanish)

* New translations entities.php (French)

* New translations settings.php (French)

* New translations common.php (Chinese Simplified)

* New translations settings.php (Chinese Simplified)

* New translations common.php (Spanish, Argentina)

* New translations settings.php (Spanish, Argentina)

3 years agoRemoved old book sort permission test
Dan Brown [Wed, 5 Jan 2022 16:46:03 +0000 (16:46 +0000)]
Removed old book sort permission test

Permission handling now done via other means with more extensive
permissions testing in SortTest class.

3 years agoAligned chapter move permissions with page move permissions
Dan Brown [Wed, 5 Jan 2022 16:11:11 +0000 (16:11 +0000)]
Aligned chapter move permissions with page move permissions

3 years agoAdded additional permission checks and tests for book sorts
Dan Brown [Wed, 5 Jan 2022 15:42:59 +0000 (15:42 +0000)]
Added additional permission checks and tests for book sorts

- Aligned permissions control with move operations to check
  delete/create permissions against old/new locations.
- Added tests to cover additional permissions scenarios.

3 years agoAltered sort permission checking and started tests
Dan Brown [Wed, 5 Jan 2022 14:39:21 +0000 (14:39 +0000)]
Altered sort permission checking and started tests

Previous implemenations were hard to read so changing to be more
logically simplistic. Still needs further coverage in tests and
review/alignment of permissions to use.

3 years agoChanged model loading and permission checking on book sort
Dan Brown [Tue, 4 Jan 2022 21:09:34 +0000 (21:09 +0000)]
Changed model loading and permission checking on book sort

Models are now loaded into their own map to then be used for sorting and
reporting back of changed books. Prevents akward logic ordering issues
of before where some bits of code assumed/hoped for loaded models on
abstract data structures.

New levels of permissions are now checked for items within the
sort operation. Needs testing to cover.

3 years agoRefactored sort system a little
Dan Brown [Tue, 4 Jan 2022 17:31:57 +0000 (17:31 +0000)]
Refactored sort system a little

To standardise the handled data format a little better.

3 years agoAdded page titles to many missing app areas 3141/head
Dan Brown [Tue, 4 Jan 2022 13:33:24 +0000 (13:33 +0000)]
Added page titles to many missing app areas

Many pages were missing their unique tab/page titles
so this change is just to distribute them back over
many common areas where they were missing.

3 years agoAdded detection and thumbnail bypass for apng images
Dan Brown [Tue, 4 Jan 2022 13:10:35 +0000 (13:10 +0000)]
Added detection and thumbnail bypass for apng images

Adds apng sniffing when generating thumbnails with retained ratios to
serve the original image files, as we do for GIF images, to prevent
the image being resized to a static version.

Is more tricky than GIF since apng file mimes and extensions
are the same as png, we have to detect part of the file header
to sniff the type. Means we have to sniff at a later stage
than GIF since we have to load the image file data.

Made some changes to the image thubmnail caching while doing
this work to fit in with this handling.

Added test to cover.
For #3136.

3 years agoFixed code block language parsing issue
Dan Brown [Tue, 4 Jan 2022 11:54:24 +0000 (11:54 +0000)]
Fixed code block language parsing issue

Language parsing of code blocks could falter on pasted code blocks due
to the lanuage being parsed with a space which would throw an error when
used as a css class.
This adds more extensive language parsing to be safer.

Fixes #3133

3 years agoAdded search autofocus on entity-selector-popup
Dan Brown [Tue, 4 Jan 2022 11:30:44 +0000 (11:30 +0000)]
Added search autofocus on entity-selector-popup

Closes #3127

3 years agoFixed failing webhook test cases 3139/head
Dan Brown [Mon, 3 Jan 2022 19:51:13 +0000 (19:51 +0000)]
Fixed failing webhook test cases