| Current File : /home/jvzmxxx/wiki1/extensions/Wikibase/view/resources/wikibase/wikibase.RevisionStore.js |
/**
* JavaScript storing revision ids about different sections.
*
* @see https://www.mediawiki.org/wiki/Extension:Wikibase
*
* @license GPL-2.0+
* @author Tobias Gritschacher
*/
( function( wb, $ ) {
'use strict';
/**
* Offers access to stored revision ids
*
* @constructor
* @since 0.1
*/
var SELF = wb.RevisionStore = function WbRevisionStore( baseRev ) {
this._revisions = {
baseRevision: baseRev,
labelRevision: baseRev,
descriptionRevision: baseRev,
aliasesRevision: baseRev,
sitelinksRevision: {},
claimRevisions: {}
};
};
$.extend( SELF.prototype, {
/**
* Returns the base revision id.
*/
getBaseRevision: function() {
return this._revisions.baseRevision;
},
/**
* Returns the label revision id.
*/
getLabelRevision: function() {
return this._revisions.labelRevision;
},
/**
* Returns the description revision id.
*/
getDescriptionRevision: function() {
return this._revisions.descriptionRevision;
},
/**
* Returns the aliases revision id.
*/
getAliasesRevision: function() {
return this._revisions.aliasesRevision;
},
/**
* Returns the sitelinks revision id.
*/
getSitelinksRevision: function( lang ) {
if ( Object.prototype.hasOwnProperty.call( this._revisions.sitelinksRevision, lang ) ) {
return this._revisions.sitelinksRevision[lang];
}
return this._revisions.baseRevision;
},
/**
* Returns the claim revision id.
*/
getClaimRevision: function( claimGuid ) {
if ( Object.prototype.hasOwnProperty.call( this._revisions.claimRevisions, claimGuid ) ) {
return this._revisions.claimRevisions[claimGuid];
}
return this._revisions.baseRevision;
},
/**
* Saves the label revision id.
*/
setLabelRevision: function( rev ) {
this._revisions.labelRevision = rev;
},
/**
* Saves the description revision id.
*/
setDescriptionRevision: function( rev ) {
this._revisions.descriptionRevision = rev;
},
/**
* Saves the aliases revision id.
*/
setAliasesRevision: function( rev ) {
this._revisions.aliasesRevision = rev;
},
/**
* Saves the sitelinks revision id.
*/
setSitelinksRevision: function( rev, lang ) {
this._revisions.sitelinksRevision[lang] = rev;
},
/**
* Saves the claim revision id.
*/
setClaimRevision: function( rev, claimGuid ) {
this._revisions.claimRevisions[claimGuid] = rev;
}
} );
}( wikibase, jQuery ) );