Hubzilla core code
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.
 
 
 
 
 
 
Mario 6f93d9848c Disable oembed in directory profile about 7 months ago
..
Admin make inline pdf a security option, move thumbnail security to security options from admin/site 8 months ago
Settings calendar merge: implement channel calendar import in cdav/calendar 1 year ago
Achievements.php remove the app $a passed to profile_load, also add profile_load to mod_wiki which should fix issue #431 4 years ago
Acl.php fix typo 1 year ago
Admin.php MySQL 8 admin summary compatibility 1 year ago
Affinity.php missing use app 1 year ago
Api.php scrutinizer issues: none worthy of including in 3.0, there will likely be a few hundred more before all is said and done. 2 years ago
Appman.php regression: the ability to order apps messed up since adding pinned apps to the ordering 1 year ago
Apporder.php regression: the ability to order apps messed up since adding pinned apps to the ordering 1 year ago
Apps.php move chat from feature to apps 1 year ago
Apschema.php add hashtag to appschema and bump appschema rev 1 year ago
Article_edit.php fix missing summary in mod article_edit 10 months ago
Articles.php merge opengraph fixes from dev 8 months ago
Attach.php check code rights on cloud files 2 years ago
Authorize.php oidc cleanup and discovery 2 years ago
Authtest.php module updates 4 years ago
Block.php remove unused page_widgets.php include and provide a general function for loading sql from file to use in the cdav migration 3 years ago
Blocks.php Status editor hook 1 year ago
Bookmarks.php bookmarks: change wording 1 year ago
Branchtopic.php module updates 4 years ago
Cal.php apply calendar encoding fixes to mod cal 1 year ago
Card_edit.php Status editor hook 1 year ago
Cards.php Correct and extend Doxygen comments. 1 year ago
Cdav.php Ãremove some old unused javascript libraries 8 months ago
Changeaddr.php fix 48 hours timeframe check and remove unused var in mod changeaddr 1 year ago
Channel.php merge opengraph fixes from dev 8 months ago
Channel_calendar.php calendar: revert back to UTC strings for dates due to better legibility. Strip timezone info from UTC string and always treat values as UTC. 1 year ago
Chanview.php macke mod chanview aware of zot6 1 year ago
Chat.php Update Chat.php 1 year ago
Chatsvc.php we must now provide the full path to the profile image for the cavatar plugin to work 2 years ago
Cloud.php fix bitrot in util/zotsh 11 months ago
Cloud_tiles.php make most recent cloud_tiles setting for local channels persistent across logins 2 years ago
Common.php some basic work on mod common 2 years ago
Connect.php Update Connect.php 1 year ago
Connections.php Fix channel address in follow link 9 months ago
Connedit.php add zot6 to clonable networks 1 year ago
Contactgroup.php Update Contactgroup.php 1 year ago
Cover_photo.php update directory on cover photo changes 1 year ago
Dav.php fix bitrot in util/zotsh 11 months ago
Defperms.php defperm app 1 year ago
Directory.php Disable oembed in directory profile about 7 months ago
Dirsearch.php fix typo 1 year ago
Display.php Add ITEM_TYPE_CUSTOM support to Zotlabs/Module/Display.php 1 year ago
Dreport.php clone systems apps to the extent possible, auto-configure imagick thumbnail binary during setup if possible 1 year ago
Editblock.php Status editor hook 1 year ago
Editlayout.php Status editor hook 1 year ago
Editpost.php select event by event_hash instead of item_id 1 year ago
Editwebpage.php Status editor hook 1 year ago
Email_resend.php Merge remote-tracking branch 'mike/master' into dev 2 years ago
Email_validation.php several email validation issues 2 years ago
Embed.php work on repeat/share for Hubzilla 1 year ago
Embedphotos.php fix embedphotos image size 1 year ago
Events.php events: don't use htmlentities on local (hz) event titles as they are not being used in textareas and umlauts for instance are getting mangled on the calendar display 1 year ago
Fbrowser.php more backquotes - this should take care of most except for the array import queries 3 years ago
Feed.php issues with feed parameters 2 years ago
Fhublocs.php fix typos 3 years ago
File_upload.php remove logging line 2 years ago
Filer.php fix item_list and item_search templates. make item filer use a bootdtrap modal and some css and class fixes 3 years ago
Filerm.php more db column renames 4 years ago
Filestorage.php fix ability for file storage creators (visitors) to be able to delete their own content 1 year ago
Follow.php more work with unicode usernames 2 years ago
Getfile.php http signature consolidation 1 year ago
Go.php provide new member widget which sits beneath the notifications for the first 60 days after an account creation. 2 years ago
Group.php hz core issue #1386 - function name must be a string 1 year ago
Hashtags.php allow case independence of replacements as well as patterns 2 years ago
Hcard.php missing space in nav tpl 3 years ago
Help.php feed untranslated appnames to nav_set_selected() and query for the active app directly to get app details 2 years ago
Home.php do not default to channel_startpage if startpage app is not installed 1 year ago
Hostxrd.php minor theming and whitespace 3 years ago
Hq.php some more xss prevention 1 year ago
Id.php http signature consolidation 1 year ago
Impel.php add item.uuid to relevant places 1 year ago
Import.php import/export zot6 hublocs+xchans 1 year ago
Import_items.php 🔒 Add CSRF protection for import and import_items. 3 years ago
Invite.php Update Invite.php 1 year ago
Item.php fix duplicate attachment and regression with audio file upload 9 months ago
Lang.php Update Lang.php 1 year ago
Layouts.php Status editor hook 1 year ago
Like.php add autocomplete js to calendar and fix issue with extended likes mid 1 year ago
Linkinfo.php linkinfo: only allow to embed public items 11 months ago
Lockview.php changes to support direct messages in zot6 (set item.item_private = 2 when private mentions are used and federate with zot:directMessage attribute which aligns with litepub:directMessage) 1 year ago
Locs.php provide /locs link on settings page if there is more than one hubloc for this channnel *that isn't deleted*. 3 years ago
Login.php refactor the 'where does the register link point?' logic 2 years ago
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. 2 years ago
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. 3 years ago
Magic.php http signature consolidation 1 year ago
Mail.php base64 encode message signature 1 year ago
Manage.php only explain how to select a channel if there are channels to select 1 year ago
Menu.php fix issue #1402 9 months ago
Message.php add alt_pager to mod_moderate, remove legacy $a parameter from all occurrences of alt_pager 2 years ago
Mitem.php some work to make menus editable by visitors with webpage write permissions; this needed to revise the link structure so that the page specified an owner channel in the url. Otherwise we could only operate on menus owned by local_channel(). Have done some basic regression testing but have not yet fully tested guest editing functionality. 2 years ago
Moderate.php add alt_pager to mod_moderate, remove legacy $a parameter from all occurrences of alt_pager 2 years ago
Mood.php add item.uuid to relevant places 1 year ago
Network.php some more xss prevention 1 year ago
New_channel.php do not count removed channels 1 year ago
Notes.php Extend documentation. 1 year ago
Notifications.php this is messing with names containing a comma and is superfluous now 2 years ago
Notify.php some more work on mod hq 2 years ago
Oauth.php Update Oauth.php 1 year ago
Oauth2.php Update Oauth2.php 1 year ago
Oauth2testvehicle.php disable the oauth2testvehicle completely until it is safe 2 years ago
Oauthinfo.php oidc cleanup and discovery 2 years ago
Ochannel.php prevent reload loop if somebody lands on /ochannel (without channel_address and without trailing slash) 2 years ago
Oembed.php add rel=noopener to all external target _blank links 3 years ago
Oep.php mod_oep: photos/album/xxxxx is no longer hex2bin/bin2hex but the album hash and is throwing php warnings when trying to decode 1 year ago
Oexchange.php minor theming and whitespace 3 years ago
Ofeed.php issues with feed parameters 2 years ago
Online.php module updates 4 years ago
Owa.php http signature consolidation 1 year ago
Page.php allow plugin class widgets, fix sql error in page module 2 years ago
Pconfig.php fix preg_match(): Delimiter must not be alphanumeric or backslash warning 1 year ago
Pdledit.php Update Pdledit.php 1 year ago
Permcat.php move permcat library functions to Zlib 3 years ago
Permcats.php fix issues with bs accordions 1 year ago
Photo.php Prefer use Etag on photo modification validation 9 months ago
Photos.php Move auto_save_draft to header from thread comment 8 months ago
Ping.php decode encoded mid 1 year ago
Poco.php module updates 4 years ago
Poke.php Update Poke.php 1 year ago
Post.php whitespace 2 years ago
Poster.php Add jot videos inline and with poster if possible 1 year ago
Prate.php daemon conversion continued... 4 years ago
Pretheme.php module updates 4 years ago
Probe.php remote diagnostics app 1 year ago
Profile.php remove deprecated $a argument from advanced_profile() 2 years ago
Profile_photo.php Add remove profile photo button 1 year ago
Profiles.php fix linkify_tags() so it works with xchans across multiple protocols, also some fixes to activity parsing from upstream. 1 year ago
Profperm.php Create virtual privacy groups for private profile member lists 3 years ago
Pubsites.php comment out statistics link in mod pubsites until we have something functional again 2 years ago
Pubstream.php some more xss prevention 1 year ago
README.md readme for the module directory, also provide an undocumented way to reset the timestamp on connection photos to force a refresh without messing with the database directly. 4 years ago
Randprof.php randprof app 1 year ago
Rate.php ratings are gone. They can be enabled, but there is no UI for doing so at this time; and will likely only be available in a 'pro' configuration once the new implementation details have been hashed out. This appears to require a mechanism for rebuttal before it can again be opened to the public. There are also some synchronisation issues to contend with; as ratings are currently only distributed to active directory servers. There is no reliable mechanism for a new directory server to fetch existing ratings. 3 years ago
Ratings.php ratings are gone. They can be enabled, but there is no UI for doing so at this time; and will likely only be available in a 'pro' configuration once the new implementation details have been hashed out. This appears to require a mechanism for rebuttal before it can again be opened to the public. There are also some synchronisation issues to contend with; as ratings are currently only distributed to active directory servers. There is no reliable mechanism for a new directory server to fetch existing ratings. 3 years ago
Ratingsearch.php add the hidden flag also 4 years ago
Rbmark.php module updates 4 years ago
React.php emojireaction compat 1 year ago
Regdir.php sql: limit 1 for UPDATE and DELETE is not supported by the SQL standard and postgresql 3 years ago
Register.php form security token for mod register ported from zap 1 year ago
Regmod.php refactor the 'where does the register link point?' logic 2 years ago
Regver.php module updates 4 years ago
Removeaccount.php null_date conversion; phase 1 3 years ago
Removeme.php wrong default param for pubstream_incl (this checkin also picked up a few minor and hopefully non-significant changes) 2 years ago
Rmagic.php rmagic discovery for z6 networks 1 year ago
Rpost.php Status editor hook 1 year ago
Search.php live-update not triggering on mod_search 1 year ago
Search_ac.php Bring the saved search feature in line with the spec, and publish the feature spec. 3 years ago
Service_limits.php module updates 4 years ago
Settings.php provide a mechanism to mark apps active in the bin 3 years ago
Setup.php required php version not available but allowed to continue 1 year ago
Share.php reflect repeats in notifications, use force flag for import_xchan_photo() in cron 1 year ago
Sharedwithme.php remove profile_tabs() which has been deprecated and replaced by channel_apps() 1 year ago
Siteinfo.php the root cause for doubled entries is fixed now 1 year ago
Sitelist.php fix some issues with friend suggestions on standalone sites with no 'suggestme' volunteers. This wrongly pulled up a site directory suggesting everybody on the site. While a better outcome than finding nobody, this does not fit with our ethical design goals. If there are no friends of friends, we will only suggest those who volunteer to be on the default suggestion list. Also do not attempt to load poco data from dead sites. 2 years ago
Smilies.php module updates 4 years ago
Snap.php since the snap module runs without permissions controls, verify the logged in channel matches the requested cloud path 3 years ago
Sources.php Update Sources.php 1 year ago
Sslify.php Keep remote site headers for caching 1 year ago
Starred.php fix "unstar" 2 years ago
Subthread.php fix subthread on sys channel items 1 year ago
Suggest.php pubstream app 1 year ago
Tagger.php fix typo 1 year ago
Tagrm.php more backticks 3 years ago
Tasks.php last remaining task in tasklist was not removed from view when 'completed' 2 years ago
Theme_info.php put theme config into its own namespace 3 years ago
Thing.php There was no pdl for mod_thing; add one because it's only a link away from profile creation and remains on that page until you go elsewhere and new members may need help to find their way out 2 years ago
Toggle_mobile.php module updates 4 years ago
Toggle_safesearch.php module updates 4 years ago
Token.php Fixes to OAuth2 connect-with-openid. Add zothash Claim. Add zotwebbie Claim. 2 years ago
Tokens.php Update Tokens.php 1 year ago
Uexport.php uexport app 1 year ago
Update.php explain what happened here 2 years ago
Userinfo.php Fixes to OAuth2 connect-with-openid. Add zothash Claim. Add zotwebbie Claim. 2 years ago
View.php module updates 4 years ago
Viewconnections.php use urlencode 1 year ago
Viewsrc.php fix summary and use item_normal_search() for viewsrc so we can also view the source for articles, cards, etc. 1 year ago
Wall_attach.php svg stuff 9 months ago
Wall_upload.php deprecate/remove get_channel_by_nick() which is just a less generalised variant of channelx_by_nick() 3 years ago
Webfinger.php imagemagick preserves exif when scaling. GD does not. We do not want to preserve exif on thumbnails which we have rotated, as a browser reading the exif information could rotate them yet again. This checkin adds an abstract function to the generic photo driver which makes the behaviour consistent by stripping EXIF from imagick processed images. However, we will attempt to preserve any ICC colour profiles. See http://php.net/manual/en/imagick.stripimage.php 2 years ago
Webpages.php Status editor hook 1 year ago
Well_known.php Update Well_known.php 11 months ago
Wfinger.php add attachments to zot6 event objects, add zot6 to federated transports (webfinger) 1 year ago
Wiki.php wiki: urlencode the entire share link 1 year ago
Xchan.php module updates 4 years ago
Xpoco.php module updates 4 years ago
Xrd.php we need this in the plugin, not in core 2 years ago
Xref.php module updates 4 years ago
Zfinger.php http signature consolidation 1 year ago
Zot.php fix typo which prevented propagation of comments 1 year ago
Zot_probe.php http signature consolidation 1 year ago
Zotfeed.php issues with image import to zot6 - wrong mid. Also label source project of zotfeed since it is not completely compatible across projects. 11 months ago
Zping.php module updates 4 years ago

README.md

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.