streams/Zotlabs/Module
2021-06-16 00:26:05 -07:00
..
Admin misty issue 4 - admin option exists to enable invite_only mode, but the invite app was deprecated until it could be fixed. So remove the admin option until the app is reinstated. 2021-06-02 02:00:44 -07:00
Settings various bugfixes 2021-05-20 18:01:42 -07:00
Acl.php even more php8 stuff 2021-03-11 16:03:45 -08:00
Activity.php mastodon group issue 2021-06-10 22:10:53 -07:00
Admin.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Affinity.php network -> stream 2020-02-12 21:36:21 -08:00
Album.php more work on AP fetchable photo albums 2021-03-31 18:25:14 -07:00
Ap_probe.php cleanup 2019-05-27 20:50:05 -07:00
Api.php very slow progress on AP C2S API 2021-04-06 20:33:27 -07:00
Appman.php cleanup 2019-06-16 23:05:15 -07:00
Apporder.php allow apps to be pinned,featured or both. Also some channel settings cleanup 2019-10-02 21:38:32 -07:00
Apps.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Apschema.php apschema tweaks 2021-01-22 20:54:48 -08:00
Attach.php use correct (or at least official) capitalisation on Content-Disposition 2020-03-04 14:45:58 -08:00
Authorize.php some oauth work necessary for AP C2S. This appears to be heading down the path of favouritism towards oauth2 and deprecating openid connect. In theory we should be able to support both, but the underlying library isn't quite as flexible as hoped and appears to favour one or the other without involving multiple installations. 2021-04-10 00:51:12 -07:00
Block.php start libprofile 2019-04-17 16:54:06 -07:00
Blocks.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Ca.php only return cache entry if it has contents 2021-04-20 19:33:06 -07:00
Cal.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Calendar.php Deprecate the term 'master' from the codebase. 2020-06-15 00:29:56 -07:00
Card_edit.php more php8 2021-03-10 19:30:25 -08:00
Cards.php more php8 2021-03-10 19:30:25 -08:00
Categories.php start libprofile 2019-04-17 16:54:06 -07:00
Cdav.php don't deprecate server->exec until dav is upgraded 2021-01-20 11:15:41 -08:00
Changeaddr.php cleanup 2021-03-16 20:06:35 -07:00
Channel.php notification and siteinfo cleanup 2021-05-31 14:32:02 -07:00
Chanview.php search actor url from navbar 2021-03-14 16:41:45 -07:00
Chat.php re-package browser-to-browser encryption as 'secrets' app 2020-08-23 17:32:33 -07:00
Chatsvc.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Clients.php appify oauth2 2019-10-09 22:51:48 -07:00
Cloud.php porting access tokens and making them generally more useful by adding them to connections 2021-04-10 15:32:14 -07:00
Cloud_tiles.php make most recent cloud_tiles setting for local channels persistent across logins 2017-11-07 19:34:00 -08:00
Comment_control.php per-post comment control: select comment allowed audience and comments_closed date 2020-11-23 19:14:44 -08:00
Common.php start libprofile 2019-04-17 16:54:06 -07:00
Connect.php cleanup 2021-04-12 20:49:58 -07:00
Connections.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Connedit.php not enough levels of array 2021-04-11 19:20:28 -07:00
Contactgroup.php make public lists discoverable 2019-10-01 18:29:39 -07:00
Content_filter.php cut/paste error - incorrect field description 2020-03-17 18:15:57 -07:00
Conversation.php use 'Ignore' for unfollowing threads instead of 'Unfollow' which isn't specified in the ActivityStreams vocabulary. This is low impact since these activities do not federate. Updates to previously unfollowed threads may show up after this change and may require unfollowing again since existing activities were not modified. 2021-05-17 14:14:57 -07:00
Cover_photo.php quotes are unescaped in the latest multi-code implementation and this screws up some bbcode parameter parsers that expected to see & quot ; 2021-02-07 16:13:33 -08:00
Dav.php don't deprecate server->exec until dav is upgraded 2021-01-20 11:15:41 -08:00
Defperms.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Dircensor.php directory issue 2019-06-30 19:10:12 -07:00
Directory.php check sites module for blocked stuff 2021-04-14 19:19:06 -07:00
Dirsearch.php Add site restriction checking to returned directory entries. Previously we only checked personal blocklists. Also some performance improvements on directory filtering. 2021-04-14 17:18:23 -07:00
Display.php notification usability work 2021-05-27 04:04:16 -07:00
Drafts.php typo 2020-11-29 16:43:31 -08:00
Dreport.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Editblock.php more php8 2021-03-10 19:30:25 -08:00
Editlayout.php more php8 2021-03-10 19:30:25 -08:00
Editpost.php cleanup 2021-06-03 22:02:38 -07:00
Editwebpage.php more php8 2021-03-10 19:30:25 -08:00
Email_resend.php Merge remote-tracking branch 'mike/master' into dev 2018-01-28 00:18:29 +01:00
Email_validation.php several email validation issues 2018-02-28 21:15:26 -08:00
Embed.php cleanup 2019-04-14 22:31:07 -07:00
Embedphotos.php code comments 2020-09-09 21:30:18 -07:00
Event.php code consolidation: as_return_and_die() function created to handle signing ActivityStreams output in a number of places 2020-11-16 21:39:49 -08:00
Events.php cleanup 2021-04-12 20:49:58 -07:00
Expire.php remove accounts that do not complete email verification in 3 days 2021-03-17 18:30:37 -07:00
Fbrowser.php port photo lib updates 2019-04-15 23:43:06 -07:00
Feed.php fix feeds 2019-06-10 23:39:17 -07:00
File_upload.php fixes from upstream 2021-01-19 18:21:48 -08:00
Filer.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Filerm.php more db column renames 2016-05-31 21:45:33 -07:00
Filestorage.php disable file activities until a few more things are fixed. 2021-04-01 15:21:19 -07:00
Finger.php cleanup 2019-04-14 22:31:07 -07:00
Follow.php incorrect activity type returned in Accept Activity if somebody chooses to Join a group rather than Follow the group 2021-04-29 17:12:51 -07:00
Followers.php more AP restriction tests 2020-12-20 20:37:08 -08:00
Following.php more AP restriction tests 2020-12-20 20:37:08 -08:00
Future.php bring back future posting 2020-05-03 16:18:27 -07:00
Getfile.php issue syncing photos of non-zero imgscale 2021-03-23 20:50:41 -07:00
Hashtags.php cleanup 2019-04-14 22:31:07 -07:00
Hcard.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Help.php more doco 2021-03-01 18:50:41 -08:00
Home.php network -> stream 2020-02-12 21:36:21 -08:00
Hostxrd.php minor theming and whitespace 2017-02-08 19:47:34 -08:00
Hq.php per module loadtime 2021-05-20 18:47:10 -07:00
Id.php use hardwired ap schema 2021-01-22 16:59:56 -08:00
Impel.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Import.php clone atokens and their associated structures 2021-04-10 18:41:35 -07:00
Import_items.php hz compatibility stuff 2021-02-18 17:55:51 -08:00
Inbox.php more work on writeable collections 2021-04-28 23:42:39 -07:00
Inspect.php cleanup some loose ends w/r/t activitypub addressing and confederation of activitypub signatures over nomad for use by third-parties on activitypub. 2021-06-03 21:57:08 -07:00
Invite.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Item.php only provide the copy_of_pubitem notice when it was actually copied 2021-06-01 15:31:56 -07:00
Jwks.php jwt issues 2020-11-12 20:41:44 -08:00
Lang.php appification of the lang module 2018-09-16 09:30:07 +02:00
Layouts.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Like.php more work on copy_of_pubitem issues 2021-04-27 17:18:18 -07:00
Linkinfo.php allow setting the UA string for fetches 2021-04-07 19:11:55 -07:00
Lists.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Lockview.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Locs.php hubloc sync issue, regression in mod_display from change yesterday 2020-11-30 14:48:02 -08:00
Login.php refactor the 'where does the register link point?' logic 2018-05-14 19:19:25 -07:00
Logout.php channel delegation: push current identity and pop it on logout from the delegated channel. This fixes the known issue of being forced to log back in after leaving the delegated channel. 2018-04-11 17:40:04 -07:00
Lostpass.php Unify the various mail sending instance to enotify::send() and z_mail(). Both take the same arguments. z_mail() is text only, enotify::send() provides html and text. Both are pluggable using the enotfy_send hook. 2016-10-01 03:06:01 -07:00
Magic.php some cleanup 2019-04-11 20:26:38 -07:00
Manage.php more work on channel manager 2019-10-05 01:07:02 -07:00
Markup.php turn off dragon drop on post editor until duplicate upload issue can be investigated/resolved. New app: Markup which provides the bold, italic, etc. editor buttons and removes them by default for less clutter 2020-09-23 17:59:09 -07:00
Menu.php start libprofile 2019-04-17 16:54:06 -07:00
Mitem.php start libprofile 2019-04-17 16:54:06 -07:00
Moderate.php cleanup 2021-04-12 20:49:58 -07:00
Mood.php cleanup 2021-04-12 20:49:58 -07:00
New_channel.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Notes.php network -> stream 2020-02-12 21:36:21 -08:00
Notifications.php Don't fetch replyTo by default. It's wasteful. Just store the value. 2021-04-19 15:51:15 -07:00
Notify.php more sudo 2020-02-24 15:40:20 -08:00
Nullbox.php connect perms 2018-08-29 02:19:32 -07:00
Oauthinfo.php more openid work 2019-10-10 18:34:44 -07:00
Oembed.php add rel=noopener to all external target _blank links 2017-06-14 16:56:13 +02:00
Oep.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Oexchange.php deprecate daemon/externals 2020-10-27 01:45:46 -07:00
Online.php support expire plus misc cleanup 2019-05-28 16:42:32 -07:00
Outbox.php more work on copy_of_pubitem issues 2021-04-27 17:18:18 -07:00
Owa.php owa clarify which key to use 2020-12-19 13:10:59 -08:00
Page.php start libprofile 2019-04-17 16:54:06 -07:00
Pconfig.php notification usability work 2021-05-27 04:04:16 -07:00
Pdledit.php private channel notes 2020-07-21 20:01:37 -07:00
Permcat.php move permcat library functions to Zlib 2017-02-07 16:43:00 -08:00
Photo.php initial work on supporting activitypub fetchable photo albums (and eventually file collections) 2021-03-31 17:22:47 -07:00
Photomap.php more app work 2019-06-30 23:36:03 -07:00
Photos.php cleanup 2021-04-12 20:49:58 -07:00
Pin.php missing pinned post files 2019-12-02 18:44:32 -08:00
Ping.php regression 2021-05-27 16:31:31 -07:00
Poco.php cleanup 2019-04-14 23:50:49 -07:00
Poke.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Poster.php make notes widget fixed height because it still doesn't play well with stickykit and I've wasted too much time trying to bludgeon it into submission. 2019-06-25 16:11:22 -07:00
Pretheme.php module updates 2016-04-18 20:38:38 -07:00
Profile.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Profile_photo.php quotes are unescaped in the latest multi-code implementation and this screws up some bbcode parameter parsers that expected to see & quot ; 2021-02-07 16:13:33 -08:00
Profiles.php cleanup 2021-04-12 20:49:58 -07:00
Profperm.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Pubstream.php notification regression 2021-05-27 17:34:28 -07:00
Q.php cloud perms and location independent content searching 2019-02-19 12:31:39 -08:00
Randprof.php convert randprof to use chanlink_hash() instead of chanlink_url() and filter sys channels by xchan.xchan_system instead of xchan_addr != sys@% 2017-06-03 10:13:42 +02:00
React.php more work on copy_of_pubitem issues 2021-04-27 17:18:18 -07:00
README.md fix feeds 2019-06-10 23:39:17 -07:00
Register.php misty issue 4 - admin option exists to enable invite_only mode, but the invite app was deprecated until it could be fixed. So remove the admin option until the app is reinstated. 2021-06-02 02:00:44 -07:00
Regmod.php refactor the 'where does the register link point?' logic 2018-05-14 19:19:25 -07:00
Regver.php cleanup 2020-01-14 12:14:34 -08:00
Removeaccount.php Deprecate global channel removal. There are a few issues which need to be addressed. The first of which is a mechanism to tell other servers to destroy your clones. The second is securing this against forgery attempts. In its current form a lot of your data is removed from around the network but the channel clones themselves may remain. 2019-06-04 23:27:11 -07:00
Removeme.php move developer docs to their own directory. This provides a hopefully obvious example of adding documentation directories with translations. 2021-06-16 00:26:05 -07:00
Rmagic.php generalise the rmagic login form so we can re-use it for remote follows and stuff 2020-06-28 20:24:36 -07:00
Rpost.php wip: dm links, possibly requires significant refactor of the acl_selector before all is said and done 2021-03-25 20:29:42 -07:00
Safe.php consolidate safe mode settings 2019-10-03 13:22:59 -07:00
Search.php onepoll: improvements in fetching outbox content 2021-04-12 22:37:08 -07:00
Search_ac.php cleanup, link modal issue 2019-05-23 16:37:56 -07:00
Secrets.php re-package browser-to-browser encryption as 'secrets' app 2020-08-23 17:32:33 -07:00
Service_limits.php module updates 2016-04-18 20:38:38 -07:00
Settings.php groups 2019-10-11 16:45:04 -07:00
Setup.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Share.php begin the messy transition to multicode object source, which will ultimately fix Friendica confederation but could negatively affect Hubzilla confederation. 2021-03-07 21:32:28 -08:00
Sharedwithme.php disable file activities until a few more things are fixed. 2021-04-01 15:21:19 -07:00
Siteinfo.php notification and siteinfo cleanup 2021-05-31 14:32:02 -07:00
Sitelist.php updates 2021-06-12 14:57:46 -07:00
Sites.php check sites module for blocked stuff 2021-04-14 19:19:06 -07:00
Smilies.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Sources.php typos 2020-04-10 22:11:46 -07:00
Sslify.php there are occasional sites which use different capitalisation of Content-Type; which is rare, but completely legal. 2016-12-15 18:08:23 -08:00
Starred.php split off libsync from libzot 2018-06-04 18:40:11 -07:00
Stream.php notification usability work 2021-05-27 04:04:16 -07:00
Subthread.php use 'Ignore' for unfollowing threads instead of 'Unfollow' which isn't specified in the ActivityStreams vocabulary. This is low impact since these activities do not federate. Updates to previously unfollowed threads may show up after this change and may require unfollowing again since existing activities were not modified. 2021-05-17 14:14:57 -07:00
Suggestions.php fix suggestion ignore redirection and update zotsh 2019-08-13 19:42:32 -07:00
Superblock.php superblock: we need the entire xchan record, not just the url. Also prevent blocking your own site. 2021-02-10 16:06:56 -08:00
Tagadelic.php tagadelic app 2020-10-21 15:22:23 -07:00
Tagger.php more work on copy_of_pubitem issues 2021-04-27 17:18:18 -07:00
Tagrm.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Tasks.php even more php8 stuff 2021-03-11 16:03:45 -08:00
Theme_info.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Thing.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Toggle_safesearch.php module updates 2016-04-18 20:38:38 -07:00
Token.php some oauth work necessary for AP C2S. This appears to be heading down the path of favouritism towards oauth2 and deprecating openid connect. In theory we should be able to support both, but the underlying library isn't quite as flexible as hoped and appears to favour one or the other without involving multiple installations. 2021-04-10 00:51:12 -07:00
Uexport.php import/export issues 2021-01-08 13:53:28 -08:00
Update.php issue displaying draft comments on stream page 2021-04-05 17:57:39 -07:00
Userinfo.php updates 2019-01-18 13:04:05 -08:00
View.php module updates 2016-04-18 20:38:38 -07:00
Viewconnections.php misc fixes 2019-07-11 22:03:17 -07:00
Viewsrc.php use correct (or at least official) capitalisation on Content-Disposition 2020-03-04 14:45:58 -08:00
Vlists.php Zot/10 = 'Nomad' 2021-05-02 16:41:18 -07:00
Vote.php provide a global project default setting for whether or not ActivityPub is enabled. It can still be toggled at the site level and (if enabled at the system level) toggled at the channel level. 2020-11-26 16:17:07 -08:00
Wall_attach.php remove experimental setting on replyTo, limit incoming message size (regression), fix variable re-use in storage/basicauth, and add attachments for all attached photos/files. 2021-04-22 14:41:26 -07:00
Wall_upload.php port photo lib updates 2019-04-15 23:43:06 -07:00
Webfinger.php provide a global project default setting for whether or not ActivityPub is enabled. It can still be toggled at the site level and (if enabled at the system level) toggled at the channel level. 2020-11-26 16:17:07 -08:00
Webpages.php scripted replace of 'array()' with '[]' 2021-03-14 22:10:44 -07:00
Well_known.php start the doco rewrite 2019-10-28 16:47:55 -07:00
Xchan.php module updates 2016-04-18 20:38:38 -07:00
Xp.php typo 2020-09-02 17:27:48 -07:00
Xref.php module updates 2016-04-18 20:38:38 -07:00
Zot.php add more schema validation to clone sync activities 2018-11-19 17:30:22 -08:00
Zot_probe.php modernise zot_probe 2020-10-20 21:42:26 -07:00
Zotfinger.php more cleanup 2019-04-14 23:41:26 -07:00

Zotlabs/Module

This directory contains controller modules for handling web requests. The lowercase class name indicates the head of the URL path which this module handles. There are other methods of attaching (routing) URL paths to controllers, but this is the primary method used in this project.

Module controllers MUST reside in this directory and namespace to be autoloaded (unless other specific routing methods are employed). They typically use and extend the class definition in Zotlabs/Web/Controller as a template.

Template:

<?php

namespace Zotlabs\Web;


class Controller {

	function init() {}
	function post() {}
	function get() {}

}

Typical Module declaration for the '/foo' URL route:

<?php
namespace Zotlabs\Module;

class Foo extends \Zotlabs\Web\Controller {

	function init() {
		// init() handler goes here
	}

	function post() {
		// post handler goes here
	}

	function get() {
		return 'Hello world.' . EOL;
	}

}

This model provides callbacks for public functions named init(), post(), and get(). init() is always called. post() is called if $_POST variables are present, and get() is called if none of the prior functions terminated the handler. The get() method typically retuns a string which represents the contents of the content region of the resulting page. Modules which emit json, xml or other machine-readable formats typically emit their contents inside the init() function and call 'killme()' to terminate the Module.

Modules are passed the URL path as argc,argv arguments. For a path such as

https://mysite.something/foo/bar/baz

The app will typically invoke the Module class 'Foo' and pass it

$x = argc(); // $x = 3

$x = argv(0); // $x = 'foo'
$x = argv(1); // $x = 'bar'
$x = argv(2); // $x = 'baz'

These are handled in a similar fashion to their counterparts in the Unix shell or C/C++ languages. Do not confuse the argc(),argv() functions with the global variables $argc,$argv which are passed to command line programs. These are handled separately by command line and Zotlabs/Daemon class functions.