Commit Graph

190 Commits

Author SHA1 Message Date
Diogo Peralta Cordeiro
517ed953f2
[FreeNetwork] First step towards de-duplication mechanism for federation
Refactored AS2 inside AP; [ENTITY][Activity] went from core to AP
Webfinger plugin will be part of FreeNetwork component
2021-10-06 11:48:22 +01:00
Hugo Sales
19c2a91232
[TOOLS][PHPStan][ProfileColor][ENTITY][TEST][AttachmentThumbnail] Fix issues reported by phpstan 2021-09-27 19:50:56 +01:00
Diogo Peralta Cordeiro
a681acae67
[ENTITY][AttachmentThumbnail] Every image should have width and height attributes 2021-09-25 19:40:11 +01:00
Diogo Peralta Cordeiro
3268559f9a
[AttachmentThumbnail] Use other thumbnail when requested isn't available and there's no original file 2021-09-23 16:19:50 +01:00
Hugo Sales
21e598d877
[ENTITY][Actor] Fix issue with deleting a self tag 2021-09-23 14:34:34 +01:00
Diogo Peralta Cordeiro
4820a863a9
[Avatar] Fix cache usage and other minor bugs 2021-09-23 14:34:34 +01:00
Diogo Peralta Cordeiro
05f16a3084
[ENTITY][AttachmentThumbnail] Now thumbnails are always only available in three sizes: small, medium, big
Commit jointly produced with eli (Eliseu Amaro)

Breaking change: Entity changed to only store the tinyint referring to the size stored

With this, the logic was simplified and now it's not possible to make an
instance produce unnecessary thumbs. The aspect ratio is preserved and
thus the thumbs will always look nice. New configuration was added to
maintain flexibility.
2021-09-22 15:13:46 +01:00
Hugo Sales
69e7dc44bd
[ENTITY][Note] Change isVisibleTo to allow for not supplying an actor 2021-09-21 16:38:50 +01:00
Diogo Peralta Cordeiro
8bb6285522
[ENTITY][Note] A note may have no content 2021-09-20 17:06:21 +01:00
Diogo Peralta Cordeiro
b7298eaa44
[ENTITY] ActorTag: use getter for tag name on toString 2021-09-20 17:05:50 +01:00
Hugo Sales
556b8f8265
[ENTITY][NoteTag] Add 'canonical' field to tag 2021-09-20 13:27:27 +01:00
Diogo Peralta Cordeiro
67d62cf37b
[TWIG] Remove kludge event TwigPopulateVars 2021-09-18 07:27:35 +01:00
Diogo Peralta Cordeiro
fda998e335
[Avatar] We definitely don't need an event to retrieve avatar urls 2021-09-18 07:26:10 +01:00
Diogo Peralta Cordeiro
2bd19fa087
[NOTE][Posting] Revert regressions introduced with c90efe2c52
Entity Note: It doesn't make sense to handle attachments on Note::create.
Attachments exist out of Notes, they are a thing on their own.
Furthermore, they aren't always handled the same, they most definitely
aren't always uploaded files.

FileQuota: It doesn't make sense to check if a file is greater than max
allowed upload size here. The plugin ensures a user is inside his
allowed quota, it's ignorant to anything else. Whether a file respect
max upload is a core thing that must be handled directly in the Posting
component. TODO: The configuration regarding user and monthly quota
must become FileQuotaPlugin settings and be removed from core.

c90efe2c52 - [UI] Add mechanism for rendering note contents in different formats. Implement plaintext rendering. Use rendered field for note content, rather than the content itself
2021-09-18 05:12:18 +01:00
Diogo Peralta Cordeiro
941cbe6599
[Actor] Refactor GSActor into Actor 2021-09-18 05:12:17 +01:00
Hugo Sales
8f0a3e4977
[UI] Add mechanism for rendering note contents in different formats. Implement plaintext rendering. Use rendered field for note content, rather than the content itself 2021-09-18 05:12:06 +01:00
Hugo Sales
f344ed376c
[ATTACHMENTS][Embed][UI] Allow plugins to provide a title for an attachment, if a note has none, implement such a mechanism in Embed and cache the result, since it is potentially costly 2021-09-18 05:12:06 +01:00
Diogo Peralta Cordeiro
365edbaff0
[ActivityStreamsTwo] Initial Actor support
Various bug fixes
2021-09-15 10:26:53 +01:00
Diogo Peralta Cordeiro
7c465bba5f
[NOTE] Add mimetype to notes 2021-09-14 13:13:45 +01:00
Hugo Sales
4e30e5aad9
[TOOLS] Fix all issues found by PHPStan level 2 2021-09-14 13:13:44 +01:00
Hugo Sales
eb833b62e2
[TOOLS] Fix all level 0 errors found by PHPStan and move constant definition to bootstrap file 2021-09-14 13:13:42 +01:00
Hugo Sales
e8ae0b74e0
[CORE][Controller] Switch order for content negotiation: allow events to take precedence. Bring back default JSON response 2021-09-14 13:13:41 +01:00
Diogo Peralta Cordeiro
2b457655ea
[CORE] Fix path configuration 2021-09-14 13:13:35 +01:00
Diogo Peralta Cordeiro
f9079784c4
[ENTITY][AttachmentThumbnail] Improve the way EncoderPlugins participate in the thumbnail process 2021-09-14 13:13:35 +01:00
Diogo Peralta Cordeiro
210f895e74
[ENTITY][Attachment] Respect rfc6838#section-4.2 mimetype length 2021-09-14 13:13:34 +01:00
Hugo Sales
4cd3924cc1
[ATTACHMENTS][AttachmentThumbnail] Fix implementation of predictScalingValues and small fixes 2021-09-14 13:13:32 +01:00
Hugo Sales
2ccbbd53a6
[TESTS] Add code coverage annotations to entities 2021-09-14 13:13:32 +01:00
Hugo Sales
79215bc439
[Note] Fix scope check for group notes, move away from SQL, to DQL 2021-09-14 13:13:32 +01:00
Hugo Sales
4b2a92d052
[UI][Attachment] Use Attachment methods to get the proper URL, rather than crafting it in a template 2021-09-14 13:13:32 +01:00
Diogo Peralta Cordeiro
b50f11a040
[ENTITY][Link] self urls can't be considered a remote url 2021-09-14 13:13:31 +01:00
Diogo Peralta Cordeiro
5c8677304c
[DOCS][Developer] Update storage documentation 2021-09-14 13:13:31 +01:00
Hugo Sales
4f880eb761
[PLUGINS][ENTITY][Cover][ProfileColor] Clean up after interns and move entity defintions to be inside the corresponding plugin, rather than in core 2021-09-14 13:13:29 +01:00
Hugo Sales
6445a616a8
[ENTITY][Attachment] Raise mimetype max length to 64 characters and ensure we don't attempt to store more than that 2021-09-14 13:13:28 +01:00
Diogo Peralta Cordeiro
060a5abef1
[ENTITY][Link] Sometimes URLs don't work, handle that 2021-09-14 13:13:27 +01:00
Diogo Peralta Cordeiro
f690bc06ae
[ATTACHMENT] Some attachments don't have thumbnails and that's okay 2021-09-14 13:13:27 +01:00
Diogo Peralta Cordeiro
728f8d8fb8
[ENTITY][Note] Add getter for note links 2021-09-14 13:13:26 +01:00
Diogo Peralta Cordeiro
9e4cac0123
[ENTITY] Refactor RemoteURL entities to Link
RemoteURL was being an awfully confusing term.
2021-09-14 13:13:26 +01:00
Diogo Peralta Cordeiro
4cc4523632
[Posting] Re-add original file to attachment on upload, if it was previously removed 2021-09-14 13:13:26 +01:00
Diogo Peralta Cordeiro
d076781c74
[AttachmentToNote][Attachment] Add title getter to Attachment 2021-09-14 13:13:26 +01:00
Diogo Peralta Cordeiro
bac18715c5
[StoreRemoteMedia] Implement the first version of it in v3 2021-09-14 13:13:25 +01:00
Diogo Peralta Cordeiro
33cc9386d2
[RemoteURLToAttachment] Fix primary key, relation is: One Attachment Has Many URLs, One URL Has One Attachment 2021-09-14 13:13:25 +01:00
Diogo Peralta Cordeiro
78c5c4b084
[Attachment] Allow to delete the associated file 2021-09-14 13:13:25 +01:00
Diogo Peralta Cordeiro
75f70f8182
[ENTITY][Posting] Remove GSActorToRemoteURL, Fix URL database store 2021-09-14 13:13:25 +01:00
Diogo Peralta Cordeiro
3f61537140
[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-09-14 13:13:24 +01:00
Hugo Sales
39006fb6b5
[DB][Attachments] Use count function rathar than fetch and count, rename to refCount, rather than countDepencies 2021-09-14 13:13:24 +01:00
Hugo Sales
6728dd40b0
[ENTITY] Add JsonSerializable interface to Entity base class and implement it for the Note class 2021-09-14 13:13:24 +01:00
Diogo Peralta Cordeiro
21362d1e4d
[ATTACHMENTS] Add dependencies counter 2021-09-14 13:13:21 +01:00
Diogo Peralta Cordeiro
3334aca7b9
[Avatar] Move entity from core to component 2021-09-14 13:13:20 +01:00
Hugo Sales
27f2fbdade
[ENTITY] Refactor LocalUser::changePassword for easier use 2021-09-14 13:13:20 +01:00
Hugo Sales
7bd88bd101
[AUTOGENERATED] Update entity fields for ResetPasswordRequest entity 2021-09-14 13:13:17 +01:00