Commit Graph

19542 Commits

Author SHA1 Message Date
Diogo Peralta Cordeiro ae7516c893
[ATTACHMENTS] Always store in the same location 2021-08-14 17:00:48 +01:00
Diogo Peralta Cordeiro 32ad5dbd74
[ENTITY] Split Attachment in various new entities
Remove Attachment Scope
Fixed some minor bugs

Scope will be implemented later in v3. It doesn't make sense to have
the scope handling being per attachment. Different actors can post
the same attachment with different scopes. The attachment controller
will assume the highest level of scope applied to the attachment and
the rest will be handled at the note level.

Motivation:
* Remove title from attachment, as it's part of the relation between attachment and note.
* Remove actor from attachment, many actors may publish the same attachment.
* Remove is_local from attachment,  as it's part of the relation between attachment and note.
* Remove remote_url from attachment, different urls can return the same attachment.

Addition:
* Attachment now has a lives attribute,  it's a reference counter with a nicer name
* GSActorToAttachment
* GSActorToRemoteURL
* RemoteURL
* RemoteURLToNote
* RemoteURLToAttachment
* AttachmentToNote now has a title attribute
2021-08-14 17:00:46 +01:00
Diogo Peralta Cordeiro 2ea739ef61
[FileQuota] We'll get back to this plugin later 2021-08-14 16:17:15 +01:00
Hugo Sales 420b3f4aeb
[DB][Attachments] Use count function rathar than fetch and count, rename to refCount, rather than countDepencies 2021-08-14 16:13:01 +01:00
Hugo Sales 6cea2b1d00
[DEPENDENCIES] Update dependencies 2021-08-14 16:13:01 +01:00
Hugo Sales 9c99c11790
[TemporaryFile][TESTS] Throw on attempt to write to null resource and fix tests 2021-08-14 16:13:01 +01:00
Hugo Sales ecbfba1b1a
[TESTS] Add test for JSON response and invalid accept format 2021-08-14 16:13:00 +01:00
Hugo Sales 66b39d3607
[ENTITY] Add JsonSerializable interface to Entity base class and implement it for the Note class 2021-08-14 16:13:00 +01:00
Hugo Sales 8e627f2c18
[TESTS] Add test annotations to core classes 2021-08-14 16:12:59 +01:00
Hugo Sales 7cace2051f
[CORE][Controller] Fix JSON response and add test annotations 2021-08-14 16:12:59 +01:00
Hugo Sales a4cb90ba12
[EVENTS] Change FormatNoteList do separate in and out arguments
This is necessary due to some weird problem which I wasn't able to figure out (but which doesn't matter)
that somehow causes the event to be called twice during testing, and thus the function was exploding
2021-08-14 16:12:58 +01:00
Hugo Sales cb0093bd4a
[TESTS] Fix Entity test in accordance with the changes to createOrUpdate 2021-08-14 16:12:58 +01:00
Hugo Sales c804892672
[TEST] Raise test coverage for UserPanel to 100% 2021-08-14 16:12:57 +01:00
Hugo Sales e053ee451b
[CONTROLLER][UserPanel] Finish implementation of ::notifications so it actually saves the values in the database 2021-08-14 16:12:57 +01:00
Hugo Sales 9a6fddb004
[CONTROLLR][UserPanel][PLUGINS] Add submit button to notification settings for each transport 2021-08-14 16:12:57 +01:00
Hugo Sales 06b9bd9910
[CONTROLLER][AdminPanel] Further ensure form validity 2021-08-14 16:12:56 +01:00
Hugo Sales 47daf6169a
[CORE][Log] Add Log::unexpected_exception utility which logs and throws a ServerException 2021-08-14 16:12:56 +01:00
Hugo Sales 71b1ee7796
[CORE][Entity] Fix implementation of createOrUpdate so it doesn't throw NotFoundException if trying to create an object
This was previously done because we wanted to notify the callee that
and entity existed but not with the provided contents. With the change
of return value, with a bool $is_update, this is no longer a problem.
2021-08-14 16:12:55 +01:00
Hugo Sales 4266b361c0
[TESTS] Update PHPUnit config to start executing tests by last failure. This doens't seem to actually work currently, though 2021-08-14 16:12:55 +01:00
Hugo Sales 504c8f8935
[TOOLS] Add utility commands to the Makefile 2021-08-14 16:12:55 +01:00
Hugo Sales c38bbed7df
[UTIL][FormFields] Move FormFields class to Util\Form namespace 2021-08-14 16:12:54 +01:00
Eliseu Amaro 7308e66981
[Favourite][TWIG][CSS] Favourite now works. 2021-08-14 16:12:54 +01:00
Eliseu Amaro 2590ea7b67
[CSS] Overall typography resizing to provide proper text hierarchy. Radio buttons polish, notes author box is now smaller. Better organization of CSS rules according to their filename and thus, their aim. 2021-08-14 16:12:53 +01:00
Eliseu Amaro 6aa61abd81
[CSS] Fixed top margin, footer elements are now actually footer elements. 2021-08-14 16:12:53 +01:00
Eliseu Amaro 96abf53e22
[TWIG][CSS] Buttons are now the correct size in all contexts. Right panel create a notice section re-structure. 2021-08-14 16:12:52 +01:00
Eliseu Amaro b7d205465f
[TWIG][CSS] Feedback provided to active page. Removed top accent border on notes. 2021-08-14 16:12:52 +01:00
Eliseu Amaro d19c990acf
[FAQ][CSS] All FAQ pages stylized, minor structure changes throughout. 2021-08-14 16:12:52 +01:00
Eliseu Amaro 38abbc14b9
[TWIG][CSS] Left panel text hierarchy fix (no <hr> element between timeline navigation and its items). Default CSS fixes for buttons and input file selectors. 2021-08-14 16:12:51 +01:00
Eliseu Amaro 0eb9575534
[CSS] Input file elements polish. It should resize properly and provide feedback when selected (not a thing in Firefox ESR yet). 2021-08-14 16:12:51 +01:00
Eliseu Amaro a02093e848
[CSS] Base CSS polish, reset CSS additions for better cross-browser compatibility. 2021-08-14 16:12:51 +01:00
Diogo Peralta Cordeiro 9343d00110
[Avatar] Delete attachment only if safe 2021-08-14 16:12:47 +01:00
Diogo Peralta Cordeiro 67f5421691
[ATTACHMENTS] Add dependencies counter 2021-08-05 14:44:05 +01:00
Eliseu Amaro bbaeaad052 [CSS] Fixed background incorrect sizing. 2021-08-05 13:09:18 +01:00
Eliseu Amaro 5236278f45 [CSS] Mesh gradient works as intended with no banding. 2021-08-05 13:01:31 +01:00
Diogo Peralta Cordeiro 289eef5cf7
[Avatar] Store as regular attachments 2021-08-05 03:24:21 +01:00
Diogo Peralta Cordeiro c155f4e30e
[DEV] Add PsySH REPL 2021-08-05 03:24:21 +01:00
Diogo Peralta Cordeiro 5896f5bb82
[Avatar] Move entity from core to component 2021-08-05 03:23:05 +01:00
Diogo Peralta Cordeiro 1556b3e019
[CORE][GSFile] Allow storing files under /file 2021-08-05 03:22:57 +01:00
Hugo Sales c58b9fb5b1
[TESTS] Ignore coverage of ResetPasswordRequest, as it uses mailing functionality. We may want to introduce this test in the future 2021-08-04 20:11:47 +00:00
Hugo Sales 97a3c067d9
[UTIL][FormFields] Allow specifying whether a password is required and provide placeholder text 2021-08-04 20:11:47 +00:00
Hugo Sales 92db61a975
[ROUTES] Remove individual settings pages, as they got merged 2021-08-04 20:11:47 +00:00
Hugo Sales 05e10589c3
[ENTITY] Refactor LocalUser::changePassword for easier use 2021-08-04 20:11:47 +00:00
Hugo Sales a590ddd85e
[UTIL][EXCEPTION] Add AuthenticationException, representing an auth error, status code 401 unauthorized 2021-08-04 20:11:47 +00:00
Hugo Sales 0bead1c58a
[TESTS] Change format of data fixtures to allow creating more users 2021-08-04 20:11:47 +00:00
Hugo Sales 0845224188
[CORE][DB] Specify desired case in array_change_case, for clarity 2021-08-04 20:11:47 +00:00
Hugo Sales 1da1f0918e
[TESTS] Raise test coverage for AdminPanel to 100% 2021-08-04 20:11:47 +00:00
Diogo Peralta Cordeiro b075ab610b
[SECURITY] Do not require email when in development 2021-08-04 17:48:00 +01:00
Diogo Peralta Cordeiro 5b858a7bc1
[DOCS][Dev] Add Debugging and Testing 2021-08-04 16:58:27 +01:00
Hugo Sales f760de43b0
[TESTS] Fixup Security controller tests to match new UI 2021-08-03 19:37:56 +00:00
Hugo Sales 960675b459
[TESTS] Raise test coverage for AdminPanel controller to 100% 2021-08-03 19:37:56 +00:00