Merge "Ignore package-lock.json"
diff --git a/dev/js/src/panel/vcpanel.js b/dev/js/src/panel/vcpanel.js
new file mode 100644
index 0000000..98a9b4b
--- /dev/null
+++ b/dev/js/src/panel/vcpanel.js
@@ -0,0 +1,52 @@
+/**
+ * The vc info panel
+ *
+ * The vc info panel displays information about the virtual corpus,
+ * for example the corpus statistic
+ *
+ * @author Helge Stallkamp
+ */
+
+define([
+ 'panel',
+ 'view/corpstatv'
+], function (panelClass, corpStatVClass) {
+
+ const d = document;
+
+ // Localization values
+ const loc = KorAP.Locale;
+ loc.SHOW_STAT= loc.SHOW_STAT || 'Statistics';
+ loc.VERB_SHOWSTAT = loc.VERB_SHOWSTAT || 'Corpus Statistics';
+
+ return {
+ create : function (vc) {
+ return Object.create(panelClass)._init(['vcinfo']).upgradeTo(this)._init(vc);
+ },
+
+ _init : function(vc){
+ this.vc = vc;
+ var actions = this.actions;
+ var that = this;
+ actions.add(loc.SHOW_STAT, [ 'statistic' ], function() {
+ that.addCorpStat();
+ });
+
+ return this;
+ },
+
+
+ /**
+ * Add corpus statistic view to panel
+ */
+ addCorpStat: function(){
+ if (this.statView === undefined || !this.statView.shown()) {
+ this.statView = corpStatVClass.create(this.vc, this);
+ this.add(this.statView);
+ }
+
+ },
+
+
+ }
+});
diff --git a/dev/js/src/vc.js b/dev/js/src/vc.js
index 7494cdf..711008f 100644
--- a/dev/js/src/vc.js
+++ b/dev/js/src/vc.js
@@ -53,7 +53,7 @@
'vc/statistic',
'datepicker',
'buttongroup',
- 'panel',
+ 'panel/vcpanel',
'view/corpstatv',
'buttongroup',
'util'
@@ -66,7 +66,7 @@
statClass,
dpClass,
buttonGrClass,
- panelClass,
+ vcPanelClass,
corpStatVClass,
buttonGroupClass) {
"use strict";
@@ -81,8 +81,6 @@
// KorAP._validDateMatchRE is defined in datepicker.js!
const loc = KorAP.Locale;
- loc.SHOW_STAT = loc.SHOW_STAT || 'Statistics';
- loc.VERB_SHOWSTAT = loc.VERB_SHOWSTAT || 'Corpus Statistics';
loc.VC_allCorpora = loc.VC_allCorpora || 'all corpora';
loc.VC_oneCollection = loc.VC_oneCollection || 'a virtual corpus';
loc.MINIMIZE = loc.MINIMIZE || 'Minimize';
@@ -362,12 +360,13 @@
/**
* Update the whole object based on the underlying data structure
- */
+ */
update : function() {
this._root.update();
return this;
},
-
+
+
/**
* Make the vc persistant by injecting the current timestamp as a
* creation date limit criterion.
@@ -470,26 +469,17 @@
return this._root.toQuery();
},
-
- /*
+
+ /**
* Add panel to display virtual corpus information
*/
addVcInfPanel : function() {
-
var dv = this._element.addE('div');
- var panel = panelClass.create([ 'vcinfo' ]);
- dv.appendChild(panel.element());
-
- var that = this;
- var actions = panel.actions;
- var statView;
-
- actions.add(loc.SHOW_STAT, [ 'statistic' ], function() {
- if (statView === undefined || !statView.shown()) {
- statView = corpStatVClass.create(that);
- panel.add(statView);
- }
- });
- }
+ //Create panel
+ this.panel = vcPanelClass.create(this);
+ dv.appendChild(this.panel.element());
+ },
+
+
};
});