Commit Graph

299 Commits

Author SHA1 Message Date
Diogo Peralta Cordeiro 78fddaf86a
[PLUGIN][ActivityPub] Notify mentions in tags 2021-12-26 06:22:28 +00:00
Diogo Peralta Cordeiro 9d0b39e680
[PLUGIN][ActivityPub] Support tags in notes 2021-12-25 18:04:31 +00:00
Hugo Sales 59abffe744
[ENTITY][Actor][DOC] Add explanation in Actor::__call 2021-12-24 02:46:42 +00:00
Hugo Sales be197bc82b
[ENTITY][LocalUser] Fix LocalUser::setNicknameSanitizedAndCached so it updates the actor nickname and propagates the exceptions 2021-12-24 02:46:42 +00:00
Hugo Sales 764a30695d
[ENTITY][ActorTag][Actor][Activity] Add Actor::getActorCircles 2021-12-24 02:46:42 +00:00
Hugo Sales 95783d6109
[CONTROLLER][UserPanel][COMPONENT][Tag] Re-add way of adding self tags, but in a more reusable (and less buggy) way 2021-12-24 02:46:41 +00:00
Hugo Sales 80ebd6fb7b
[ENTITY][Actor] Add helper function for checking if the current actor can admin another 2021-12-24 02:46:40 +00:00
Diogo Peralta Cordeiro 4b98200ecd
[UI][CARD][Note] Add Conversation link 2021-12-24 02:46:39 +00:00
Diogo Peralta Cordeiro 7d8cce3b27
[COMPONENT][Feed] Correct queries and introduce new feeds
Refactor feeds and search to use a common query builder
2021-12-24 00:44:39 +00:00
Eliseu Amaro 3ca7a35158
[COMPONENT][Conversation] added onProcessNoteContent event
If the source lacks capability of sending the reply_to metadata, it might be on the note content itself as a reference.

[ENTITY][Note] Documenting conversation/reply related functions. The entity Note reply_to shouldn't be trusted toknow whether or not the Note is a Conversation root. This will happen if a known remote user replies to an unknown remote user - within a known conversation.
2021-12-24 00:42:02 +00:00
Eliseu Amaro c83ae76a68
[COMPONENTS][Conversation] Conversation entity moved to respective component, URI column added
Route for conversation added and Conversation Controller created.

[CONTROLLER][Conversation] Created ConversationShow function, will be used to render the conversation route page

[ENTITY][Note] Conversation id column added, this way a Note can have a direct relation with its respective conversation.
2021-12-24 00:42:01 +00:00
Diogo Peralta Cordeiro 8b5286c383
[COMPONENT][Notification] Do not re-render content just to grab attentions
Other minor improvements and bug fixes
2021-12-21 16:05:24 +00:00
Hugo Sales 6a8144003f
[ENTITY][Actor] Add missing 'break' statements in switches in getUr{i,l} 2021-12-21 12:46:42 +00:00
Hugo Sales d6d5926b6e
[TOOLS][DOC] Add missing documentation, as flagged by doc-check 2021-12-21 12:24:23 +00:00
Hugo Sales da8c41e094
[TOOLS] Fix errors found by PHPStan 2021-12-21 12:17:51 +00:00
Hugo Sales fa863d9e03
[CONTROLLER][ENTITY][Actor] Add way of creating a group that doesn't exist 2021-12-21 12:12:03 +00:00
Hugo Sales 315fd95b94
[COMPONENT][Posting] Add facility to allow mentioning groups that don't yet exist 2021-12-21 12:07:54 +00:00
Hugo Sales e27f2dd202
[ENTITY] Remove Group entity, as groups are actors 2021-12-20 20:20:25 +00:00
Eliseu Amaro 918e6823a9
[ENTITY][Actor] Init Actor's class variable homepage, bio, and location to null
The template cards/profile/view.html.twig tries to access the bio variable before it's initialized, an is null check was already in place. However, even then, the variable needs to be init beforehand. The same change was applied to homepage and location since they might lead to similar issues.
2021-12-20 16:31:26 +00:00
Eliseu Amaro 622057ba0d
[CONTROLLER][Feeds] Added should_format field on returned array
FeedController will only handle FormatNoteList if the should_format field is true.

This change was made to make the replies route feed possible, this route is added by the Conversation component. Since a reply isn't a conversation root, if the FeedController handled the FormatNoteList event, this feed wouldn't have any notes to display.
2021-12-20 15:39:23 +00:00
Diogo Peralta Cordeiro ed67da89dc
[TAGS] Fix some minor logic issues with Actor Tags and Circles 2021-12-20 13:32:49 +00:00
Diogo Peralta Cordeiro a9feb79825
[SECURITY] New actors are Person user on register by default 2021-12-20 13:32:49 +00:00
Diogo Peralta Cordeiro 57beb178cc
[Notification][ENTITY][Activity] Avoid including sender in notification targets 2021-12-19 19:04:05 +00:00
Diogo Peralta Cordeiro 93fa7eb0b5
[ENTITY][Note] Language in notes is optional 2021-12-19 19:04:05 +00:00
Hugo Sales a81ac673ac
[CORE][ENTITY] Rename 'Entity::getWithPK' to 'Entity::getByPK' 2021-12-19 19:04:01 +00:00
Hugo Sales 10ddbf692a
[ENTITY][LocalUser] Make more use of caching and factor out the cache keys 2021-12-12 16:21:09 +00:00
Hugo Sales 1e8eea0434
[ENTITY][Actor] Add type field, which denotes whether the actor is a person, org, group, business or bot 2021-12-11 22:19:37 +00:00
Hugo Sales e62896b84e
[UTIL][FormFields] Allow specifying a null actor in the language field, for when there isn't a logged in user 2021-12-11 22:18:31 +00:00
Hugo Sales 33fba0d970
[COMPONENT][Language][ENTITY][ActorLanguage] Refactor cache keys in ActorLanguage. Add ActorLangauge::getActorRelatedLanguagesIds and use it in note filtering in the Language component 2021-12-10 10:19:23 +00:00
Diogo Peralta Cordeiro 60d31e097e
[COMPONENT][Notification] Support empty array of targets 2021-12-10 04:05:34 +00:00
Diogo Peralta Cordeiro b89f57ce93
[ENTITY][Note] Language can be null 2021-12-10 04:05:34 +00:00
Diogo Peralta Cordeiro dcc37b055d
[COMPONENT][Link] Remove relation to note when note is removed
Moved entity NoteToLink to the component
2021-12-10 04:04:56 +00:00
Diogo Peralta Cordeiro 5f167517ad
[ENTITY][Note] Add deleter 2021-12-10 02:46:25 +00:00
Hugo Sales b1585f0ef2
[ENTITY][Actor][ActorTag] Ensure only one copy of each tag is inserted 2021-12-09 22:23:17 +00:00
Hugo Sales ab9dd1db77
[CACHE][ENTITY][Actor] Refactor Actor so that all cache keys are kept in one cacheKeys function, so that we can more easily be certain there are no mismatches in cache keys between gets and deletes 2021-12-09 21:59:49 +00:00
Hugo Sales c137a484af
[ENTITY][ActorTag] Fix url in actor tag 2021-12-09 16:34:07 +00:00
Eliseu Amaro 774e32f834
[PLUGINS][TreeNotes] Working, however feed is still not formatted
[ENTITY][Note] Fix for getReplies()
2021-12-09 00:15:47 +00:00
Diogo Peralta Cordeiro 480a42cca5
[PLUGIN][ActivityPub] Introduce ActivitypubObject. Beware, inside the plugin, an Object can never be an Activity.
Many bug fixes and other major changes (interface changed, see EVENTS.md)
2021-12-08 23:24:23 +00:00
Eliseu Amaro b1227d36f1
[CARDS][Note] In conversation time ago information added 2021-12-08 22:48:04 +00:00
Hugo Sales c131e47176
[COMPONENT][Tag] Remove wrong canonicalization of tags in tag feed controller. Fix display of original tags 2021-12-07 20:10:59 +00:00
Diogo Peralta Cordeiro 63bf93d7f3
[CORE][Entity][Note] Language can be null 2021-12-05 21:03:13 +00:00
Hugo Sales 2a161c9c66
[PLUGIN][TagBasedFiltering] Block actor tags, but don't block notes from the current actor 2021-12-05 19:18:57 +00:00
Hugo Sales 259e07b259
[ENTITY][ActorTag][ActorTagBlock] Add 'use_canonical' column 2021-12-05 17:55:49 +00:00
Hugo Sales 9f445632b2
[PLUGIN][TagBasedFiltering] Expand to allow filtering by actor tags 2021-12-05 17:55:49 +00:00
Hugo Sales e29e1cc87c
[ENTITY] Rename 'getFrom' to 'getBy' 2021-12-05 17:55:46 +00:00
Hugo Sales 4f669d4e01
[ENTITY][NoteTag][Language] Add convinience cache getters 2021-12-05 17:54:58 +00:00
Hugo Sales a47a01abee
[ENTITY][ActorTagBlock][NoteTagBlock] Add ActorTagBlock and NoteTagBlock 2021-12-05 17:54:58 +00:00
Hugo Sales 314859b775
[ENTITY][NoteTag] Add 'use_canonical' column, which indicates whether the user wanted to canonicalize the tag or not (for themselves, the canonical field is still filled, for blocks) 2021-12-05 17:54:58 +00:00
Hugo Sales 969df371dd
[COMPONENT][Avatar] Small refactor 2021-12-05 17:54:58 +00:00
Eliseu Amaro 4501b7e85e
[CONTROLLER][UserPanel] Re-organised all settings forms. Added email, password, language forms separated from account or personal account info
[CORE][Form] Better PHPDoc and used is_null() for checks

[ENTITY][LocalUser] Add setNicknameSanitisedAndCached

[UTIL][Exception] Better NicknameNotAllowedException default message
2021-12-03 03:32:43 +00:00