[CORE] Move core plugins to a new modules directory

For reference (raised by rozzin in IRC):

* http://foldoc.org/module
* http://foldoc.org/library
* http://foldoc.org/plugin

As noted by XRevan86, modules are not necessarily non-essential.
As we will keep the modules directory in GS root [therefore, near to
plugins/], it is evidenced the difference between both.

This is a simple yet fundamental structural change. It doesn't change
functionality but makes clearer the way we understand GNU social's
internals.
This commit is contained in:
Diogo Cordeiro
2019-07-23 09:30:05 +01:00
committed by Diogo Peralta Cordeiro
parent 8e7ab891a5
commit c18f26145c
446 changed files with 605 additions and 2357 deletions

View File

@@ -0,0 +1,42 @@
<?php
/*
* GNU Social - a federating social network
* Copyright (C) 2014, Free Software Foundation, Inc.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
if (!defined('GNUSOCIAL')) { exit(1); }
/**
* @package Activity
* @maintainer Mikael Nordfeldth <mmn@hethane.se>
*/
class HTMLPurifierSchemesPlugin extends Plugin
{
const PLUGIN_VERSION = '2.0.0';
public function onPluginVersion(array &$versions)
{
$versions[] = array('name' => 'HTMLPurifier Schemes',
'version' => self::PLUGIN_VERSION,
'author' => 'Mikael Nordfeldth',
'homepage' => 'https://gnu.io/social',
'rawdescription' =>
// TRANS: Plugin description.
_m('Additional URI schemes for HTMLPurifier.'));
return true;
}
}

View File

@@ -0,0 +1,35 @@
<?php
/**
* Validates bitcoin (Bitcoin addresses)
* @todo validate address length and stuff
*/
class HTMLPurifier_URIScheme_bitcoin extends HTMLPurifier_URIScheme
{
/**
* @type bool
*/
public $browsable = false;
/**
* @type bool
*/
public $may_omit_host = true;
/**
* @param HTMLPurifier_URI $uri
* @param HTMLPurifier_Config $config
* @param HTMLPurifier_Context $context
* @return bool
*/
public function doValidate(&$uri, $config, $context)
{
$uri->userinfo = null;
$uri->host = null;
$uri->port = null;
return true;
}
}
// vim: et sw=4 sts=4

View File

@@ -0,0 +1,35 @@
<?php
/**
* Validates geo (geographical coordinates) according to RFC 5870
* @todo Filter allowed query parameters and their order
*/
class HTMLPurifier_URIScheme_geo extends HTMLPurifier_URIScheme
{
/**
* @type bool
*/
public $browsable = false;
/**
* @type bool
*/
public $may_omit_host = true;
/**
* @param HTMLPurifier_URI $uri
* @param HTMLPurifier_Config $config
* @param HTMLPurifier_Context $context
* @return bool
*/
public function doValidate(&$uri, $config, $context)
{
$uri->userinfo = null;
$uri->host = null;
$uri->port = null;
return true;
}
}
// vim: et sw=4 sts=4

View File

@@ -0,0 +1,36 @@
<?php
/**
* Validates gopher
*/
class HTMLPurifier_URIScheme_gopher extends HTMLPurifier_URIScheme
{
/**
* @type int
*/
public $default_port = 70;
/**
* @type bool
*/
public $browsable = true;
/**
* @type bool
*/
public $hierarchical = true;
/**
* @param HTMLPurifier_URI $uri
* @param HTMLPurifier_Config $config
* @param HTMLPurifier_Context $context
* @return bool
*/
public function doValidate(&$uri, $config, $context)
{
$uri->userinfo = null;
return true;
}
}
// vim: et sw=4 sts=4

View File

@@ -0,0 +1,36 @@
<?php
/**
* Validates irc
*/
class HTMLPurifier_URIScheme_irc extends HTMLPurifier_URIScheme
{
/**
* @type int
*/
// public $default_port = 6667;
/**
* @type bool
*/
public $browsable = false;
/**
* @type bool
*/
public $hierarchical = true;
/**
* @param HTMLPurifier_URI $uri
* @param HTMLPurifier_Config $config
* @param HTMLPurifier_Context $context
* @return bool
*/
public function doValidate(&$uri, $config, $context)
{
$uri->userinfo = null;
return true;
}
}
// vim: et sw=4 sts=4

View File

@@ -0,0 +1,41 @@
<?php
/**
* Validates irc
*/
class HTMLPurifier_URIScheme_ircs extends HTMLPurifier_URIScheme
{
/**
* @type int
*/
// public $default_port = 6697;
/**
* @type bool
*/
public $secure = true;
/**
* @type bool
*/
public $browsable = false;
/**
* @type bool
*/
public $hierarchical = true;
/**
* @param HTMLPurifier_URI $uri
* @param HTMLPurifier_Config $config
* @param HTMLPurifier_Context $context
* @return bool
*/
public function doValidate(&$uri, $config, $context)
{
$uri->userinfo = null;
return true;
}
}
// vim: et sw=4 sts=4

View File

@@ -0,0 +1,35 @@
<?php
/**
* Validates magnet (BitTorrent hash links)
* @todo require xt= GET parameter
*/
class HTMLPurifier_URIScheme_magnet extends HTMLPurifier_URIScheme
{
/**
* @type bool
*/
public $browsable = false;
/**
* @type bool
*/
public $may_omit_host = true;
/**
* @param HTMLPurifier_URI $uri
* @param HTMLPurifier_Config $config
* @param HTMLPurifier_Context $context
* @return bool
*/
public function doValidate(&$uri, $config, $context)
{
$uri->userinfo = null;
$uri->host = null;
$uri->port = null;
return true;
}
}
// vim: et sw=4 sts=4

View File

@@ -0,0 +1,35 @@
<?php
/**
* Validates xmpp (for XMPP, so called JIDs)
* @todo Validate the xmpp address
*/
class HTMLPurifier_URIScheme_xmpp extends HTMLPurifier_URIScheme
{
/**
* @type bool
*/
public $browsable = false;
/**
* @type bool
*/
public $may_omit_host = true;
/**
* @param HTMLPurifier_URI $uri
* @param HTMLPurifier_Config $config
* @param HTMLPurifier_Context $context
* @return bool
*/
public function doValidate(&$uri, $config, $context)
{
$uri->userinfo = null;
$uri->host = null;
$uri->port = null;
return true;
}
}
// vim: et sw=4 sts=4

View File

@@ -0,0 +1,23 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-06-08 18:20+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#. TRANS: Plugin description.
#: HTMLPurifierSchemesPlugin.php:41
msgid "Additional URI schemes for HTMLPurifier."
msgstr ""