Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Q
question2answer
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
outils
question2answer
Commits
9040e36b
Commit
9040e36b
authored
Jan 27, 2016
by
Scott
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update htmLawed (1.1.20)
Close #365.
parent
4c8216d3
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
8 additions
and
8 deletions
+8
-8
htmLawed.php
qa-include/vendor/htmLawed.php
+8
-8
No files found.
qa-include/vendor/htmLawed.php
View file @
9040e36b
<?php
<?php
/*
/*
htmLawed 1.1.
17, 11 March 2014
htmLawed 1.1.
20, 9 June 2015
Copyright Santosh Patnaik
Copyright Santosh Patnaik
Dual licensed with LGPL 3 and GPL 2+
Dual licensed with LGPL 3 and GPL 2+
A PHP Labware internal utility; www.bioinformatics.org/phplabware/internal_utilities/htmLawed
A PHP Labware internal utility; www.bioinformatics.org/phplabware/internal_utilities/htmLawed
...
@@ -434,8 +434,8 @@ if(!empty($m[1])){
...
@@ -434,8 +434,8 @@ if(!empty($m[1])){
}
}
// open tag & attr
// open tag & attr
static
$aN
=
array
(
'abbr'
=>
array
(
'td'
=>
1
,
'th'
=>
1
),
'accept-charset'
=>
array
(
'form'
=>
1
),
'accept'
=>
array
(
'form'
=>
1
,
'input'
=>
1
),
'accesskey'
=>
array
(
'a'
=>
1
,
'area'
=>
1
,
'button'
=>
1
,
'input'
=>
1
,
'label'
=>
1
,
'legend'
=>
1
,
'textarea'
=>
1
),
'action'
=>
array
(
'form'
=>
1
),
'align'
=>
array
(
'caption'
=>
1
,
'embed'
=>
1
,
'applet'
=>
1
,
'iframe'
=>
1
,
'img'
=>
1
,
'input'
=>
1
,
'object'
=>
1
,
'legend'
=>
1
,
'table'
=>
1
,
'hr'
=>
1
,
'div'
=>
1
,
'h1'
=>
1
,
'h2'
=>
1
,
'h3'
=>
1
,
'h4'
=>
1
,
'h5'
=>
1
,
'h6'
=>
1
,
'p'
=>
1
,
'col'
=>
1
,
'colgroup'
=>
1
,
'tbody'
=>
1
,
'td'
=>
1
,
'tfoot'
=>
1
,
'th'
=>
1
,
'thead'
=>
1
,
'tr'
=>
1
),
'alt'
=>
array
(
'applet'
=>
1
,
'area'
=>
1
,
'img'
=>
1
,
'input'
=>
1
),
'archive'
=>
array
(
'applet'
=>
1
,
'object'
=>
1
),
'axis'
=>
array
(
'td'
=>
1
,
'th'
=>
1
),
'bgcolor'
=>
array
(
'embed'
=>
1
,
'table'
=>
1
,
'tr'
=>
1
,
'td'
=>
1
,
'th'
=>
1
),
'border'
=>
array
(
'table'
=>
1
,
'img'
=>
1
,
'object'
=>
1
),
'bordercolor'
=>
array
(
'table'
=>
1
,
'td'
=>
1
,
'tr'
=>
1
),
'cellpadding'
=>
array
(
'table'
=>
1
),
'cellspacing'
=>
array
(
'table'
=>
1
),
'char'
=>
array
(
'col'
=>
1
,
'colgroup'
=>
1
,
'tbody'
=>
1
,
'td'
=>
1
,
'tfoot'
=>
1
,
'th'
=>
1
,
'thead'
=>
1
,
'tr'
=>
1
),
'charoff'
=>
array
(
'col'
=>
1
,
'colgroup'
=>
1
,
'tbody'
=>
1
,
'td'
=>
1
,
'tfoot'
=>
1
,
'th'
=>
1
,
'thead'
=>
1
,
'tr'
=>
1
),
'charset'
=>
array
(
'a'
=>
1
,
'script'
=>
1
),
'checked'
=>
array
(
'input'
=>
1
),
'cite'
=>
array
(
'blockquote'
=>
1
,
'q'
=>
1
,
'del'
=>
1
,
'ins'
=>
1
),
'classid'
=>
array
(
'object'
=>
1
),
'clear'
=>
array
(
'br'
=>
1
),
'code'
=>
array
(
'applet'
=>
1
),
'codebase'
=>
array
(
'object'
=>
1
,
'applet'
=>
1
),
'codetype'
=>
array
(
'object'
=>
1
),
'color'
=>
array
(
'font'
=>
1
),
'cols'
=>
array
(
'textarea'
=>
1
),
'colspan'
=>
array
(
'td'
=>
1
,
'th'
=>
1
),
'compact'
=>
array
(
'dir'
=>
1
,
'dl'
=>
1
,
'menu'
=>
1
,
'ol'
=>
1
,
'ul'
=>
1
),
'coords'
=>
array
(
'area'
=>
1
,
'a'
=>
1
),
'data'
=>
array
(
'object'
=>
1
),
'datetime'
=>
array
(
'del'
=>
1
,
'ins'
=>
1
),
'declare'
=>
array
(
'object'
=>
1
),
'defer'
=>
array
(
'script'
=>
1
),
'dir'
=>
array
(
'bdo'
=>
1
),
'disabled'
=>
array
(
'button'
=>
1
,
'input'
=>
1
,
'optgroup'
=>
1
,
'option'
=>
1
,
'select'
=>
1
,
'textarea'
=>
1
),
'enctype'
=>
array
(
'form'
=>
1
),
'face'
=>
array
(
'font'
=>
1
),
'flashvars'
=>
array
(
'embed'
=>
1
),
'for'
=>
array
(
'label'
=>
1
),
'frame'
=>
array
(
'table'
=>
1
),
'frameborder'
=>
array
(
'iframe'
=>
1
),
'headers'
=>
array
(
'td'
=>
1
,
'th'
=>
1
),
'height'
=>
array
(
'embed'
=>
1
,
'iframe'
=>
1
,
'td'
=>
1
,
'th'
=>
1
,
'img'
=>
1
,
'object'
=>
1
,
'applet'
=>
1
),
'href'
=>
array
(
'a'
=>
1
,
'area'
=>
1
),
'hreflang'
=>
array
(
'a'
=>
1
),
'hspace'
=>
array
(
'applet'
=>
1
,
'img'
=>
1
,
'object'
=>
1
),
'ismap'
=>
array
(
'img'
=>
1
,
'input'
=>
1
),
'label'
=>
array
(
'option'
=>
1
,
'optgroup'
=>
1
),
'language'
=>
array
(
'script'
=>
1
),
'longdesc'
=>
array
(
'img'
=>
1
,
'iframe'
=>
1
),
'marginheight'
=>
array
(
'iframe'
=>
1
),
'marginwidth'
=>
array
(
'iframe'
=>
1
),
'maxlength'
=>
array
(
'input'
=>
1
),
'method'
=>
array
(
'form'
=>
1
),
'model'
=>
array
(
'embed'
=>
1
),
'multiple'
=>
array
(
'select'
=>
1
),
'name'
=>
array
(
'button'
=>
1
,
'embed'
=>
1
,
'textarea'
=>
1
,
'applet'
=>
1
,
'select'
=>
1
,
'form'
=>
1
,
'iframe'
=>
1
,
'img'
=>
1
,
'a'
=>
1
,
'input'
=>
1
,
'object'
=>
1
,
'map'
=>
1
,
'param'
=>
1
),
'nohref'
=>
array
(
'area'
=>
1
),
'noshade'
=>
array
(
'hr'
=>
1
),
'nowrap'
=>
array
(
'td'
=>
1
,
'th'
=>
1
),
'object'
=>
array
(
'applet'
=>
1
),
'onblur'
=>
array
(
'a'
=>
1
,
'area'
=>
1
,
'button'
=>
1
,
'input'
=>
1
,
'label'
=>
1
,
'select'
=>
1
,
'textarea'
=>
1
),
'onchange'
=>
array
(
'input'
=>
1
,
'select'
=>
1
,
'textarea'
=>
1
),
'onfocus'
=>
array
(
'a'
=>
1
,
'area'
=>
1
,
'button'
=>
1
,
'input'
=>
1
,
'label'
=>
1
,
'select'
=>
1
,
'textarea'
=>
1
),
'onreset'
=>
array
(
'form'
=>
1
),
'onselect'
=>
array
(
'input'
=>
1
,
'textarea'
=>
1
),
'onsubmit'
=>
array
(
'form'
=>
1
),
'pluginspage'
=>
array
(
'embed'
=>
1
),
'pluginurl'
=>
array
(
'embed'
=>
1
),
'prompt'
=>
array
(
'isindex'
=>
1
),
'readonly'
=>
array
(
'textarea'
=>
1
,
'input'
=>
1
),
'rel'
=>
array
(
'a'
=>
1
),
'rev'
=>
array
(
'a'
=>
1
),
'rows'
=>
array
(
'textarea'
=>
1
),
'rowspan'
=>
array
(
'td'
=>
1
,
'th'
=>
1
),
'rules'
=>
array
(
'table'
=>
1
),
'scope'
=>
array
(
'td'
=>
1
,
'th'
=>
1
),
'scrolling'
=>
array
(
'iframe'
=>
1
),
'selected'
=>
array
(
'option'
=>
1
),
'shape'
=>
array
(
'area'
=>
1
,
'a'
=>
1
),
'size'
=>
array
(
'hr'
=>
1
,
'font'
=>
1
,
'input'
=>
1
,
'select'
=>
1
),
'span'
=>
array
(
'col'
=>
1
,
'colgroup'
=>
1
),
'src'
=>
array
(
'embed'
=>
1
,
'script'
=>
1
,
'input'
=>
1
,
'iframe'
=>
1
,
'img'
=>
1
),
'standby'
=>
array
(
'object'
=>
1
),
'start'
=>
array
(
'ol'
=>
1
),
'summary'
=>
array
(
'table'
=>
1
),
'tabindex'
=>
array
(
'a'
=>
1
,
'area'
=>
1
,
'button'
=>
1
,
'input'
=>
1
,
'object'
=>
1
,
'select'
=>
1
,
'textarea'
=>
1
),
'target'
=>
array
(
'a'
=>
1
,
'area'
=>
1
,
'form'
=>
1
),
'type'
=>
array
(
'a'
=>
1
,
'embed'
=>
1
,
'object'
=>
1
,
'param'
=>
1
,
'script'
=>
1
,
'input'
=>
1
,
'li'
=>
1
,
'ol'
=>
1
,
'ul'
=>
1
,
'button'
=>
1
),
'usemap'
=>
array
(
'img'
=>
1
,
'input'
=>
1
,
'object'
=>
1
),
'valign'
=>
array
(
'col'
=>
1
,
'colgroup'
=>
1
,
'tbody'
=>
1
,
'td'
=>
1
,
'tfoot'
=>
1
,
'th'
=>
1
,
'thead'
=>
1
,
'tr'
=>
1
),
'value'
=>
array
(
'input'
=>
1
,
'option'
=>
1
,
'param'
=>
1
,
'button'
=>
1
,
'li'
=>
1
),
'valuetype'
=>
array
(
'param'
=>
1
),
'vspace'
=>
array
(
'applet'
=>
1
,
'img'
=>
1
,
'object'
=>
1
),
'width'
=>
array
(
'embed'
=>
1
,
'hr'
=>
1
,
'iframe'
=>
1
,
'img'
=>
1
,
'object'
=>
1
,
'table'
=>
1
,
'td'
=>
1
,
'th'
=>
1
,
'applet'
=>
1
,
'col'
=>
1
,
'colgroup'
=>
1
,
'pre'
=>
1
),
'wmode'
=>
array
(
'embed'
=>
1
),
'xml:space'
=>
array
(
'pre'
=>
1
,
'script'
=>
1
,
'style'
=>
1
));
// Ele-specific
static
$aN
=
array
(
'abbr'
=>
array
(
'td'
=>
1
,
'th'
=>
1
),
'accept-charset'
=>
array
(
'form'
=>
1
),
'accept'
=>
array
(
'form'
=>
1
,
'input'
=>
1
),
'accesskey'
=>
array
(
'a'
=>
1
,
'area'
=>
1
,
'button'
=>
1
,
'input'
=>
1
,
'label'
=>
1
,
'legend'
=>
1
,
'textarea'
=>
1
),
'action'
=>
array
(
'form'
=>
1
),
'align'
=>
array
(
'caption'
=>
1
,
'embed'
=>
1
,
'applet'
=>
1
,
'iframe'
=>
1
,
'img'
=>
1
,
'input'
=>
1
,
'object'
=>
1
,
'legend'
=>
1
,
'table'
=>
1
,
'hr'
=>
1
,
'div'
=>
1
,
'h1'
=>
1
,
'h2'
=>
1
,
'h3'
=>
1
,
'h4'
=>
1
,
'h5'
=>
1
,
'h6'
=>
1
,
'p'
=>
1
,
'col'
=>
1
,
'colgroup'
=>
1
,
'tbody'
=>
1
,
'td'
=>
1
,
'tfoot'
=>
1
,
'th'
=>
1
,
'thead'
=>
1
,
'tr'
=>
1
),
'al
lowfullscreen'
=>
array
(
'iframe'
=>
1
),
'al
t'
=>
array
(
'applet'
=>
1
,
'area'
=>
1
,
'img'
=>
1
,
'input'
=>
1
),
'archive'
=>
array
(
'applet'
=>
1
,
'object'
=>
1
),
'axis'
=>
array
(
'td'
=>
1
,
'th'
=>
1
),
'bgcolor'
=>
array
(
'embed'
=>
1
,
'table'
=>
1
,
'tr'
=>
1
,
'td'
=>
1
,
'th'
=>
1
),
'border'
=>
array
(
'table'
=>
1
,
'img'
=>
1
,
'object'
=>
1
),
'bordercolor'
=>
array
(
'table'
=>
1
,
'td'
=>
1
,
'tr'
=>
1
),
'cellpadding'
=>
array
(
'table'
=>
1
),
'cellspacing'
=>
array
(
'table'
=>
1
),
'char'
=>
array
(
'col'
=>
1
,
'colgroup'
=>
1
,
'tbody'
=>
1
,
'td'
=>
1
,
'tfoot'
=>
1
,
'th'
=>
1
,
'thead'
=>
1
,
'tr'
=>
1
),
'charoff'
=>
array
(
'col'
=>
1
,
'colgroup'
=>
1
,
'tbody'
=>
1
,
'td'
=>
1
,
'tfoot'
=>
1
,
'th'
=>
1
,
'thead'
=>
1
,
'tr'
=>
1
),
'charset'
=>
array
(
'a'
=>
1
,
'script'
=>
1
),
'checked'
=>
array
(
'input'
=>
1
),
'cite'
=>
array
(
'blockquote'
=>
1
,
'q'
=>
1
,
'del'
=>
1
,
'ins'
=>
1
),
'classid'
=>
array
(
'object'
=>
1
),
'clear'
=>
array
(
'br'
=>
1
),
'code'
=>
array
(
'applet'
=>
1
),
'codebase'
=>
array
(
'object'
=>
1
,
'applet'
=>
1
),
'codetype'
=>
array
(
'object'
=>
1
),
'color'
=>
array
(
'font'
=>
1
),
'cols'
=>
array
(
'textarea'
=>
1
),
'colspan'
=>
array
(
'td'
=>
1
,
'th'
=>
1
),
'compact'
=>
array
(
'dir'
=>
1
,
'dl'
=>
1
,
'menu'
=>
1
,
'ol'
=>
1
,
'ul'
=>
1
),
'coords'
=>
array
(
'area'
=>
1
,
'a'
=>
1
),
'data'
=>
array
(
'object'
=>
1
),
'datetime'
=>
array
(
'del'
=>
1
,
'ins'
=>
1
),
'declare'
=>
array
(
'object'
=>
1
),
'defer'
=>
array
(
'script'
=>
1
),
'dir'
=>
array
(
'bdo'
=>
1
),
'disabled'
=>
array
(
'button'
=>
1
,
'input'
=>
1
,
'optgroup'
=>
1
,
'option'
=>
1
,
'select'
=>
1
,
'textarea'
=>
1
),
'enctype'
=>
array
(
'form'
=>
1
),
'face'
=>
array
(
'font'
=>
1
),
'flashvars'
=>
array
(
'embed'
=>
1
),
'for'
=>
array
(
'label'
=>
1
),
'frame'
=>
array
(
'table'
=>
1
),
'frameborder'
=>
array
(
'iframe'
=>
1
),
'headers'
=>
array
(
'td'
=>
1
,
'th'
=>
1
),
'height'
=>
array
(
'embed'
=>
1
,
'iframe'
=>
1
,
'td'
=>
1
,
'th'
=>
1
,
'img'
=>
1
,
'object'
=>
1
,
'applet'
=>
1
),
'href'
=>
array
(
'a'
=>
1
,
'area'
=>
1
),
'hreflang'
=>
array
(
'a'
=>
1
),
'hspace'
=>
array
(
'applet'
=>
1
,
'img'
=>
1
,
'object'
=>
1
),
'ismap'
=>
array
(
'img'
=>
1
,
'input'
=>
1
),
'label'
=>
array
(
'option'
=>
1
,
'optgroup'
=>
1
),
'language'
=>
array
(
'script'
=>
1
),
'longdesc'
=>
array
(
'img'
=>
1
,
'iframe'
=>
1
),
'marginheight'
=>
array
(
'iframe'
=>
1
),
'marginwidth'
=>
array
(
'iframe'
=>
1
),
'maxlength'
=>
array
(
'input'
=>
1
),
'method'
=>
array
(
'form'
=>
1
),
'model'
=>
array
(
'embed'
=>
1
),
'multiple'
=>
array
(
'select'
=>
1
),
'name'
=>
array
(
'button'
=>
1
,
'embed'
=>
1
,
'textarea'
=>
1
,
'applet'
=>
1
,
'select'
=>
1
,
'form'
=>
1
,
'iframe'
=>
1
,
'img'
=>
1
,
'a'
=>
1
,
'input'
=>
1
,
'object'
=>
1
,
'map'
=>
1
,
'param'
=>
1
),
'nohref'
=>
array
(
'area'
=>
1
),
'noshade'
=>
array
(
'hr'
=>
1
),
'nowrap'
=>
array
(
'td'
=>
1
,
'th'
=>
1
),
'object'
=>
array
(
'applet'
=>
1
),
'onblur'
=>
array
(
'a'
=>
1
,
'area'
=>
1
,
'button'
=>
1
,
'input'
=>
1
,
'label'
=>
1
,
'select'
=>
1
,
'textarea'
=>
1
),
'onchange'
=>
array
(
'input'
=>
1
,
'select'
=>
1
,
'textarea'
=>
1
),
'onfocus'
=>
array
(
'a'
=>
1
,
'area'
=>
1
,
'button'
=>
1
,
'input'
=>
1
,
'label'
=>
1
,
'select'
=>
1
,
'textarea'
=>
1
),
'onreset'
=>
array
(
'form'
=>
1
),
'onselect'
=>
array
(
'input'
=>
1
,
'textarea'
=>
1
),
'onsubmit'
=>
array
(
'form'
=>
1
),
'pluginspage'
=>
array
(
'embed'
=>
1
),
'pluginurl'
=>
array
(
'embed'
=>
1
),
'prompt'
=>
array
(
'isindex'
=>
1
),
'readonly'
=>
array
(
'textarea'
=>
1
,
'input'
=>
1
),
'rel'
=>
array
(
'a'
=>
1
),
'rev'
=>
array
(
'a'
=>
1
),
'rows'
=>
array
(
'textarea'
=>
1
),
'rowspan'
=>
array
(
'td'
=>
1
,
'th'
=>
1
),
'rules'
=>
array
(
'table'
=>
1
),
'scope'
=>
array
(
'td'
=>
1
,
'th'
=>
1
),
'scrolling'
=>
array
(
'iframe'
=>
1
),
'selected'
=>
array
(
'option'
=>
1
),
'shape'
=>
array
(
'area'
=>
1
,
'a'
=>
1
),
'size'
=>
array
(
'hr'
=>
1
,
'font'
=>
1
,
'input'
=>
1
,
'select'
=>
1
),
'span'
=>
array
(
'col'
=>
1
,
'colgroup'
=>
1
),
'src'
=>
array
(
'embed'
=>
1
,
'script'
=>
1
,
'input'
=>
1
,
'iframe'
=>
1
,
'img'
=>
1
),
'standby'
=>
array
(
'object'
=>
1
),
'start'
=>
array
(
'ol'
=>
1
),
'summary'
=>
array
(
'table'
=>
1
),
'tabindex'
=>
array
(
'a'
=>
1
,
'area'
=>
1
,
'button'
=>
1
,
'input'
=>
1
,
'object'
=>
1
,
'select'
=>
1
,
'textarea'
=>
1
),
'target'
=>
array
(
'a'
=>
1
,
'area'
=>
1
,
'form'
=>
1
),
'type'
=>
array
(
'a'
=>
1
,
'embed'
=>
1
,
'object'
=>
1
,
'param'
=>
1
,
'script'
=>
1
,
'input'
=>
1
,
'li'
=>
1
,
'ol'
=>
1
,
'ul'
=>
1
,
'button'
=>
1
),
'usemap'
=>
array
(
'img'
=>
1
,
'input'
=>
1
,
'object'
=>
1
),
'valign'
=>
array
(
'col'
=>
1
,
'colgroup'
=>
1
,
'tbody'
=>
1
,
'td'
=>
1
,
'tfoot'
=>
1
,
'th'
=>
1
,
'thead'
=>
1
,
'tr'
=>
1
),
'value'
=>
array
(
'input'
=>
1
,
'option'
=>
1
,
'param'
=>
1
,
'button'
=>
1
,
'li'
=>
1
),
'valuetype'
=>
array
(
'param'
=>
1
),
'vspace'
=>
array
(
'applet'
=>
1
,
'img'
=>
1
,
'object'
=>
1
),
'width'
=>
array
(
'embed'
=>
1
,
'hr'
=>
1
,
'iframe'
=>
1
,
'img'
=>
1
,
'object'
=>
1
,
'table'
=>
1
,
'td'
=>
1
,
'th'
=>
1
,
'applet'
=>
1
,
'col'
=>
1
,
'colgroup'
=>
1
,
'pre'
=>
1
),
'wmode'
=>
array
(
'embed'
=>
1
),
'xml:space'
=>
array
(
'pre'
=>
1
,
'script'
=>
1
,
'style'
=>
1
));
// Ele-specific
static
$aNE
=
array
(
'checked'
=>
1
,
'compact'
=>
1
,
'declare'
=>
1
,
'defer'
=>
1
,
'disabled'
=>
1
,
'ismap'
=>
1
,
'multiple'
=>
1
,
'nohref'
=>
1
,
'noresize'
=>
1
,
'noshade'
=>
1
,
'nowrap'
=>
1
,
'readonly'
=>
1
,
'selected'
=>
1
);
// Empty
static
$aNE
=
array
(
'
allowfullscreen'
=>
1
,
'
checked'
=>
1
,
'compact'
=>
1
,
'declare'
=>
1
,
'defer'
=>
1
,
'disabled'
=>
1
,
'ismap'
=>
1
,
'multiple'
=>
1
,
'nohref'
=>
1
,
'noresize'
=>
1
,
'noshade'
=>
1
,
'nowrap'
=>
1
,
'readonly'
=>
1
,
'selected'
=>
1
);
// Empty
static
$aNP
=
array
(
'action'
=>
1
,
'cite'
=>
1
,
'classid'
=>
1
,
'codebase'
=>
1
,
'data'
=>
1
,
'href'
=>
1
,
'longdesc'
=>
1
,
'model'
=>
1
,
'pluginspage'
=>
1
,
'pluginurl'
=>
1
,
'usemap'
=>
1
);
// Need scheme check; excludes style, on* & src
static
$aNP
=
array
(
'action'
=>
1
,
'cite'
=>
1
,
'classid'
=>
1
,
'codebase'
=>
1
,
'data'
=>
1
,
'href'
=>
1
,
'longdesc'
=>
1
,
'model'
=>
1
,
'pluginspage'
=>
1
,
'pluginurl'
=>
1
,
'usemap'
=>
1
);
// Need scheme check; excludes style, on* & src
static
$aNU
=
array
(
'class'
=>
array
(
'param'
=>
1
,
'script'
=>
1
),
'dir'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'iframe'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'id'
=>
array
(
'script'
=>
1
),
'lang'
=>
array
(
'applet'
=>
1
,
'br'
=>
1
,
'iframe'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'xml:lang'
=>
array
(
'applet'
=>
1
,
'br'
=>
1
,
'iframe'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onclick'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'ondblclick'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onkeydown'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onkeypress'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onkeyup'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onmousedown'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onmousemove'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onmouseout'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onmouseover'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onmouseup'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'style'
=>
array
(
'param'
=>
1
,
'script'
=>
1
),
'title'
=>
array
(
'param'
=>
1
,
'script'
=>
1
));
// Univ & exceptions
static
$aNU
=
array
(
'class'
=>
array
(
'param'
=>
1
,
'script'
=>
1
),
'dir'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'iframe'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'id'
=>
array
(
'script'
=>
1
),
'lang'
=>
array
(
'applet'
=>
1
,
'br'
=>
1
,
'iframe'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'xml:lang'
=>
array
(
'applet'
=>
1
,
'br'
=>
1
,
'iframe'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onclick'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'ondblclick'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onkeydown'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onkeypress'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onkeyup'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onmousedown'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onmousemove'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onmouseout'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onmouseover'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'onmouseup'
=>
array
(
'applet'
=>
1
,
'bdo'
=>
1
,
'br'
=>
1
,
'font'
=>
1
,
'iframe'
=>
1
,
'isindex'
=>
1
,
'param'
=>
1
,
'script'
=>
1
),
'style'
=>
array
(
'param'
=>
1
,
'script'
=>
1
),
'title'
=>
array
(
'param'
=>
1
,
'script'
=>
1
));
// Univ & exceptions
...
@@ -475,7 +475,7 @@ while(strlen($a)){
...
@@ -475,7 +475,7 @@ while(strlen($a)){
break
;
case
2
:
// Val
break
;
case
2
:
// Val
if
(
preg_match
(
'`^((?:"[^"]*")|(?:\'[^\']*\')|(?:\s*[^\s"\']+))(.*)`'
,
$a
,
$m
)){
if
(
preg_match
(
'`^((?:"[^"]*")|(?:\'[^\']*\')|(?:\s*[^\s"\']+))(.*)`'
,
$a
,
$m
)){
$a
=
ltrim
(
$m
[
2
]);
$m
=
$m
[
1
];
$w
=
1
;
$mode
=
0
;
$a
=
ltrim
(
$m
[
2
]);
$m
=
$m
[
1
];
$w
=
1
;
$mode
=
0
;
$aA
[
$nm
]
=
trim
(
(
$m
[
0
]
==
'"'
or
$m
[
0
]
==
'\''
)
?
substr
(
$m
,
1
,
-
1
)
:
$m
);
$aA
[
$nm
]
=
trim
(
str_replace
(
'<'
,
'<'
,
(
$m
[
0
]
==
'"'
or
$m
[
0
]
==
'\''
)
?
substr
(
$m
,
1
,
-
1
)
:
$m
)
);
}
}
break
;
break
;
}
}
...
@@ -504,7 +504,7 @@ foreach($aA as $k=>$v){
...
@@ -504,7 +504,7 @@ foreach($aA as $k=>$v){
$v
=
preg_replace_callback
(
'`(url(?:\()(?: )*(?:\'|"|&(?:quot|apos);)?)(.+?)((?:\'|"|&(?:quot|apos);)?(?: )*(?:\)))`iS'
,
'hl_prot'
,
$v
);
$v
=
preg_replace_callback
(
'`(url(?:\()(?: )*(?:\'|"|&(?:quot|apos);)?)(.+?)((?:\'|"|&(?:quot|apos);)?(?: )*(?:\)))`iS'
,
'hl_prot'
,
$v
);
$v
=
!
$C
[
'css_expression'
]
?
preg_replace
(
'`expression`i'
,
' '
,
preg_replace
(
'`\\\\\S|(/|(%2f))(\*|(%2a))`i'
,
' '
,
$v
))
:
$v
;
$v
=
!
$C
[
'css_expression'
]
?
preg_replace
(
'`expression`i'
,
' '
,
preg_replace
(
'`\\\\\S|(/|(%2f))(\*|(%2a))`i'
,
' '
,
$v
))
:
$v
;
}
elseif
(
isset
(
$aNP
[
$k
])
or
strpos
(
$k
,
'src'
)
!==
false
or
$k
[
0
]
==
'o'
){
}
elseif
(
isset
(
$aNP
[
$k
])
or
strpos
(
$k
,
'src'
)
!==
false
or
$k
[
0
]
==
'o'
){
$v
=
str_replace
(
"
\xad
"
,
' '
,
(
strpos
(
$v
,
'&'
)
!==
false
?
str_replace
(
array
(
'­'
,
'­'
,
'­'
),
' '
,
$v
)
:
$v
));
$v
=
str_replace
(
"
"
,
' '
,
(
strpos
(
$v
,
'&'
)
!==
false
?
str_replace
(
array
(
'­'
,
'­'
,
'­'
),
' '
,
$v
)
:
$v
));
# double-quoted char is soft-hyphen; appears here as "" or hyphen or something else depending on viewing software
$v
=
hl_prot
(
$v
,
$k
);
$v
=
hl_prot
(
$v
,
$k
);
if
(
$k
==
'href'
){
// X-spam
if
(
$k
==
'href'
){
// X-spam
if
(
$C
[
'anti_mail_spam'
]
&&
strpos
(
$v
,
'mailto:'
)
===
0
){
if
(
$C
[
'anti_mail_spam'
]
&&
strpos
(
$v
,
'mailto:'
)
===
0
){
...
@@ -629,10 +629,10 @@ if($e == 'font'){
...
@@ -629,10 +629,10 @@ if($e == 'font'){
$a2
.=
' font-family: '
.
str_replace
(
'"'
,
'\''
,
trim
(
$m
[
2
]))
.
';'
;
$a2
.=
' font-family: '
.
str_replace
(
'"'
,
'\''
,
trim
(
$m
[
2
]))
.
';'
;
}
}
if
(
preg_match
(
'`color\s*=\s*(\'|")?(.+?)(\\1|\s|$)`i'
,
$a
,
$m
)){
if
(
preg_match
(
'`color\s*=\s*(\'|")?(.+?)(\\1|\s|$)`i'
,
$a
,
$m
)){
$a2
.=
' color: '
.
trim
(
$m
[
2
]
)
.
';'
;
$a2
.=
' color: '
.
str_replace
(
'"'
,
'\''
,
trim
(
$m
[
2
])
)
.
';'
;
}
}
if
(
preg_match
(
'`size\s*=\s*(\'|")?(.+?)(\\1|\s|$)`i'
,
$a
,
$m
)
&&
isset
(
$fs
[(
$m
=
trim
(
$m
[
2
]))])){
if
(
preg_match
(
'`size\s*=\s*(\'|")?(.+?)(\\1|\s|$)`i'
,
$a
,
$m
)
&&
isset
(
$fs
[(
$m
=
trim
(
$m
[
2
]))])){
$a2
.=
' font-size: '
.
$fs
[
$m
]
.
';'
;
$a2
.=
' font-size: '
.
str_replace
(
'"'
,
'\''
,
$fs
[
$m
])
.
';'
;
}
}
$e
=
'span'
;
return
ltrim
(
$a2
);
$e
=
'span'
;
return
ltrim
(
$a2
);
}
}
...
@@ -698,7 +698,7 @@ return str_replace(array("\x01", "\x02", "\x03", "\x04", "\x05", "\x07"), array(
...
@@ -698,7 +698,7 @@ return str_replace(array("\x01", "\x02", "\x03", "\x04", "\x05", "\x07"), array(
function
hl_version
(){
function
hl_version
(){
// rel
// rel
return
'1.1.
17
'
;
return
'1.1.
20
'
;
// eof
// eof
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment