Push selected language to previous languages list

Bug: 62692
Change-Id: I3b40ed1038cec0b34d3b0fbefcae4d4ae650ce36
This commit is contained in:
Santhosh Thottingal
2014-03-24 12:51:03 +05:30
parent cd273dba57
commit ce383b803e
2 changed files with 49 additions and 6 deletions

View File

@@ -120,6 +120,25 @@
return $.parseJSON( previousLanguages ).slice( -5 );
};
/**
* Push the selected language into the previous languages list
* if it isn't there already
* @param {string} Language code of language to be pushed into list
*/
mw.uls.insertPreviousLanguage = function ( prevLangCode ) {
var previousLanguages = mw.uls.getPreviousLanguages() || [],
currentLangIndex;
// Checking if it already exists in array
currentLangIndex = $.inArray( prevLangCode, previousLanguages );
if ( currentLangIndex < 0 ) {
previousLanguages.push( prevLangCode );
} else {
previousLanguages.splice( currentLangIndex, 1 );
previousLanguages.push( prevLangCode );
}
mw.uls.setPreviousLanguages( previousLanguages );
};
/**
* Returns the browser's user interface language or the system language.
* The caller should check the validity of the returned language code.