j1-template 2022.3.1 → 2022.3.2
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/mmenu.js +25 -3
- data/assets/themes/j1/adapter/js/navigator.js +2 -2
- data/assets/themes/j1/adapter/js/nbinteract.js +230 -34
- 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/lib/j1/version.rb +3 -3
- data/lib/starter_web/Gemfile +1 -1
- data/lib/starter_web/_config.yml +1 -1
- 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 +95 -1
- data/lib/starter_web/_data/modules/defaults/translator.yml +24 -12
- 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/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 +919 -919
- data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/nbi_docs_recipes_graphing.html +473 -473
- data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
- data/lib/starter_web/utilsrv/package.json +1 -1
- metadata +4 -2
@@ -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
|
// -------------------------------------------------------------------------
|
@@ -564,7 +604,7 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
564
604
|
|
565
605
|
// ------------------------------------------------------------------
|
566
606
|
// see: https://www.codingexercises.com/replace-all-instances-of-css-class-in-vanilla-js
|
567
|
-
// see: https://wiki.
|
607
|
+
// see: https://wiki.thishtml.org/wiki/JavaScript/Operatoren/Rest-_oder_Spread-Operator
|
568
608
|
// ------------------------------------------------------------------
|
569
609
|
|
570
610
|
// disable (Google) translation for all HTML 'output_wrapper' elements
|
@@ -1007,13 +1047,9 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
1007
1047
|
// -----------------------------------------------------------------------
|
1008
1048
|
|
1009
1049
|
// -----------------------------------------------------------------------
|
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');
|
1050
|
+
// command|nbi_init_started
|
1051
|
+
// -----------------------------------------------------------------------
|
1052
|
+
if (message.type === 'command' && message.action === 'nbi_init_started') {
|
1017
1053
|
|
1018
1054
|
if (nbiShowMessages) {
|
1019
1055
|
if (nbiModalAutoClose) {
|
@@ -1023,21 +1059,42 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
1023
1059
|
}
|
1024
1060
|
}
|
1025
1061
|
|
1026
|
-
|
1027
|
-
|
1028
|
-
|
1062
|
+
widgetCells = document.querySelectorAll('.output_widget_view').length;
|
1063
|
+
var dependencies_met_page_rendered = setInterval(function() {
|
1064
|
+
widgetCellsRendered = document.querySelectorAll('.widget-vbox').length;
|
1065
|
+
if (widgetCellsRendered >= widgetCells) {
|
1066
|
+
logger.info('\n' + 'widgets rendered in page (interactive|total) : ' + widgetCells + '|' + widgetCellsRendered);
|
1067
|
+
nbiCellsRendered = true;
|
1068
|
+
if (nbiIndicateNbiActivity) spinner.stop();
|
1069
|
+
_this.setState('finished');
|
1070
|
+
logger.debug('\n' + 'state: ' + _this.getState());
|
1071
|
+
logger.info('\n' + 'initializing module finished');
|
1072
|
+
|
1073
|
+
clearInterval(dependencies_met_page_rendered);
|
1074
|
+
}
|
1075
|
+
}, 25); // END interval dependencies_met_page_rendered
|
1029
1076
|
|
1030
|
-
|
1077
|
+
// ---------------------------------------------------------------------
|
1078
|
+
// show the quicklinks icon
|
1079
|
+
// ---------------------------------------------------------------------
|
1080
|
+
$('#quickLinksNotebookseButton').show();
|
1081
|
+
|
1082
|
+
} // END message command/nbi_init_started
|
1031
1083
|
|
1084
|
+
// -----------------------------------------------------------------------
|
1085
|
+
// command|mathjax
|
1086
|
+
// -----------------------------------------------------------------------
|
1032
1087
|
if (message.type === 'command' && message.action === 'mathjax') {
|
1033
1088
|
logger.error('\n' + 'New Math, ID: ' + message.text);
|
1034
1089
|
|
1035
|
-
MathJax
|
1036
|
-
|
1037
|
-
|
1038
|
-
|
1039
|
-
|
1040
|
-
|
1090
|
+
// Register a MathJax callback if page is FULLY rendered
|
1091
|
+
// TODO: Dosn't for now tha way !!!
|
1092
|
+
// MathJax.Hub.Startup.signal.Interest(function (message) {
|
1093
|
+
// logger.error("Startup: " + message)
|
1094
|
+
// if (message.contains('End')) {
|
1095
|
+
// logger.error("Startup: " + message)
|
1096
|
+
// }
|
1097
|
+
// });
|
1041
1098
|
|
1042
1099
|
var dependencies_met_mathjax_rendered = setInterval(function() {
|
1043
1100
|
var elm = document.getElementById('MathJax-Element-6' + '-Frame');
|
@@ -1051,15 +1108,23 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
1051
1108
|
clearInterval(dependencies_met_mathjax_rendered);
|
1052
1109
|
}, 25); // END interval dependencies_met_mathjax_rendered
|
1053
1110
|
|
1054
|
-
} // END message command/
|
1111
|
+
} // END message command/mathjax
|
1055
1112
|
|
1056
1113
|
// -----------------------------------------------------------------------
|
1057
|
-
//
|
1058
|
-
//
|
1114
|
+
// command|info
|
1115
|
+
// TODO: count messages contain 'Pulling image'.
|
1116
|
+
// Potentially a enless loop
|
1117
|
+
// -----------------------------------------------------------------------
|
1059
1118
|
if (message.type === 'command' && message.action === 'info') {
|
1060
1119
|
// 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
1120
|
var messageTS;
|
1062
1121
|
|
1122
|
+
// widget render info messages for logging
|
1123
|
+
//
|
1124
|
+
if (message.text.includes('Displaying widget') || message.text.includes('First widget')) {
|
1125
|
+
logger.debug('\n' + message.text);
|
1126
|
+
}
|
1127
|
+
|
1063
1128
|
// remove timestamp|loglevel from message if exists
|
1064
1129
|
//
|
1065
1130
|
messageTS = message.text.split('] ')[1];
|
@@ -1068,7 +1133,6 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
1068
1133
|
}
|
1069
1134
|
|
1070
1135
|
_this.appendModalMessage(messageSuccessUL, message.text)
|
1071
|
-
|
1072
1136
|
logger.debug('\n' + message.text);
|
1073
1137
|
|
1074
1138
|
// show the info modal
|
@@ -1083,10 +1147,24 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
1083
1147
|
|
1084
1148
|
// -----------------------------------------------------------------------
|
1085
1149
|
// command|error
|
1086
|
-
//
|
1150
|
+
// -----------------------------------------------------------------------
|
1087
1151
|
if (message.type === 'command' && message.action === 'error') {
|
1088
1152
|
var messageTS;
|
1089
1153
|
|
1154
|
+
if (messageTS.contains('Too many users') || messageTS.contains('Insufficent nodes')) {
|
1155
|
+
var modaBodyText = `
|
1156
|
+
The <i>Binder Service</i> is currently not available or is overloaded.
|
1157
|
+
All interactive components on the page are <b>not</b> available.
|
1158
|
+
You can reload the page or re-open later again.
|
1159
|
+
`;
|
1160
|
+
logger.error('\n', 'Binder access: failed');
|
1161
|
+
if ($(nbiModalTRInfo).is(':hidden')) {
|
1162
|
+
document.getElementById('nbiModalTRInfoBody').innerHTML = modaBodyText;
|
1163
|
+
$(nbiModalTRInfo).modal('show');
|
1164
|
+
}
|
1165
|
+
return;
|
1166
|
+
}
|
1167
|
+
|
1090
1168
|
// remove timestamp|loglevel from message if exists
|
1091
1169
|
//
|
1092
1170
|
messageTS = message.text.split('] ')[1];
|
@@ -1095,14 +1173,13 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
1095
1173
|
}
|
1096
1174
|
|
1097
1175
|
_this.appendModalMessage(messageErrorUL, message.text)
|
1098
|
-
|
1099
1176
|
logger.error('\n' + message.text);
|
1100
1177
|
|
1101
|
-
// stop the (progress) spinner
|
1178
|
+
// stop the (progress) spinner
|
1102
1179
|
//
|
1103
|
-
|
1104
|
-
|
1105
|
-
|
1180
|
+
if (moduleOptions.indicate_nbi_activity) {
|
1181
|
+
spinner.stop();
|
1182
|
+
}
|
1106
1183
|
|
1107
1184
|
if (nbiShowMessages) {
|
1108
1185
|
// hide the info modal if shown
|
@@ -1189,6 +1266,125 @@ j1.adapter.nbinteract = (function (j1, window) {
|
|
1189
1266
|
});
|
1190
1267
|
|
1191
1268
|
}, // END checkURL
|
1269
|
+
|
1270
|
+
// -------------------------------------------------------------------------
|
1271
|
+
// loadDialog()
|
1272
|
+
// Loads the NBI dialog (modal)
|
1273
|
+
// -------------------------------------------------------------------------
|
1274
|
+
loadDialog: function (options) {
|
1275
|
+
Events.documentReady(function () {
|
1276
|
+
|
1277
|
+
_this.modal = document.getElementById(options.dialogContainerID);
|
1278
|
+
if (!_this.modal) {
|
1279
|
+
logger.info('\n' + 'load consent modal');
|
1280
|
+
|
1281
|
+
_this.modal = document.createElement('div');
|
1282
|
+
_this.modal.id = options.dialogContainerID;
|
1283
|
+
_this.modal.style.display = 'none';
|
1284
|
+
|
1285
|
+
_this.modal.setAttribute('class', 'modal fade');
|
1286
|
+
_this.modal.setAttribute('tabindex', '-1');
|
1287
|
+
_this.modal.setAttribute('role', 'dialog');
|
1288
|
+
_this.modal.setAttribute('aria-labelledby', options.dialogContainerID);
|
1289
|
+
document.body.append(_this.modal);
|
1290
|
+
_this.$modal = $(_this.modal);
|
1291
|
+
|
1292
|
+
// -------------------------------------------------------------------
|
1293
|
+
// load|initialize the dialog (modal content)
|
1294
|
+
// -------------------------------------------------------------------
|
1295
|
+
var templateUrl = options.contentURL + '/' + 'index.html';
|
1296
|
+
$.get(templateUrl)
|
1297
|
+
.done(function (data) {
|
1298
|
+
// load ALL modals HTML
|
1299
|
+
_this.modal.innerHTML = data;
|
1300
|
+
// select only the requested modal
|
1301
|
+
_this.modal.innerHTML = $('#' + options.xhrDataElement).eq(0).html();
|
1302
|
+
|
1303
|
+
// set dialog type to 'modal'
|
1304
|
+
//
|
1305
|
+
$(_this.modal).modal({
|
1306
|
+
backdrop: 'static',
|
1307
|
+
keyboard: false
|
1308
|
+
});
|
1309
|
+
|
1310
|
+
// register all button links
|
1311
|
+
//
|
1312
|
+
_this.$buttonDoNotAgree = $('#nbi-buttonDoNotAgree');
|
1313
|
+
_this.$buttonAgree = $('#nbi-buttonAgree');
|
1314
|
+
_this.$buttonSave = $('#nbi-buttonSave');
|
1315
|
+
_this.$buttonAgreeAll = $('#nbi-buttonAgreeAll');
|
1316
|
+
|
1317
|
+
// register all actions
|
1318
|
+
//
|
1319
|
+
_this.registerActions();
|
1320
|
+
|
1321
|
+
// register button event handler
|
1322
|
+
//
|
1323
|
+
_this.$buttonDoNotAgree.click(function () {
|
1324
|
+
_this.doNotAgree();
|
1325
|
+
});
|
1326
|
+
|
1327
|
+
_this.$buttonAgree.click(function () {
|
1328
|
+
_this.agreeAll();
|
1329
|
+
});
|
1330
|
+
})
|
1331
|
+
.fail(function () {
|
1332
|
+
logger.error('\n' + 'loading nbi dialog (modal): failed');
|
1333
|
+
logger.warn('\n' + 'probably no|wrong `contentURL` set');
|
1334
|
+
});
|
1335
|
+
}
|
1336
|
+
}.bind(_this));
|
1337
|
+
}, // END loadDialog
|
1338
|
+
|
1339
|
+
// -------------------------------------------------------------------------
|
1340
|
+
// showDialog()
|
1341
|
+
// Show the NBI dialog (modal)
|
1342
|
+
// -------------------------------------------------------------------------
|
1343
|
+
showDialog: function () {
|
1344
|
+
this.$modal.modal('show');
|
1345
|
+
}, // END showDialog
|
1346
|
+
|
1347
|
+
// -------------------------------------------------------------------------
|
1348
|
+
// registerActions()
|
1349
|
+
// register actions to run
|
1350
|
+
// -------------------------------------------------------------------------
|
1351
|
+
registerActions: function () {
|
1352
|
+
|
1353
|
+
$('input:checkbox[name="checkboxClearLocalStorage"]').on('click', function (e) {
|
1354
|
+
nbActions.resetLocalStorage = $(this).is(':checked');
|
1355
|
+
logText = '\n' + 'action ClearLocalStorage changed to: ' + value;
|
1356
|
+
logger.info(logText);
|
1357
|
+
|
1358
|
+
e.stopPropagation();
|
1359
|
+
});
|
1360
|
+
|
1361
|
+
}, // END registerActions
|
1362
|
+
|
1363
|
+
// -------------------------------------------------------------------------
|
1364
|
+
// doNotAgree()
|
1365
|
+
// action to run ...
|
1366
|
+
// -------------------------------------------------------------------------
|
1367
|
+
doNotAgree: function (elmID, msg) {
|
1368
|
+
_this.$modal.modal('hide');
|
1369
|
+
}, // END doNotAgree
|
1370
|
+
|
1371
|
+
// -------------------------------------------------------------------------
|
1372
|
+
// agreeAll()
|
1373
|
+
// caction to run ...
|
1374
|
+
// -------------------------------------------------------------------------
|
1375
|
+
agreeAll: function (elmID, msg) {
|
1376
|
+
|
1377
|
+
if (nbActions.resetLocalStorage) {
|
1378
|
+
logText = '\n' + 'run action: "Clear Binder Settings"';
|
1379
|
+
logger.info(logText);
|
1380
|
+
localStorage.removeItem('serverParams');
|
1381
|
+
localStorage.removeItem('kernelId');
|
1382
|
+
}
|
1383
|
+
|
1384
|
+
_this.$modal.modal('hide');
|
1385
|
+
location.reload(true);
|
1386
|
+
}, // END agreeAll
|
1387
|
+
|
1192
1388
|
// -------------------------------------------------------------------------
|
1193
1389
|
// appendModalMessage()
|
1194
1390
|
// Appends a message to given (NBI) modal
|
@@ -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; }
|