Commit Graph

18566 Commits

Author SHA1 Message Date
tenma 0d9606ffbf [AP] Properly target public notices
ActivityPubPlugin:
- Use TO as principal audience, CC as secondary
- Update note validation
2021-07-16 19:44:34 +01:00
Miguel Dantas 4a56a61094 [RedisCache] Added plugin description, fixes 'empty msgid' error 2021-07-16 19:44:34 +01:00
Diogo Cordeiro 8d9b88a8bc [OverwriteThemeBackground] This new plugin will let the admin set a custom background theme independent 2021-07-16 19:44:34 +01:00
Diogo Cordeiro 616858ea89 [ExtendedProfile] Fix Admin menu option 2021-07-16 19:44:34 +01:00
Diogo Cordeiro 428878b6d8 [MODULES] Allow to delete third party plugins 2021-07-16 19:44:34 +01:00
Diogo Cordeiro 0d7c0069f2 [MODULES] Allow to upload third party plugins
Fixed some bugs
2021-07-16 19:44:34 +01:00
Diogo Cordeiro ca22279797 [MODULES] List all available plugins and allow enabling them via UI
Yet another revision of the Admin Plugin Management tool
2021-07-16 19:44:34 +01:00
Diogo Cordeiro 5524cf331c [DOCUMENTATION][DEVELOPERS][PLUGINS] Some updates to Plugins doc 2021-07-16 19:44:34 +01:00
Diogo Cordeiro a43c10582f [TagCloud] Add Readme 2021-07-16 19:44:34 +01:00
Diogo Cordeiro 8d848683ad [SearchSub][README] No longer is a default plugin since 8614cd77 2021-07-16 19:44:34 +01:00
Diogo Cordeiro 0c6d94fca8 [SamplePlugin] Review and update with the latest GNU social best practices 2021-07-16 19:44:34 +01:00
Diogo Cordeiro 68db757269 [ConversationTree] Format the plugin, add strict typing and fix docblocks 2021-07-16 19:44:34 +01:00
Diogo Cordeiro 76609d8f37 [OfflineBackup] Fix plugin 2021-07-16 19:44:34 +01:00
Diogo Cordeiro 33ac4aed32 [PLUGINS] Removed OpenX as the service doesn't exist anymore 2021-07-16 19:44:34 +01:00
Diogo Cordeiro 2d7ca37036 [GroupFavorited] Fix plugin 2021-07-16 19:44:34 +01:00
Diogo Cordeiro 3bf010ddd8 [ExtendedProfile] Hide 'Extra fields' from profile when no field was created by the sysadmin 2021-07-16 19:44:34 +01:00
Diogo Cordeiro 9a9fa89a0c [ExtendedProfile] Allow to delete custom profile field 2021-07-16 19:44:34 +01:00
Diogo Cordeiro fd1a7a5e68 [Plugins] Incorporated GNUsocialExtendedProfile as part of ExtendedProfile
Also improved a lot of the plugin and made things in a way it would make sense
2021-07-16 19:44:34 +01:00
Diogo Cordeiro c71fa9099f [GNUsocialProfileExtensions] Fixed plugin 2021-07-16 19:44:34 +01:00
Diogo Cordeiro 9bb6fc3f0d [PLUGINS] Removed GNUsocial{Photo, Photos, Video} as we don't need them anymore 2021-07-16 19:44:34 +01:00
Diogo Cordeiro 3909d49982 [PLUGINS] Removed GeoURL as the service doesn't exist anymore 2021-07-16 19:44:34 +01:00
Diogo Cordeiro a4680524a7 [ForceGroup] Modernized plugin and improved documentation 2021-07-16 19:44:34 +01:00
Diogo Cordeiro 5a679ac561 [DEFAULT] Add 'DirectionDetector' as a default plugin 2021-07-16 19:44:33 +01:00
Diogo Cordeiro 66edc49bcf [ChooseTheme] Fixed plugin 2021-07-16 19:44:33 +01:00
Diogo Cordeiro 0ecf9eb649 [BlankAd] Fixed plugin 2021-07-16 19:44:33 +01:00
Diogo Cordeiro 79cce82e50 [Awesomeness] Fixed plugin 2021-07-16 19:44:33 +01:00
Diogo Cordeiro 5ca939fdd2 [DEFAULT] Add 'AccountManager' as a default plugin 2021-07-16 19:44:33 +01:00
Diogo Cordeiro fa28646d43 [CORE] Core modules shouldn't show up in version action 2021-07-16 19:44:33 +01:00
Diogo Cordeiro 20a6f1d4f4 [CORE] Plugin API now extends a new Module API 2021-07-16 19:44:33 +01:00
Diogo Cordeiro 3821d2317e [PLUGIN API] Bug fixes and improvements 2021-07-16 19:44:33 +01:00
Diogo Cordeiro 99fe3e5a52 [CORE] Move plugin superclasses from /lib/ to /lib/modules/ 2021-07-16 19:44:33 +01:00
Diogo Cordeiro c18f26145c [CORE] Move core plugins to a new modules directory
For reference (raised by rozzin in IRC):

* http://foldoc.org/module
* http://foldoc.org/library
* http://foldoc.org/plugin

As noted by XRevan86, modules are not necessarily non-essential.
As we will keep the modules directory in GS root [therefore, near to
plugins/], it is evidenced the difference between both.

This is a simple yet fundamental structural change. It doesn't change
functionality but makes clearer the way we understand GNU social's
internals.
2021-07-16 19:44:33 +01:00
Miguel Dantas 8e7ab891a5 [Embed] Added support for inline images 2021-07-16 19:44:33 +01:00
tenma 0b30d932fc [DirectMessage] Major plugin rework
This commit does the necessary rework to store private messages
as Notices and to support Federation. The plugin's README presents
some more detail about the changes and future work that is still
required to do.
2021-07-16 19:44:33 +01:00
tenma 23512bea14 [CORE][ROUTES] Update urlmapper to search dynamic routes before static ones when generating URLs.
This solves the problem of routes that differ only in having
or not $_GET params. The ones not having params (static) were
being matched first during URL generation.

The way this problem was solved was by separating the $reverse
array in both $reverse_statics and $reverse_dynamics and explicitly
traversing this last one first in the generation function. Note that
maintaining the $reverse array and unshifting dynamic routes to its
head ( and therefore to the front of the static ones ) doesn't work
since even among dynamic routes the order of arrival should be kept.
2021-07-16 19:44:33 +01:00
tenma 06fb856d24 [CORE] Add new Notice scope for private messaging
Notice:
- Add MESSAGE_SCOPE scope

lib/*.stream:
- Filter out notices with MESSAGE_SCOPE scope
2021-07-16 19:44:33 +01:00
Miguel Dantas 9ab13191af [Embed] Added support for inline images 2021-07-16 19:44:33 +01:00
Miguel Dantas bf885fbef8 [Embed] Only resize thumbnail if it's bigger than the desired size 2021-07-16 19:44:33 +01:00
Diogo Cordeiro 233f731296 [DOCUMENTATION] Add release notes
Update INSTALL requirements
Update CHANGELOG
Update TODO
2021-07-16 19:44:33 +01:00
Diogo Cordeiro 3cac110148 [ActivityPub] Move models from 'classes' to 'lib/models' 2021-07-16 19:44:33 +01:00
tenma ec749aa350 [ActivityPub] Fix WebFinger event subscription
ActivityPubPlugin:
- remove reference to the first argument of onEndWebFingerProfileLinks, no need
as it is an object
2021-07-16 19:44:33 +01:00
tenma b4b5d3e009 [ActivityPub] Fix handling of Delete Activity
inbox_handler:
- Call stronger validation method for Delete Activity objects
- Take into account mixed object in handle_delete

Activitypub_delete:
- Add validation method for Delete Activity objects
2021-07-16 19:44:33 +01:00
Diogo Cordeiro 489cab0f87 [ActivityPub] This is the first release of the plugin 2021-07-16 19:44:33 +01:00
tenma 130c839adf [ActivityPub] Use queues for notice distribution
ActivityPubPlugin:
- Change event-based notice distribution to queues logic

ActivityPub/lib:
- Add queue handler class activitypubqueuehandler.php

Misc:
- Add documentation for the (Start/End)InitializeQueueManager events
2021-07-16 19:44:33 +01:00
tenma 081eec3608 [OStatus] Fix notice enqueue
OStatusPlugin:
- Enqueue in the last position, as it should be. No need to worry about
the OMB comment, this protocol no longer have queue handlers that could
cause a conflict.
2021-07-16 19:44:33 +01:00
tenma 20d101e1f2 [ActivityPub] Ensuring federation with other software
ActivityPubPlugin:
- Prevent sending a Delete for an Announce

Activitypub_announce:
- Update announce_to_array to add id, to and cc information to the retrieved object

Activitypub_follow:
- Add id to the arguments of follow_to_array, useful for Accept-Follow activities

Activitypub_notice:
- Fix notice validation, url isn't a MUST

Activitypub_inbox_handler:
- Make handle_follow use the received activity id for the later Accept-Follow

Activitypub_postman:
- Fix call to the updated announce_to_array
- Fix successive unnecessary calls to ActivityPubPlugin::actor_uri()
2021-07-16 19:44:33 +01:00
brunoccast 3472eca45b [ActivityPub] Fix notice creation
Activitypub_notice:
- Perform url test, use id when missing.
2021-07-16 19:44:33 +01:00
brunoccast 37936d101e [ActivityPub] Routes
ActivityPubPlugin:
- Update routes to properly use the updated URLMapper
2021-07-16 19:44:33 +01:00
brunoccast 9de1c34bc0 [ActivityPub] Ensuring notice deletion
ActivityPubPlugin:
- Minor onDeleteOwnNotice rewrite

Activitypub_inbox_handler:
- Add deletion check to incoming notice

Activitypub_postman:
- Call the correct getUrl function
2021-07-16 19:44:33 +01:00
brunoccast 87423a0191 [ActivityPub] Ensuring Notice Favor/Disfavor
ActivityPubPlugin:
- Minor re-write of favor/disfavor event handlers

Activitypub_postman:
like/undo-like:
- fix proper getUrl() call
misc:
- make all activities accumulate errors (may be needed later) and log some information about it
2021-07-16 19:44:33 +01:00