mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/DiscussionTools
synced 2024-09-24 10:58:20 +00:00
Remove no-JavaScript topic subscriptions cached HTML compat
Bug: T321431 Change-Id: Iae3defa220762ca8edd45f461b062987b17e4f5f
This commit is contained in:
parent
605b6f96bf
commit
355c6b2e7b
|
@ -377,12 +377,7 @@ class CommentFormatter {
|
|||
$itemDataByName = [];
|
||||
preg_match_all( '/<!--__DTSUBSCRIBELINK__(.*?)-->/', $text, $matches );
|
||||
foreach ( $matches[1] as $itemData ) {
|
||||
if ( substr( $itemData, 0, 1 ) === '{' ) {
|
||||
$itemDataByName[ $itemData ] = json_decode( htmlspecialchars_decode( $itemData ), true );
|
||||
} else {
|
||||
// Compatibility with cached HTML
|
||||
$itemDataByName[ $itemData ] = [ 'name' => htmlspecialchars_decode( $itemData ) ];
|
||||
}
|
||||
$itemDataByName[ $itemData ] = json_decode( htmlspecialchars_decode( $itemData ), true );
|
||||
}
|
||||
$itemNames = array_column( $itemDataByName, 'name' );
|
||||
|
||||
|
@ -408,17 +403,11 @@ class CommentFormatter {
|
|||
$isSubscribed = isset( $itemsByName[ $itemName ] ) && !$itemsByName[ $itemName ]->isMuted();
|
||||
$subscribedState = isset( $itemsByName[ $itemName ] ) ? $itemsByName[ $itemName ]->getState() : null;
|
||||
|
||||
if ( isset( $itemData['linkableTitle'] ) ) {
|
||||
$href = $title->getLinkURL( [
|
||||
'action' => $isSubscribed ? 'dtunsubscribe' : 'dtsubscribe',
|
||||
'commentname' => $itemName,
|
||||
'section' => $itemData['linkableTitle'],
|
||||
] );
|
||||
} else {
|
||||
// Compatibility with cached HTML
|
||||
// Set empty 'href' to avoid a:not([href]) selector in MobileFrontend
|
||||
$href = '';
|
||||
}
|
||||
$href = $title->getLinkURL( [
|
||||
'action' => $isSubscribed ? 'dtunsubscribe' : 'dtsubscribe',
|
||||
'commentname' => $itemName,
|
||||
'section' => $itemData['linkableTitle'],
|
||||
] );
|
||||
|
||||
if ( $isLink ) {
|
||||
$subscribe = $doc->createElement( 'span' );
|
||||
|
|
Loading…
Reference in a new issue