Aleksey Bekh-Ivanov (WMDE) has uploaded a new change for review. (
https://gerrit.wikimedia.org/r/358977 )
Change subject: [WIP] Gloss widget
......................................................................
[WIP] Gloss widget
Bug: T165567
Change-Id: I1f77c2f94eff9c25266efc84dab03a49e99bf5d7
---
M extension.json
M resources/templates.php
A resources/widgets/GlossWidget.js
M src/Content/LexemeContent.php
4 files changed, 79 insertions(+), 2 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/WikibaseLexeme
refs/changes/77/358977/1
diff --git a/extension.json b/extension.json
index c065299..6dcdf70 100644
--- a/extension.json
+++ b/extension.json
@@ -49,7 +49,8 @@
"jquery.wikibase.entityview",
"jquery.wikibase.lexemeformlistview",
"wikibase.lexeme.view.ControllerViewFactory",
- "lemma-widget"
+ "lemma-widget",
+ "gloss-widget"
]
},
"wikibase.lexeme": {
@@ -122,6 +123,20 @@
"wikibase-remove"
]
},
+ "gloss-widget": {
+ "scripts": "widgets/GlossWidget.js",
+ "dependencies": [
+ "vue",
+ "vuex"
+ ],
+ "messages":[
+ "wikibase-edit",
+ "wikibase-save",
+ "wikibase-cancel",
+ "wikibase-add",
+ "wikibase-remove"
+ ]
+ },
"wikibase.lexeme.widgets.LemmaWidget.newLemmaWidgetStore": {
"scripts": "widgets/LemmaWidget.newLemmaWidgetStore.js"
},
diff --git a/resources/templates.php b/resources/templates.php
index a904476..c95ac9d 100644
--- a/resources/templates.php
+++ b/resources/templates.php
@@ -35,6 +35,7 @@
// TODO: i18n space before id?
$templates['wikibase-lexeme-sense'] = <<< 'HTML'
<div class="wikibase-lexeme-sense">
+ <div class="wikibase-lexeme-sense-glosses"></div>
<h3 class="wikibase-lexeme-sense-gloss" dir="$1" lang="$2">
<span class="wikibase-lexeme-sense-gloss-text $3">$4</span>
<span class="wikibase-lexeme-sense-id wikibase-title-id">
$5</span>
diff --git a/resources/widgets/GlossWidget.js b/resources/widgets/GlossWidget.js
new file mode 100644
index 0000000..e40197b
--- /dev/null
+++ b/resources/widgets/GlossWidget.js
@@ -0,0 +1,60 @@
+(function ( $, mw, require, wb, Vue, Vuex ) {
+ 'use strict';
+
+ var wbEntity = JSON.parse( mw.config.get( 'wbEntity' ) );
+
+ var entityId = mw.config.get( 'wbEntityId' );
+ var baseRevId = mw.config.get( 'wgCurRevisionId' );
+
+ // noinspection JSAnnotator
+ var template = `
+ <table class="wikibase-lexeme-sense-glosses">
+
+ <tbody>
+ <tr v-for="(gloss, index) in glosses"
class="wikibase-lexeme-sense-gloss">
+ <td>
+ <b v-if="index === 0">{{gloss.language}}</b>
+ <span v-else>{{gloss.language}}</span>
+ </td>
+ <td>
+ <b v-if="index === 0">{{gloss.value}}
({{senseId}})</b>
+ <span v-else>{{gloss.value}}</span>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ `;
+
+ var store = new Vuex.Store( {
+ strict: true, //FIXME make it configurable
+ state: {},
+ mutations: {},
+ actions: {}
+ } );
+
+ var widgetElements = document.getElementsByClassName(
'wikibase-lexeme-sense-glosses' );
+ for ( var index in widgetElements ) {
+ if ( widgetElements.hasOwnProperty( index ) ) {
+ new Vue( {
+ el: widgetElements[ index ],
+ template: template,
+ data: {
+ senseId: 'S' + (Number(index) + 1),
+ glosses: [
+ { value: 'sense en', language:
'en' },
+ { value: 'sense fr', language:
'fr' }
+ ]
+ },
+ computed: {},
+ methods: {},
+ filters: {
+ message: function ( key ) {
+ return mw.messages.get( key );
+ }
+ }
+ } );
+ }
+
+ }
+
+})( jQuery, mediaWiki, require, wikibase, Vue, Vuex );
diff --git a/src/Content/LexemeContent.php b/src/Content/LexemeContent.php
index 324c71e..791ed99 100644
--- a/src/Content/LexemeContent.php
+++ b/src/Content/LexemeContent.php
@@ -95,7 +95,8 @@
new Sense(
new SenseId( 'S1' ),
new TermList( [
- new Term( 'en', 'A mammal, Capra
aegagrus hircus, and similar species of the genus Capra.' )
+ new Term( 'en', 'A mammal, Capra
aegagrus hircus, and similar species of the genus Capra.' ),
+ new Term( 'fr', 'Un mammale, Capra
aegagruse hircuse, et similare species de un genuse Capra.' ),
] ),
new StatementList()
),
--
To view, visit https://gerrit.wikimedia.org/r/358977
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I1f77c2f94eff9c25266efc84dab03a49e99bf5d7
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/WikibaseLexeme
Gerrit-Branch: master
Gerrit-Owner: Aleksey Bekh-Ivanov (WMDE) <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits