19b8a7648e
[PLUGIN][ActivityPub] Implement Avatar support
2021-12-05 20:08:14 +00:00
2a161c9c66
[PLUGIN][TagBasedFiltering] Block actor tags, but don't block notes from the current actor
2021-12-05 19:18:57 +00:00
9f445632b2
[PLUGIN][TagBasedFiltering] Expand to allow filtering by actor tags
2021-12-05 17:55:49 +00:00
e29e1cc87c
[ENTITY] Rename 'getFrom' to 'getBy'
2021-12-05 17:55:46 +00:00
c40866ecf6
[PLUGIN][TagBasedFiltering] Add TagBasedFiltering plugin, which allows filtering feeds by note tags and (soon) actor tags
2021-12-05 17:54:58 +00:00
1457aa8220
[UI][PLUGIN][DeleteNote][EVENT] Add 'AddExtraNoteActions' event, which can be leveraged to add extra actions on each note, but which are normally collapsed
2021-12-05 17:54:58 +00:00
9512890264
[PLUGIN][ActivityPub] Implement Actor Update
...
Diverse minor bug fixes
2021-12-05 03:11:08 +00:00
778cb57d83
[PLUGIN][ActivityPub] Finish base ActivityStreams 2.0 interface
...
Instructions below
To extend an Activity properties do:
public function onActivityPubValidateActivityStreamsTwoData(string $type_name, array &$validators): bool {
if ($type_name === '{Type}') {
$validators['attribute'] = myValidator::class;
}
return Event::next;
}
The Validator should be of the form:
use ActivityPhp\Type;
use ActivityPhp\Type\Util;
use Plugin\ActivityPub\Util\ModelValidator;
class myValidator extends ModelValidator
{
/**
* Validate Attribute's value
*
* @param mixed $value from JSON's attribute
* @param mixed $container A {Type}
* @return bool
* @throws Exception
*/
public function validate($value, $container): bool
{
// Validate that container is a {Type}
Util::subclassOf($container, Type\Extended\Object\{Type}::class, true);
return {Validation Result};
To act on received activities do:
public function onActivityPubNew{Type}(&$obj): bool {
To add information to Activities being federated by ActivityPub do:
public function ActivityPubAddActivityStreamsTwoData(string $type_name, &$type): bool {
To implement an ActivityStreams 2.0 representation do:
public function onActivityPubActivityStreamsTwoResponse(string $route, arrray $vars, ?TypeResponse &$response = null): bool {
if ($route === '{Object route}') {
$response = ModelResponse::handle($vars[{Object}]);
return Event::stop;
}
return Event::next;
}
2021-12-04 21:05:07 +00:00
044649c745
[PLUGIN][VideoEncoder] Some videos don't have images (video stream), only audio, handle that
2021-12-03 03:32:44 +00:00
582519e13e
[COMPONENT][Attachment] Do not show download links for non-local attachments
2021-12-03 03:32:43 +00:00
ff5f346fec
[PLUGINS][Oomox] Further checks done when handling form requests. Improved documentation, fixed typos and diminished repeated calls
2021-12-03 03:32:38 +00:00
b66873e289
[PLUGIN][StoreRemoteMedia] Do not save empty files
2021-12-03 01:16:57 +00:00
70ed04a7db
[COMPONENT][Link] Fix some minor issues with empty headed links, typo in event handler's name, and refactor entity to inside component
2021-12-03 00:46:52 +00:00
bded039282
[PLUGIN][Embed] try catch absence of favicon
2021-12-02 22:49:27 +00:00
2e11001b8f
[PLUGIN][Embed] Fix links
2021-12-02 22:21:49 +00:00
2445b5318d
[PLUGIN][Embed] Make it work when content-length header is not provided
2021-12-02 21:26:06 +00:00
bfec10fc95
[COMPONENT][Attachment][Entity][Attachment] getThumbnail can be null
2021-12-02 21:26:05 +00:00
12557a1e16
[PLUGINS][Oomox] Reset theme colors added
2021-12-02 20:26:27 +00:00
eeaad19754
[Attachment] Move Controller and Entities to a Component
...
There's no problem in having the templates in the core
2021-12-02 15:14:07 +00:00
37ef8cddfa
[ENTITY][Note] Add getLanguageLocale() and getNoteLanguageShortDisplay()
...
[CARDS][Note] Render note's language short display
[PLUGINS] Bring back titles to Reply, Repeat and Favourite actions
2021-12-02 15:05:49 +00:00
d044039272
[FreeNetwork] Initial multi-protocol support
2021-12-02 14:23:21 +00:00
dbaee08038
[FreeNetwork] Move mentions logic from AP to FN and handle local webfinger mentions properly
2021-12-02 11:12:04 +00:00
53c46127c1
[ActivityPub][Explorer] Store remote's url properly
2021-12-02 11:12:03 +00:00
6f543ccc06
[ActivityPub][Model][Activity] Translate including objects
2021-12-01 20:53:51 +00:00
dcbb3488c4
[PLUGINS][Reply] Fix onAppendCardNote return
2021-12-01 19:47:45 +00:00
b7fe924bdd
[TOOLS][DOCS] Add missing doc blocks, as signaled by doc-checker
2021-12-01 19:47:44 +00:00
0b57b20d38
[UI][PLUGIN][Reply][Favourite][ENTITY][Feed] Remove replies and favourite links from navigation/view.html.twig and add them to the feeds section
2021-12-01 19:47:43 +00:00
36613a826d
[CONTROLLER][PLUGIN][Reply] Move reply controller to it's plugin
2021-12-01 19:47:43 +00:00
3fbd2cd2b9
[PLUGIN][RelatedTags] Remove duplicate results
2021-12-01 19:47:41 +00:00
424df54a1b
[ActivityPub] Add HTTP Signatures
2021-12-01 19:47:41 +00:00
123544fa50
[ActivityPub] Port Postman
2021-12-01 19:47:40 +00:00
df3fbbc9e7
[ActivityPub] Add ActivityToType
...
Minor bug fixes
2021-12-01 19:47:39 +00:00
c8ba81897c
[PLUGINS][Reply] getReplyToNote performance improvement
...
[CSS] Replies padding fix
2021-11-29 23:12:09 +00:00
01078e20fb
[PLUGINS][Reply] Fix return on getReplyToNote
...
The array contained an object, the result was within that object and not the object itself.
2021-11-29 23:12:09 +00:00
db33800ade
[PLUGINS][Reply] Array key 'reply_to' checked if it exists.
...
Plugin\Reply\Entity\NoteReply::getReplyToNote lacked a check to make sure the 'reply_to' key existed within the array resulting from the query.
2021-11-29 23:12:09 +00:00
3477ad5efc
[PLUGINS][RelatedTags] Add related tags plugin and needed infrastructure. Initial work on pinned content
2021-11-29 22:42:51 +00:00
6680772e47
[UI][I18N][UTIL][FormFields][Language][COMPONENTS][Posting][PLUGINS][Reply] Factor out translation from FormFields::language
and remove help text in cases from Posting and Reply
2021-11-29 22:42:50 +00:00
798a5f3796
[PLUGINS][Oomox] HTML's input[type='color'] doesn't support alpha values. Feature to apply custom shadow color removed as a result.
2021-11-29 22:42:48 +00:00
6ec0b9f077
[CSS] User panel CSS fixes.
...
[PLUGINS][Oomox] Reformatted file.
2021-11-29 22:42:48 +00:00
04257c5fd9
[PLUGINS][Oomox] Resulting forms are now aware of user defined colours and fallback to defaults.
2021-11-29 22:42:48 +00:00
3da524af58
[PLUGINS][Oomox] WIP Settings for both the light and dark themes.
2021-11-29 22:42:47 +00:00
56526c9ba6
[ActivityPub][Inbox] Restore Create Note Functionality
...
Minor bug fixes
2021-11-29 22:42:46 +00:00
7145dba8af
[PLUGINS][Oomox] getEntity added.
...
[CORE][Cache] exists added.
2021-11-27 15:14:17 +00:00
42f40f9ebe
[CORE][CONTROLLER][Network] Refactor term 'network' into 'feeds'
2021-11-26 23:34:37 +00:00
d46a6163a0
[PLUGINS][Oomox] Hotfix: cache wasn't set. Proper labels.
2021-11-26 15:01:30 +00:00
180ae15647
[PLUGINS][Oomox] User theme CSS file is served. Settings page needs polish, and option to revert changes.
2021-11-26 14:45:28 +00:00
7fa2418e54
[PLUGINS][Oomox] Theme colours WIP.
2021-11-26 14:45:28 +00:00
6cd7be6abc
[UI][CONTROLLER][ENTITY][DOCS] Refactor term 'timeline' into 'feed'
2021-11-26 13:05:23 +00:00
b1262919da
[TOOLS] Fix (most) issues found by PHPStan
2021-11-25 23:08:30 +00:00
98b719dca3
[COMPONENTS][Tag] Split tag into words and stem each
2021-11-25 20:37:53 +00:00
a64c488e21
[PLUGINS] Add StemWord plugin, which stems words, given a language. Currently used for tags
2021-11-25 20:37:53 +00:00
d8147cbd2d
[PLUGINS][AttachmentShowRelated] Fixed note template error. Fixed if statement.
...
[CORE][Controller] Commented CSP out.
2021-11-24 12:46:32 +00:00
1dd86a2302
[TESTS] Many tests fixes (already fixed the dependant code)
2021-11-20 21:32:25 +00:00
0aa43783e8
[PLUGIN][Repeat] Repeat now repeats attachments as it should.
...
[COMPONENTS][Posting] Now accepts attachments already processed.
[ENTITY][Note] Added getAttachmentsWithTitle().
2021-11-17 17:14:15 +00:00
89d36a68e5
[ENTITY][Actor] Add is_local, it's common to depend, and this makes it much faster, with a low space cost
2021-11-16 23:26:20 +00:00
2561823550
[PLUGIN][Repeat] Fixed corner case where the user would return to repeat form page and try to repeat the note again.
2021-11-16 19:39:03 +00:00
acc43a276b
[PLUGIN][Reply] User's own replies wont display their own nickname on rendering the original note.
2021-11-16 19:36:17 +00:00
9dbbc9e18e
[PLUGIN][Repeat] Fixed bug where checks dependant on user being logged in were attempted.
2021-11-15 19:25:52 +00:00
6e90e51f0c
[PLUGIN][CONTROLLER][Repeat] Fixed Repeat controller to update note_repeat table on removal.
2021-11-15 19:25:52 +00:00
b71e869843
[PLUGIN][Repeat] onAppendCardNote added. getNoteRepeats implemented.
2021-11-15 19:25:52 +00:00
f667b558f7
[TESTS] Fix SecurityTest
...
This test was broken by changes in the routing and in the templates.
However, this revealead a potential open redirect and duplicated code
in the Reply and Favourite plugins
2021-11-11 12:39:28 +00:00
d0f9fde7c2
[PLUGIN][Reply] WIP. Note complementary info now shows who has replied on the original note!
2021-11-10 15:44:28 +00:00
f2f1bdc145
[PLUGIN][Reply] Separated replies from Note table.
...
[PLUGIN][Repeat] Deleted unnecessary card note template, info now to
appended at the end of note.
[PLUGIN][TreeNotes] WIP to accomodate reply plugin changes.
[TWIG][Runtime] Removed getAdditionalTemplateVars event.
2021-11-10 13:29:53 +00:00
cf09b48e92
[PLUGINS][Repeat] Added note_repeat entity, fixed visual discrepancies, and completed the expected functionality.
...
[ENTITY][Note] Removed repeat_off from table. It is now part of the Repeat plugin.
2021-11-01 21:19:56 +00:00
c862c9bf18
[ActivityPub] Make remote mentions great again
2021-11-01 12:16:46 +00:00
9a23e03330
[PLUGINS][Repeat] Repeat template override WIP.
2021-10-29 17:26:20 +01:00
4d9a5aae5a
[ActivityPub] Always explicitly compare the results of Event::handle
to the constants next
or stop
2021-10-28 17:28:02 +01:00
3388e0e8f1
[TWIG][Cards] Note template fully refactored. Template has now macros for different views for the card.
...
[PLUGINS][Repeat] WIP: Action added.
[PLUGINS][Favourite] Changes to accomodate note card template refactoring.
[CSS] Fixed textarea from being resized horizontally.
2021-10-27 20:44:51 +01:00
d47f125894
[PLUGINS][Favourite] Refactored redirection to previous url. User is now unable to do invalid actions (ex. favour an already favourited note).
...
[PLUGINS][ActivityPub] Fixed favour route id to be more consistent.
2021-10-27 20:44:50 +01:00
51c984849f
[ActivityPub] Port Explorer
2021-10-27 04:22:19 +01:00
45f65baf96
[PLUGINS][Embed] Polished embed template in order to better utilize space.
...
[CSS][Feed] Embed related additions.
2021-10-27 04:19:34 +01:00
0407ac38cf
[AudioEncoder] Introduce basic audio plugin to provide an attachment template and duration metadata for audio mimetype
2021-10-27 04:19:34 +01:00
ebf675ec59
[Plugins][FAVOURITE] Redirect added. Only redirects from the route the user came from, not the anchored note. To be added. Further corner cases fixed.
2021-10-27 04:19:33 +01:00
56ba7bd845
[ImageEncoder][VideoEncoder] Properly decide when to take action
2021-10-27 04:19:33 +01:00
60b15ea79d
[Plugins][FAVOURITE] No longer a form, a link to a new page is provided instead. The amount of forms per page were blocking rendering for the majority of its duration.
2021-10-27 04:19:32 +01:00
299e893ca9
[TOOLS][PHPStan][DocCheck] Fix errors found by PHPStan and Doc Check
2021-10-27 04:19:31 +01:00
028ea79fff
[CORE][Router] Properly act on Accept headers
2021-10-27 04:19:30 +01:00
f78cfed41a
[TWIG][CSS] Template refactoring, classes and their respective CSS is now more consistent. CSS variables are back.
2021-10-27 04:19:29 +01:00
8fdc52636f
[ActivityPub] Port RSA
2021-10-27 04:19:29 +01:00
8544fe157b
[FreeNetwork] First steps porting webfinger/lrdd to v3, GET webfinger requests already have a basic result
2021-10-27 04:19:29 +01:00
9109c61af5
[TOOLS][CS-FIXER] Run new PHP CS Fixer config. Notably, adds strict_types
2021-10-27 04:19:28 +01:00
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
3cb6563c40
[TWIG][EndShowStyles] Route as an event argument
2021-10-06 00:34:27 +01:00
78dd7137f8
[PLUGIN] ProfileColor color settings can be null.
2021-10-05 19:12:51 +01:00
a268aee53a
[CSS][PLUGIN] ProfileColor now handles both the background and foreground colors. Various button CSS fixes.
2021-10-05 19:04:30 +01:00
1705b543d3
[PLUGIN] Delete note action added. If the author of a note is logged in, the action will be added to that note. Once the author presses it, the note will be deleted from the DB.
2021-10-04 17:11:44 +01:00
80d1be323d
[COMPONENTS][Search][CSS] Extra header forms now accessible through a details element. Re-organizing templates structure.
2021-10-04 12:17:14 +01:00
d38ad60c76
[COMPONENTS][CSS] Adding components styling properly.
2021-10-01 17:25:51 +01:00
19c2a91232
[TOOLS][PHPStan][ProfileColor][ENTITY][TEST][AttachmentThumbnail] Fix issues reported by phpstan
2021-09-27 19:50:56 +01:00
4a17adc182
[PLUGINS][ProfileColor] Actors are now shown with their own colors for other.
2021-09-25 19:40:17 +01:00
7b8eb3fda9
[PLUGINS][ProfileColor] Current color is now selected by default. Not found exception is now handled.
2021-09-25 19:40:17 +01:00
a681acae67
[ENTITY][AttachmentThumbnail] Every image should have width and height attributes
2021-09-25 19:40:11 +01:00
808da203ad
[PLUGINS][ProfileColor] Settings page render problem fixed. ColorType given data wasn't a string.
2021-09-25 12:51:25 +01:00
57b94af9f6
[PLUGINS][ProfileColor] Re-organized plugins templates and assets. ProfileColor plugin fixed.
2021-09-25 11:17:56 +01:00
3268559f9a
[AttachmentThumbnail] Use other thumbnail when requested isn't available and there's no original file
2021-09-23 16:19:50 +01:00
bb81f1f717
[Embed] Use new attachment route format
2021-09-23 14:54:21 +01:00
6a2c3eb711
[ImageEncoder] Ensure proper memory limits are used when loading images from disk
2021-09-23 14:54:21 +01:00
a557ba0224
[Timelines][Plugins][Left] Plugins now provide their path ID. Feed redone as it's own independant template.
2021-09-22 16:47:06 +01:00
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
7beb5c2995
[GSFile] Fix sanitize configuration
2021-09-22 15:13:46 +01:00
3f618c2674
[TWIG][Cards][Profile] Card templates! Profile now has a card template to be used everywhere you need to show quick actor information.
2021-09-22 14:11:59 +01:00
9e4c43e8fd
[ActivityStreamsTwo] Further work on routes and use render event on note's content
2021-09-20 17:05:04 +01:00
7813723ca1
[ActivityPub] Inbox must work without actor, specify source for AS2
2021-09-20 17:03:23 +01:00
543853c374
[PLUGINS][Actor][Profile] Current user profile in line with other users. Directory plugin actor template standardized.
2021-09-20 14:39:11 +01:00
67d62cf37b
[TWIG] Remove kludge event TwigPopulateVars
2021-09-18 07:27:35 +01:00
fda998e335
[Avatar] We definitely don't need an event to retrieve avatar urls
2021-09-18 07:26:10 +01:00
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
941cbe6599
[Actor] Refactor GSActor into Actor
2021-09-18 05:12:17 +01:00
6c899b7b61
[Plugins][Components] Fixed issue where right panel form was rendered multiple times in actors plugin page. Actors page done.
2021-09-18 05:12:16 +01:00
e4b650be46
[PLUGINS][Settings] Removed unused templates. Directory plugin templates now using actual templates. Notification settings using details element now.
2021-09-18 05:12:16 +01:00
d6f31d102a
[CORE][ActivityStreamsTwo][ActivityPub] Set all routes
...
Allow global routes to act for every actor
Fix Favoured stream query
2021-09-18 05:12:15 +01:00
42f9a6a79c
[CSS][Attachments] Attachments page view done. Standardized left and right panels sections. Applying styling through key classes to be defined in docs.
2021-09-18 05:12:10 +01:00
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
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
365edbaff0
[ActivityStreamsTwo] Initial Actor support
...
Various bug fixes
2021-09-15 10:26:53 +01:00
7c465bba5f
[NOTE] Add mimetype to notes
2021-09-14 13:13:45 +01:00
b74d944ae3
[TOOLS][PHPStan] Raise PHPStan level to 3 and fix new errors
2021-09-14 13:13:45 +01:00
4e30e5aad9
[TOOLS] Fix all issues found by PHPStan level 2
2021-09-14 13:13:44 +01:00
4b1780a2ee
[ActivityStreamsTwo] Introduce a structure for data representation in ActivityStreams 2.0
...
Type factory borrowed from landrok/activitypub
2021-09-14 13:13:44 +01:00
8123086881
[Embed] Fix normalizeEmbedLibMetadata for thumbnails starting with '/'
2021-09-14 13:13:43 +01:00
61071a6821
[PLUGINS][Reply][Repeat][Favourite] Base template semantic rework. Reply, repeat and favourite respective classes are now assigned in their NoteHandlerPlugin.
2021-09-14 13:13:43 +01:00
681144b380
[PLUGINS][Favourite][CSS] Favourite label now shows whether it's favourited or not already.
2021-09-14 13:13:42 +01:00
add8f4a52f
[TOOLS] Fix all errors found by PHPStan level 1
2021-09-14 13:13:42 +01:00
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
c612fe6df5
[PLUGINS][Reply][CSS] Help text added. Styling reply page done.
2021-09-14 13:13:41 +01:00
bdde047dfa
[PLUGINS][Embed] Embed references a table that does not exist. It seems to mean attachment_embed
, rather than link_to_attachment
2021-09-14 13:13:40 +01:00
16cde6dfd7
[PLUGINS][Reply] Redirect back to previous URL on note reply. Move controller to own class
...
This should be safe against open redirects, as it doesn't allow redirecting to other domains
2021-09-14 13:13:40 +01:00
61d95265a9
[PLUGINS][Repeat] Delete note repeat rather than the original Note. Don't fetch when we want a simple count
2021-09-14 13:13:39 +01:00
be27a10244
[EVENTS] Rename event RouteInFormat
to ControllerResponseInFormat
2021-09-14 13:13:39 +01:00
6fdec483cd
[Reply] RedirectionException wasn't allowing other handlers to do their job.
2021-09-14 13:13:39 +01:00
85db9464ca
[Reply] Fixed reply plugin action, there was no need to query the database when handling.
2021-09-14 13:13:39 +01:00
f000532b7e
[Favourite][Reply][Repeat] The respective svg for note actions is assigned. Repeat note handler needs work. "An exception has been thrown during the rendering of a template ("No value in table note matches the requested criteria")." exception thrown on repeat.
2021-09-14 13:13:39 +01:00
8880af8197
[ActivityStreamsTwo] Introduce a structure for data representation in ActivityStreams 2.0
...
Type factory borrowed from landrok/activitypub
2021-09-14 13:13:37 +01:00
1ee8df1494
[DOCS][Developer] Elaborate on implementing and configuring a module
2021-09-14 13:13:37 +01:00
ab142ab52d
[FileQuota] Update plugin to respect the new entities
2021-09-14 13:13:35 +01:00
415089914f
[VideoEncoder] Port plugin to v3 properly
2021-09-14 13:13:35 +01:00
2b7232891e
[ImageEncoder] Make plugin respect instance config and use the new core interface
2021-09-14 13:13:35 +01:00
811caaadf9
[MODULES][PLUGINS] Move noteActionHandle utility to NoteHandlerPlugin which plugins which handle actions on notes should extend
2021-09-14 13:13:34 +01:00
458b6d0009
[UI] Rename all forms to more specific names, to avoid form name collisions
2021-09-14 13:13:33 +01:00
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
6799052ff5
[ATTACHMENTS] Ensure thumbnail dimensions are bounded and change way cropping is implemented
2021-09-14 13:13:32 +01:00
f67173061b
[VideoEncoder] Add plugin composer dependency php-ffmpeg/php-ffmpeg
2021-09-14 13:13:32 +01:00
ac45008240
[Embed] Move composer dependency embed/embed from core to plugin
2021-09-14 13:13:31 +01:00
177801c81b
[Embed][StoreRemoteMedia] Re-add {white,black}list check config
2021-09-14 13:13:31 +01:00
78f4ccb576
[ImageEncoder] Fix ImageSanitization, it should never modify the input image
2021-09-14 13:13:31 +01:00
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
1906d4f276
[Embed] Add UI element and fix some bugs
2021-09-14 13:13:27 +01:00
ef1a9ce3b1
[ImageEncoder] Handle VIPS unsupported image type
2021-09-14 13:13:27 +01:00
9e4cac0123
[ENTITY] Refactor RemoteURL entities to Link
...
RemoteURL was being an awfully confusing term.
2021-09-14 13:13:26 +01:00
fb28a3656a
[Embed] Retrieve remote thumbnails and other improvements
2021-09-14 13:13:26 +01:00
7a0a6f1f22
[Embed] Fix usage of EmbedLib
...
Fix other minor bugs
2021-09-14 13:13:26 +01:00
d076781c74
[AttachmentToNote][Attachment] Add title getter to Attachment
2021-09-14 13:13:26 +01:00
bac18715c5
[StoreRemoteMedia] Implement the first version of it in v3
2021-09-14 13:13:25 +01:00
fbbbde4275
[AttachmentShowRelated] Bug fix after re-introduction of NoteActions
2021-09-14 13:13:25 +01:00
5de0704de2
[Favourite][TWIG][CSS] Favourite shows alt-text and properly sets colours. Titles translated on the right panel.
2021-09-14 13:13:24 +01:00
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
a7c8da0534
[FileQuota] We'll get back to this plugin later
2021-09-14 13:13:24 +01:00
061a85d6b3
[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-09-14 13:13:23 +01:00
cdf3426567
[CONTROLLR][UserPanel][PLUGINS] Add submit button to notification settings for each transport
2021-09-14 13:13:23 +01:00
1647c5391f
[Favourite][TWIG][CSS] Favourite now works.
2021-09-14 13:13:22 +01:00
77742c56c3
[ImageEncoder] Don't print_r the exception as that leads to an OOM error
2021-09-14 13:13:18 +01:00
c8a8e94d48
[SETTINGS][PLUGIN][CONTROLLER] Populate profile tabs event added. Settings base template populated with such event for plugins and components.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro>
2021-09-14 13:13:12 +01:00
6dd0292397
[SETTINGS][ROUTES][CONTROLLER] Settings overhaul, refactoring to accommodate new global settings view. WIP, component settings aren't shown at the moment.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro>
2021-09-14 13:13:12 +01:00
701b4967b4
[TWIG] Microformats added to timeline, note's view and media. Should be backwards compatible as well.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro>
2021-09-14 13:13:06 +01:00
ee3ed5f096
[TWIG][CSS] Timeline WIP. Creating a notice is now done on the right panel. HTML structure improvements, such as the timeline divided from the navigation div.
2021-09-14 13:13:05 +01:00
a5348f2427
[MEDIA][AttachmentThumbnail] Add mimetype to Entity
2021-09-14 13:13:04 +01:00
41dcef3c7b
[Media] EncoderPlugins should handle the views that concern them
...
Ensure the intended filetypes and mimetypes during Vips conversions (part 2)
Sanitize Attachments instead of Validate (part 2)
Various bug fixes
2021-09-14 13:13:04 +01:00
481e953cde
[Media] File quota should be triggered by the Core
2021-09-14 13:13:03 +01:00
c8cf8c3f13
[FILE][TemporaryFile] Fix various issues now that we also have Symfony's file abstractions
2021-09-14 13:13:03 +01:00
d31c3b1784
[AUTOGENERATED] Update autogenerated code
2021-09-14 13:13:01 +01:00
2b83a4b627
[UTILS][TemporaryFile] Change way TemporaryFile takes arguments and it's internal implementation
2021-09-14 13:12:58 +01:00
6a999b8237
[Embed] Do not create AttachmenThumbnail
2021-09-14 13:12:57 +01:00
8f43c8b405
[AUTOGENERATED] Update auto generated code
2021-09-14 13:12:57 +01:00
4fcccb1d1c
[CORE][ImageEncoder] Add width and height back in attachment entity and allow for differently sized thumbs
...
The strategy adopted involves predicting the thumb size as we did in v2 before having vips resize
2021-09-14 13:12:56 +01:00
1c9f807595
[Embed] Fix some bugs and change AttachmentEmbed::url to ::media_url
2021-09-14 13:12:56 +01:00
a3860e6257
[Embed] Local config
2021-09-14 13:12:56 +01:00
837f644458
[UTIL][Formatting] Add twigRenderFile
2021-09-14 13:12:55 +01:00
5067bcd074
[ImageEncoder][FileQuota] Move quota enforcement to it's own plugin, so it can be easily shared and disabled
2021-09-14 13:12:55 +01:00
8cb64ede7f
[AttachmentShowRelated] Move Attachment related to plugin
2021-09-14 13:12:55 +01:00
d11615ded6
[Avatar][Embed] Change use of TemporaryFile::getPath to getRealPath
2021-09-14 13:12:55 +01:00
aad4bddedd
[ImageEncoder] Implement attachment validation for images. This limits the maximum dimensions of the file, enforces a per file, per user and per user-month size quota and fixes the title if it's a filename, by replacing the extension to the new one
2021-09-14 13:12:54 +01:00
110c2572a4
[TEMPLATES] Minor refactoring, extending left was weird
2021-09-14 13:12:54 +01:00
ced610d942
[Embed] Use Formatting utilities rather than substr and such
2021-09-14 13:12:53 +01:00
9008bee558
[Embed] Add docblock to handle function to pass pre-commit hook
2021-09-14 13:12:53 +01:00
b1e514832b
[Embed][ENTITY] Fix embed route and use attachment_view rather than _show. Rename Entity::have to Entity::has, because grammar
2021-09-14 13:12:52 +01:00
30107de079
[Embed] Fix plugin. Only attempt to show an image, if we have one
2021-09-14 13:12:52 +01:00
a7ef2babe6
[AUTOGENERATED] Update autogenerated code
2021-09-14 13:12:52 +01:00
bb1ba11fcf
[AUTOGENERATED] Run bin/generate_entity_fields for the Embed plugin
2021-09-14 13:12:51 +01:00
4cd152f640
[Embed] Review and port v2 code
2021-09-14 13:12:51 +01:00
7dab063a72
[PLUGINS] Remove scripts. These will need to be implemented with Commands
2021-09-14 13:12:48 +01:00
3d8c348cb8
[Emebed] Add Embed plugin and initial cleanup
2021-09-14 13:12:24 +01:00
8dff0b1d0c
[Favourite] Make twig event operate on array rather than string
2021-09-14 13:12:23 +01:00
aeabf64051
[PLUGIN] Change base class from Module to Plugin for all plugins
2021-09-14 13:12:23 +01:00
3afa872cec
[UI] Use thumbnail path for thumbs
2021-09-14 13:12:22 +01:00
e1995f44ce
[ATTACHMENTS] Move thumbnail controller to core and cleanup
2021-09-14 13:12:22 +01:00
3a7e92ed01
[ImageEncoder] Change preferred type to always be WEBP
2021-09-14 13:12:22 +01:00
0c8c5a4b87
[ImageEncoder] Fix error when not providing a width and/or height
2021-09-14 13:12:22 +01:00
e385a9ac29
[ATTACHMENTS] Even more further refactoring
...
Introduce Encoder plugins Instead of abstract upload and thumb modules
Ported attachment routes. In v3 thumbnail depends on existing attachment
so route updated accordingly.
2021-09-14 13:12:18 +01:00
0eaccc32fe
[ATTACHMENTS] Further refactoring
...
Some key points:
- Components and Plugins shouldn't extend Module directly
- Avatars should be fetched via GSActor ID, not by nickname as that isn't unique
- Avatar now is a separate Component
- Common file utilities are now to be placed in Core\GSFile, this will
handle storage and trigger validation
- Some bug fixes
2021-09-14 13:11:51 +01:00
65999bd183
[Poll] Move tables from core to plugin
2021-09-14 13:11:51 +01:00