friendica/src/Module
Hypolite Petovan 1e32f74b0b Rework Module/Objects
- Merge two item queries into one
- Add ETag check
- Use Router parameter
2020-04-05 18:00:46 -04:00
..
Admin Refactor features pages 2020-04-01 19:06:10 -04:00
Api [API] Add new endpoint api/friendica/events 2020-02-16 12:07:39 -05:00
Contact No more gender 2020-02-16 10:55:18 +00:00
Conversation New query for community page 2020-03-02 14:59:16 +00:00
Debug Improve Babel code 2020-03-11 09:01:17 -04:00
Diaspora Support unlisted public posts 2020-03-02 07:57:23 +00:00
Filer
HTTPException
Item Remove "hidewall" check from ACL 2020-02-22 08:54:28 +00:00
Notifications Add UID as parameter for notify repository call 2020-03-01 22:24:53 +01:00
Profile Merge pull request #8293 from MrPetovan/task/5562-community-pagination 2020-02-16 19:38:49 +01:00
Search Add node-wide default items per page config 2020-02-16 13:04:26 -05:00
Security Add license info at Friendica PHP files 2020-02-09 16:18:46 +01:00
Settings Improved Mime Type detection 2020-04-01 05:42:44 +00:00
Special
Update Expand system.no_auto_update to community, profile statuses and contact conversations pages 2020-02-23 19:38:24 -05:00
WellKnown
AccountManagementControlDocument.php
Acctlink.php
AllFriends.php Add L10n parameter to Pager classes 2020-02-16 12:50:39 -05:00
Apps.php
Attach.php Add license info at Friendica PHP files 2020-02-09 16:18:46 +01:00
BaseAdmin.php
BaseApi.php
BaseNotifications.php Add L10n parameter to Pager classes 2020-02-16 12:50:39 -05:00
BaseProfile.php
BaseSearch.php Add node-wide default items per page config 2020-02-16 13:04:26 -05:00
BaseSettings.php "Delegations" is renamed to "Accounts" 2020-02-19 07:09:29 +00:00
Bookmarklet.php
Contact.php Show the relations of Twitter contacts 2020-03-07 13:05:16 +00:00
Credits.php
Delegation.php
Directory.php Add L10n parameter to Pager classes 2020-02-16 12:50:39 -05:00
Feed.php
FollowConfirm.php
Followers.php Add license info at Friendica PHP files 2020-02-09 16:18:46 +01:00
Following.php Add license info at Friendica PHP files 2020-02-09 16:18:46 +01:00
Friendica.php
FriendSuggest.php
Group.php Add license info at Friendica PHP files 2020-02-09 16:18:46 +01:00
Hashtag.php Add license info at Friendica PHP files 2020-02-09 16:18:46 +01:00
Help.php
Home.php
HoverCard.php Clarify the effect of "net-publish" 2020-02-16 15:39:44 +00:00
Inbox.php Add license info at Friendica PHP files 2020-02-09 16:18:46 +01:00
Install.php
Invite.php
Like.php Function renamed to better reflect the purpose 2020-03-05 08:03:05 +00:00
Magic.php Add license info at Friendica PHP files 2020-02-09 16:18:46 +01:00
Maintenance.php
Manifest.php Move manifest JSON from template to array 2020-02-19 13:29:55 -05:00
NodeInfo.php
NoScrape.php Clarify the effect of "net-publish" 2020-02-16 15:39:44 +00:00
Objects.php Rework Module/Objects 2020-04-05 18:00:46 -04:00
Oembed.php
OpenSearch.php
Outbox.php Add license info at Friendica PHP files 2020-02-09 16:18:46 +01:00
Owa.php Add license info at Friendica PHP files 2020-02-09 16:18:46 +01:00
Photo.php Issue 8371: Improvements for picture permissions 2020-03-08 13:16:59 +00:00
Pinned.php
Proxy.php Add license info at Friendica PHP files 2020-02-09 16:18:46 +01:00
PublicRSAKey.php
RandomProfile.php
README.md
ReallySimpleDiscovery.php
Register.php
RemoteFollow.php Clean the profile URL when follow 2020-02-22 12:29:33 +00:00
RobotsTxt.php
Smilies.php
Starred.php
Statistics.php
Theme.php
ThemeDetails.php
ToggleMobile.php
Tos.php Add license info at Friendica PHP files 2020-02-09 16:18:46 +01:00
Welcome.php remove default from welcome.php 2020-03-29 11:36:04 +02:00
Worker.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.