<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://eurovision.jobogamer.xyz/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3AGadget-metadata.js</id>
	<title>MediaWiki:Gadget-metadata.js - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://eurovision.jobogamer.xyz/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3AGadget-metadata.js"/>
	<link rel="alternate" type="text/html" href="https://eurovision.jobogamer.xyz/index.php?title=MediaWiki:Gadget-metadata.js&amp;action=history"/>
	<updated>2026-07-25T10:41:00Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.4</generator>
	<entry>
		<id>https://eurovision.jobogamer.xyz/index.php?title=MediaWiki:Gadget-metadata.js&amp;diff=215&amp;oldid=prev</id>
		<title>Alfie: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="https://eurovision.jobogamer.xyz/index.php?title=MediaWiki:Gadget-metadata.js&amp;diff=215&amp;oldid=prev"/>
		<updated>2026-03-19T09:58:30Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 05:58, 19 March 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Alfie</name></author>
	</entry>
	<entry>
		<id>https://eurovision.jobogamer.xyz/index.php?title=MediaWiki:Gadget-metadata.js&amp;diff=214&amp;oldid=prev</id>
		<title>en&gt;Pppery: Per request on talk</title>
		<link rel="alternate" type="text/html" href="https://eurovision.jobogamer.xyz/index.php?title=MediaWiki:Gadget-metadata.js&amp;diff=214&amp;oldid=prev"/>
		<updated>2026-03-05T02:53:50Z</updated>

		<summary type="html">&lt;p&gt;Per request on talk&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;/** _____________________________________________________________________________&lt;br /&gt;
 * |                                                                             |&lt;br /&gt;
 * |                    === WARNING: GLOBAL GADGET FILE ===                      |&lt;br /&gt;
 * |                  Changes to this page affect many users.                    |&lt;br /&gt;
 * | Please discuss changes on the talk page or on [[WT:Gadget]] before editing. |&lt;br /&gt;
 * |_____________________________________________________________________________|&lt;br /&gt;
 *&lt;br /&gt;
 * Imported from revision 185704269 as of January 20, 2008 18:40 from&lt;br /&gt;
 * [[User:Pyrospirit/metadata.js]], itself a modified version of&lt;br /&gt;
 * [[User:Outriggr/metadata.js]].&lt;br /&gt;
 * Metadata assessment script&lt;br /&gt;
 * Finds the WP 1.0/WikiProject assessment of every article you go to, then&lt;br /&gt;
 * displays that information in the article header. See (new script homepage&lt;br /&gt;
 * pending).&lt;br /&gt;
 * @author Outriggr - created the script and used to maintain it&lt;br /&gt;
 * @author Pyrospirit - used to maintain and update the script&lt;br /&gt;
 * @author Nihiltres - Overhauled the script, current maintainer&lt;br /&gt;
 */&lt;br /&gt;
window.assessment = (function () {&lt;br /&gt;
    var assessmentObj = {&lt;br /&gt;
        props: {},&lt;br /&gt;
        methods: {}&lt;br /&gt;
    },&lt;br /&gt;
        //internal shortcuts&lt;br /&gt;
        ap = assessmentObj.props,&lt;br /&gt;
        am = assessmentObj.methods;&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * The main function of the script. If the checkArticle() function can find&lt;br /&gt;
     * the assessment, it parses and displays that assessment for the page.&lt;br /&gt;
     * Otherwise, it tries to retrieve an assessment via AJAX.&lt;br /&gt;
     */&lt;br /&gt;
    assessmentObj.init = function () {&lt;br /&gt;
        if (mw.config.get(&amp;quot;wgNamespaceNumber&amp;quot;) !== 0 || //non-mainspace page&lt;br /&gt;
                (mw.config.get(&amp;quot;wgAction&amp;quot;) !== &amp;quot;view&amp;quot; &amp;amp;&amp;amp; mw.config.get(&amp;quot;wgAction&amp;quot;) !== &amp;quot;purge&amp;quot;) || //non-read action&lt;br /&gt;
                mw.util.getParamValue(&amp;quot;printable&amp;quot;) || //printable page&lt;br /&gt;
                mw.config.get(&amp;quot;wgArticleId&amp;quot;) === 0 || //nonexistent page&lt;br /&gt;
                mw.config.get(&amp;quot;wgIsMainPage&amp;quot;) === true //Main Page&lt;br /&gt;
                ) {&lt;br /&gt;
            return; //Don&amp;#039;t run the script under any of these conditions.&lt;br /&gt;
        }&lt;br /&gt;
        ap.foundAssessment = am.checkArticle(); //checks for types visible from article page&lt;br /&gt;
        if (!ap.foundAssessment.exists) { // no type visible on article, proceed to check the talk page&lt;br /&gt;
            $.ajax({&lt;br /&gt;
                url: mw.config.get(&amp;quot;wgScript&amp;quot;) + &amp;quot;?title=Talk:&amp;quot; + mw.util.wikiUrlencode(mw.config.get(&amp;quot;wgPageName&amp;quot;)) + &amp;quot;&amp;amp;action=raw&amp;amp;section=0&amp;quot;,&lt;br /&gt;
                async: true,&lt;br /&gt;
                dataType: &amp;quot;text&amp;quot;,&lt;br /&gt;
                success: function (responseText) {&lt;br /&gt;
                    ap.text = responseText;&lt;br /&gt;
                    ap.foundAssessment = am.getAssessment(ap.text);&lt;br /&gt;
                    ap.updata = am.renderAssessment(ap.foundAssessment);&lt;br /&gt;
                    am.update();&lt;br /&gt;
                }&lt;br /&gt;
            });&lt;br /&gt;
        } else {&lt;br /&gt;
            ap.updata = am.renderAssessment(ap.foundAssessment);&lt;br /&gt;
            am.update();&lt;br /&gt;
        }&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Checks for various objects on the article page that indicate a certain&lt;br /&gt;
     * assessment, such as a disambiguation page notice. If this function can&lt;br /&gt;
     * find the assessment, AJAX is not needed for this page.&lt;br /&gt;
     * @returns {Object} checkResult - the assessment found&lt;br /&gt;
     */&lt;br /&gt;
    am.checkArticle = function () {&lt;br /&gt;
        var checkResult = {&lt;br /&gt;
            extra: [],&lt;br /&gt;
            exists: false&lt;br /&gt;
        }, checksList = [&lt;br /&gt;
            [$(&amp;quot;#disambig, #disambig_disambigbox, #disambigbox&amp;quot;).length, &amp;quot;dab&amp;quot;],&lt;br /&gt;
            [$(&amp;quot;#setindexbox&amp;quot;).length, &amp;quot;setindex&amp;quot;],&lt;br /&gt;
            [$(&amp;quot;#contentSub&amp;quot;).text() === &amp;quot;Redirect page&amp;quot;, &amp;quot;redir&amp;quot;],&lt;br /&gt;
            /* [$(&amp;quot;table.stub&amp;quot;).length, &amp;quot;stub&amp;quot;], */&lt;br /&gt;
            [$(&amp;quot;#ca-talk&amp;quot;).hasClass(&amp;quot;new&amp;quot;), &amp;quot;none&amp;quot;] //no talk page&lt;br /&gt;
        ];&lt;br /&gt;
        $.each(checksList, function (i, e) {&lt;br /&gt;
            if (e[0]) {&lt;br /&gt;
                checkResult.rating = e[1];&lt;br /&gt;
                checkResult.exists = true;&lt;br /&gt;
                return false;&lt;br /&gt;
            }&lt;br /&gt;
        });&lt;br /&gt;
        return checkResult;&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Searches the provided wikicode for the rating part of an assessment and&lt;br /&gt;
     * returns it as a string.&lt;br /&gt;
     * Note that higher assessments take priority, and less-used assessments&lt;br /&gt;
     * such as &amp;quot;list&amp;quot;, &amp;quot;current&amp;quot;, or &amp;quot;future&amp;quot; are used only if nothing else can&lt;br /&gt;
     * be found.&lt;br /&gt;
     * @param {String} text - some wikitext to be searched for assessment info&lt;br /&gt;
     */&lt;br /&gt;
    am.getRating = function (text) {&lt;br /&gt;
        var rating = &amp;quot;none&amp;quot;,&lt;br /&gt;
            standardChecks = [&lt;br /&gt;
                [/\|\s*(class|currentstatus)\s*=\s*fa\b/i, &amp;quot;fa&amp;quot;],&lt;br /&gt;
                [/\|\s*(class|currentstatus)\s*=\s*fl\b/i, &amp;quot;fl&amp;quot;],&lt;br /&gt;
                [/\|\s*class\s*=\s*a\b/i, &amp;quot;a&amp;quot;],&lt;br /&gt;
                [/\|\s*class\s*=\s*b\b/i, &amp;quot;b&amp;quot;],&lt;br /&gt;
                [/\|\s*class\s*=\s*bplus\b/i, &amp;quot;bplus&amp;quot;], //used by WP Math&lt;br /&gt;
                [/\|\s*class\s*=\s*c\b/i, &amp;quot;c&amp;quot;],&lt;br /&gt;
                [/\|\s*class\s*=\s*start/i, &amp;quot;start&amp;quot;],&lt;br /&gt;
                [/\|\s*class\s*=\s*stub/i, &amp;quot;stub&amp;quot;],&lt;br /&gt;
                [/\|\s*class\s*=\s*al\b/i, &amp;quot;al&amp;quot;], // used by WP Military history &amp;amp; WP Highways&lt;br /&gt;
                [/\|\s*class\s*=\s*bl\b/i, &amp;quot;bl&amp;quot;], // used by WP Military history&lt;br /&gt;
                [/\|\s*class\s*=\s*cl\b/i, &amp;quot;cl&amp;quot;], // used by WP Military history&lt;br /&gt;
                [/\|\s*class\s*=\s*list/i, &amp;quot;list&amp;quot;],&lt;br /&gt;
                [/\|\s*class\s*=\s*sl\b/i, &amp;quot;sl&amp;quot;], // used by WP Plants&lt;br /&gt;
                [/\|\s*class\s*=\s*(dab|disambig)/i, &amp;quot;dab&amp;quot;],&lt;br /&gt;
                [/\|\s*class\s*=\s*cur(rent)?/i, &amp;quot;cur&amp;quot;],&lt;br /&gt;
                [/\|\s*class\s*=\s*future/i, &amp;quot;future&amp;quot;]&lt;br /&gt;
            ];&lt;br /&gt;
        //evaluate the standard checks&lt;br /&gt;
        $.each(standardChecks, function (i, e) {&lt;br /&gt;
            if (text.match(e[0])) {&lt;br /&gt;
                rating = e[1];&lt;br /&gt;
                return false;&lt;br /&gt;
            }&lt;br /&gt;
        });&lt;br /&gt;
        //and then the nonstandard ones. These override earlier ratings if applicable.&lt;br /&gt;
        if (rating === &amp;quot;a&amp;quot; &amp;amp;&amp;amp; text.match(/\|\s*class\s*=\s*ga\b|\|\s*currentstatus\s*=\s*(ffa\/)?ga\b/i)) {&lt;br /&gt;
            rating = &amp;quot;a/ga&amp;quot;; // A-class articles that are also GA&amp;#039;s&lt;br /&gt;
        } else if (text.match(/\|\s*class\s*=\s*ga\b|\|\s*currentstatus\s*=\s*(ffa\/)?ga\b|\{\{\s*ga\s*\|/i) &amp;amp;&amp;amp;&lt;br /&gt;
                !text.match(/\|\s*currentstatus\s*=\s*dga\b/i)) {&lt;br /&gt;
            rating = &amp;quot;ga&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
        return rating;&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Searches the provided wikicode for data on the article&amp;#039;s current and past&lt;br /&gt;
     * featured or good status and returns an object that contains this data&lt;br /&gt;
     * along with some miscellaneous other bits of information.&lt;br /&gt;
     * @param {String} text - some wikitext to be searched for assessment info&lt;br /&gt;
     * @return {Object} gottenAssessment - the assessment data for the page&lt;br /&gt;
     */&lt;br /&gt;
    am.getAssessment = function (text) {&lt;br /&gt;
        var gottenAssessment = {&lt;br /&gt;
            rating: am.getRating(text),&lt;br /&gt;
            pageLink: [null, null],&lt;br /&gt;
            extra: [],&lt;br /&gt;
            activeReview: null,&lt;br /&gt;
            exists: true&lt;br /&gt;
        },&lt;br /&gt;
            actionNumber = 0,&lt;br /&gt;
            pageLinkFlag = false,&lt;br /&gt;
            peerReview, linkPattern, linkMatch, currentList, formerList;&lt;br /&gt;
&lt;br /&gt;
        currentList = [&lt;br /&gt;
            // Current nominations (FAC, FLC, or GAN)&lt;br /&gt;
            {&lt;br /&gt;
                reg: /\{\{\s*featured[ _]article[ _]candidates\s*(?:[\|\}]\s*([^\|\}]*))?[^\}]*?\}\}/i,&lt;br /&gt;
                extraName: &amp;quot;fac&amp;quot;,&lt;br /&gt;
                addArticleNameTo: &amp;quot;Wikipedia:Featured_article_candidates\/&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                reg: /\{\{\s*featured[ _]list[ _]candidates\s*(?:[\|\}]\s*([^\|\}]*))?[^\}]*?\}\}/i,&lt;br /&gt;
                extraName: &amp;quot;flc&amp;quot;,&lt;br /&gt;
                addArticleNameTo: &amp;quot;Wikipedia:Featured_list_candidates\/&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                reg: /\{\{\s*ga ?nominee\s*[\|\}][^\}]*\}\}/i,&lt;br /&gt;
                extraName: &amp;quot;gan&amp;quot;,&lt;br /&gt;
                addMatchReg: /\|\s*page\s*=\s*(\d+).*\|\s*status\s*=\s*\w+\b/i,&lt;br /&gt;
                addMatchTo: &amp;quot;Talk:&amp;quot; + mw.config.get(&amp;quot;wgPageName&amp;quot;) + &amp;quot;\/GA&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            // Current reviews of a status (FAR, FLRC, or GAR)&lt;br /&gt;
            {&lt;br /&gt;
                reg: /\{\{\s*featured[ _]article[ _]review\s*(?:[\|\}]\s*([^\|\}]*))?[^\}]*?\}\}/i,&lt;br /&gt;
                extraName: &amp;quot;far&amp;quot;,&lt;br /&gt;
                addArticleNameTo: &amp;quot;Wikipedia:Featured_article_review\/&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                reg: /\{\{\s*featured[ _]list[ _]removal[ _]candidates\s*(?:[\|\}]\s*([^\|\}]*))?[^\}]*?\}\}/i,&lt;br /&gt;
                extraName: &amp;quot;flrc&amp;quot;,&lt;br /&gt;
                addArticleNameTo: &amp;quot;Wikipedia:Featured_list_removal_candidates\/&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                reg: /\{\{\s*gar\/link\s*[\|\}][^\}]*\}\}/i,&lt;br /&gt;
                extraName: &amp;quot;gar&amp;quot;,&lt;br /&gt;
                addMatchReg: /\|\s*GARpage\s*=\s*(\d+).*\|/i,&lt;br /&gt;
                addMatchTo: mw.config.get(&amp;quot;wgPageName&amp;quot;)&lt;br /&gt;
            }&lt;br /&gt;
        ];&lt;br /&gt;
        $.each(currentList, function (i, e) {&lt;br /&gt;
            var reg = text.match(e.reg),&lt;br /&gt;
                articleName,&lt;br /&gt;
                tempMatch;&lt;br /&gt;
            if (reg) {&lt;br /&gt;
                gottenAssessment.extra.push(e.extraName);&lt;br /&gt;
                if (e.hasOwnProperty(&amp;quot;addArticleNameTo&amp;quot;) &amp;amp;&amp;amp; reg[1]) {&lt;br /&gt;
                    articleName = am.decodeEntities($.trim(reg[1]));&lt;br /&gt;
                    if (articleName) {&lt;br /&gt;
                        gottenAssessment.pageLink[0] = e.addArticleNameTo + articleName;&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
                if (e.hasOwnProperty(&amp;quot;addMatchReg&amp;quot;)) {&lt;br /&gt;
                    tempMatch = reg[0].match(e.addMatchReg);&lt;br /&gt;
                    if (tempMatch) {&lt;br /&gt;
                        gottenAssessment.pageLink[0] = (e.addMatchTo || &amp;quot;&amp;quot;) + (tempMatch[1] || &amp;quot;&amp;quot;);&lt;br /&gt;
                    }&lt;br /&gt;
                    if (e.extraName === &amp;quot;gar&amp;quot;) { //Can&amp;#039;t get around this special case easily&lt;br /&gt;
                        gottenAssessment.pageLink[0] = am.getGARLink(e.addMatchTo, tempMatch[1]);&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
                return false;&lt;br /&gt;
            }&lt;br /&gt;
        });&lt;br /&gt;
&lt;br /&gt;
        formerList = [&lt;br /&gt;
            // Former statuses (FFA, FFL, or DGA)&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;ffa&amp;quot;,&lt;br /&gt;
                reg: /\|\s*currentstatus\s*=\s*ffa\b/i,&lt;br /&gt;
                getActionNumber: true,&lt;br /&gt;
                getActionNumberReg: /\|\s*action(\d+)\s*=\s*far\b/gi&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;ffa&amp;quot;,&lt;br /&gt;
                reg: /\|\s*action(\d+)\s*=\s*far\b/gi,&lt;br /&gt;
                extraCondition: function (ec_reg) {&lt;br /&gt;
                //Checks if the last FAR entry in ArticleHistory resulted in removal.&lt;br /&gt;
                    var match, ratingSearch;&lt;br /&gt;
                    if (!ec_reg) {&lt;br /&gt;
                        return false;&lt;br /&gt;
                    }&lt;br /&gt;
                    match = text.match(new RegExp(&lt;br /&gt;
                        &amp;quot;\\|\\s*action&amp;quot; + ec_reg[ec_reg.length - 1].match(/\d+/) + &amp;quot;result\\s*=\\s*removed\\b&amp;quot;,&lt;br /&gt;
                        &amp;quot;i&amp;quot;&lt;br /&gt;
                    ));&lt;br /&gt;
                    ratingSearch = (gottenAssessment.rating.search(/f[al]/i) === -1);&lt;br /&gt;
                    return (match &amp;amp;&amp;amp; ratingSearch);&lt;br /&gt;
                },&lt;br /&gt;
                getActionNumber: true&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;ffa&amp;quot;,&lt;br /&gt;
                reg: /\{\{\s*formerfa2?\b/i&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;ffl&amp;quot;,&lt;br /&gt;
                reg: /\|\s*currentstatus\s*=\s*ffl\b/i&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;ffl&amp;quot;,&lt;br /&gt;
                reg: /\{\{\s*ffl\s*[\|\}]/i&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;dga&amp;quot;,&lt;br /&gt;
                reg: /\|\s*currentstatus\s*=\s*dga\b/i,&lt;br /&gt;
                getActionNumber: true,&lt;br /&gt;
                getActionNumberReg: /\|\s*action(\d+)\s*=\s*gar\b/gi&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;dga&amp;quot;,&lt;br /&gt;
                reg: /\{\{\s*d(elisted)?ga\s*[\|\}]/i&lt;br /&gt;
            },&lt;br /&gt;
            // Former nominations (former FAC, FLC, or GAN)&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;ffac&amp;quot;,&lt;br /&gt;
                reg: /\|\s*action(\d+)\s*=\s*fac\b/gi,&lt;br /&gt;
                extraCondition: function () {&lt;br /&gt;
                    return (gottenAssessment.rating.search(/f[al]/i) === -1);&lt;br /&gt;
                },&lt;br /&gt;
                getActionNumber: true&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;ffac&amp;quot;,&lt;br /&gt;
                reg: /\|\s*currentstatus\s*=\s*ffac\b/i&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;ffac&amp;quot;,&lt;br /&gt;
                reg: /\{\{\s*fac?(failed|(\-|[ _]\()?contested\)?)\s*[\|\}]/i&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;fflc&amp;quot;,&lt;br /&gt;
                reg: /\|\s*action(\d+)\s*=\s*flc\b/gi,&lt;br /&gt;
                extraCondition: function () {&lt;br /&gt;
                    return (gottenAssessment.rating.search(/f[al]/i) === -1);&lt;br /&gt;
                },&lt;br /&gt;
                getActionNumber: true&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;fflc&amp;quot;,&lt;br /&gt;
                reg: /\|\s*currentstatus\s*=\s*fflc\b/i&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;fgan&amp;quot;,&lt;br /&gt;
                reg: /\|\s*action(\d+)\s*=\s*gan\b/gi,&lt;br /&gt;
                extraCondition: function () {&lt;br /&gt;
                    return (gottenAssessment.rating.search(/f[al]|(a\/)?ga/i) === -1);&lt;br /&gt;
                },&lt;br /&gt;
                getActionNumber: true&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;fgan&amp;quot;,&lt;br /&gt;
                reg: /\|\s*currentstatus\s*=\s*fgan\b/i&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;fgan&amp;quot;,&lt;br /&gt;
                reg: /\{\{\s*f(ailed ?)?ga\s*[\|\}]/i&lt;br /&gt;
            }&lt;br /&gt;
        ];&lt;br /&gt;
        $.each(formerList, function (i, e) {&lt;br /&gt;
            var reg = text.match(e.reg),&lt;br /&gt;
                extraCondition = !e.hasOwnProperty(&amp;quot;extraCondition&amp;quot;) ||&lt;br /&gt;
                    typeof e.extraCondition !== &amp;quot;function&amp;quot; ||&lt;br /&gt;
                    e.extraCondition(reg), //either true (ignored) or result of function&lt;br /&gt;
                tempMatch;&lt;br /&gt;
            if (reg &amp;amp;&amp;amp; extraCondition) {&lt;br /&gt;
                gottenAssessment.extra.push(e.name);&lt;br /&gt;
                if (e.getActionNumber) {&lt;br /&gt;
                    tempMatch = (e.getActionNumberReg ? text.match(e.getActionNumberReg) : reg);&lt;br /&gt;
                    actionNumber = tempMatch[tempMatch.length - 1].match(/\d+/);&lt;br /&gt;
                    pageLinkFlag = true;&lt;br /&gt;
                }&lt;br /&gt;
                return false;&lt;br /&gt;
            }&lt;br /&gt;
        });&lt;br /&gt;
&lt;br /&gt;
        // Looks for currently active peer reviews&lt;br /&gt;
        ap.showOldPeerReviews = false; //see TODO below&lt;br /&gt;
        peerReview = text.match(/\{\{\s*peer[_ ]?review\s*\|\s*archive\s*=\s*(\d+)\b/i);&lt;br /&gt;
        if (peerReview) {&lt;br /&gt;
            gottenAssessment.review = &amp;quot;Wikipedia:Peer_review/&amp;quot; +&lt;br /&gt;
                mw.config.get(&amp;quot;wgPageName&amp;quot;) + &amp;quot;/archive&amp;quot; + peerReview[1];&lt;br /&gt;
            gottenAssessment.activeReview = true;&lt;br /&gt;
        } else if (ap.showOldPeerReviews) {&lt;br /&gt;
            $.noop(); // TODO: Add code for old peer reviews&lt;br /&gt;
        } else {&lt;br /&gt;
            gottenAssessment.review = null;&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        // Scans for the link associated with an action in ArticleHistory&lt;br /&gt;
        if (pageLinkFlag) {&lt;br /&gt;
            linkPattern = new RegExp(&amp;quot;\\|\\s*action&amp;quot; + actionNumber + &amp;quot;link\\s*=\\s*([^\\n\\|]+)\\s*\\|&amp;quot;);&lt;br /&gt;
            linkMatch = text.match(linkPattern);&lt;br /&gt;
            gottenAssessment.pageLink[1] = linkMatch ? am.decodeEntities(linkMatch[1]) : null;&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        return gottenAssessment;&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Parses an assessment object into the HTML and CSS code needed to update&lt;br /&gt;
     * the article header. If it doesn&amp;#039;t recognize a part of the information&lt;br /&gt;
     * given, it will simply ignore it and mark as unassessed.&lt;br /&gt;
     * @param {Object} assess - assessment information for this article&lt;br /&gt;
     * @return {String} newClass - the CSS class corresponding to its assessment&lt;br /&gt;
     * @return {String} slogan - HTML giving (with a link) the main assessment&lt;br /&gt;
     * @return {String} info - HTML giving (with a link) additional information&lt;br /&gt;
     */&lt;br /&gt;
    am.renderAssessment = function (assess) {&lt;br /&gt;
        var assessLink = mw.util.getUrl(&amp;quot;Wikipedia:Content_assessment&amp;quot;),&lt;br /&gt;
            peerReviewText = am.addPeerReview(assess.review, assess.activeReview),&lt;br /&gt;
            pageLink = assess.pageLink || [null, null],&lt;br /&gt;
            info = am.getExtraInfo((assess.extra || []), pageLink),&lt;br /&gt;
            newClass,&lt;br /&gt;
            slogan,&lt;br /&gt;
            ratingList;&lt;br /&gt;
&lt;br /&gt;
        if (peerReviewText) {&lt;br /&gt;
            info.push(peerReviewText);&lt;br /&gt;
        }&lt;br /&gt;
        ratingList = [&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;a&amp;quot;,&lt;br /&gt;
                className: &amp;quot;assess-a-text&amp;quot;,&lt;br /&gt;
                text: &amp;quot;An &amp;lt;a&amp;gt;A-class&amp;lt;\/a&amp;gt; article&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;a/ga&amp;quot;,&lt;br /&gt;
                className: &amp;quot;assess-a-text&amp;quot;,&lt;br /&gt;
                text: &amp;quot;An &amp;lt;a&amp;gt;A-class&amp;lt;\/a&amp;gt; article&amp;quot;,&lt;br /&gt;
                info: &amp;quot;Also a &amp;lt;a href=\&amp;quot;&amp;quot; + mw.util.getUrl(&amp;quot;Wikipedia:Good_articles&amp;quot;) + &amp;quot;\&amp;quot;&amp;gt;good article&amp;lt;\/a&amp;gt;.&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;ga&amp;quot;,&lt;br /&gt;
                className: &amp;quot;assess-ga-text&amp;quot;,&lt;br /&gt;
                text: &amp;quot;A &amp;lt;a&amp;gt;good article&amp;lt;\/a&amp;gt;&amp;quot;,&lt;br /&gt;
                url: mw.util.getUrl(&amp;quot;Wikipedia:Good_articles&amp;quot;)&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;b&amp;quot;,&lt;br /&gt;
                className: &amp;quot;assess-b-text&amp;quot;,&lt;br /&gt;
                text: &amp;quot;A &amp;lt;a&amp;gt;B-class&amp;lt;\/a&amp;gt; article&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;bplus&amp;quot;,&lt;br /&gt;
                className: &amp;quot;assess-bplus-text&amp;quot;,&lt;br /&gt;
                text: &amp;quot;A &amp;lt;a&amp;gt;B-plus-class&amp;lt;\/a&amp;gt; article&amp;quot;,&lt;br /&gt;
                url: mw.util.getUrl(&amp;quot;Wikipedia:WikiProject_Mathematics/Wikipedia_1.0/Grading_scheme&amp;quot;)&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;c&amp;quot;,&lt;br /&gt;
                className: &amp;quot;assess-c-text&amp;quot;,&lt;br /&gt;
                text: &amp;quot;A &amp;lt;a&amp;gt;C-class&amp;lt;\/a&amp;gt; article&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;start&amp;quot;,&lt;br /&gt;
                className: &amp;quot;assess-start-text&amp;quot;,&lt;br /&gt;
                text: &amp;quot;A &amp;lt;a&amp;gt;start-class&amp;lt;\/a&amp;gt; article&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;stub&amp;quot;,&lt;br /&gt;
                className: &amp;quot;assess-stub-text&amp;quot;,&lt;br /&gt;
                text: &amp;quot;A &amp;lt;a&amp;gt;stub-class&amp;lt;\/a&amp;gt; article&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
            	name: &amp;quot;al&amp;quot;,&lt;br /&gt;
            	className: &amp;quot;assess-al-text&amp;quot;,&lt;br /&gt;
            	text: &amp;quot;An &amp;lt;a&amp;gt;A-class&amp;lt;\/a&amp;gt; list&amp;quot;,&lt;br /&gt;
            	url: mw.util.getUrl(&amp;quot;Wikipedia:WikiProject_Military_history/Assessment&amp;quot;) + &amp;quot;#SCALE&amp;quot; //Could use a more general link if one is available&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
            	name: &amp;quot;bl&amp;quot;,&lt;br /&gt;
            	className: &amp;quot;assess-bl-text&amp;quot;,&lt;br /&gt;
            	text: &amp;quot;A &amp;lt;a&amp;gt;B-class&amp;lt;\/a&amp;gt; list&amp;quot;,&lt;br /&gt;
            	url: mw.util.getUrl(&amp;quot;Wikipedia:WikiProject_Military_history/Assessment&amp;quot;) + &amp;quot;#SCALE&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
            	name: &amp;quot;cl&amp;quot;,&lt;br /&gt;
            	className: &amp;quot;assess-cl-text&amp;quot;,&lt;br /&gt;
            	text: &amp;quot;A &amp;lt;a&amp;gt;C-class&amp;lt;\/a&amp;gt; list&amp;quot;,&lt;br /&gt;
            	url: mw.util.getUrl(&amp;quot;Wikipedia:WikiProject_Military_history/Assessment&amp;quot;) + &amp;quot;#SCALE&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;sl&amp;quot;,&lt;br /&gt;
                className: &amp;quot;assess-sl-text&amp;quot;,&lt;br /&gt;
                text: &amp;quot;A &amp;lt;a&amp;gt;stub-class&amp;lt;\/a&amp;gt; list&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;list&amp;quot;,&lt;br /&gt;
                className: &amp;quot;assess-list-text&amp;quot;,&lt;br /&gt;
                text: &amp;quot;A &amp;lt;a&amp;gt;list-class&amp;lt;\/a&amp;gt; article&amp;quot;,&lt;br /&gt;
                url: mw.util.getUrl(&amp;quot;Wikipedia:Stand-alone lists&amp;quot;)&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;dab&amp;quot;,&lt;br /&gt;
                className: &amp;quot;assess-dab-text&amp;quot;,&lt;br /&gt;
                text: &amp;quot;A &amp;lt;a&amp;gt;disambiguation page&amp;lt;\/a&amp;gt;&amp;quot;,&lt;br /&gt;
                url: mw.util.getUrl(&amp;quot;Wikipedia:Disambiguation&amp;quot;)&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;setindex&amp;quot;,&lt;br /&gt;
                className: &amp;quot;assess-setindex-text&amp;quot;,&lt;br /&gt;
                text: &amp;quot;A &amp;lt;a&amp;gt;set index article&amp;lt;\/a&amp;gt;&amp;quot;,&lt;br /&gt;
                url: mw.util.getUrl(&amp;quot;Wikipedia:Set_index_articles&amp;quot;)&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;redir&amp;quot;,&lt;br /&gt;
                className: &amp;quot;assess-redir-text&amp;quot;,&lt;br /&gt;
                text: &amp;quot;A &amp;lt;a&amp;gt;redirect page&amp;lt;\/a&amp;gt;&amp;quot;,&lt;br /&gt;
                url: mw.util.getUrl(&amp;quot;Help:Redirect&amp;quot;)&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;fl&amp;quot;,&lt;br /&gt;
                className: &amp;quot;assess-fl-text&amp;quot;,&lt;br /&gt;
                text: &amp;quot;A &amp;lt;a&amp;gt;featured list&amp;lt;\/a&amp;gt;&amp;quot;,&lt;br /&gt;
                url: mw.util.getUrl(&amp;quot;Wikipedia:Featured_lists&amp;quot;)&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;fa&amp;quot;,&lt;br /&gt;
                className: &amp;quot;assess-fa-text&amp;quot;,&lt;br /&gt;
                text: &amp;quot;A &amp;lt;a&amp;gt;featured article&amp;lt;\/a&amp;gt;&amp;quot;,&lt;br /&gt;
                url: mw.util.getUrl(&amp;quot;Wikipedia:Featured_articles&amp;quot;)&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;cur&amp;quot;,&lt;br /&gt;
                className: &amp;quot;assess-cur-text&amp;quot;,&lt;br /&gt;
                text: &amp;quot;A &amp;lt;a&amp;gt;current-class&amp;lt;\/a&amp;gt; article&amp;quot;,&lt;br /&gt;
                url: mw.util.getUrl(&amp;quot;Portal:Current_events&amp;quot;)&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;future&amp;quot;,&lt;br /&gt;
                className: &amp;quot;assess-future-text&amp;quot;,&lt;br /&gt;
                text: &amp;quot;A &amp;lt;a&amp;gt;future-class&amp;lt;\/a&amp;gt; article&amp;quot;,&lt;br /&gt;
                url: mw.util.getUrl(&amp;quot;Category:Future-Class_articles&amp;quot;)&lt;br /&gt;
            }&lt;br /&gt;
        ];&lt;br /&gt;
        $.each(ratingList, function (i, e) {&lt;br /&gt;
            if (assess.rating === e.name) {&lt;br /&gt;
                newClass = e.className;&lt;br /&gt;
                slogan = $(&amp;quot;&amp;lt;span&amp;gt;&amp;quot;).html(e.text).children().attr({href: (e.url || assessLink)}).parent().html();&lt;br /&gt;
                if (e.info) {&lt;br /&gt;
                    info.push(e.info);&lt;br /&gt;
                }&lt;br /&gt;
                return false;&lt;br /&gt;
            }&lt;br /&gt;
        });&lt;br /&gt;
        if (!newClass) {&lt;br /&gt;
            newClass = &amp;quot;assess-unassessed-text&amp;quot;;&lt;br /&gt;
            slogan = &amp;quot;An &amp;lt;a href=\&amp;quot;&amp;quot; + assessLink + &amp;quot;\&amp;quot;&amp;gt;unassessed&amp;lt;\/a&amp;gt; article&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        return {newClass: newClass, slogan: slogan, info: info};&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Creates an info string based on the assessment info and a page link.&lt;br /&gt;
     */&lt;br /&gt;
    am.getExtraInfo = function (extra, pageLink) {&lt;br /&gt;
        var info = [], page = mw.config.get(&amp;quot;wgPageName&amp;quot;), typeList;&lt;br /&gt;
&lt;br /&gt;
        typeList = [&lt;br /&gt;
            // Current nominations and reviews&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;fac&amp;quot;,&lt;br /&gt;
                html: &amp;quot;Currently a &amp;lt;a&amp;gt;featured article candidate&amp;lt;\/a&amp;gt;.&amp;quot;,&lt;br /&gt;
                url: pageLink[0] || (&amp;quot;Wikipedia:Featured_article_candidates/&amp;quot; + page)&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;flc&amp;quot;,&lt;br /&gt;
                html: &amp;quot;Currently a &amp;lt;a&amp;gt;featured list candidate&amp;lt;\/a&amp;gt;.&amp;quot;,&lt;br /&gt;
                url: pageLink[0] || (&amp;quot;Wikipedia:Featured_list_candidates/&amp;quot; + page)&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;gan&amp;quot;,&lt;br /&gt;
                html: &amp;quot;Currently a &amp;lt;a&amp;gt;good article nominee&amp;lt;\/a&amp;gt;.&amp;quot;,&lt;br /&gt;
                url: pageLink[0] || &amp;quot;Wikipedia:Good_article_nominations&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;far&amp;quot;,&lt;br /&gt;
                html: &amp;quot;Currently undergoing &amp;lt;a&amp;gt;review&amp;lt;\/a&amp;gt; of its featured status.&amp;quot;,&lt;br /&gt;
                url: pageLink[0] || (&amp;quot;Wikipedia:Featured_article_review/&amp;quot; + page)&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;flrc&amp;quot;,&lt;br /&gt;
                html: &amp;quot;Currently a &amp;lt;a&amp;gt;featured list removal candidate&amp;lt;\/a&amp;gt;.&amp;quot;,&lt;br /&gt;
                url: pageLink[0] || (&amp;quot;Wikipedia:Featured_list_removal_candidates/&amp;quot; + page)&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;gar&amp;quot;,&lt;br /&gt;
                html: &amp;quot;Currently undergoing a &amp;lt;a&amp;gt;good article reassessment&amp;lt;\/a&amp;gt;.&amp;quot;,&lt;br /&gt;
                url: pageLink[0] || &amp;quot;Wikipedia:Good_article_reassessment&amp;quot;,&lt;br /&gt;
                wrapper: &amp;quot;&amp;lt;span id=\&amp;quot;assess-gar-link\&amp;quot;&amp;gt;&amp;lt;\/span&amp;gt;&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            // Past statuses and nominations&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;ffa&amp;quot;,&lt;br /&gt;
                html: &amp;quot;A &amp;lt;a&amp;gt;former&amp;lt;\/a&amp;gt; featured article.&amp;quot;,&lt;br /&gt;
                url: pageLink[1] || (&amp;quot;Wikipedia:Featured_article_review/&amp;quot; + page)&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;ffl&amp;quot;,&lt;br /&gt;
                html: &amp;quot;A &amp;lt;a&amp;gt;former&amp;lt;\/a&amp;gt; featured list.&amp;quot;,&lt;br /&gt;
                url: pageLink[1] || (&amp;quot;Wikipedia:Featured_list_removal_candidates/&amp;quot; + page)&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;dga&amp;quot;,&lt;br /&gt;
                html: &amp;quot;A &amp;lt;a&amp;gt;delisted&amp;lt;\/a&amp;gt; good article.&amp;quot;,&lt;br /&gt;
                url: pageLink[1] || &amp;quot;Wikipedia:Good_article_reassessment&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;ffac&amp;quot;,&lt;br /&gt;
                html: &amp;quot;A former &amp;lt;a&amp;gt;featured article candidate&amp;lt;\/a&amp;gt;.&amp;quot;,&lt;br /&gt;
                url: pageLink[1] || (&amp;quot;Wikipedia:Featured_article_candidates/&amp;quot; + page)&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;fflc&amp;quot;,&lt;br /&gt;
                html: &amp;quot;A former &amp;lt;a&amp;gt;featured list candidate&amp;lt;\/a&amp;gt;.&amp;quot;,&lt;br /&gt;
                url: pageLink[1] || (&amp;quot;Wikipedia:Featured_list_candidates/&amp;quot; + page)&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
                name: &amp;quot;fgan&amp;quot;,&lt;br /&gt;
                html: &amp;quot;A former &amp;lt;a&amp;gt;good article nominee&amp;lt;\/a&amp;gt;.&amp;quot;,&lt;br /&gt;
                url: pageLink[1] || &amp;quot;Wikipedia:Good_article_nominations&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
        ];&lt;br /&gt;
        $.each(typeList, function (i, e) {&lt;br /&gt;
            if (extra.indexOf(e.name) !== -1) {&lt;br /&gt;
                info.push($(&amp;quot;&amp;lt;span&amp;gt;&amp;quot;).html(e.html).children().attr({href: mw.util.getUrl(e.url)})&lt;br /&gt;
                    .parent().wrapInner(e.wrapper || null).html());&lt;br /&gt;
            }&lt;br /&gt;
        });&lt;br /&gt;
&lt;br /&gt;
        return info;&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Get the correct link for Good Article reassessments. These things require an&lt;br /&gt;
     * additional AJAX request to determine whether it&amp;#039;s a community or individual&lt;br /&gt;
     * reassessment. The trick is to assume it&amp;#039;s a community reassessment, then&lt;br /&gt;
     * switch the link once the request returns if it&amp;#039;s actually not.&lt;br /&gt;
     * @param {String} articleName - the name of the article to use&lt;br /&gt;
     * @param {String} reviewNumber - the number of the GAR to look for&lt;br /&gt;
     */&lt;br /&gt;
    am.getGARLink = function (articleName, reviewNumber) {&lt;br /&gt;
        var communityTitle = &amp;quot;Wikipedia:Good_article_reassessment\/&amp;quot; + articleName + &amp;quot;\/&amp;quot; + reviewNumber,&lt;br /&gt;
            individualTitle = &amp;quot;Talk:&amp;quot; + articleName + &amp;quot;\/GA&amp;quot; + reviewNumber,&lt;br /&gt;
            titlesList = [communityTitle, individualTitle],&lt;br /&gt;
            api = new mw.Api();&lt;br /&gt;
&lt;br /&gt;
        api.get({&lt;br /&gt;
            action: &amp;quot;query&amp;quot;,&lt;br /&gt;
            titles: titlesList.join(&amp;quot;|&amp;quot;),&lt;br /&gt;
            prop: &amp;quot;info&amp;quot;,&lt;br /&gt;
            format: &amp;quot;json&amp;quot;&lt;br /&gt;
        }).done(function (data) {&lt;br /&gt;
            var i, j, noCommunityAssessment,&lt;br /&gt;
                query = data.query,&lt;br /&gt;
                communityTitleNorm = titlesList[0],&lt;br /&gt;
                individualTitleNorm = titlesList[1],&lt;br /&gt;
                len = query.normalized.length,&lt;br /&gt;
                garLink = $(&amp;quot;#assess-gar-link a:first&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
            for (j = 0; j &amp;lt; len; j++) {&lt;br /&gt;
                switch (query.normalized[j].from) {&lt;br /&gt;
                case titlesList[0]:&lt;br /&gt;
                    communityTitleNorm = query.normalized[j].to;&lt;br /&gt;
                    break;&lt;br /&gt;
                case titlesList[1]:&lt;br /&gt;
                    individualTitleNorm = query.normalized[j].to;&lt;br /&gt;
                    break;&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            noCommunityAssessment = false;&lt;br /&gt;
            for (i = -1; i &amp;gt;= -2; i--) {&lt;br /&gt;
                if (query.pages[i] &amp;amp;&amp;amp; typeof query.pages[i].missing === &amp;quot;string&amp;quot;) {&lt;br /&gt;
                    if (query.pages[i].title === individualTitleNorm) {&lt;br /&gt;
                        // No individual assessment, no need to change anything.&lt;br /&gt;
                        return;&lt;br /&gt;
                    }&lt;br /&gt;
                    if (query.pages[i].title === communityTitleNorm) {&lt;br /&gt;
                        // There&amp;#039;s no community assessment, so flag it.&lt;br /&gt;
                        noCommunityAssessment = true;&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            if (noCommunityAssessment &amp;amp;&amp;amp; garLink.length) {&lt;br /&gt;
                // There&amp;#039;s an individual assessment but no community assessment. Switch the link.&lt;br /&gt;
                garLink.attr(&amp;quot;href&amp;quot;, mw.util.getUrl(titlesList[1]));&lt;br /&gt;
            }&lt;br /&gt;
        });&lt;br /&gt;
        return communityTitle;&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Creates the peer review text from an info string, if a peer review was detected earlier.&lt;br /&gt;
     */&lt;br /&gt;
    am.addPeerReview = function (peerReview, activeReview) {&lt;br /&gt;
        var reviewText = null;&lt;br /&gt;
        if (peerReview) {&lt;br /&gt;
            reviewText = $(&amp;quot;&amp;lt;div&amp;gt;&amp;lt;span class=\&amp;quot;assess-info-review\&amp;quot;&amp;gt;&amp;quot; +&lt;br /&gt;
                (activeReview ? &amp;quot;Currently being&amp;quot; : &amp;quot;Previously&amp;quot;) + &amp;quot; &amp;lt;a&amp;gt;peer reviewed&amp;lt;\/a&amp;gt;.&amp;lt;\/span&amp;gt;&amp;lt;\/div&amp;gt;&amp;quot;);&lt;br /&gt;
            reviewText.find(&amp;quot;a&amp;quot;).attr({href: mw.util.getUrl(peerReview)});&lt;br /&gt;
            reviewText = reviewText.html(); //Note div wrapper above.&lt;br /&gt;
        }&lt;br /&gt;
        return reviewText;&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Updates article header with new assessment information by giving it a new&lt;br /&gt;
     * class (for style information such as color) and altering the tagline below&lt;br /&gt;
     * it to state the assessment found.&lt;br /&gt;
     */&lt;br /&gt;
    am.update = function () {&lt;br /&gt;
        var info = ap.updata.info,&lt;br /&gt;
            infoSpan = $(&amp;quot;&amp;lt;span class=\&amp;quot;assess-info-all\&amp;quot;&amp;gt;&amp;lt;\/span&amp;gt;&amp;quot;),&lt;br /&gt;
            siteSub = $(&amp;quot;&amp;lt;div&amp;gt;&amp;lt;span class=\&amp;quot;assess-article-rating\&amp;quot;&amp;gt;&amp;lt;\/span&amp;gt; from Wikipedia, the free encyclopedia&amp;lt;\/div&amp;gt;&amp;quot;);&lt;br /&gt;
        siteSub.children().html(ap.updata.slogan);&lt;br /&gt;
        if (info &amp;amp;&amp;amp; info.length &amp;gt; 0) {&lt;br /&gt;
            infoSpan.html(&amp;quot;.&amp;quot;);&lt;br /&gt;
            $.each(info, function (i, e) {&lt;br /&gt;
                infoSpan.append(&amp;quot; &amp;quot;).append(e);&lt;br /&gt;
            });&lt;br /&gt;
            siteSub.append(infoSpan);&lt;br /&gt;
        }&lt;br /&gt;
        $(&amp;quot;h1:first&amp;quot;).addClass(ap.updata.newClass || null);&lt;br /&gt;
		if ($(&amp;quot;#siteSub&amp;quot;).length) {&lt;br /&gt;
           $(&amp;quot;#siteSub&amp;quot;).html(siteSub.html());&lt;br /&gt;
		}&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Decodes all HTML entities in the string provided.&lt;br /&gt;
     */&lt;br /&gt;
    am.decodeEntities = function (str) {&lt;br /&gt;
        var t = document.createElement(&amp;quot;textarea&amp;quot;);&lt;br /&gt;
        t.innerHTML = str;&lt;br /&gt;
        return t.value;&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    return assessmentObj;&lt;br /&gt;
}());&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Initializes the script on page load&lt;br /&gt;
 */&lt;br /&gt;
$(assessment.init);&lt;/div&gt;</summary>
		<author><name>en&gt;Pppery</name></author>
	</entry>
</feed>