friendica/src/Module
Hypolite Petovan 188f7b0eb0 Move GET pinned/{id} to POST item/{id}/pin 2021-01-30 18:42:23 -05:00
..
Admin Reduce the parameter chaos by splitting the update function 2021-01-30 13:31:59 +00:00
Api "item" is replaced by "post-view" / postupdate check added 2021-01-17 20:32:13 +00:00
Contact Add expected contact field in Module\Contact\Poke 2020-12-23 02:48:38 -05:00
Conversation "uri-id" instead of "uri" or "id" 2021-01-27 10:01:42 +00:00
Debug New post class in the rest of the classes 2021-01-16 04:16:09 +00:00
Diaspora New post class in the rest of the classes 2021-01-16 04:16:09 +00:00
Filer Use an exception 2021-01-21 21:53:19 +00:00
HTTPException
Item Move GET pinned/{id} to POST item/{id}/pin 2021-01-30 18:42:23 -05:00
Notifications Replace obsolete calls to $APP->is_mobile in templates 2020-12-23 03:25:55 -05:00
Profile "uri-id" instead of "uri" or "id" 2021-01-27 10:01:42 +00:00
Search New table "post-content" 2021-01-30 22:03:53 +00:00
Security Added support for trusted browser during authentication 2021-01-23 05:42:59 -05:00
Settings Add trusted browsers user setting module 2021-01-23 05:42:59 -05:00
Special Add missing first file/line in exception template 2020-12-30 21:15:01 -05:00
Update "uri-id" instead of "uri" or "id" 2021-01-27 10:01:42 +00:00
WellKnown Relay code reworked to support AP delivery 2020-11-15 23:28:05 +00:00
AccountManagementControlDocument.php
Acctlink.php
Apps.php
Attach.php
BaseAdmin.php silkevicious found a typo 2020-09-15 15:38:31 +02:00
BaseApi.php Use Arguments->getCommand() where it makes more sense than getQueryString() 2020-09-12 09:09:15 -04:00
BaseNotifications.php
BaseProfile.php
BaseSearch.php
BaseSettings.php
Bookmarklet.php
Contact.php Moved updating personal contacts to updatecontact 2020-12-04 05:53:11 +00:00
Credits.php
Delegation.php Rename notify classes according the feature name, not the table name 2021-01-24 09:33:23 -05:00
Directory.php
Feed.php
FollowConfirm.php
Followers.php
Following.php
FriendSuggest.php
Friendica.php Issue 9363: Display the latest post update version 2020-10-04 20:46:42 +00:00
Group.php Don't show failed contacts 2020-10-07 20:06:15 +00:00
Hashtag.php
Help.php
Home.php
HoverCard.php
Inbox.php
Install.php Add translation to required labels for install checks 2020-12-20 02:08:13 -05:00
Invite.php Issue 9153 Use "info" instead of "notice" on successful operations 2020-09-07 10:17:42 +00:00
Like.php New post class in the rest of the classes 2021-01-16 04:16:09 +00:00
Magic.php Remove 'headers' option occurrences and add a warning if used. 2020-10-18 22:31:26 +02:00
Maintenance.php
Manifest.php style: tab to space 2021-01-25 12:02:49 -05:00
NoScrape.php Fix: Noscrape hadn't always returned a key 2020-09-26 22:13:00 +02:00
NodeInfo110.php
NodeInfo120.php
NodeInfo210.php
Objects.php New post class in the rest of the classes 2021-01-16 04:16:09 +00:00
Oembed.php
OpenSearch.php
Outbox.php
Owa.php
PermissionTooltip.php New post class in the rest of the classes 2021-01-16 04:16:09 +00:00
Photo.php Simplify the resizing 2020-12-26 21:24:36 +00:00
Proxy.php Delete removed contacts 2020-12-15 22:56:46 +00:00
PublicRSAKey.php Replace library/asn1.php with phpseclib 2020-09-12 20:44:36 +02:00
README.md
RandomProfile.php
ReallySimpleDiscovery.php
Register.php Rename notify classes according the feature name, not the table name 2021-01-24 09:33:23 -05:00
RemoteFollow.php
RobotsTxt.php
Smilies.php
Starred.php "selectForUser" and "" selectFirstForUser" is now moved to Post 2021-01-16 22:37:27 +00:00
Statistics.php
Theme.php
ThemeDetails.php
ToggleMobile.php
Tos.php
Welcome.php
Xrd.php

README.md

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.