M\á:l‹°;ZfbJôØèÞ®^—X£ß (qª·vÓIÍnÛ³séRÈEÜ]ð>=½ô €“²ñ–ïsHƒR<¿×™¦.¤yÈrHl‚·üêãpÞ´-)QAù€pë‹£žw7Ÿ®öõ6ó(¢û�÷k^hÀ 93flô¢J··¨éò+�G5�¸±¤Úr,²œ…âéŽjàs^4mËmKòäW-ò²@¯¢XU _¯¤BXJަªq¿–«â¾tvì"¨Ï¥Oµ`¢qßl�"¬Á„ñ«8µöß]¤->¥u°3Ò̇�ù@’|þ£ô‚Ü׋òxO|îŒéƒu£-âY¬}®„‚5Í2æm,ŽpÏu÷Cªçåd#u˜,VÊþ¦NéþÓHªËÔ? ëϨ?Eb£ókBj&:^–^‹ã)Ç+3\Õ ‹Ô™"‚®Õ×�I�BÜ·ã›$Îö.¢YÛ5Ìâ³›Š©jXÔ‡Šæ‚[ešÂ…/À.¼�à;½p䩌î»ÊÀã·¢iŒ¸³è€Ã_ÈBåšh:쫇±Ò±#$¤uWáê®É–ÄíR£-Vº~dûÏV$`l�ѪP‹Ž"´ ó&¶‘‹>ë)Õâ§^P1á�R3xæ‹ßá!' EÙØ±XôlgŒ'Ñ;2©ìY_ë?Joã2BŒÈ=¡ó Ø�…Væ4a5¨=ãÈ#5¸Bk¹8”%ŸZ¨ãÀ e‡.Ã6õí~ñý8Ljµsaêt_•Ï›YNªQ9Aµ¶[Äç÷ÂÉÙ®jÞhCE�‡‘Å|ïk—}•K…’,¸£M•ª£'gCSlR «Ë“³Oeýòƒ‚¶<Ûý€Oµoxs‚Ûyá5ÁúLÁDT ãÿe;xé¿ÆzUjkÞÚÄôŒ�tš8„ =!2ÑÑ’0]{–>˜¾ûì 5·ÅØå Bb,Ø0z¢Æñ]A¯W'1aâe™ûç<]]`kdSˆ‹òäYbáÔÄ`Ð-~Úío¬jÝ‹ªÃ“¢ß¤Ô²á¾‘1Jgô…Ü=ÁÛ Ê@Ó²µƒ$jKF£q”Íî\OcŽÎÜ4(uâ-Ÿ{æ-ý�M/ÿ—âÅ¡­rXQö†I"]âLx>µ+Å ×۱ɱÆÜ£3Ìo¬ô¡gJÆçdþÕ—ï Ô²þó]øLš)+ò& Ôýûô¹ÀrË«ê[æ%ê¡’æû¿›�H¤·5l£Fƒˆ/šÛ¦¶+V×<¾ë d†CÀ&=Wlú[KîѼ>øÖD˼K)©[tÉe�«Êìh@.Gqö¨úBêRÖnŽ¡äòçꌅ|SGÑÓ¬6ÐÌžÓ7%"¢-³JmÞ7?7²{æá1ÓîO|´>”ÇøÑµMUwú èn0ñýn½­vyþƒò!+Ùê׀ qÁt!Ò³™N=í¼^·sWŸÎ´•õ°pŒ^ß®Ÿ©{y­À¯â}éˆrÈ´¾:siýQœ“Yg½þ“hHEƒõÏ_(±%wô+V�…Kü—ìKh�pÉŽ~lÿ�Ø1¨»;ì×ôËÄ¥¼ÆX@ÕaE{ý>xÇ8=¡H �¡´¼sœé=ÒZD¿W3WvÔ틽aH¥/æìh@.Gqö¨úBêRÖnŽ¡äòçꌅ|SGÑÓz¬þÆŸâBS¨î«*övŠ›ÃÁQÑ·”áÄØKNͽþ¾rLÈXêG¡.OÌàòÿ£ '˜¬B©)Roš*ÿ�Ø1¨»;ì×ôËÄ¥¼ÆX@ÕaE{ý>xÇ8=¡îŽ�Þü‡E®]>lâ6>ÕØÉ~ÒWä°'ó^@�÷"Ç,j¡§_HÉÚ6¦Ó“fÚ| Ã)=Kl�Á¯‚m¹ô(Ë5�IRdšÎPT†^ ¾ð †iÇB9˜Ï‘öBÒ.Ç P¿5]Ã=4²ƒïø¢OÛ-\m�‹ó�M‡d(F3äÝè#±ƒ`HÂÞõ…û¿›�H¤·5l£Fƒˆ/šÁDT ãÿe;xé¿ÆzUj°bÖ½Þèºí°üö£ô°å“µêÿȪ�oÉb:]%tYï*µŸN›¥¡uèyÈf È,S[?ð–^X1jðHo¬Oð�²‰ËûˆåÜ Ü�C¡Ÿ—“Üû®t/A«Í!SN$_¿÷hÐLñVÖwµtF3äÝè#±ƒ`HÂÞõ…û¿›�H¤·5l£Fƒˆ/šÁDT ãÿe;xé¿ÆzUjÊ>7®OÄtÝ=e[úØÙEÝÛÇhfœ4Œ²ÍQñ›È5AfXœ‰\¶/�Dì)‹ÏM9׆ìh@.Gqö¨úBêRÖnŽ¡äòçꌅ|SGÑÓz¬þÆŸâBS¨î«*ö¤—~åâO3CØž¥¶ª#¦C—hÒqæ. Ã}+aƒŽêŽ^´QVíhÞÑ¥$Çð�¡uèyÈf È,S[?ð–^X1jðHo¬Oð2Üí~úT q'gÙþfza R»ä§~Ï\�ñÉÖnË�P‘M0P{_”I'˜§mÐxH¦H‘[¤Piê\ݯç ‡.ì£:~öœ†²ãí =¦¤_éÃÐS²½Î]å¥à]ÕUÔ÷àv{ÕØÙEÝÛÇhfœ4Œ²Í›‡N^AßD�›—¦zAù{Û¸$’ZˆÉò”Ò˯‡“fÚ| Ã)=Kl�Á¯‚m¹ô(Ë5�IRdšÎPT†^y”* ¶Á8q‡ì÷µ†œ9§ø�#Ý›>Æ_�†F3äÝè#±ƒ`HÂÞõ…û¿›�H¤·5l£Fƒˆ/š„ÍÁG Û¾QȲa_àv"µnÿoOÄ+öRaQ?û9§sˆl²#¬v}Q P¦áèx|�3„ÃæfWÑsê׀ qÁt!Ò³™N=í¼^·sWŸÎ´•õ°pŒ^ƒt¡ãoÔx¡k»yØ‘‚tgwæÕ3&XÚ­zÚÍç1cÉ-ÿ2F‰™%©Â�‰Þ6 ž>õ?H-פ«Ó[tŽGæQ'ÛJ0�Ž®[æ�,?Íê²’¿¯„1ë_½bÏ¥wS ­Í2?Œ%Èl†Üã+'ÜmrmmùðßBõ›Ú"ZÌýºç¹â1 (ÆÄåb 9ÓwõÛŠa¼8P‡|« W1¾õ›„qÑïu«¹­ÂWÙ§M =Qû”.q÷I\V xh³¹ï‹¨6@+öhì\´9oàd€(ã›N#_¹©j¾«å›Øø�«ô­Ó¿ÿŒÅ;þýì]Èd�7›{®¯™Ü%'¿ùù§A 02ŸKŸÀ'g³eJüúÊPÉøñ)‚œË·×/÷ÓßD@÷ÍÐOp<+ÑÈ–eÓæ œDÄÛ|‡Š¡ÐMËÕ¸ùêÁ¾Ž°HM\$n7¬¡¢UÂid!5 ˆLÔÕˆ8"Àa-iñ'üøl%'mƒã›aÊ&´Ù(ë}Òò¨føîàûúJ§yûMc&ù¸ö,ŸÑÄ59ØÆ¥Z9€ÂŽÈ »ÿüÖ4fxçÓž%"Y¨ñDŒê¸â{@’±_òñÇå¾Hr E7WøÖ¨òaÎ�x2˜L(ûeŦƒÅ=œï˜|è¬"ù¥d1/wN³vã@z5mh`ÎÆ#n� º£¸•#d¶jä»òƒä¥·Ø Õ[¬‡ �nŸo©e vÉ@ôB¶]Ñ.’ðFžtÃ¥$Ö]ðè­&çäAÏÊ4íT/n1¾­y…AÆùm«oÙ£�_ÇBŽ…^ÞÍ%÷!%û6ÌX¸BȾ˜C›‘Eu¸çé©‘z %5‚~-ê´Û]Æa9F6ÝýDh:´_*DIaÑî´Œ¬’Æ,híà<Å�‚¡ªÕ³Ï–º¢½Ý"±0E!$E–ª"AwÛLf¨LŸûnú%®Ö}ô;u)cǶ– ØY–-”L`ƒ„3˜’�P/o[V¢3å®EÅ®5tSä1„c�ˆý/) ²‡j³d'Ý0r¹båj¢ ;{"ÌûZ&.�·å'§êÀüj »õ>LÞ”alºn ö'  hÌ…/Ó<áý„˜&û tsM)y­È–ó?,!@=«r©¯!5"´P„·oF%6†–¹2DM�|JÖ S²Ï¡õ]‡~.ö@.�‡sF�>¸šZòkFAïþìŒ�éÃwOÆÌ4gª­l=¾×$OgRU㡃¦:S¨|ÜúZa$éDS³¢š¶oHEB÷†<áDyxµÞÂÿ!uV¥è­ !z… i¶Ÿ¬ Õ/z¿x#e3iíÁ›kt·^µ©n�35Ý5ž±Ãá„™­�©û^oZX9›dòe݆åë÷qBMx2ï&8ª÷,ùòRý[$ŒÍ¼(ª¾Õå$€ô™5°Ÿbçš»�Òµí¶˜œï@h”êÝë䮽}y½ ùÑ¢Á¼ÔíŧAèÆuìWWTòë“ówÛI³�h®ÅÆÈr=['E0ùLjW?`k¥Þo¤"¬Ï^΂h-øPEf�P¹!1õ+ ¥-/´Ö‡ÜL¤Ø¸ð]–ëX ‘Àãà|úÿÜy�›–¹7JΛ¡{0hžª�"éAÐ5§?Žý6�Q9ŒPG‡Ä+ìÙj¼Üs6(ož+‡9nÓï’—fû{¾)`àš ˆ÷xG,EÏËoÛüöÕFd¿¤­…å˜à‘/tð� ±z6lŸÿSÈÑÜÈú˜�×鎽j¨éïy݃$ü²¥éùy®2Ù¯Q=Ám¤yaë䮽}y½ ùÑ¢Á¼Ô‚}IS?¾YVª‘,ûØâh°o{ÀoQçr^€�¥Bõ‡! ›‘Îý488,jU{-Ù�œ…ƒ®µZcåš�ùuLùǃˆ�tÌ[‡SÿDY8šžM9ÀDp1ÛÀåÎñect of the site it will not 11: * result in a conflict. 12: * * Use the OOP version of htmLawed (required a single updated to call it) to 13: * make the namespacing relatively easy. 14: * * Change the name of the Vanilla class so it don't conflict with the 15: * htmLawed OOP class 16: * * Update all `htmLawed::` references to `\DataTables\Vendor\htmLawed::` in 17: * the htmLawed file (to allow callbacks to operate correctly) 18: * * Updated Vanilla wrapper to operate on PHP 5.3 19: * 20: * HtmLawed: 21: * http://www.bioinformatics.org/phplabware/internal_utilities/htmLawed/ 22: * Copyright: Santosh Patnaik 23: * License: Dual licensed with LGPL 3 and GPL 2+ 24: * 25: * Vanilla wrapper for HtmLawed: 26: * https://github.com/vanilla/htmlawed/ 27: * Author: Todd Burry <todd@vanillaforums.com> 28: * Copyright: 2009-2014 Vanilla Forums Inc. 29: * License: LGPL-3.0 30: */ 31: 32: namespace DataTables\Vendor; 33: 34: /** 35: * A class wrapper for the htmLawed library. 36: */ 37: class Htmlaw { 38: /// Methods /// 39: 40: public static $defaultConfig = array( 41: 'anti_link_spam' => array('`.`', ''), 42: 'comment' => 1, 43: 'cdata' => 3, 44: 'css_expression' => 1, 45: 'deny_attribute' => 'on*', 46: 'unique_ids' => 0, 47: 'elements' => '*-applet-form-input-textarea-iframe-script-style-embed-object', 48: 'keep_bad' => 1, 49: 'schemes' => 'classid:clsid; href: aim, feed, file, ftp, gopher, http, https, irc, mailto, news, nntp, sftp, ssh, telnet; style: nil; *:file, http, https', // clsid allowed in class 50: 'valid_xhtml' => 0, 51: 'direct_list_nest' => 1, 52: 'balance' => 1 53: ); 54: 55: public static $defaultSpec = array( 56: 'object=-classid-type, -codebase', 57: 'embed=type(oneof=application/x-shockwave-flash)' 58: ); 59: 60: /** 61: * Filters a string of html with the htmLawed library. 62: * 63: * @param string $html The text to filter. 64: * @param array|null $config Config settings for the array. 65: * @param string|array|null $spec A specification to further limit the allowed attribute values in the html. 66: * @return string Returns the filtered html. 67: * @see http://www.bioinformatics.org/phplabware/internal_utilities/htmLawed/htmLawed_README.htm 68: */ 69: public static function filter($html, array $config = null, $spec = null) { 70: require_once __DIR__.'/htmLawed/htmLawed.php'; 71: 72: if ($config === null) { 73: $config = self::$defaultConfig; 74: } 75: 76: if (isset($config['spec']) && !$spec) { 77: $spec = $config['spec']; 78: } 79: 80: if ($spec === null) { 81: $spec = static::$defaultSpec; 82: } 83: 84: return htmLawed::hl($html, $config, $spec); 85: } 86: 87: 88: /** 89: * Filter a string of html so that it can be put into an rss feed. 90: * 91: * @param $html The html text to fitlter. 92: * @return string Returns the filtered html. 93: * @see Htmlawed::filter(). 94: */ 95: public static function filterRSS($html) { 96: $config = array( 97: 'anti_link_spam' => array('`.`', ''), 98: 'comment' => 1, 99: 'cdata' => 3, 100: 'css_expression' => 1, 101: 'deny_attribute' => 'on*,style,class', 102: 'elements' => '*-applet-form-input-textarea-iframe-script-style-object-embed-comment-link-listing-meta-noscript-plaintext-xmp', 103: 'keep_bad' => 0, 104: 'schemes' => 'classid:clsid; href: aim, feed, file, ftp, gopher, http, https, irc, mailto, news, nntp, sftp, ssh, telnet; style: nil; *:file, http, https', // clsid allowed in class 105: 'valid_xml' => 2, 106: 'balance' => 1 107: ); 108: $spec = static::$defaultSpec; 109: 110: $result = static::filter($html, $config, $spec); 111: 112: return $result; 113: } 114: } 115: