friendica/src/Module
2022-12-24 08:03:37 +00:00
..
ActivityPub Tighten profile restriction feature 2022-12-01 08:03:35 -05:00
Admin Three systems added to the federation statistics 2022-12-20 22:29:53 +00:00
Api Reports: The reporting contact id is added 2022-12-24 08:03:37 +00:00
Blocklist/Domain
Calendar Apply calendar owner custom theme 2022-12-15 23:14:45 -05:00
Contact The GNU-Social import is removed 2022-12-21 22:21:22 +00:00
Conversation Merge pull request #12094 from MrPetovan/task/hide-reply-counts-ping 2022-11-04 18:00:15 +01:00
Debug
DFRN Remove parameter-less call of OStatus\Salmon module in DFRN\Notify 2022-12-10 11:45:53 -05:00
Diaspora
Filer
HTTPException
Item Only search for empty quoted reshares (Diaspora type) 2022-12-13 23:26:58 +00:00
Media Update src/Module/Media/Photo/Upload.php 2022-11-30 18:16:55 +01:00
Moderation Only calculate the last login on a "date" level 2022-12-11 03:26:45 +00:00
Notifications Suppress notifications for forum users in Module\Notifications\Ping 2022-12-14 22:01:14 -05:00
OAuth
OStatus Check that $probed key exists before comparison in OStatus\Subscribe 2022-12-15 23:29:06 -05:00
Post Issue 12189: Quote share a feed now shares the linked feed url 2022-11-24 06:36:08 +00:00
Profile Merge pull request #12447 from MrPetovan/bug/12441-profile-contacts 2022-12-19 17:14:43 +01:00
Search The GNU-Social import is removed 2022-12-21 22:21:22 +00:00
Security Delete mod/settings.php and its reference 2022-11-09 06:26:08 -05:00
Settings Fix link to profile page in custom profile fields settings 2022-12-18 22:49:49 -05:00
Special
Update Don't compute system.update_interval when it's -1 (disabled) 2022-12-19 10:05:21 -05:00
User The GNU-Social import is removed 2022-12-21 22:21:22 +00:00
WellKnown
About.php Redirect in a different way 2022-12-12 11:24:20 +00:00
AccountManagementControlDocument.php
Acctlink.php
Apps.php
Attach.php Move mod/fbrowser to src\Modules\Attachment|Photos\Browser 2022-11-26 22:26:30 +01:00
BaseAdmin.php New area "moderation" 2022-11-08 02:28:42 -05:00
BaseApi.php Don't send the header 2022-12-12 03:13:24 +00:00
BaseModeration.php New area "moderation" 2022-11-08 02:28:42 -05:00
BaseNotifications.php Move mod/cal.php and mod/events.php to Module 2022-11-07 19:52:24 +01:00
BaseProfile.php Add new public_calendar additional feature 2022-12-01 08:06:07 -05:00
BaseSearch.php
BaseSettings.php Move settings/connectors to src/Module 2022-11-09 06:26:05 -05:00
Bookmarklet.php
Contact.php Remove fallback contact query from Model\Contact::photoMenu 2022-12-19 09:50:18 -05:00
Credits.php
Delegation.php
Directory.php
Feed.php Tighten profile restriction feature 2022-12-01 08:03:35 -05:00
FollowConfirm.php
Friendica.php
FriendSuggest.php
Group.php
Hashtag.php
HCard.php
Help.php
Home.php Fix various PHP 8 deprecations 2022-11-19 19:15:47 -05:00
Install.php
Invite.php
Magic.php
Maintenance.php
Manifest.php Move mod/cal.php and mod/events.php to Module 2022-11-07 19:52:24 +01:00
NodeInfo110.php
NodeInfo120.php
NodeInfo210.php
NoScrape.php Check for last-activity value before feeding it to strtotime in Module\NoScrape 2022-12-10 11:38:41 -05:00
Oembed.php
OpenSearch.php
Owa.php
ParseUrl.php
PermissionTooltip.php
Photo.php Ward against empty $contact array in Module\Photo::getPhotoById 2022-12-15 23:31:32 -05:00
Proxy.php
PublicRSAKey.php [Composer] Upgrade to phpseclib version 3 2022-11-25 08:13:05 -05:00
RandomProfile.php
README.md
ReallySimpleDiscovery.php
Register.php Ensure register records aren't created with uid = 0 2022-11-18 16:04:02 -05:00
Response.php
RobotsTxt.php
Smilies.php
Statistics.php
Theme.php
ThemeDetails.php
ToggleMobile.php
Tos.php Skip blank lines in Tos module 2022-12-18 22:16:41 -05:00
Welcome.php
Xrd.php Add new OStatus\PortableContacts module class 2022-11-14 13:48:46 -05: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.