Jforrester has uploaded a new change for review.
https://gerrit.wikimedia.org/r/95726
Change subject: [WIP] Create remaining meta items in DM
......................................................................
[WIP] Create remaining meta items in DM
Add meta items for the four remaining mwPageProp behavioural flags from Parsoid.
These are each waiting for the UX implementation based on the lack of context
information in MWMetaDialog about the page, or about the wiki:
* __NOGALLERY__
* __HIDDENCAT__
— These only makes sense in a Category:
* __NOTITLECONVERT__ // __NOTC__
* __NOCONTENTCONVERT__ // __NOCC__
— These only mkae sense on wikis that have content or title conversion.
Change-Id: I752705f65cfbd79c7f3f71270659793996868aff
---
M VisualEditor.php
A modules/ve-mw/dm/metaitems/ve.dm.MWHiddenCategoryMetaItem.js
A modules/ve-mw/dm/metaitems/ve.dm.MWNoContentConvertMetaItem.js
A modules/ve-mw/dm/metaitems/ve.dm.MWNoGalleryMetaItem.js
A modules/ve-mw/dm/metaitems/ve.dm.MWNoTitleConvertMetaItem.js
5 files changed, 192 insertions(+), 0 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/VisualEditor
refs/changes/26/95726/1
diff --git a/VisualEditor.php b/VisualEditor.php
index bdec212..95eaecd 100644
--- a/VisualEditor.php
+++ b/VisualEditor.php
@@ -436,13 +436,17 @@
've-mw/dm/metaitems/ve.dm.MWAlienMetaItem.js',
've-mw/dm/metaitems/ve.dm.MWCategoryMetaItem.js',
've-mw/dm/metaitems/ve.dm.MWDefaultSortMetaItem.js',
+ 've-mw/dm/metaitems/ve.dm.MWHiddenCategoryMetaItem.js',
've-mw/dm/metaitems/ve.dm.MWIndexDisableMetaItem.js',
've-mw/dm/metaitems/ve.dm.MWIndexForceMetaItem.js',
've-mw/dm/metaitems/ve.dm.MWLanguageMetaItem.js',
've-mw/dm/metaitems/ve.dm.MWNewSectionEditDisableMetaItem.js',
've-mw/dm/metaitems/ve.dm.MWNewSectionEditForceMetaItem.js',
+
've-mw/dm/metaitems/ve.dm.MWNoContentConvertMetaItem.js',
've-mw/dm/metaitems/ve.dm.MWNoEditSectionMetaItem.js',
've-mw/dm/metaitems/ve.dm.MWNoEditSectionMetaItem.js',
+ 've-mw/dm/metaitems/ve.dm.MWNoGalleryMetaItem.js',
+ 've-mw/dm/metaitems/ve.dm.MWNoTitleConvertMetaItem.js',
've-mw/dm/metaitems/ve.dm.MWRedirectMetaItem.js',
've-mw/dm/metaitems/ve.dm.MWStaticRedirectMetaItem.js',
've-mw/dm/metaitems/ve.dm.MWTOCDisableMetaItem.js',
diff --git a/modules/ve-mw/dm/metaitems/ve.dm.MWHiddenCategoryMetaItem.js
b/modules/ve-mw/dm/metaitems/ve.dm.MWHiddenCategoryMetaItem.js
new file mode 100644
index 0000000..84bcb63
--- /dev/null
+++ b/modules/ve-mw/dm/metaitems/ve.dm.MWHiddenCategoryMetaItem.js
@@ -0,0 +1,47 @@
+/*!
+ * VisualEditor DataModel MWHiddenCategoryMetaItem class.
+ *
+ * @copyright 2011-2013 VisualEditor Team and others; see AUTHORS.txt
+ * @license The MIT License (MIT); see LICENSE.txt
+ */
+
+/**
+ * DataModel hidden category meta item (for __HIDDENCAT__).
+ *
+ * @class
+ * @extends ve.dm.MetaItem
+ * @constructor
+ * @param {Object} element Reference to element in meta-linmod
+ */
+ve.dm.MWHiddenCategoryMetaItem = function VeDmMWHiddenCategoryMetaItem(
element ) {
+ // Parent constructor
+ ve.dm.MetaItem.call( this, element );
+};
+
+/* Inheritance */
+
+OO.inheritClass( ve.dm.MWHiddenCategoryMetaItem, ve.dm.MetaItem );
+
+/* Static Properties */
+
+ve.dm.MWHiddenCategoryMetaItem.static.name = 'mwNoGallery';
+
+ve.dm.MWHiddenCategoryMetaItem.static.group = 'mwNoGallery';
+
+ve.dm.MWHiddenCategoryMetaItem.static.matchTagNames = [ 'meta' ];
+
+ve.dm.MWHiddenCategoryMetaItem.static.matchRdfaTypes = [
'mw:PageProp/hiddencat' ];
+
+ve.dm.MWHiddenCategoryMetaItem.static.toDataElement = function ( ) {
+ return { 'type': this.name };
+};
+
+ve.dm.MWHiddenCategoryMetaItem.static.toDomElements = function ( dataElement,
doc ) {
+ var meta = doc.createElement( 'meta' );
+ meta.setAttribute( 'property', 'mw:PageProp/hiddencat' );
+ return [ meta ];
+};
+
+/* Registration */
+
+ve.dm.modelRegistry.register( ve.dm.MWHiddenCategoryMetaItem );
diff --git a/modules/ve-mw/dm/metaitems/ve.dm.MWNoContentConvertMetaItem.js
b/modules/ve-mw/dm/metaitems/ve.dm.MWNoContentConvertMetaItem.js
new file mode 100644
index 0000000..c3996b3
--- /dev/null
+++ b/modules/ve-mw/dm/metaitems/ve.dm.MWNoContentConvertMetaItem.js
@@ -0,0 +1,47 @@
+/*!
+ * VisualEditor DataModel MWNoContentConvertMetaItem class.
+ *
+ * @copyright 2011-2013 VisualEditor Team and others; see AUTHORS.txt
+ * @license The MIT License (MIT); see LICENSE.txt
+ */
+
+/**
+ * DataModel disable content conversion meta item (for __NOCONTENTCONVERT__
and __NOCC__).
+ *
+ * @class
+ * @extends ve.dm.MetaItem
+ * @constructor
+ * @param {Object} element Reference to element in meta-linmod
+ */
+ve.dm.MWNoContentConvertMetaItem = function VeDmMWNoContentConvertMetaItem(
element ) {
+ // Parent constructor
+ ve.dm.MetaItem.call( this, element );
+};
+
+/* Inheritance */
+
+OO.inheritClass( ve.dm.MWNoContentConvertMetaItem, ve.dm.MetaItem );
+
+/* Static Properties */
+
+ve.dm.MWNoContentConvertMetaItem.static.name = 'mwNoContentConvert';
+
+ve.dm.MWNoContentConvertMetaItem.static.group = 'mwNoContentConvert';
+
+ve.dm.MWNoContentConvertMetaItem.static.matchTagNames = [ 'meta' ];
+
+ve.dm.MWNoContentConvertMetaItem.static.matchRdfaTypes = [
'mw:PageProp/nocontentconvert', 'mw:PageProp/nocc' ];
+
+ve.dm.MWNoContentConvertMetaItem.static.toDataElement = function ( ) {
+ return { 'type': this.name };
+};
+
+ve.dm.MWNoContentConvertMetaItem.static.toDomElements = function (
dataElement, doc ) {
+ var meta = doc.createElement( 'meta' );
+ meta.setAttribute( 'property', 'mw:PageProp/nocontentconvert' );
+ return [ meta ];
+};
+
+/* Registration */
+
+ve.dm.modelRegistry.register( ve.dm.MWNoContentConvertMetaItem );
diff --git a/modules/ve-mw/dm/metaitems/ve.dm.MWNoGalleryMetaItem.js
b/modules/ve-mw/dm/metaitems/ve.dm.MWNoGalleryMetaItem.js
new file mode 100644
index 0000000..531ef00
--- /dev/null
+++ b/modules/ve-mw/dm/metaitems/ve.dm.MWNoGalleryMetaItem.js
@@ -0,0 +1,47 @@
+/*!
+ * VisualEditor DataModel MWNoGalleryMetaItem class.
+ *
+ * @copyright 2011-2013 VisualEditor Team and others; see AUTHORS.txt
+ * @license The MIT License (MIT); see LICENSE.txt
+ */
+
+/**
+ * DataModel disable gallery meta item (for __NOGALLERY__).
+ *
+ * @class
+ * @extends ve.dm.MetaItem
+ * @constructor
+ * @param {Object} element Reference to element in meta-linmod
+ */
+ve.dm.MWNoGalleryMetaItem = function VeDmMWNoGalleryMetaItem( element ) {
+ // Parent constructor
+ ve.dm.MetaItem.call( this, element );
+};
+
+/* Inheritance */
+
+OO.inheritClass( ve.dm.MWNoGalleryMetaItem, ve.dm.MetaItem );
+
+/* Static Properties */
+
+ve.dm.MWNoGalleryMetaItem.static.name = 'mwNoGallery';
+
+ve.dm.MWNoGalleryMetaItem.static.group = 'mwNoGallery';
+
+ve.dm.MWNoGalleryMetaItem.static.matchTagNames = [ 'meta' ];
+
+ve.dm.MWNoGalleryMetaItem.static.matchRdfaTypes = [ 'mw:PageProp/nogallery' ];
+
+ve.dm.MWNoGalleryMetaItem.static.toDataElement = function ( ) {
+ return { 'type': this.name };
+};
+
+ve.dm.MWNoGalleryMetaItem.static.toDomElements = function ( dataElement, doc )
{
+ var meta = doc.createElement( 'meta' );
+ meta.setAttribute( 'property', 'mw:PageProp/nogallery' );
+ return [ meta ];
+};
+
+/* Registration */
+
+ve.dm.modelRegistry.register( ve.dm.MWNoGalleryMetaItem );
diff --git a/modules/ve-mw/dm/metaitems/ve.dm.MWNoTitleConvertMetaItem.js
b/modules/ve-mw/dm/metaitems/ve.dm.MWNoTitleConvertMetaItem.js
new file mode 100644
index 0000000..0eecf0c
--- /dev/null
+++ b/modules/ve-mw/dm/metaitems/ve.dm.MWNoTitleConvertMetaItem.js
@@ -0,0 +1,47 @@
+/*!
+ * VisualEditor DataModel MWNoTitleConvertMetaItem class.
+ *
+ * @copyright 2011-2013 VisualEditor Team and others; see AUTHORS.txt
+ * @license The MIT License (MIT); see LICENSE.txt
+ */
+
+/**
+ * DataModel disable title conversion meta item (for __NOTITILECONVERT__ and
__NOTC__).
+ *
+ * @class
+ * @extends ve.dm.MetaItem
+ * @constructor
+ * @param {Object} element Reference to element in meta-linmod
+ */
+ve.dm.MWNoTitleConvertMetaItem = function VeDmMWNoTitleConvertMetaItem(
element ) {
+ // Parent constructor
+ ve.dm.MetaItem.call( this, element );
+};
+
+/* Inheritance */
+
+OO.inheritClass( ve.dm.MWNoTitleConvertMetaItem, ve.dm.MetaItem );
+
+/* Static Properties */
+
+ve.dm.MWNoTitleConvertMetaItem.static.name = 'mwNoTitleConvert';
+
+ve.dm.MWNoTitleConvertMetaItem.static.group = 'mwNoTitleConvert';
+
+ve.dm.MWNoTitleConvertMetaItem.static.matchTagNames = [ 'meta' ];
+
+ve.dm.MWNoTitleConvertMetaItem.static.matchRdfaTypes = [
'mw:PageProp/notitleconvert', 'mw:PageProp/notc' ];
+
+ve.dm.MWNoTitleConvertMetaItem.static.toDataElement = function ( ) {
+ return { 'type': this.name };
+};
+
+ve.dm.MWNoTitleConvertMetaItem.static.toDomElements = function ( dataElement,
doc ) {
+ var meta = doc.createElement( 'meta' );
+ meta.setAttribute( 'property', 'mw:PageProp/notitleconvert' );
+ return [ meta ];
+};
+
+/* Registration */
+
+ve.dm.modelRegistry.register( ve.dm.MWNoTitleConvertMetaItem );
--
To view, visit https://gerrit.wikimedia.org/r/95726
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I752705f65cfbd79c7f3f71270659793996868aff
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Jforrester <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits