mediawiki-extensions-Visual.../modules/ve-mw/dm/metaitems/ve.dm.MWDisplayTitleMetaItem.js
Krenair 0abbc2b02b Allow VE users to change displaytitle in advanced settings dialog
Some parts of this are heavily based on how the existing defaultsort stuff works.

Relies on I9bb80b01 and Iba2fff95

Bug: 56868
Change-Id: I5f0ce2ec36e82b04d9e1357b14046867c1dd3b60
2014-06-12 01:27:57 +00:00

55 lines
1.4 KiB
JavaScript

/*!
* VisualEditor DataModel MWDisplayTitleMetaItem class.
*
* @copyright 2011-2014 VisualEditor Team and others; see AUTHORS.txt
* @license The MIT License (MIT); see LICENSE.txt
*/
/**
* DataModel display title meta item.
*
* @class
* @extends ve.dm.MetaItem
* @constructor
* @param {Object} element Reference to element in meta-linmod
*/
ve.dm.MWDisplayTitleMetaItem = function VeDmMWDisplayTitleMetaItem( element ) {
// Parent constructor
ve.dm.MetaItem.call( this, element );
};
/* Inheritance */
OO.inheritClass( ve.dm.MWDisplayTitleMetaItem, ve.dm.MetaItem );
/* Static Properties */
ve.dm.MWDisplayTitleMetaItem.static.name = 'mwDisplayTitle';
ve.dm.MWDisplayTitleMetaItem.static.group = 'mwDisplayTitle';
ve.dm.MWDisplayTitleMetaItem.static.matchTagNames = [ 'meta' ];
ve.dm.MWDisplayTitleMetaItem.static.matchRdfaTypes = [ 'mw:PageProp/displaytitle' ];
ve.dm.MWDisplayTitleMetaItem.static.toDataElement = function ( domElements ) {
var content = domElements[0].getAttribute( 'content' );
return {
'type': this.name,
'attributes': {
'content': content
}
};
};
ve.dm.MWDisplayTitleMetaItem.static.toDomElements = function ( dataElement, doc ) {
var meta = doc.createElement( 'meta' );
meta.setAttribute( 'property', 'mw:PageProp/displaytitle' );
meta.setAttribute( 'content', dataElement.attributes.content );
return [ meta ];
};
/* Registration */
ve.dm.modelRegistry.register( ve.dm.MWDisplayTitleMetaItem );