Support cid URLs as used in mailstream plugin
This commit is contained in:
parent
4dcdcd4d6f
commit
4a16d8e06f
2 changed files with 40 additions and 0 deletions
|
@ -28,6 +28,7 @@ use Friendica\Content\ContactSelector;
|
||||||
use Friendica\Content\Item;
|
use Friendica\Content\Item;
|
||||||
use Friendica\Content\OEmbed;
|
use Friendica\Content\OEmbed;
|
||||||
use Friendica\Content\Smilies;
|
use Friendica\Content\Smilies;
|
||||||
|
use Friendica\Content\Text\HTMLPurifier_URIScheme_cid;
|
||||||
use Friendica\Core\Hook;
|
use Friendica\Core\Hook;
|
||||||
use Friendica\Core\Logger;
|
use Friendica\Core\Logger;
|
||||||
use Friendica\Core\Protocol;
|
use Friendica\Core\Protocol;
|
||||||
|
@ -1874,6 +1875,8 @@ class BBCode
|
||||||
$text
|
$text
|
||||||
);
|
);
|
||||||
|
|
||||||
|
\HTMLPurifier_URISchemeRegistry::instance()->register('cid', new HTMLPurifier_URIScheme_cid());
|
||||||
|
|
||||||
$config = \HTMLPurifier_HTML5Config::createDefault();
|
$config = \HTMLPurifier_HTML5Config::createDefault();
|
||||||
$config->set('HTML.Doctype', 'HTML5');
|
$config->set('HTML.Doctype', 'HTML5');
|
||||||
$config->set('HTML.SafeIframe', true);
|
$config->set('HTML.SafeIframe', true);
|
||||||
|
|
37
src/Content/Text/HTMLPurifier_URIScheme_cid.php
Normal file
37
src/Content/Text/HTMLPurifier_URIScheme_cid.php
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Friendica\Content\Text;
|
||||||
|
|
||||||
|
use \HTMLPurifier_URIScheme;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Validates content-id ("cid") as used in multi-part MIME messages, as defined by RFC 2392
|
||||||
|
*/
|
||||||
|
class HTMLPurifier_URIScheme_cid extends HTMLPurifier_URIScheme
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @type bool
|
||||||
|
*/
|
||||||
|
public $browsable = true;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @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;
|
||||||
|
$uri->query = null;
|
||||||
|
// typecode check needed on path
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue