![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/ezyang/htmlpurifier/library/HTMLPurifier/URIScheme/ |
<?php /** * Validates tel (for phone numbers). * * The relevant specifications for this protocol are RFC 3966 and RFC 5341, * but this class takes a much simpler approach: we normalize phone * numbers so that they only include (possibly) a leading plus, * and then any number of digits and x'es. */ class HTMLPurifier_URIScheme_tel 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; // Delete all non-numeric characters, commas, and non-x characters // from phone number, EXCEPT for a leading plus sign. $uri->path = preg_replace('/(?!^\+)[^\dx,]/', '', // Normalize e(x)tension to lower-case str_replace('X', 'x', rawurldecode($uri->path))); return true; } } // vim: et sw=4 sts=4