j1-template 2022.3.1 → 2022.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/_includes/themes/j1/modules/navigator/generator.html +1 -1
- data/assets/data/cookieconsent.html +4 -4
- data/assets/data/nbinteract.html +128 -0
- data/assets/data/quicklinks.html +15 -0
- data/assets/data/translator.html +15 -15
- data/assets/themes/j1/adapter/js/j1.js +150 -75
- data/assets/themes/j1/adapter/js/mmenu.js +25 -3
- data/assets/themes/j1/adapter/js/navigator.js +2 -2
- data/assets/themes/j1/adapter/js/nbinteract.js +240 -33
- data/assets/themes/j1/adapter/js/rangeSlider.js +27 -10
- data/assets/themes/j1/core/css/themes/unolight/bootstrap.css +27 -54
- data/assets/themes/j1/core/css/themes/unolight/bootstrap.min.css +1 -1
- data/assets/themes/j1/core/js/template.js +14 -3
- data/assets/themes/j1/core/js/template.min.js +1 -1
- data/assets/themes/j1/core/js/template.min.js.map +1 -1
- data/assets/themes/j1/modules/nbInteract/js/nbinteract/nbinteract-core.js +1 -1
- data/assets/themes/j1/modules/nbInteract/js/nbinteract/nbinteract-core.js.map +1 -1
- data/assets/themes/j1/modules/nbInteract/js/nbinteract/nbinteract-core.min.js +1 -1
- data/assets/themes/j1/modules/rangeSlider/css/theme/uno/nouislider.css +5 -0
- data/assets/themes/j1/modules/rangeSlider/css/theme/uno/nouislider.min.css +1 -1
- data/lib/j1/version.rb +1 -1
- data/lib/starter_web/Gemfile +1 -1
- data/lib/starter_web/_config.yml +1 -1
- data/lib/starter_web/_data/j1_config.yml +22 -7
- data/lib/starter_web/_data/modules/defaults/cookieconsent.yml +51 -41
- data/lib/starter_web/_data/modules/defaults/navigator.yml +4 -0
- data/lib/starter_web/_data/modules/defaults/nbinteract.yml +99 -1
- data/lib/starter_web/_data/modules/defaults/translator.yml +24 -12
- data/lib/starter_web/_data/modules/rangeSlider.yml +38 -1
- data/lib/starter_web/_plugins/asciidoctor-extensions/range-slider-block.rb +44 -0
- data/lib/starter_web/_plugins/lunr_index.rb +1 -1
- data/lib/starter_web/package.json +1 -1
- data/lib/starter_web/pages/public/jupyter/docs/j1-nbinteract-doc.adoc +2 -3
- data/lib/starter_web/pages/public/jupyter/docs/nbinteract-doc.adoc +17 -17
- data/lib/starter_web/pages/public/jupyter/examples/j1-circular-times-table.adoc +7 -8
- data/lib/starter_web/pages/public/jupyter/examples/j1-interactive-widgets.adoc +4 -5
- data/lib/starter_web/pages/public/jupyter/examples/j1-odes-in-python.adoc +5 -6
- data/lib/starter_web/pages/public/jupyter/examples/j1-testing-plotly.adoc +3 -4
- data/lib/starter_web/pages/public/jupyter/examples/j1_climate-change-forecast.adoc +4 -4
- data/lib/starter_web/pages/public/jupyter/notebooks/j1/.ipynb_checkpoints/j1_interactive_widgets-checkpoint.ipynb +26 -26
- data/lib/starter_web/pages/public/jupyter/notebooks/j1/j1_interactive_widgets.ipynb +26 -26
- data/lib/starter_web/pages/public/jupyter/notebooks/j1/j1_odes_in_python.ipynb +16 -16
- data/lib/starter_web/pages/public/jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_examples_central_limit_theorem-checkpoint.ipynb +247 -0
- data/lib/starter_web/pages/public/jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_recipes_graphing-checkpoint.ipynb +18 -18
- data/lib/starter_web/pages/public/jupyter/notebooks/nbi-docs/nbi_docs_examples_central_limit_theorem.ipynb +1 -2
- data/lib/starter_web/pages/public/jupyter/notebooks/nbi-docs/nbi_docs_recipes_graphing.ipynb +18 -18
- data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_interactive_widgets.html +3 -3
- data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_odes_in_python.html +10 -10
- data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/nbi_docs_recipes_graphing.html +4 -4
- data/lib/starter_web/pages/public/previewer/preview_bootstrap_theme.adoc +2 -2
- data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
- data/lib/starter_web/utilsrv/package.json +1 -1
- metadata +5 -7
- data/assets/themes/j1/modules/nbInteract/js/nbinteract/_new/nbinteract-core.js +0 -94
- data/assets/themes/j1/modules/nbInteract/js/nbinteract/_new/nbinteract-core.js.map +0 -1
- data/assets/themes/j1/modules/nbInteract/js/nbinteract/_old/j1-nbinteract-core.js +0 -94
- data/assets/themes/j1/modules/nbInteract/js/nbinteract/_old/j1-nbinteract-core.js.map +0 -1
- data/lib/starter_web/pages/public/se/se-fake.adoc +0 -47
@@ -106,6 +106,11 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
106
106
|
className: 'spinner', // CSS class assined to the spinner
|
107
107
|
position: 'fixed', // element positioning: absolute|fixed
|
108
108
|
};
|
109
|
+
|
110
|
+
var nbActions = {
|
111
|
+
"resetLocalStorage": true
|
112
|
+
};
|
113
|
+
|
109
114
|
var spinnerStarted = false; // switch to indicate a started spinner
|
110
115
|
var nbiContentModalInfoID = 'nbiModalInfoBody'; // ID of the content (messages) for the INFO modal
|
111
116
|
var nbiContentModalSuccessID = 'nbiModalSuccessBody'; // ID of the content (messages) for the SUCCESS modal
|
@@ -116,7 +121,8 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
116
121
|
var nbiModalErrorID = '#' + 'nbiModalTLDanger'; // ID of the ERROR modal
|
117
122
|
var nbinteract_prepared = false; // switch to indicate if ???
|
118
123
|
var nbiModalSuccessMessagesID = 'nbiModalSuccessMessages'; // UL contalner SUCCESS messages
|
119
|
-
var nbiModalErrorMessagesID = 'nbiModalErrorMessages'; // UL contalner ERROR
|
124
|
+
var nbiModalErrorMessagesID = 'nbiModalErrorMessages'; // UL contalner ERROR messages
|
125
|
+
var nbiCellsRendered = false; // flag indicates if all widgets in page are rendered
|
120
126
|
var nbiShowMessages; // switch to show NBI messages
|
121
127
|
var nbiIndicateNbiActivity; // switch to show a spinner while NBI is being initialized
|
122
128
|
var nbiModalAutoClose; // switch to auto-close nbi message modals
|
@@ -133,6 +139,10 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
133
139
|
var logger;
|
134
140
|
var coreLogger;
|
135
141
|
var logText;
|
142
|
+
var widgetCells;
|
143
|
+
var widgetCellsRendered;
|
144
|
+
var nbiNotebookReady;
|
145
|
+
var Events;
|
136
146
|
|
137
147
|
// ---------------------------------------------------------------------------
|
138
148
|
// Helper functions
|
@@ -148,6 +158,19 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
148
158
|
// -------------------------------------------------------------------------
|
149
159
|
init: function (options) {
|
150
160
|
|
161
|
+
// -----------------------------------------------------------------------
|
162
|
+
// global event handler
|
163
|
+
// -----------------------------------------------------------------------
|
164
|
+
Events = {
|
165
|
+
documentReady: function (onDocumentReady) {
|
166
|
+
if (document.readyState !== 'loading') {
|
167
|
+
onDocumentReady();
|
168
|
+
} else {
|
169
|
+
document.addEventListener('DOMContentLoaded', onDocumentReady);
|
170
|
+
}
|
171
|
+
}
|
172
|
+
};
|
173
|
+
|
151
174
|
// -----------------------------------------------------------------------
|
152
175
|
// Default module settings
|
153
176
|
// -----------------------------------------------------------------------
|
@@ -169,6 +192,7 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
169
192
|
nbiShowMessages = moduleOptions.show_nbi_messages;
|
170
193
|
nbiIndicateNbiActivity = moduleOptions.indicate_nbi_activity;
|
171
194
|
nbiInitMathJax = moduleOptions.nbi_init_mathjax;
|
195
|
+
nbiNotebookReady = moduleOptions.notebook_ready;
|
172
196
|
|
173
197
|
// -----------------------------------------------------------------------
|
174
198
|
// load|configure Mathjax
|
@@ -176,22 +200,25 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
176
200
|
if (nbiInitMathJax) {
|
177
201
|
_this.initMathJax();
|
178
202
|
}
|
203
|
+
// -----------------------------------------------------------------------
|
204
|
+
// load|configure NBI dialog (modal)
|
205
|
+
// -----------------------------------------------------------------------
|
206
|
+
_this.loadDialog(moduleOptions);
|
179
207
|
|
180
208
|
// -----------------------------------------------------------------------
|
181
|
-
// load
|
209
|
+
// load all modals (HTML portion) used by NBI
|
182
210
|
// -----------------------------------------------------------------------
|
183
211
|
_this.loadNbiModals();
|
184
212
|
|
185
213
|
// -----------------------------------------------------------------------
|
186
|
-
// load
|
214
|
+
// load all textbooks (HTML portion) configured|enabled
|
187
215
|
// -----------------------------------------------------------------------
|
188
216
|
_this.loadNbiTextbooks(moduleOptions);
|
189
217
|
|
190
|
-
//
|
218
|
+
// -----------------------------------------------------------------------
|
191
219
|
// run a spinner to indicate activity of 'nbInteract' if enabled
|
192
|
-
//
|
220
|
+
// -----------------------------------------------------------------------
|
193
221
|
$(document).ready(function() {
|
194
|
-
|
195
222
|
if (nbiIndicateNbiActivity && !spinnerStarted) {
|
196
223
|
spinnerStarted = true;
|
197
224
|
target = document.getElementById('content');
|
@@ -214,6 +241,19 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
214
241
|
// -----------------------------------------------------------------------
|
215
242
|
_this.interactNbiTextbooks(moduleOptions);
|
216
243
|
|
244
|
+
// toggle hide|show the FAB button, if to wait on 'last_widget' rendered
|
245
|
+
//
|
246
|
+
if (nbiNotebookReady == 'last_widget') {
|
247
|
+
var dependencies_met_page_rendered = setInterval(function() {
|
248
|
+
if (nbiCellsRendered) {
|
249
|
+
$('.fab-btn').show();
|
250
|
+
clearInterval(dependencies_met_page_rendered);
|
251
|
+
} else {
|
252
|
+
$('.fab-btn').hide();
|
253
|
+
}
|
254
|
+
}, 25); // END interval dependencies_met_page_rendered
|
255
|
+
}
|
256
|
+
|
217
257
|
}, // END init
|
218
258
|
|
219
259
|
// -------------------------------------------------------------------------
|
@@ -463,6 +503,7 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
463
503
|
if (nbiButtonState) {
|
464
504
|
// button NOT removed
|
465
505
|
logger.warn('NBI initialialization failed on textbook: {{textbook_id}}');
|
506
|
+
spinner.stop();
|
466
507
|
// hide the info modal
|
467
508
|
$(nbiModalSuccessID).modal('hide');
|
468
509
|
|
@@ -564,7 +605,7 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
564
605
|
|
565
606
|
// ------------------------------------------------------------------
|
566
607
|
// see: https://www.codingexercises.com/replace-all-instances-of-css-class-in-vanilla-js
|
567
|
-
// see: https://wiki.
|
608
|
+
// see: https://wiki.thishtml.org/wiki/JavaScript/Operatoren/Rest-_oder_Spread-Operator
|
568
609
|
// ------------------------------------------------------------------
|
569
610
|
|
570
611
|
// disable (Google) translation for all HTML 'output_wrapper' elements
|
@@ -1007,13 +1048,9 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
1007
1048
|
// -----------------------------------------------------------------------
|
1008
1049
|
|
1009
1050
|
// -----------------------------------------------------------------------
|
1010
|
-
// command|
|
1011
|
-
//
|
1012
|
-
if (message.type === 'command' && message.action === '
|
1013
|
-
|
1014
|
-
_this.setState('finished');
|
1015
|
-
logger.debug('\n' + 'state: ' + _this.getState());
|
1016
|
-
logger.info('\n' + 'initializing module finished');
|
1051
|
+
// command|nbi_init_started
|
1052
|
+
// -----------------------------------------------------------------------
|
1053
|
+
if (message.type === 'command' && message.action === 'nbi_init_started') {
|
1017
1054
|
|
1018
1055
|
if (nbiShowMessages) {
|
1019
1056
|
if (nbiModalAutoClose) {
|
@@ -1023,21 +1060,47 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
1023
1060
|
}
|
1024
1061
|
}
|
1025
1062
|
|
1026
|
-
if (
|
1027
|
-
spinner.stop();
|
1063
|
+
if (nbiNotebookReady == 'first_widget') {
|
1064
|
+
if (nbiIndicateNbiActivity) spinner.stop();
|
1065
|
+
$('.fab-btn').show();
|
1028
1066
|
}
|
1029
1067
|
|
1030
|
-
|
1068
|
+
widgetCells = document.querySelectorAll('.output_widget_view').length;
|
1069
|
+
var dependencies_met_page_rendered = setInterval(function() {
|
1070
|
+
widgetCellsRendered = document.querySelectorAll('.widget-vbox').length;
|
1071
|
+
if (widgetCellsRendered >= widgetCells) {
|
1072
|
+
logger.info('\n' + 'widgets rendered in page (interactive|total) : ' + widgetCells + '|' + widgetCellsRendered);
|
1073
|
+
nbiCellsRendered = true;
|
1074
|
+
if (nbiIndicateNbiActivity) spinner.stop();
|
1075
|
+
_this.setState('finished');
|
1076
|
+
logger.debug('\n' + 'state: ' + _this.getState());
|
1077
|
+
logger.info('\n' + 'initializing module finished');
|
1078
|
+
|
1079
|
+
clearInterval(dependencies_met_page_rendered);
|
1080
|
+
}
|
1081
|
+
}, 25); // END interval dependencies_met_page_rendered
|
1031
1082
|
|
1083
|
+
// ---------------------------------------------------------------------
|
1084
|
+
// show the quicklinks icon
|
1085
|
+
// ---------------------------------------------------------------------
|
1086
|
+
$('#quickLinksNotebookseButton').show();
|
1087
|
+
|
1088
|
+
} // END message command/nbi_init_started
|
1089
|
+
|
1090
|
+
// -----------------------------------------------------------------------
|
1091
|
+
// command|mathjax
|
1092
|
+
// -----------------------------------------------------------------------
|
1032
1093
|
if (message.type === 'command' && message.action === 'mathjax') {
|
1033
1094
|
logger.error('\n' + 'New Math, ID: ' + message.text);
|
1034
1095
|
|
1035
|
-
MathJax
|
1036
|
-
|
1037
|
-
|
1038
|
-
|
1039
|
-
|
1040
|
-
|
1096
|
+
// Register a MathJax callback if page is FULLY rendered
|
1097
|
+
// TODO: Dosn't for now tha way !!!
|
1098
|
+
// MathJax.Hub.Startup.signal.Interest(function (message) {
|
1099
|
+
// logger.error("Startup: " + message)
|
1100
|
+
// if (message.contains('End')) {
|
1101
|
+
// logger.error("Startup: " + message)
|
1102
|
+
// }
|
1103
|
+
// });
|
1041
1104
|
|
1042
1105
|
var dependencies_met_mathjax_rendered = setInterval(function() {
|
1043
1106
|
var elm = document.getElementById('MathJax-Element-6' + '-Frame');
|
@@ -1051,15 +1114,23 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
1051
1114
|
clearInterval(dependencies_met_mathjax_rendered);
|
1052
1115
|
}, 25); // END interval dependencies_met_mathjax_rendered
|
1053
1116
|
|
1054
|
-
} // END message command/
|
1117
|
+
} // END message command/mathjax
|
1055
1118
|
|
1056
1119
|
// -----------------------------------------------------------------------
|
1057
|
-
//
|
1058
|
-
//
|
1120
|
+
// command|info
|
1121
|
+
// TODO: count messages contain 'Pulling image'.
|
1122
|
+
// Potentially a enless loop
|
1123
|
+
// -----------------------------------------------------------------------
|
1059
1124
|
if (message.type === 'command' && message.action === 'info') {
|
1060
1125
|
// var reMessageTS = new RegExp('/(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d{1,9})?(?:Z|[+-][01]\d:[0-5]\d)/');
|
1061
1126
|
var messageTS;
|
1062
1127
|
|
1128
|
+
// widget render info messages for logging
|
1129
|
+
//
|
1130
|
+
if (message.text.includes('Displaying widget') || message.text.includes('First widget')) {
|
1131
|
+
logger.debug('\n' + message.text);
|
1132
|
+
}
|
1133
|
+
|
1063
1134
|
// remove timestamp|loglevel from message if exists
|
1064
1135
|
//
|
1065
1136
|
messageTS = message.text.split('] ')[1];
|
@@ -1068,7 +1139,6 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
1068
1139
|
}
|
1069
1140
|
|
1070
1141
|
_this.appendModalMessage(messageSuccessUL, message.text)
|
1071
|
-
|
1072
1142
|
logger.debug('\n' + message.text);
|
1073
1143
|
|
1074
1144
|
// show the info modal
|
@@ -1083,10 +1153,29 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
1083
1153
|
|
1084
1154
|
// -----------------------------------------------------------------------
|
1085
1155
|
// command|error
|
1086
|
-
//
|
1156
|
+
// -----------------------------------------------------------------------
|
1087
1157
|
if (message.type === 'command' && message.action === 'error') {
|
1088
1158
|
var messageTS;
|
1089
1159
|
|
1160
|
+
if (messageTS.contains('Too many users') ||
|
1161
|
+
messageTS.contains('Insufficent nodes') ||
|
1162
|
+
messageTS.contains('ImagePullBackOff') ||
|
1163
|
+
messageTS.contains('failed to connect')
|
1164
|
+
) {
|
1165
|
+
var modaBodyText = `
|
1166
|
+
The <i>Binder Service</i> is currently not available or is overloaded.
|
1167
|
+
All interactive components on the page are <b>not</b> available.
|
1168
|
+
You can reload the page or re-open later again.
|
1169
|
+
`;
|
1170
|
+
logger.error('\n', 'Binder access: failed');
|
1171
|
+
if ($(nbiModalTRInfo).is(':hidden')) {
|
1172
|
+
document.getElementById('nbiModalTRInfoBody').innerHTML = modaBodyText;
|
1173
|
+
$(nbiModalTRInfo).modal('show');
|
1174
|
+
}
|
1175
|
+
|
1176
|
+
return;
|
1177
|
+
}
|
1178
|
+
|
1090
1179
|
// remove timestamp|loglevel from message if exists
|
1091
1180
|
//
|
1092
1181
|
messageTS = message.text.split('] ')[1];
|
@@ -1095,14 +1184,13 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
1095
1184
|
}
|
1096
1185
|
|
1097
1186
|
_this.appendModalMessage(messageErrorUL, message.text)
|
1098
|
-
|
1099
1187
|
logger.error('\n' + message.text);
|
1100
1188
|
|
1101
|
-
// stop the (progress) spinner
|
1189
|
+
// stop the (progress) spinner
|
1102
1190
|
//
|
1103
|
-
|
1104
|
-
|
1105
|
-
|
1191
|
+
if (moduleOptions.indicate_nbi_activity) {
|
1192
|
+
spinner.stop();
|
1193
|
+
}
|
1106
1194
|
|
1107
1195
|
if (nbiShowMessages) {
|
1108
1196
|
// hide the info modal if shown
|
@@ -1189,6 +1277,125 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
1189
1277
|
});
|
1190
1278
|
|
1191
1279
|
}, // END checkURL
|
1280
|
+
|
1281
|
+
// -------------------------------------------------------------------------
|
1282
|
+
// loadDialog()
|
1283
|
+
// Loads the NBI dialog (modal)
|
1284
|
+
// -------------------------------------------------------------------------
|
1285
|
+
loadDialog: function (options) {
|
1286
|
+
Events.documentReady(function () {
|
1287
|
+
|
1288
|
+
_this.modal = document.getElementById(options.dialogContainerID);
|
1289
|
+
if (!_this.modal) {
|
1290
|
+
logger.info('\n' + 'load consent modal');
|
1291
|
+
|
1292
|
+
_this.modal = document.createElement('div');
|
1293
|
+
_this.modal.id = options.dialogContainerID;
|
1294
|
+
_this.modal.style.display = 'none';
|
1295
|
+
|
1296
|
+
_this.modal.setAttribute('class', 'modal fade');
|
1297
|
+
_this.modal.setAttribute('tabindex', '-1');
|
1298
|
+
_this.modal.setAttribute('role', 'dialog');
|
1299
|
+
_this.modal.setAttribute('aria-labelledby', options.dialogContainerID);
|
1300
|
+
document.body.append(_this.modal);
|
1301
|
+
_this.$modal = $(_this.modal);
|
1302
|
+
|
1303
|
+
// -------------------------------------------------------------------
|
1304
|
+
// load|initialize the dialog (modal content)
|
1305
|
+
// -------------------------------------------------------------------
|
1306
|
+
var templateUrl = options.contentURL + '/' + 'index.html';
|
1307
|
+
$.get(templateUrl)
|
1308
|
+
.done(function (data) {
|
1309
|
+
// load ALL modals HTML
|
1310
|
+
_this.modal.innerHTML = data;
|
1311
|
+
// select only the requested modal
|
1312
|
+
_this.modal.innerHTML = $('#' + options.xhrDataElement).eq(0).html();
|
1313
|
+
|
1314
|
+
// set dialog type to 'modal'
|
1315
|
+
//
|
1316
|
+
$(_this.modal).modal({
|
1317
|
+
backdrop: 'static',
|
1318
|
+
keyboard: false
|
1319
|
+
});
|
1320
|
+
|
1321
|
+
// register all button links
|
1322
|
+
//
|
1323
|
+
_this.$buttonDoNotAgree = $('#nbi-buttonDoNotAgree');
|
1324
|
+
_this.$buttonAgree = $('#nbi-buttonAgree');
|
1325
|
+
_this.$buttonSave = $('#nbi-buttonSave');
|
1326
|
+
_this.$buttonAgreeAll = $('#nbi-buttonAgreeAll');
|
1327
|
+
|
1328
|
+
// register all actions
|
1329
|
+
//
|
1330
|
+
_this.registerActions();
|
1331
|
+
|
1332
|
+
// register button event handler
|
1333
|
+
//
|
1334
|
+
_this.$buttonDoNotAgree.click(function () {
|
1335
|
+
_this.doNotAgree();
|
1336
|
+
});
|
1337
|
+
|
1338
|
+
_this.$buttonAgree.click(function () {
|
1339
|
+
_this.agreeAll();
|
1340
|
+
});
|
1341
|
+
})
|
1342
|
+
.fail(function () {
|
1343
|
+
logger.error('\n' + 'loading nbi dialog (modal): failed');
|
1344
|
+
logger.warn('\n' + 'probably no|wrong `contentURL` set');
|
1345
|
+
});
|
1346
|
+
}
|
1347
|
+
}.bind(_this));
|
1348
|
+
}, // END loadDialog
|
1349
|
+
|
1350
|
+
// -------------------------------------------------------------------------
|
1351
|
+
// showDialog()
|
1352
|
+
// Show the NBI dialog (modal)
|
1353
|
+
// -------------------------------------------------------------------------
|
1354
|
+
showDialog: function () {
|
1355
|
+
this.$modal.modal('show');
|
1356
|
+
}, // END showDialog
|
1357
|
+
|
1358
|
+
// -------------------------------------------------------------------------
|
1359
|
+
// registerActions()
|
1360
|
+
// register actions to run
|
1361
|
+
// -------------------------------------------------------------------------
|
1362
|
+
registerActions: function () {
|
1363
|
+
|
1364
|
+
$('input:checkbox[name="checkboxClearLocalStorage"]').on('click', function (e) {
|
1365
|
+
nbActions.resetLocalStorage = $(this).is(':checked');
|
1366
|
+
logText = '\n' + 'action ClearLocalStorage changed to: ' + value;
|
1367
|
+
logger.info(logText);
|
1368
|
+
|
1369
|
+
e.stopPropagation();
|
1370
|
+
});
|
1371
|
+
|
1372
|
+
}, // END registerActions
|
1373
|
+
|
1374
|
+
// -------------------------------------------------------------------------
|
1375
|
+
// doNotAgree()
|
1376
|
+
// action to run ...
|
1377
|
+
// -------------------------------------------------------------------------
|
1378
|
+
doNotAgree: function (elmID, msg) {
|
1379
|
+
_this.$modal.modal('hide');
|
1380
|
+
}, // END doNotAgree
|
1381
|
+
|
1382
|
+
// -------------------------------------------------------------------------
|
1383
|
+
// agreeAll()
|
1384
|
+
// caction to run ...
|
1385
|
+
// -------------------------------------------------------------------------
|
1386
|
+
agreeAll: function (elmID, msg) {
|
1387
|
+
|
1388
|
+
if (nbActions.resetLocalStorage) {
|
1389
|
+
logText = '\n' + 'run action: "Clear Binder Settings"';
|
1390
|
+
logger.info(logText);
|
1391
|
+
localStorage.removeItem('serverParams');
|
1392
|
+
localStorage.removeItem('kernelId');
|
1393
|
+
}
|
1394
|
+
|
1395
|
+
_this.$modal.modal('hide');
|
1396
|
+
location.reload(true);
|
1397
|
+
}, // END agreeAll
|
1398
|
+
|
1192
1399
|
// -------------------------------------------------------------------------
|
1193
1400
|
// appendModalMessage()
|
1194
1401
|
// Appends a message to given (NBI) modal
|
@@ -93,8 +93,16 @@ j1.adapter.rangeSlider = (function (j1, window) {
|
|
93
93
|
// Helper functions
|
94
94
|
// ---------------------------------------------------------------------------
|
95
95
|
|
96
|
-
function
|
97
|
-
|
96
|
+
function prepend(newNode, referenceNode) {
|
97
|
+
referenceNode.parentNode.insertBefore(newNode, referenceNode);
|
98
|
+
}
|
99
|
+
|
100
|
+
function append(newNode, referenceNode) {
|
101
|
+
referenceNode.parentNode.insertBefore(newNode, referenceNode.nextSibling);
|
102
|
+
}
|
103
|
+
|
104
|
+
function insert(newNode, referenceNode) {
|
105
|
+
referenceNode.appendChild(newNode);
|
98
106
|
}
|
99
107
|
|
100
108
|
// ---------------------------------------------------------------------------
|
@@ -133,7 +141,7 @@ j1.adapter.rangeSlider = (function (j1, window) {
|
|
133
141
|
if (j1.getState() == 'finished') {
|
134
142
|
|
135
143
|
logger.info('\n' + 'module is being initialized');
|
136
|
-
|
144
|
+
|
137
145
|
// initialize state flag
|
138
146
|
_this.setState('started');
|
139
147
|
logger.debug('\n' + 'state: ' + _this.getState());
|
@@ -163,8 +171,10 @@ j1.adapter.rangeSlider = (function (j1, window) {
|
|
163
171
|
{% assign format_decimals = range_slider_options.options.format.decimals %}
|
164
172
|
{% assign cbOnUpdate = range_slider_options.options.cbOnUpdate %}
|
165
173
|
|
174
|
+
|
166
175
|
{% comment %} overload defaults by slider options
|
167
|
-
|
176
|
+
---------------------------------------------------------------- {% endcomment %}
|
177
|
+
{% if item.slider.options.title %} {% assign title = item.slider.options.title %} {% endif %}
|
168
178
|
{% if item.slider.options.label %} {% assign label = item.slider.options.label %} {% endif %}
|
169
179
|
{% if item.slider.options.start %} {% assign start = item.slider.options.start %} {% endif %}
|
170
180
|
{% if item.slider.options.connect %} {% assign connect = item.slider.options.connect %} {% endif %}
|
@@ -176,7 +186,8 @@ j1.adapter.rangeSlider = (function (j1, window) {
|
|
176
186
|
{% if item.slider.options.cbOnUpdate %} {% assign cbOnUpdate = item.slider.options.cbOnUpdate %} {% endif %}
|
177
187
|
|
178
188
|
elms.forEach(function (elm) {
|
179
|
-
var id
|
189
|
+
var id = elm.id;
|
190
|
+
var parent = document.getElementById(id);
|
180
191
|
|
181
192
|
if (id === '{{slider_id}}') {
|
182
193
|
// processing rangeSlider: {{slider_id}}
|
@@ -198,11 +209,17 @@ j1.adapter.rangeSlider = (function (j1, window) {
|
|
198
209
|
})
|
199
210
|
});
|
200
211
|
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
212
|
+
if ('{{title}}'.length) {
|
213
|
+
var title = document.createElement('div');
|
214
|
+
title.classList.add('range-slider-title');
|
215
|
+
title.innerHTML = '{{title}}';
|
216
|
+
prepend(title, parent);
|
217
|
+
}
|
218
|
+
|
219
|
+
var label = document.createElement('label');
|
220
|
+
label.classList.add('range-slider-label');
|
221
|
+
label.innerHTML = '{{label}}';
|
222
|
+
insert(label, parent);
|
206
223
|
|
207
224
|
slider_{{slider_id}}.noUiSlider.on('update', function (values, handle) {
|
208
225
|
var logger = log4javascript.getLogger('j1.adapter.rangeSlider.cbOnUpdate');
|
@@ -25186,15 +25186,16 @@ li.dropdown.nav-item.nav-sub-item:before {
|
|
25186
25186
|
transition: all 1s ease-in-out;
|
25187
25187
|
background-color: transparent;
|
25188
25188
|
border-bottom: 0; }
|
25189
|
+
nav.navbar.navigator.navbar-transparent .quicklink-nav {
|
25190
|
+
padding-left: 15px;
|
25191
|
+
margin-left: 30px; }
|
25189
25192
|
nav.navbar.navigator.navbar-transparent.light {
|
25190
25193
|
background-color: rgba(255, 255, 255, 0.3); }
|
25191
25194
|
nav.navbar.navigator.navbar-transparent.dark {
|
25192
25195
|
background-color: rgba(0, 0, 0, 0.3); }
|
25193
25196
|
nav.navbar.navigator.menu-center .container {
|
25194
25197
|
position: relative; }
|
25195
|
-
nav.navbar.navigator.menu-center .
|
25196
|
-
position: absolute; }
|
25197
|
-
nav.navbar.navigator.menu-center .attr-nav {
|
25198
|
+
nav.navbar.navigator.menu-center .quicklink-nav {
|
25198
25199
|
position: absolute;
|
25199
25200
|
right: 15px; }
|
25200
25201
|
nav.navbar.navigator.menu-center ul.nav.navbar-center {
|
@@ -25227,25 +25228,26 @@ li.dropdown.nav-item.nav-sub-item:before {
|
|
25227
25228
|
background-color: rgba(0, 0, 0, 0.3);
|
25228
25229
|
border-bottom: solid 3px #212121;
|
25229
25230
|
border-left: solid 1px #212121; }
|
25230
|
-
.
|
25231
|
+
.quicklink-nav {
|
25231
25232
|
margin-left: 0;
|
25232
25233
|
margin-right: -20px;
|
25233
25234
|
float: right;
|
25234
25235
|
position: relative;
|
25235
25236
|
display: inline-block;
|
25236
25237
|
margin-right: 1.5rem; }
|
25237
|
-
.
|
25238
|
+
.quicklink-nav > ul {
|
25238
25239
|
list-style: none;
|
25239
25240
|
overflow: hidden; }
|
25240
|
-
.
|
25241
|
+
.quicklink-nav > ul > li {
|
25241
25242
|
float: left;
|
25242
25243
|
display: block; }
|
25243
|
-
.
|
25244
|
+
.quicklink-nav > ul > li > a {
|
25244
25245
|
color: rgba(255, 255, 255, 0.5);
|
25245
25246
|
display: block;
|
25246
25247
|
padding: 10px 5px;
|
25247
|
-
position: relative;
|
25248
|
-
|
25248
|
+
position: relative;
|
25249
|
+
border-bottom: unset; }
|
25250
|
+
.quicklink-nav > ul > li > a span.badge {
|
25249
25251
|
position: absolute;
|
25250
25252
|
top: 50%;
|
25251
25253
|
margin-top: -15px;
|
@@ -25255,7 +25257,7 @@ li.dropdown.nav-item.nav-sub-item:before {
|
|
25255
25257
|
width: 15px;
|
25256
25258
|
height: 15px;
|
25257
25259
|
padding-top: 2px; }
|
25258
|
-
.
|
25260
|
+
.quicklink-nav > ul > li.dropdown ul.dropdown-menu {
|
25259
25261
|
border-radius: 0;
|
25260
25262
|
box-shadow: 0 0 0;
|
25261
25263
|
border: solid 1px #e0e0e0;
|
@@ -25487,11 +25489,11 @@ li.dropdown.nav-item.nav-sub-item:before {
|
|
25487
25489
|
border: none;
|
25488
25490
|
margin-bottom: 0; }
|
25489
25491
|
nav.navbar.navigator .navbar-collapse.collapse {
|
25490
|
-
display: none
|
25492
|
+
display: none; }
|
25491
25493
|
nav.navbar.navigator .navbar-collapse.collapse.in {
|
25492
|
-
display: block
|
25494
|
+
display: block; }
|
25493
25495
|
nav.navbar.navigator .navbar-collapse.collapse.show {
|
25494
|
-
display: block
|
25496
|
+
display: block; }
|
25495
25497
|
nav.navbar.navigator .navbar-nav {
|
25496
25498
|
padding-top: 5px;
|
25497
25499
|
padding-left: 15px;
|
@@ -25621,11 +25623,10 @@ li.dropdown.nav-item.nav-sub-item:before {
|
|
25621
25623
|
border: 0;
|
25622
25624
|
border-color: transparent;
|
25623
25625
|
border-radius: 0;
|
25626
|
+
box-shadow: unset;
|
25624
25627
|
z-index: 2; }
|
25625
25628
|
nav.navbar.navigator .navbar-toggler:hover {
|
25626
25629
|
color: rgba(255, 255, 255, 0.9); }
|
25627
|
-
nav.navbar.navigator .navbar-toggler:focus {
|
25628
|
-
color: rgba(255, 255, 255, 0.9); }
|
25629
25630
|
nav.navbar.navigator .dropdown-item:focus {
|
25630
25631
|
background-color: rgba(0, 0, 0, 0.5) !important; }
|
25631
25632
|
nav.navbar.navigator .dropdown-item:hover {
|
@@ -25679,19 +25680,19 @@ li.dropdown.nav-item.nav-sub-item:before {
|
|
25679
25680
|
nav.navbar.navigator.navbar-transparent.light {
|
25680
25681
|
background-color: rgba(0, 0, 0, 0.4) !important;
|
25681
25682
|
border-bottom: 0; }
|
25682
|
-
.
|
25683
|
+
.quicklink-nav {
|
25683
25684
|
position: absolute;
|
25684
25685
|
right: 1.5rem;
|
25685
25686
|
margin-right: 0;
|
25686
25687
|
overflow: hidden; }
|
25687
|
-
.
|
25688
|
+
.quicklink-nav > ul {
|
25688
25689
|
padding: 0;
|
25689
25690
|
margin: 0 -15px -7px 0; }
|
25690
|
-
.
|
25691
|
+
.quicklink-nav > ul > li > a {
|
25691
25692
|
padding: 16px 15px 15px; }
|
25692
|
-
.
|
25693
|
+
.quicklink-nav > ul > li.dropdown > a.dropdown-toggle:before {
|
25693
25694
|
display: none; }
|
25694
|
-
.
|
25695
|
+
.quicklink-nav > ul > li.dropdown ul.dropdown-menu {
|
25695
25696
|
margin-top: 2px;
|
25696
25697
|
margin-left: 55px;
|
25697
25698
|
width: 350px;
|
@@ -25711,45 +25712,17 @@ li.dropdown.nav-item.nav-sub-item:before {
|
|
25711
25712
|
.nav-item + .nav-item {
|
25712
25713
|
margin-left: 0 !important; } }
|
25713
25714
|
|
25714
|
-
@media screen and (
|
25715
|
-
|
25716
|
-
|
25717
|
-
|
25718
|
-
nav.navbar.navigator .navbar-nav {
|
25719
|
-
padding-top: 5px;
|
25720
|
-
padding-left: 15px;
|
25721
|
-
padding-right: 35px; }
|
25722
|
-
nav.navbar.navigator.navbar-mobile .navbar-collapse {
|
25723
|
-
margin-left: 0; }
|
25724
|
-
nav.navbar.navigator.navbar-mobile.navbar-sidebar .share {
|
25725
|
-
padding: 30px 15px !important;
|
25726
|
-
margin-bottom: 0; }
|
25727
|
-
nav.navbar.navigator.navbar-mobile ul.nav {
|
25728
|
-
margin-left: -15px;
|
25729
|
-
border-top: solid 1px #ffffff; }
|
25730
|
-
nav.navbar.navigator.navbar-sidebar .share {
|
25731
|
-
padding: 30px 15px !important;
|
25732
|
-
padding: 30px 0 !important;
|
25733
|
-
margin-bottom: 0; }
|
25734
|
-
nav.navigator.navbar-full .navbar-collapse {
|
25735
|
-
left: 15px; }
|
25736
|
-
nav.navigator.navbar-full .navbar-header {
|
25737
|
-
padding-right: 0; }
|
25738
|
-
nav.navigator.navbar-full .navbar-toggle {
|
25739
|
-
margin-right: -15px; }
|
25740
|
-
nav.navigator.navbar-full ul.nav > li > a {
|
25741
|
-
color: rgba(255, 255, 255, 0.5);
|
25742
|
-
font-size: 18px !important;
|
25743
|
-
line-height: 24px !important;
|
25744
|
-
padding: 5px 10px !important; }
|
25745
|
-
.attr-nav > ul {
|
25715
|
+
@media screen and (max-width: 992px), screen and (max-width: 575px) {
|
25716
|
+
ul#desktop_menu {
|
25717
|
+
display: none; }
|
25718
|
+
.quicklink-nav > ul {
|
25746
25719
|
margin-right: -10px; }
|
25747
|
-
.
|
25720
|
+
.quicklink-nav > ul > li > a {
|
25748
25721
|
color: rgba(255, 255, 255, 0.5);
|
25749
25722
|
padding: 16px 10px 15px;
|
25750
25723
|
padding-left: 0;
|
25751
25724
|
border-bottom: unset; }
|
25752
|
-
.
|
25725
|
+
.quicklink-nav > ul > li.dropdown ul.dropdown-menu {
|
25753
25726
|
left: -275px; }
|
25754
25727
|
.top-search .container {
|
25755
25728
|
padding: 0 15px; }
|