friendica/src/Module
Roland Häder 4e5179a7b3
Changes:
- added some missing type-hints
- fixed some documentation (e.g. empty * line between @param and @return/throws)
2022-07-19 18:02:38 +02:00
..
ActivityPub
Admin Merge remote-tracking branch 'upstream/develop' into server-detection 2022-07-16 12:44:21 +00:00
Api Merge remote-tracking branch 'upstream/develop' into server-detection 2022-07-16 12:44:21 +00:00
Contact Remove unused uid parameter in Item::newURI 2022-07-09 07:39:51 -04:00
Conversation
Debug
DFRN
Diaspora
Events
Filer
HTTPException
Item
Notifications
OAuth
Profile
Search Changes: 2022-07-19 18:02:38 +02:00
Security
Settings Split DBStructure & View to avoid DB-calls and dependencies for basic operations 2022-07-12 23:40:31 +02:00
Special
Update
WellKnown
AccountManagementControlDocument.php
Acctlink.php
Apps.php
Attach.php
BaseAdmin.php
BaseApi.php
BaseNotifications.php
BaseProfile.php
BaseSearch.php Changes: 2022-07-19 18:02:38 +02:00
BaseSettings.php
Bookmarklet.php
Contact.php
Credits.php
Delegation.php
Directory.php
Feed.php
FollowConfirm.php
Friendica.php
FriendSuggest.php
Group.php
Hashtag.php
HCard.php
Help.php
Home.php
Install.php Split DBStructure & View to avoid DB-calls and dependencies for basic operations 2022-07-12 23:40:31 +02:00
Invite.php
Magic.php
Maintenance.php
Manifest.php
NodeInfo110.php
NodeInfo120.php
NodeInfo210.php
NoScrape.php
Oembed.php New function to exit the program 2022-05-18 02:13:54 +00:00
OpenSearch.php
Owa.php
ParseUrl.php
PermissionTooltip.php
Photo.php
Proxy.php
PublicRSAKey.php
RandomProfile.php
README.md
ReallySimpleDiscovery.php
Register.php
RemoteFollow.php
Response.php
RobotsTxt.php
Smilies.php
Statistics.php
Theme.php
ThemeDetails.php
ToggleMobile.php
Tos.php
Welcome.php
Xrd.php

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.