friendica/src/Module
2022-12-13 15:59:45 -05:00
..
ActivityPub Tighten profile restriction feature 2022-12-01 08:03:35 -05:00
Admin Rules added 2022-12-03 21:15:08 +00:00
Api Fix space missing after if style error in src/Module/Api/Friendica/Photoalbum/Show.php 2022-12-13 15:59:45 -05:00
Blocklist/Domain
Calendar Escape HTML in event mapping callback 2022-12-04 06:37:37 -05:00
Contact Contact suggestions are now cached 2022-11-30 05:59:27 +00:00
Conversation Merge pull request #12094 from MrPetovan/task/hide-reply-counts-ping 2022-11-04 18:00:15 +01:00
Debug
DFRN Tighten profile restriction feature 2022-12-01 08:03:35 -05:00
Diaspora
Filer
HTTPException
Item Tighten profile restriction feature 2022-12-01 08:03:35 -05:00
Media Update src/Module/Media/Photo/Upload.php 2022-11-30 18:16:55 +01:00
Moderation Issue 10518: "last-activity" instead of "login_date" 2022-12-04 07:03:11 +00:00
Notifications Flatten arbitrary contact structure in constructor of FormattedNavNotification 2022-11-10 10:41:02 -05:00
OAuth
OStatus [Composer] Upgrade to phpseclib version 3 2022-11-25 08:13:05 -05:00
Post Issue 12189: Quote share a feed now shares the linked feed url 2022-11-24 06:36:08 +00:00
Profile Issue 11915: Show reshared posts for contacts 2022-12-04 21:57:58 +00:00
Search Reorder search to try redirecting to post first 2022-11-24 22:21:51 -05:00
Security Delete mod/settings.php and its reference 2022-11-09 06:26:08 -05:00
Settings Tighten profile restriction feature 2022-12-01 08:03:35 -05:00
Special
Update Tighten profile restriction feature 2022-12-01 08:03:35 -05:00
User Fix null value passed to string functions deprecation notices 2022-11-25 08:13:05 -05:00
WellKnown
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
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 Move viewcontact_template and contact_template to contact/ folder 2022-11-04 07:03:55 -04:00
BaseSettings.php Move settings/connectors to src/Module 2022-11-09 06:26:05 -05:00
Bookmarklet.php
Contact.php Create new Contact\Redir module class 2022-11-08 20:12:23 -05:00
Credits.php
Delegation.php Move "submanage" Session value into own methods 2022-10-21 19:35:34 +02:00
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 Issue 12327: Convert avatars to static 2022-12-04 23:31:23 +00:00
Oembed.php
OpenSearch.php
Owa.php
ParseUrl.php Fix missing/wrong IHandleUserSessions usages 2022-10-23 11:32:43 +02:00
PermissionTooltip.php
Photo.php Issue 12327: Convert avatars to static 2022-12-04 23:31:23 +00: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 Rules added 2022-12-03 21:15:08 +00: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.