Commit Graph

549 Commits

Author SHA1 Message Date
Hugo Sales 0b3ebf841d
[TESTS][DataFixtures] Add user, self follows, group member and group scope note 2021-08-18 17:35:09 +01:00
Hugo Sales 7320c6834f
[UI][Attachment] Use Attachment methods to get the proper URL, rather than crafting it in a template 2021-08-18 17:35:09 +01:00
Hugo Sales 9c533a54a7
[ATTACHMENTS] Ensure thumbnail dimensions are bounded and change way cropping is implemented 2021-08-18 17:35:09 +01:00
Diogo Peralta Cordeiro f7c426e81c
[ENTITY][Link] self urls can't be considered a remote url 2021-08-18 14:34:49 +01:00
Diogo Peralta Cordeiro d4ad0cc3d4
[DOCS][Developer] Update storage documentation 2021-08-17 23:37:19 +01:00
Hugo Sales 4e5f9a51f0
[TESTS] Hot-fix Security controller tests, broken with ongoing form rendering changes 2021-08-17 20:54:46 +01:00
Eliseu Amaro 2ae1198704
[UTIL][FORM] Password form now shows the proper HTML class, and it's respective label. 2021-08-17 20:52:22 +01:00
Eliseu Amaro 9e52bd127f
[CONTROLLER][SECURITY] Added class names. Help labels for each form element. Each form element now has a proper block prefix (the resulting HTML won't simply concatenate the form's name to the element's label). 2021-08-17 20:52:21 +01:00
Hugo Sales e9fa41c5a8
[FORM] Fix bug where options were passed in the data parameter 2021-08-17 20:52:21 +01:00
Hugo Sales 1e8beefb07
[PLUGINS][ENTITY][Cover][ProfileColor] Clean up after interns and move entity defintions to be inside the corresponding plugin, rather than in core 2021-08-16 17:20:33 +01:00
Hugo Sales 69ff8c2750
[CORE][GSFile] Use pathinfo rather than regular expressions and don't attempt to persist an already persisted entity 2021-08-16 17:10:33 +01:00
Hugo Sales 355b26221d
[CONTROLLER][Attachment] Small refactor and add testing annotation 2021-08-16 17:09:44 +01:00
Hugo Sales d4c3e26f50
[TESTS] Remove copied upload test files, if upload failed 2021-08-16 17:09:02 +01:00
Hugo Sales 5bd5c25dcf
[TESTS] Add coverage ignore flags to trivial methods 2021-08-16 17:08:29 +01:00
Hugo Sales e30ae79eb7
[DB][DOCUMENTATION] Explain limit: 2 in findOneBy 2021-08-16 17:07:00 +01:00
Hugo Sales fb861ed41f
[UTIL][EXCEPTIONS] Introduce NotStoredLocallyException 2021-08-16 17:06:02 +01:00
Hugo Sales 33bf99cfda
[ENTITY][Attachment] Raise mimetype max length to 64 characters and ensure we don't attempt to store more than that 2021-08-14 21:47:49 +01:00
Hugo Sales 4d883d1011
[TESTS] Cleanup attachment test data 2021-08-14 21:46:44 +01:00
Hugo Sales 1d95080f9a
[TESTS] Remove MediaFileTest and move setup code to media data fixture 2021-08-14 19:49:51 +00:00
Hugo Sales bb57d7dc10
[TESTS] Move Media fixtures to their own file, for organization 2021-08-14 19:49:51 +00:00
Hugo Sales f3972abb70
[DOCUMENTATION][Entity] Improve documentation on Entity::getWithPK, explaining the ways it can be used 2021-08-14 19:49:50 +00:00
Diogo Peralta Cordeiro 2e3ab5bdfb
[ENTITY][Link] Sometimes URLs don't work, handle that 2021-08-14 17:08:11 +01:00
Diogo Peralta Cordeiro 7b3ca428e9
[ATTACHMENT] Some attachments don't have thumbnails and that's okay 2021-08-14 17:04:58 +01:00
Diogo Peralta Cordeiro df5e7b139a
[CORE][GSFile] ensureFilenameWithProperExtension: extension isn't an I/O param 2021-08-14 17:04:57 +01:00
Diogo Peralta Cordeiro 4c1fc40c43
[ENTITY][Note] Add getter for note links 2021-08-14 17:04:57 +01:00
Diogo Peralta Cordeiro c381e58d33
[ENTITY] Refactor RemoteURL entities to Link
RemoteURL was being an awfully confusing term.
2021-08-14 17:04:51 +01:00
Diogo Peralta Cordeiro daaf7ea236
[Attachment] Sometimes we can't provide download of original file 2021-08-14 17:00:53 +01:00
Diogo Peralta Cordeiro 3019048585
[Posting] Re-add original file to attachment on upload, if it was previously removed 2021-08-14 17:00:52 +01:00
Diogo Peralta Cordeiro 9781ddc8e0
[AttachmentToNote][Attachment] Add title getter to Attachment 2021-08-14 17:00:52 +01:00
Diogo Peralta Cordeiro d13da61d30
[StoreRemoteMedia] Implement the first version of it in v3 2021-08-14 17:00:51 +01:00
Diogo Peralta Cordeiro f64436771c
[UTIL] Common::config wasn't a proper port from v2, it has to accept one argument only as well 2021-08-14 17:00:51 +01:00
Diogo Peralta Cordeiro 91666f7d61
[RemoteURLToAttachment] Fix primary key, relation is: One Attachment Has Many URLs, One URL Has One Attachment 2021-08-14 17:00:51 +01:00
Diogo Peralta Cordeiro b20a4c89fb
[Attachment] Allow to delete the associated file 2021-08-14 17:00:50 +01:00
Diogo Peralta Cordeiro 6453593b0d
[MODULES] Add module configuration 2021-08-14 17:00:50 +01:00
Diogo Peralta Cordeiro f72cfd1c2b
[CORE][Event] Fix bug on handler Log 2021-08-14 17:00:50 +01:00
Diogo Peralta Cordeiro c0a404c640
[CORE][Entity] Compare with object properties when creating/updating, instead of class 2021-08-14 17:00:50 +01:00
Diogo Peralta Cordeiro aec8521e4b
[ENTITY][Posting] Remove GSActorToRemoteURL, Fix URL database store 2021-08-14 17:00:49 +01:00
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
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 9c99c11790
[TemporaryFile][TESTS] Throw on attempt to write to null resource and fix tests 2021-08-14 16:13:01 +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 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