mirror of
https://github.com/EGroupware/egroupware.git
synced 2024-11-23 00:13:35 +01:00
* eMail/HTMLawed: introduce and use new make_tag_strict option 3, to exclude font from applying strict measures to it
This commit is contained in:
parent
c2d778a2f1
commit
c133b16728
@ -44,6 +44,7 @@ class felamimail_bo
|
||||
* @array
|
||||
*/
|
||||
static $htmLawed_config = array('comment'=>1, //remove comments
|
||||
'make_tag_strict' => 3, // 3 is a new own config value, to indicate that transformation is to be performed, but don't transform font as size transformation of numeric sizes to keywords alters the intended result too much
|
||||
'keep_bad'=>2, //remove tags but keep element content (4 and 6 keep element content only if text (pcdata) is valid in parent element as per specs, this may lead to textloss if balance is switched on)
|
||||
'balance'=>1,//turn off tag-balancing (config['balance']=>0). That will not introduce any security risk; only standards-compliant tag nesting check/filtering will be turned off (basic tag-balance will remain; i.e., there won't be any unclosed tag, etc., after filtering)
|
||||
'direct_list_nest' => 1,
|
||||
|
@ -64,7 +64,7 @@ class egw_htmLawed
|
||||
'hook_tag'=>array('', '', 'name of custom function to further check attribute values', '25'),
|
||||
'keep_bad'=>array('7', '6', 'keep, or remove <em>bad</em> tag content', '0'),
|
||||
'lc_std_val'=>array('2', '1', 'lower-case std. attribute values like <em>radio</em>', '0'),
|
||||
'make_tag_strict'=>array('3', 'nil', 'transform deprecated elements', 'nil'),
|
||||
'make_tag_strict'=>array('3', 'nil', 'transform deprecated elements', 'nil'), 3 is a new own config value, to indicate that transformation is to be performed, but don't transform font as size transformation of numeric sizes to keywords alters the intended result too much
|
||||
'named_entity'=>array('2', '1', 'allow named entities, or convert numeric ones', '0'),
|
||||
'no_deprecated_attr'=>array('3', '1', 'allow deprecated attributes, or transform them', '0'),
|
||||
'parent'=>array('', 'div', 'name of parent element', '25'),
|
||||
@ -81,6 +81,7 @@ class egw_htmLawed
|
||||
*/
|
||||
|
||||
$this->Configuration = array('comment'=>1, //remove comments
|
||||
'make_tag_strict'=>3,//3 is a new own config value, to indicate that transformation is to be performed, but don't transform font, as size transformation of numeric sizes to keywords alters the intended result too much
|
||||
'balance'=>0,//turn off tag-balancing (config['balance']=>0). That will not introduce any security risk; only standards-compliant tag nesting check/filtering will be turned off (basic tag-balance will remain; i.e., there won't be any unclosed tag, etc., after filtering)
|
||||
'tidy'=>1,
|
||||
'elements' => "* -script",
|
||||
|
@ -631,7 +631,7 @@ if($e == 'dir' or $e == 'menu'){$e = 'ul'; return '';}
|
||||
if($e == 's' or $e == 'strike'){$e = 'span'; return 'text-decoration: line-through;';}
|
||||
if($e == 'u'){$e = 'span'; return 'text-decoration: underline;';}
|
||||
static $fs = array('0'=>'xx-small', '1'=>'xx-small', '2'=>'small', '3'=>'medium', '4'=>'large', '5'=>'x-large', '6'=>'xx-large', '7'=>'300%', '-1'=>'smaller', '-2'=>'60%', '+1'=>'larger', '+2'=>'150%', '+3'=>'200%', '+4'=>'300%');
|
||||
if($e == 'font'){
|
||||
if($e == 'font' && $t !=3){//3 is a new make_tag_strict config value, to indicate that transformation is to be performed, but don't transform font, as size transformation of numeric sizes to keywords alters the intended result too much
|
||||
$a2 = '';
|
||||
if(preg_match('`face\s*=\s*(\'|")([^=]+?)\\1`i', $a, $m) or preg_match('`face\s*=(\s*)(\S+)`i', $a, $m)){
|
||||
$a2 .= ' font-family: '. str_replace('"', '\'', trim($m[2])). ';';
|
||||
|
Loading…
Reference in New Issue
Block a user