Merge "Use new isTalkPage/isTalkNamespace methods"
[lhc/web/wiklou.git] / resources / src / mediawiki.special.watchlist / watchlist.js
index 715b5a5..b9be51f 100644 (file)
                                        $watchlistLine = $unwatchLink.closest( 'li, table' )
                                                .find( '[data-target-page]' ),
                                        pageTitle = $watchlistLine.data( 'targetPage' ),
-                                       isTalk = mw.Title.newFromText( pageTitle ).getNamespaceId() % 2 === 1;
+                                       isTalk = mw.Title.newFromText( pageTitle ).isTalkPage();
 
                                // Utility function for looping through each watchlist line that matches
                                // a certain page or its associated page (e.g. Talk)
                                function forEachMatchingTitle( title, callback ) {
 
                                        var titleObj = mw.Title.newFromText( title ),
-                                               pageNamespaceId = titleObj.getNamespaceId(),
-                                               isTalk = pageNamespaceId % 2 === 1,
-                                               associatedTitle = mw.Title.makeTitle( isTalk ? pageNamespaceId - 1 : pageNamespaceId + 1,
-                                                       titleObj.getMainText() ).getPrefixedText();
+                                               associatedTitleObj = titleObj.isTalkPage() ? titleObj.getSubjectPage() : titleObj.getTalkPage(),
+                                               associatedTitle = associatedTitleObj.getPrefixedText();
                                        $( '.mw-changeslist-line' ).each( function () {
                                                var $this = $( this ), $row, $unwatchLink;