friendica/src/Module
2023-08-03 20:36:19 +00:00
..
ActivityPub Centralize Vary header declaration in ActivityPub::isRequest 2023-07-08 22:24:01 -04:00
Admin Merge pull request #13246 from nupplaphil/feat/addons 2023-07-23 06:58:46 -04:00
Api Improvements for Youtube posta via API 2023-08-01 14:27:56 +00:00
Blocklist/Domain
Calendar Replace "group" with "circle" in the rest of the code 2023-05-27 22:01:45 -04:00
Contact Display the contact alias if the URL is no HTTP link 2023-06-18 16:49:38 +00:00
Conversation Decouple conversation creation from rendering 2023-07-08 16:57:52 -04:00
Debug Unified BBCode conversion, improved proxy functionality 2023-07-15 20:12:08 +00:00
DFRN
Diaspora
Filer
HTTPException
Item Merge pull request #13264 from MrPetovan/task/hide-blocklist 2023-07-09 21:26:59 +02:00
Media
Moderation Merge remote-tracking branch 'upstream/develop' into more-privacy 2023-07-16 09:41:55 +00:00
Notifications Escape HTML in system messages 2023-08-02 16:59:08 +02:00
OAuth Reformatted code 2023-07-23 20:20:46 +00:00
OStatus
Post
Profile Escape HTML in display names for inclusion in syndication link tags 2023-08-02 16:59:46 +02:00
Search Improved logging 2023-08-03 20:36:19 +00:00
Security
Settings Dedicated circle name for groups 2023-06-25 20:37:11 +00:00
Special Fix exception module not setting the HTTP response code 2023-07-09 22:45:46 -04:00
Update Decouple conversation creation from rendering 2023-07-08 16:57:52 -04:00
User Replace "group" with "circle" in the rest of the code 2023-05-27 22:01:45 -04:00
WellKnown
About.php
AccountManagementControlDocument.php
Acctlink.php
Apps.php
Attach.php
BaseAdmin.php
BaseApi.php
BaseModeration.php
BaseNotifications.php
BaseProfile.php
BaseSearch.php Replace "forum" by "group" in the rest of the code 2023-06-02 13:52:41 -04:00
BaseSettings.php
Bookmarklet.php
Circle.php Issue 13289: Ensure to not respect deactivated connector networks 2023-07-22 10:49:42 +00:00
Contact.php Display the contact alias if the URL is no HTTP link 2023-06-18 16:49:38 +00:00
Credits.php
Delegation.php Remove support for user.parent-uid = 0 2023-05-29 18:32:21 -04:00
Directory.php
Feed.php
FollowConfirm.php
Friendica.php Unify "Capability" 2023-07-26 21:44:31 +02:00
FriendSuggest.php
Hashtag.php
HCard.php
Help.php
Home.php
Install.php
Invite.php fixes registration link in invitations 2023-07-05 10:12:10 +02:00
Magic.php Merge remote-tracking branch 'upstream/develop' into lemmy 2023-06-18 17:38:39 +00:00
Maintenance.php
Manifest.php
NodeInfo110.php
NodeInfo120.php
NodeInfo210.php
NoScrape.php
Oembed.php
OpenSearch.php
Owa.php
ParseUrl.php
PermissionTooltip.php Replace "group" with "circle" in the rest of the code 2023-05-27 22:01:45 -04:00
Photo.php
Proxy.php
PublicRSAKey.php
RandomProfile.php
README.md
ReallySimpleDiscovery.php
Register.php Unified BBCode conversion, improved proxy functionality 2023-07-15 20:12:08 +00:00
Response.php
RobotsTxt.php
Smilies.php
Statistics.php Unify "Capability" 2023-07-26 21:44:31 +02:00
Theme.php
ThemeDetails.php
ToggleMobile.php Rework Module\ToggleMobile to check for local links 2023-07-26 19:11:39 +02:00
Tos.php Unified BBCode conversion, improved proxy functionality 2023-07-15 20:12:08 +00:00
Welcome.php Replace "group" with "circle" in the rest of the code 2023-05-27 22:01:45 -04:00
Xrd.php Centralize Vary header declaration in ActivityPub::isRequest 2023-07-08 22:24:01 -04:00

Friendica\Module

The Module namespace contains the different modules of Friendica. Each module is loaded through the App.

There are mainly two types of modules:

  • frontend modules to interact with users
  • backend modules to interact with machine requests

Frontend modules

This type of modules mainly needs a template, which are generally located at view/templates/.

A frontend module should extend the BaseModule, especially the content() method.

Backend modules

This type of modules mainly responds either with encoded XML or with JSON output. It isn't intended to respond with human readable text.

A frontend module should extend the BaseModule, especially the rawContent() method.

Routing

Every module needs to be accessed within a route. The routes are defined inside Router->collectRoutes().

Use the given routes as a pattern for further routes.

The routing library and further documentation can be found here.