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.
 
 
 
 
 
 
Michael 99a145f7cf Fixes several database errors, removes "relation" handling 5 months ago
..
Admin "item" is replaced whenever possible at the moment 6 months ago
Api post/thread views are renamed, search bugs fixed 5 months ago
Contact Several speed improvements (magiclink, caching, indexes) 6 months ago
Conversation Fixes several database errors, removes "relation" handling 5 months ago
Debug Several speed improvements (magiclink, caching, indexes) 6 months ago
Diaspora New post class in the rest of the classes 7 months ago
Filer Use an exception 7 months ago
HTTPException Add license info at Friendica classes 2 years ago
Item Merge remote-tracking branch 'upstream/develop' into post-thread-user 6 months ago
Notifications Replace obsolete calls to $APP->is_mobile in templates 7 months ago
Profile post/thread views are renamed, search bugs fixed 5 months ago
Search Get rid of the "item" table, enhanced "post" tables 6 months ago
Security Added support for trusted browser during authentication 6 months ago
Settings "item" is replaced whenever possible at the moment 6 months ago
Special Add missing first file/line in exception template 7 months ago
Update post/thread views are renamed, search bugs fixed 5 months ago
WellKnown Relay code reworked to support AP delivery 9 months ago
AccountManagementControlDocument.php Add license info at Friendica classes 2 years ago
Acctlink.php Replace "Probe::uri" with "Contact::getByURL" 1 year ago
Apps.php EOL removed 1 year ago
Attach.php Add license info at Friendica PHP files 2 years ago
BaseAdmin.php silkevicious found a typo 11 months ago
BaseApi.php Use Arguments->getCommand() where it makes more sense than getQueryString() 11 months ago
BaseNotifications.php Add L10n parameter to Pager classes 1 year ago
BaseProfile.php Add license info at Friendica classes 2 years ago
BaseSearch.php "id" is not needed as a parameter 1 year ago
BaseSettings.php "Delegations" is renamed to "Accounts" 1 year ago
Bookmarklet.php Replace *_page_info function calls with Content\PageInfo equivalent 1 year ago
Contact.php Several speed improvements (magiclink, caching, indexes) 6 months ago
Credits.php Add license info at Friendica classes 2 years ago
Delegation.php Rename notify classes according the feature name, not the table name 6 months ago
Directory.php The local directory is now using the template function as well 1 year ago
Feed.php Atom feed generation is moved to the feed class 1 year ago
FollowConfirm.php EOL removed 1 year ago
Followers.php Combine getFollowers and getFollowing into getContacts in ActivityPub\Transmitter 1 year ago
Following.php Combine getFollowers and getFollowing into getContacts in ActivityPub\Transmitter 1 year ago
FriendSuggest.php Add license info at Friendica classes 2 years ago
Friendica.php Issue 9363: Display the latest post update version 10 months ago
Group.php Don't show failed contacts 10 months ago
Hashtag.php Usage of the new tag tables 1 year ago
Help.php Add license info at Friendica classes 2 years ago
Home.php Add license info at Friendica classes 2 years ago
HoverCard.php Add check for $a->profile structure in Module\HoverCard 1 year ago
Inbox.php Add license info at Friendica PHP files 2 years ago
Install.php Issue 9064: referring INSTALL.txt now points to doc/INSTALL.md 5 months ago
Invite.php Issue 9153 Use "info" instead of "notice" on successful operations 11 months ago
Magic.php Remove 'headers' option occurrences and add a warning if used. 10 months ago
Maintenance.php Add license info at Friendica classes 2 years ago
Manifest.php style: tab to space 6 months ago
NoScrape.php Fix: Noscrape hadn't always returned a key 10 months ago
NodeInfo110.php Use "jsonexit" 1 year ago
NodeInfo120.php Unneeded variable removed 1 year ago
NodeInfo210.php Unneeded variable removed 1 year ago
Objects.php New post class in the rest of the classes 7 months ago
Oembed.php Add license info at Friendica classes 2 years ago
OpenSearch.php Add license info at Friendica classes 2 years ago
Outbox.php Support signed outbox requests 11 months ago
Owa.php "print_r" in logging replaced / obsolete stuff removed 1 year ago
ParseUrl.php Move /parse_url module to /parseurl 6 months ago
PermissionTooltip.php New post class in the rest of the classes 7 months ago
Photo.php Simplify the resizing 7 months ago
Proxy.php Delete removed contacts 8 months ago
PublicRSAKey.php Replace library/asn1.php with phpseclib 11 months ago
README.md fixing text 2 years ago
RandomProfile.php Several speed improvements (magiclink, caching, indexes) 6 months ago
ReallySimpleDiscovery.php Add license info at Friendica classes 2 years ago
Register.php Rename notify classes according the feature name, not the table name 6 months ago
RemoteFollow.php Replace "Probe::uri" with "Contact::getByURL" 1 year ago
RobotsTxt.php Add license info at Friendica classes 2 years ago
Smilies.php Add license info at Friendica classes 2 years ago
Statistics.php Add license info at Friendica classes 2 years ago
Theme.php HOTFIX to make all themes (but frio) working again 12 months ago
ThemeDetails.php Add license info at Friendica classes 2 years ago
ToggleMobile.php Add license info at Friendica classes 2 years ago
Tos.php Add license info at Friendica PHP files 2 years ago
Welcome.php remove default from welcome.php 1 year ago
Xrd.php Use "getActorName" 12 months 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.