mediawiki-extensions-Visual.../modules/ve-mw/dm/metaitems/ve.dm.MWIndexDisableMetaItem.js
James D. Forrester 051c3498ae Let users set __NOINDEX__ & __INDEX__ status
Add a trinary option to the page settings pane of the meta dialog that
lets users set the page to have __INDEX__, __NOINDEX__ or neither (and so
have the default behaviour).

Bug: 57167
Change-Id: I30d483b5b6c3df7ee56a52c744bbdc610a01873d
2014-02-19 17:48:03 -08:00

48 lines
1.3 KiB
JavaScript

/*!
* VisualEditor DataModel MWIndexDisableMetaItem class.
*
* @copyright 2011-2013 VisualEditor Team and others; see AUTHORS.txt
* @license The MIT License (MIT); see LICENSE.txt
*/
/**
* DataModel disable index meta item (for __NOINDEX__).
*
* @class
* @extends ve.dm.MetaItem
* @constructor
* @param {Object} element Reference to element in meta-linmod
*/
ve.dm.MWIndexDisableMetaItem = function VeDmMWIndexDisableMetaItem( element ) {
// Parent constructor
ve.dm.MetaItem.call( this, element );
};
/* Inheritance */
OO.inheritClass( ve.dm.MWIndexDisableMetaItem, ve.dm.MetaItem );
/* Static Properties */
ve.dm.MWIndexDisableMetaItem.static.name = 'mwIndexDisable';
ve.dm.MWIndexDisableMetaItem.static.group = 'mwIndex';
ve.dm.MWIndexDisableMetaItem.static.matchTagNames = [ 'meta' ];
ve.dm.MWIndexDisableMetaItem.static.matchRdfaTypes = [ 'mw:PageProp/noindex' ];
ve.dm.MWIndexDisableMetaItem.static.toDataElement = function ( ) {
return { 'type': this.name };
};
ve.dm.MWIndexDisableMetaItem.static.toDomElements = function ( dataElement, doc ) {
var meta = doc.createElement( 'meta' );
meta.setAttribute( 'property', 'mw:PageProp/noindex' );
return [ meta ];
};
/* Registration */
ve.dm.modelRegistry.register( ve.dm.MWIndexDisableMetaItem );