@@ -598,7 +598,7 @@ public function resolveUrl($url) {
598
598
* @return string|null the parsed value or null if value-class or -title aren’t in use
599
599
*/
600
600
public function parseValueClassTitle (\DOMElement $ e , $ separator = '' ) {
601
- $ valueClassElements = $ this ->xpath ->query ('./*[contains(concat(" ", @class, " "), " value ")] ' , $ e );
601
+ $ valueClassElements = $ this ->xpath ->query ('./*[contains(concat(" ", normalize-space( @class) , " "), " value ")] ' , $ e );
602
602
603
603
if ($ valueClassElements ->length !== 0 ) {
604
604
// Process value-class stuff
@@ -610,7 +610,7 @@ public function parseValueClassTitle(\DOMElement $e, $separator = '') {
610
610
return unicodeTrim ($ val );
611
611
}
612
612
613
- $ valueTitleElements = $ this ->xpath ->query ('./*[contains(concat(" ", @class, " "), " value-title ")] ' , $ e );
613
+ $ valueTitleElements = $ this ->xpath ->query ('./*[contains(concat(" ", normalize-space( @class) , " "), " value-title ")] ' , $ e );
614
614
615
615
if ($ valueTitleElements ->length !== 0 ) {
616
616
// Process value-title stuff
@@ -698,7 +698,7 @@ public function parseU(\DOMElement $u) {
698
698
*/
699
699
public function parseDT (\DOMElement $ dt , &$ dates = array (), &$ impliedTimezone = null ) {
700
700
// Check for value-class pattern
701
- $ valueClassChildren = $ this ->xpath ->query ('./*[contains(concat(" ", @class, " "), " value ") or contains(concat(" ", @class, " "), " value-title ")] ' , $ dt );
701
+ $ valueClassChildren = $ this ->xpath ->query ('./*[contains(concat(" ", normalize-space( @class) , " "), " value ") or contains(concat(" ", normalize-space( @class) , " "), " value-title ")] ' , $ dt );
702
702
$ dtValue = false ;
703
703
704
704
if ($ valueClassChildren ->length > 0 ) {
@@ -974,7 +974,7 @@ public function parseH(\DOMElement $e, $is_backcompat = false, $has_nested_mf =
974
974
}
975
975
976
976
// Handle p-*
977
- foreach ($ this ->xpath ->query ('.//*[contains(concat(" ", @class) ," p-")] ' , $ e ) as $ p ) {
977
+ foreach ($ this ->xpath ->query ('.//*[contains(concat(" ", normalize-space( @class) ) ," p-")] ' , $ e ) as $ p ) {
978
978
// element is already parsed
979
979
if ($ this ->isElementParsed ($ p , 'p ' )) {
980
980
continue ;
@@ -999,7 +999,7 @@ public function parseH(\DOMElement $e, $is_backcompat = false, $has_nested_mf =
999
999
}
1000
1000
1001
1001
// Handle u-*
1002
- foreach ($ this ->xpath ->query ('.//*[contains(concat(" ", @class)," u-")] ' , $ e ) as $ u ) {
1002
+ foreach ($ this ->xpath ->query ('.//*[contains(concat(" ", normalize-space( @class) )," u-")] ' , $ e ) as $ u ) {
1003
1003
// element is already parsed
1004
1004
if ($ this ->isElementParsed ($ u , 'u ' )) {
1005
1005
continue ;
@@ -1024,7 +1024,7 @@ public function parseH(\DOMElement $e, $is_backcompat = false, $has_nested_mf =
1024
1024
$ temp_dates = array ();
1025
1025
1026
1026
// Handle dt-*
1027
- foreach ($ this ->xpath ->query ('.//*[contains(concat(" ", @class), " dt-")] ' , $ e ) as $ dt ) {
1027
+ foreach ($ this ->xpath ->query ('.//*[contains(concat(" ", normalize-space( @class) ), " dt-")] ' , $ e ) as $ dt ) {
1028
1028
// element is already parsed
1029
1029
if ($ this ->isElementParsed ($ dt , 'dt ' )) {
1030
1030
continue ;
@@ -1059,7 +1059,7 @@ public function parseH(\DOMElement $e, $is_backcompat = false, $has_nested_mf =
1059
1059
}
1060
1060
1061
1061
// Handle e-*
1062
- foreach ($ this ->xpath ->query ('.//*[contains(concat(" ", @class)," e-")] ' , $ e ) as $ em ) {
1062
+ foreach ($ this ->xpath ->query ('.//*[contains(concat(" ", normalize-space( @class) )," e-")] ' , $ e ) as $ em ) {
1063
1063
// element is already parsed
1064
1064
if ($ this ->isElementParsed ($ em , 'e ' )) {
1065
1065
continue ;
@@ -1751,15 +1751,15 @@ public function convertLegacy() {
1751
1751
1752
1752
// replace all roots
1753
1753
foreach ($ this ->classicRootMap as $ old => $ new ) {
1754
- foreach ($ xp ->query ('//*[contains(concat(" ", @class, " "), " ' . $ old . ' ") and not(contains(concat(" ", @class, " "), " ' . $ new . ' "))] ' ) as $ el ) {
1754
+ foreach ($ xp ->query ('//*[contains(concat(" ", normalize-space( @class) , " "), " ' . $ old . ' ") and not(contains(concat(" ", normalize-space( @class) , " "), " ' . $ new . ' "))] ' ) as $ el ) {
1755
1755
$ el ->setAttribute ('class ' , $ el ->getAttribute ('class ' ) . ' ' . $ new );
1756
1756
}
1757
1757
}
1758
1758
1759
1759
foreach ($ this ->classicPropertyMap as $ oldRoot => $ properties ) {
1760
1760
$ newRoot = $ this ->classicRootMap [$ oldRoot ];
1761
1761
foreach ($ properties as $ old => $ data ) {
1762
- foreach ($ xp ->query ('//*[contains(concat(" ", @class, " "), " ' . $ oldRoot . ' ")]//*[contains(concat(" ", @class, " "), " ' . $ old . ' ") and not(contains(concat(" ", @class, " "), " ' . $ data ['replace ' ] . ' "))] ' ) as $ el ) {
1762
+ foreach ($ xp ->query ('//*[contains(concat(" ", normalize-space( @class) , " "), " ' . $ oldRoot . ' ")]//*[contains(concat(" ", normalize-space( @class) , " "), " ' . $ old . ' ") and not(contains(concat(" ", normalize-space( @class) , " "), " ' . $ data ['replace ' ] . ' "))] ' ) as $ el ) {
1763
1763
$ el ->setAttribute ('class ' , $ el ->getAttribute ('class ' ) . ' ' . $ data ['replace ' ]);
1764
1764
}
1765
1765
}
0 commit comments