.. | ||
AccountManagementControlDocument.php | ||
Acctlink.php | ||
Apps.php | ||
Attach.php | ||
Babel.php | ||
Contact.php | ||
Credits.php | ||
Feed.php | ||
Feedtest.php | ||
Filer.php | ||
Followers.php | ||
Following.php | ||
Group.php | ||
Hashtag.php | ||
Inbox.php | ||
Install.php | ||
Itemsource.php | ||
Localtime.php | ||
Login.php | ||
Logout.php | ||
Magic.php | ||
Manifest.php | ||
Nodeinfo.php | ||
Objects.php | ||
Oembed.php | ||
Outbox.php | ||
Owa.php | ||
Photo.php | ||
Profile.php | ||
Proxy.php | ||
README.md | ||
Register.php | ||
Statistics_json.php | ||
Tos.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 routing mechanism is using a PSR-7 based routing and the routes are defined inside Router->collectRoutes()
.
Use the given routes as a pattern for further routes.
The routing library can be found here.