Friendica Communications Platform (please note that this is a clone of the repository at github, issues are handled there) https://friendi.ca
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
friendica/src/Module
Michael 5c74113bf6 Issue 12275: Banner upload via avatar does work now 9 hours ago
..
ActivityPub Tighten profile restriction feature 4 days ago
Admin Rules added 1 day ago
Api Issue 12275: Banner upload via avatar does work now 9 hours ago
Blocklist/Domain Changed: 4 months ago
Calendar Escape HTML in event mapping callback 14 hours ago
Contact Contact suggestions are now cached 5 days ago
Conversation Merge pull request #12094 from MrPetovan/task/hide-reply-counts-ping 1 month ago
DFRN Tighten profile restriction feature 4 days ago
Debug Fix messages.po issue 1 month ago
Diaspora Rewrite: 2 months ago
Filer UserSession class [6] - Refactor src/Module/ files without DI 1 month ago
HTTPException Respect Forwarded-For headers 5 months ago
Item Tighten profile restriction feature 4 days ago
Media Update src/Module/Media/Photo/Upload.php 4 days ago
Moderation Issue 10518: "last-activity" instead of "login_date" 18 hours ago
Notifications Flatten arbitrary contact structure in constructor of FormattedNavNotification 3 weeks ago
OAuth UserSession class [5] - Refactor src/Module/ files with DI 2 months ago
OStatus [Composer] Upgrade to phpseclib version 3 1 week ago
Post Issue 12189: Quote share a feed now shares the linked feed url 2 weeks ago
Profile Move missing POST part of Profile\Photos from mod/photos 3 days ago
Search Reorder search to try redirecting to post first 1 week ago
Security Delete mod/settings.php and its reference 4 weeks ago
Settings Tighten profile restriction feature 4 days ago
Special Fix WSOD when Renderer throws exception 4 months ago
Update Tighten profile restriction feature 4 days ago
User Fix null value passed to string functions deprecation notices 1 week ago
WellKnown Template based XML generation is replaced with native XML 3 months ago
AccountManagementControlDocument.php Unified JSON exit 8 months ago
Acctlink.php Update copyright 11 months ago
Apps.php UserSession class [5] - Refactor src/Module/ files with DI 2 months ago
Attach.php Move mod/fbrowser to src\Modules\Attachment|Photos\Browser 1 week ago
BaseAdmin.php New area "moderation" 4 weeks ago
BaseApi.php Rewrite: 2 months ago
BaseModeration.php New area "moderation" 4 weeks ago
BaseNotifications.php Move mod/cal.php and mod/events.php to Module 4 weeks ago
BaseProfile.php Add new public_calendar additional feature 4 days ago
BaseSearch.php Move viewcontact_template and contact_template to contact/ folder 1 month ago
BaseSettings.php Move settings/connectors to src/Module 4 weeks ago
Bookmarklet.php UserSession class [5] - Refactor src/Module/ files with DI 2 months ago
Contact.php Create new Contact\Redir module class 4 weeks ago
Credits.php Update copyright 11 months ago
Delegation.php Move "submanage" Session value into own methods 1 month ago
Directory.php UserSession class [5] - Refactor src/Module/ files with DI 2 months ago
Feed.php Tighten profile restriction feature 4 days ago
FollowConfirm.php UserSession class [5] - Refactor src/Module/ files with DI 2 months ago
FriendSuggest.php UserSession class [5] - Refactor src/Module/ files with DI 2 months ago
Friendica.php The friendica constants have been moved to the app class 2 months ago
Group.php UserSession class [5] - Refactor src/Module/ files with DI 2 months ago
HCard.php UserSession class [5] - Refactor src/Module/ files with DI 2 months ago
Hashtag.php Update copyright 11 months ago
Help.php Update copyright 11 months ago
Home.php Fix various PHP 8 deprecations 2 weeks ago
Install.php The EOL constant is removed 2 months ago
Invite.php UserSession class [5] - Refactor src/Module/ files with DI 2 months ago
Magic.php UserSession class [6] - Refactor src/Module/ files without DI 1 month ago
Maintenance.php Changes: 5 months ago
Manifest.php Move mod/cal.php and mod/events.php to Module 4 weeks ago
NoScrape.php Simplify "last-activity" handling 18 hours ago
NodeInfo110.php The friendica constants have been moved to the app class 2 months ago
NodeInfo120.php The friendica constants have been moved to the app class 2 months ago
NodeInfo210.php The friendica constants have been moved to the app class 2 months ago
Oembed.php New function to exit the program 7 months ago
OpenSearch.php Changes: 5 months ago
Owa.php Update copyright 11 months ago
ParseUrl.php Fix missing/wrong IHandleUserSessions usages 1 month ago
PermissionTooltip.php UserSession class [5] - Refactor src/Module/ files with DI 2 months ago
Photo.php Use the blurhash when the remote picture doesn't load 11 hours ago
Proxy.php UserSession class [5] - Refactor src/Module/ files with DI 2 months ago
PublicRSAKey.php [Composer] Upgrade to phpseclib version 3 1 week ago
README.md fixing text 4 years ago
RandomProfile.php Update copyright 11 months ago
ReallySimpleDiscovery.php Unified output via the "httpExit" function 8 months ago
Register.php Ensure register records aren't created with uid = 0 2 weeks ago
Response.php Unified output via the "httpExit" function 8 months ago
RobotsTxt.php New function to exit the program 7 months ago
Smilies.php Update copyright 11 months ago
Statistics.php The friendica constants have been moved to the app class 2 months ago
Theme.php New function to exit the program 7 months ago
ThemeDetails.php unused DI" removed 7 months ago
ToggleMobile.php Update copyright 11 months ago
Tos.php Rules added 1 day ago
Welcome.php Update copyright 11 months ago
Xrd.php Add new OStatus\PortableContacts module class 3 weeks ago

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.