j1_template 2019.4.7 → 2019.4.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/_includes/themes/j1/layouts/content_generator_collection.html +24 -9
- data/_includes/themes/j1/layouts/content_generator_page.html +24 -9
- data/_includes/themes/j1/layouts/content_generator_post.html +27 -15
- data/_includes/themes/j1/layouts/layout_theme_generator.html +39 -19
- data/_includes/themes/j1/layouts/layout_theme_generator.new.html +118 -0
- data/_includes/themes/j1/layouts/layout_theme_generator.org.html +119 -0
- data/_includes/themes/j1/procedures/global/pager.proc +49 -51
- data/lib/j1/version.rb +1 -1
- data/lib/j1_app/j1_auth_manager/auth_manager.rb +27 -29
- data/lib/j1_app/j1_auth_manager/views/auth_manager_ui.erb +12 -8
- data/lib/starter_web/Gemfile +1 -1
- data/lib/starter_web/_cc_test_data/_config.yml +1 -1
- data/lib/starter_web/_cc_test_data/_data/blocks/banner.yml +57 -0
- data/lib/starter_web/_cc_test_data/_data/blocks/defaults/banner.yml +55 -0
- data/lib/starter_web/_cc_test_data/_data/blocks/defaults/footer.yml +3 -3
- data/lib/starter_web/_cc_test_data/_data/blocks/defaults/panel.yml +30 -38
- data/lib/starter_web/_cc_test_data/_data/blocks/footer.yml +181 -110
- data/lib/starter_web/_cc_test_data/_data/modules/back2top.yml +1 -1
- data/lib/starter_web/_cc_test_data/_data/modules/defaults/smooth_scroll.yml +169 -0
- data/lib/starter_web/_cc_test_data/_data/modules/defaults/theme_switcher.yml +168 -0
- data/lib/starter_web/_cc_test_data/_data/modules/smooth_scroll.yml +169 -0
- data/lib/starter_web/_cc_test_data/_data/modules/theme_switcher.yml +168 -0
- data/lib/starter_web/_config.yml +74 -71
- data/lib/starter_web/_data/blocks/banner.yml +57 -0
- data/lib/starter_web/_data/blocks/defaults/banner.yml +55 -0
- data/lib/starter_web/_data/modules/{j1_navigator_menu.yml → _old_configs/j1_navigator_menu.yml} +0 -0
- data/lib/starter_web/_data/modules/{j1_parallax.yml → _old_configs/j1_parallax.yml} +0 -0
- data/lib/starter_web/_data/modules/{j1_smooth_scroll.yml → _old_configs/j1_smooth_scroll.yml} +0 -0
- data/lib/starter_web/_data/modules/{j1_stickybits.yml → _old_configs/j1_stickybits.yml} +0 -0
- data/lib/starter_web/_data/modules/{j1_theme_switcher.yml → _old_configs/j1_theme_switcher.yml} +0 -0
- data/lib/starter_web/_data/modules/{j1_toccer.yml → _old_configs/j1_toccer.yml} +0 -0
- data/lib/starter_web/_data/modules/defaults/smooth_scroll.yml +169 -0
- data/lib/starter_web/_data/modules/defaults/stickybits.yml +37 -0
- data/lib/starter_web/_data/modules/defaults/theme_switcher.yml +168 -0
- data/lib/starter_web/_data/modules/defaults/toccer.yml +172 -0
- data/lib/starter_web/_data/modules/navigator_menu.yml +306 -0
- data/lib/starter_web/_data/modules/smooth_scroll.yml +169 -0
- data/lib/starter_web/_data/modules/stickybits.yml +38 -0
- data/lib/starter_web/_data/modules/theme_switcher.yml +168 -0
- data/lib/starter_web/_data/modules/toccer.yml +172 -0
- data/lib/starter_web/_data/resources.yml +23 -24
- data/lib/starter_web/_data/template_settings.yml +2 -2
- data/lib/starter_web/assets/data/authclient.html +9 -9
- data/lib/starter_web/assets/data/banner.html +24 -19
- data/lib/starter_web/assets/data/cookie_consent.html +9 -9
- data/lib/starter_web/assets/data/footer.html +9 -10
- data/lib/starter_web/assets/data/menu.html +23 -16
- data/lib/starter_web/assets/data/panel.html +9 -10
- data/lib/starter_web/assets/data/sidebar.html +9 -10
- data/lib/starter_web/assets/data/webhook.html +8 -8
- data/lib/starter_web/assets/images/pages/roundtrip/package.json +1 -1
- data/lib/starter_web/assets/themes/j1/adapter/js/back2top.js +11 -9
- data/lib/starter_web/assets/themes/j1/adapter/js/cookie_consent.js +5 -5
- data/lib/starter_web/assets/themes/j1/adapter/js/logger.js +8 -18
- data/lib/starter_web/assets/themes/j1/adapter/js/master_header.js +48 -70
- data/lib/starter_web/assets/themes/j1/adapter/js/navigator.js +45 -27
- data/lib/starter_web/assets/themes/j1/adapter/js/octokit.app_only.js +433 -0
- data/lib/starter_web/assets/themes/j1/adapter/js/octokit.js +179 -192
- data/lib/starter_web/assets/themes/j1/adapter/js/scroller.js +29 -28
- data/lib/starter_web/assets/themes/j1/adapter/js/searcher.js +5 -5
- data/lib/starter_web/assets/themes/j1/adapter/js/stickybits.js +14 -13
- data/lib/starter_web/assets/themes/j1/adapter/js/switcher.js +56 -52
- data/lib/starter_web/assets/themes/j1/adapter/js/template.js +256 -213
- data/lib/starter_web/assets/themes/j1/adapter/js/toccer.js +24 -21
- data/lib/starter_web/assets/themes/j1/core/js/template.js +9 -9
- data/lib/starter_web/assets/themes/j1/core/js/template.js.map +1 -1
- data/lib/starter_web/assets/themes/j1/core/js/template.min.js +1 -1
- data/lib/starter_web/package.json +1 -1
- data/lib/starter_web/pages/public/start/downloads/quickstarter/100_linux_starter.adoc +1 -1
- data/lib/starter_web/pages/public/start/roundtrip/420_responsive_tables_extensions.adoc +5 -0
- data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
- data/lib/starter_web/utilsrv/package.json +1 -1
- metadata +38 -9
- data/lib/starter_web/_data/resources.new.yml +0 -876
@@ -54,16 +54,21 @@ regenerate: true
|
|
54
54
|
{% assign panel_config_defaults = blocks.defaults.panel.defaults %}
|
55
55
|
{% assign panel_config_settings = blocks.panel.settings %}
|
56
56
|
{% assign footer_config_defaults = blocks.defaults.footer.defaults %}
|
57
|
+
{% assign toccer_defaults = modules.defaults.toccer.defaults %}
|
58
|
+
{% assign toccer_settings = modules.toccer.settings %}
|
59
|
+
{% assign switcher_defaults = modules.defaults.theme_switcher.defaults %}
|
60
|
+
{% assign switcher_settings = modules.theme_switcher.settings %}
|
57
61
|
|
62
|
+
{% comment %} Set config options
|
63
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
64
|
+
{% assign toccer_options = toccer_defaults | merge: toccer_settings %}
|
65
|
+
{% assign switcher_options = switcher_defaults | merge: switcher_settings %}
|
58
66
|
{% assign footer_id = footer_config_defaults.container-id %}
|
59
67
|
{% assign footer_data_path = footer_config_defaults.data_path %}
|
60
68
|
{% assign banner_data_path = banner_config_defaults.data_path %}
|
61
69
|
{% assign panel_data_path = panel_config_defaults.data_path %}
|
62
|
-
{% assign toccer_config = modules.j1_toccer %}
|
63
|
-
{% assign hideOnReload = modules.j1_theme_switcher.hideOnReload %}
|
64
70
|
|
65
|
-
{%
|
66
|
-
-------------------------------------------------------------------------------- {% endcomment %}
|
71
|
+
{% assign hideOnReload = modules.switcher_options.hideOnReload %}
|
67
72
|
|
68
73
|
/*
|
69
74
|
# -----------------------------------------------------------------------------
|
@@ -109,10 +114,7 @@ var j1 = (function () {
|
|
109
114
|
var themeCss;
|
110
115
|
var themeExtensionCss;
|
111
116
|
|
112
|
-
// J1 data files
|
113
|
-
var j1_colors = {};
|
114
|
-
var j1_font_sizes = {};
|
115
|
-
var message_catalog = {};
|
117
|
+
// Pathes of J1 data files
|
116
118
|
var colors_data_path = '{{template_config.colors_data_path}}';
|
117
119
|
var font_size_data_path = '{{template_config.font_size_data_path}}';
|
118
120
|
var message_catalog_data_path = '{{template_config.message_catalog_data_path}}';
|
@@ -129,34 +131,34 @@ var j1 = (function () {
|
|
129
131
|
var referrer;
|
130
132
|
|
131
133
|
var cookie_names = {
|
132
|
-
'app_session':
|
133
|
-
'user_session':
|
134
|
-
'cookie_consent':
|
134
|
+
'app_session': '{{template_config.cookies.app_session}}',
|
135
|
+
'user_session': '{{template_config.cookies.user_session}}',
|
136
|
+
'cookie_consent': '{{template_config.cookies.cookie_consent}}'
|
135
137
|
}
|
136
138
|
|
137
139
|
// J1 UserState Cookie (initial values)
|
138
140
|
var user_state = {
|
139
|
-
'theme_css': '{{
|
140
|
-
'theme_extension_css': '{{
|
141
|
-
'theme_name': '{{
|
142
|
-
'theme_author': '{{
|
143
|
-
'theme_author_url': '{{
|
144
|
-
'theme_link': '{{
|
141
|
+
'theme_css': '{{switcher_options.default_theme_css}}',
|
142
|
+
'theme_extension_css': '{{switcher_options.includeBootswatch}}',
|
143
|
+
'theme_name': '{{switcher_options.default_theme_name}}',
|
144
|
+
'theme_author': '{{switcher_options.default_theme_author}}',
|
145
|
+
'theme_author_url': '{{template_config.theme_author_url}}',
|
146
|
+
'theme_link': '{{template_config.theme_author_url}}',
|
145
147
|
'theme_version': '{{site.version}}',
|
146
|
-
'provider': '{{
|
147
|
-
'provider_membership': '{{
|
148
|
-
'provider_permissions': '{{
|
149
|
-
'provider_site_url': '{{
|
150
|
-
'provider_home_url': '{{
|
151
|
-
'provider_blog_url': '{{
|
152
|
-
'provider_member_url': '{{
|
153
|
-
'provider_privacy_url': '{{
|
148
|
+
'provider': '{{template_config.user.provider}}',
|
149
|
+
'provider_membership': '{{template_config.user.provider_membership}}',
|
150
|
+
'provider_permissions': '{{template_config.user.provider_permissions}}',
|
151
|
+
'provider_site_url': '{{template_config.user.provider_site_url}}',
|
152
|
+
'provider_home_url': '{{template_config.user.provider_home_url}}',
|
153
|
+
'provider_blog_url': '{{template_config.user.provider_blog_url}}',
|
154
|
+
'provider_member_url': '{{template_config.user.provider_member_url}}',
|
155
|
+
'provider_privacy_url': '{{template_config.user.provider_privacy_url}}',
|
154
156
|
'mode': 'na',
|
155
|
-
'user_name': '{{
|
157
|
+
'user_name': '{{template_config.user.user_name}}',
|
156
158
|
'locale': navigator.language || navigator.userLanguage,
|
157
159
|
'requested_page': 'na',
|
158
160
|
'previous_page': 'na',
|
159
|
-
'last_pager': '
|
161
|
+
'last_pager': '/pages/public/blog/navigator/',
|
160
162
|
'cookies_accepted': 'pending'
|
161
163
|
};
|
162
164
|
|
@@ -187,6 +189,7 @@ var j1 = (function () {
|
|
187
189
|
init: function ( options ) {
|
188
190
|
var url = new parseURL(window.location.href)
|
189
191
|
var baseUrl = url.origin;
|
192
|
+
|
190
193
|
var defaults = {
|
191
194
|
toc: false,
|
192
195
|
scrollbar: false,
|
@@ -194,7 +197,16 @@ var j1 = (function () {
|
|
194
197
|
};
|
195
198
|
var args = $.extend(defaults, options);
|
196
199
|
|
197
|
-
|
200
|
+
{% comment %} Test (doesn't work!!!)
|
201
|
+
-------------------------------------------------------------------------- {% endcomment %}
|
202
|
+
// $(function() {
|
203
|
+
// window.addEventListener("DOMContentLoaded", function(event) {
|
204
|
+
// var logger = log4javascript.getLogger('j1.shim.loader');
|
205
|
+
// logger.info('DOMContentLoaded');
|
206
|
+
// });
|
207
|
+
// });
|
208
|
+
|
209
|
+
// j1.adapter.logger.init();
|
198
210
|
|
199
211
|
{% comment %} Set global variables
|
200
212
|
-------------------------------------------------------------------------- {% endcomment %}
|
@@ -216,7 +228,7 @@ var j1 = (function () {
|
|
216
228
|
data: user_state
|
217
229
|
});
|
218
230
|
|
219
|
-
// Detect middleware (mode
|
231
|
+
// Detect middleware (mode 'app') and update user state cookie
|
220
232
|
// -----------------------------------------------------------------------
|
221
233
|
if (user_state.mode === 'na') {
|
222
234
|
var url = new parseURL(window.location.href)
|
@@ -285,96 +297,118 @@ var j1 = (function () {
|
|
285
297
|
logText = j1.getMessage('info', 'getState', 'text');
|
286
298
|
logText = logText + j1.getMessage('info', 'getState', 'data_objects');
|
287
299
|
logText = logText + j1.getMessage('info', 'getState', 'finished');
|
288
|
-
j1.logger(
|
300
|
+
j1.logger('j1.init.deferred', 'info', logText);
|
289
301
|
|
290
302
|
logText = j1.getMessage('info', 'setState', 'text');
|
291
303
|
logText = logText + j1.getMessage('info', 'setState', 'started');
|
292
|
-
j1.logger(
|
304
|
+
j1.logger('j1.init.deferred', 'info', logText);
|
293
305
|
executeFunctionByName('j1.setState', window, state);
|
294
306
|
|
295
|
-
//
|
296
|
-
|
297
|
-
// ---------------------------------------------------------------------
|
298
|
-
$.when(
|
299
|
-
j1.adapter.master_header.loadHeader(),
|
300
|
-
j1.adapter.navigator.init())
|
301
|
-
.then (function(loggerData, headerData, navData) {
|
307
|
+
// set logger for callback|anonymous
|
308
|
+
var logger = log4javascript.getLogger('j1.init.deferred');
|
302
309
|
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
310
|
+
if ( args.scrollbar === 'false' ) {
|
311
|
+
$('body').addClass( 'hide-scrollbar' )
|
312
|
+
$('html').addClass( 'hide-scrollbar-moz' )
|
313
|
+
}
|
307
314
|
|
308
|
-
|
309
|
-
|
315
|
+
logger.info('read user state from cookie');
|
316
|
+
user_state = j1.readCookie(cookie_names.user_session);
|
310
317
|
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
318
|
+
// process|update UserState
|
319
|
+
//
|
320
|
+
themeName = user_state.theme_name;
|
321
|
+
themeCss = user_state.theme_css;
|
322
|
+
themeExtensionCss = user_state.theme_extension_css;
|
316
323
|
|
317
|
-
|
318
|
-
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
|
325
|
-
|
326
|
-
|
327
|
-
|
328
|
-
|
329
|
-
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
324
|
+
// save last page access
|
325
|
+
// See: https://stackoverflow.com/questions/3528324/how-to-get-the-previous-url-in-javascript
|
326
|
+
// See: https://developer.mozilla.org/de/docs/Web/API/Window/history
|
327
|
+
//
|
328
|
+
user_state.timestamp = timestamp_now;
|
329
|
+
referrer = new parseURL(document.referrer);
|
330
|
+
current_page = window.location.pathname;
|
331
|
+
user_state.requested_page = current_page;
|
332
|
+
user_state.previous_page = referrer.search === '' ?
|
333
|
+
(referrer.pathname === '' ? current_page : referrer.pathname) :
|
334
|
+
(user_state.previous_page === '' || user_state.previous_page === 'na'
|
335
|
+
? '/'
|
336
|
+
: user_state.previous_page);
|
337
|
+
|
338
|
+
// calculate last 'pager' if any
|
339
|
+
//
|
340
|
+
if (rePager.test(user_state.previous_page)) {
|
341
|
+
last_pager = user_state.previous_page;
|
342
|
+
user_state.last_pager = last_pager;
|
343
|
+
} else {
|
344
|
+
last_pager = user_state.last_pager;
|
345
|
+
}
|
337
346
|
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
|
347
|
+
logger.info('update user state cookie');
|
348
|
+
j1.writeCookie({
|
349
|
+
name: cookie_names.user_session,
|
350
|
+
data: user_state
|
351
|
+
});
|
343
352
|
|
344
|
-
|
345
|
-
|
346
|
-
|
347
|
-
|
348
|
-
|
349
|
-
|
350
|
-
|
351
|
-
|
352
|
-
|
353
|
-
|
354
|
-
|
355
|
-
|
356
|
-
j1.
|
357
|
-
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
364
|
-
|
365
|
-
|
366
|
-
|
367
|
-
|
368
|
-
|
369
|
-
|
370
|
-
|
371
|
-
|
372
|
-
|
373
|
-
|
353
|
+
// ---------------------------------------------------------------------
|
354
|
+
// Initialize page resources for global modules (sequential asynchronous)
|
355
|
+
// ---------------------------------------------------------------------
|
356
|
+
$.when(
|
357
|
+
j1.initBanner(settings),
|
358
|
+
j1.initPanel(settings),
|
359
|
+
j1.initFooter(settings) )
|
360
|
+
.then (function (initBanner_response, initPanel_response, initFooter_response) {
|
361
|
+
var logger = log4javascript.getLogger('j1.init.deferred');
|
362
|
+
|
363
|
+
// Wait for LAST thenable (footer) in chain finishes
|
364
|
+
var footerLoaded = setInterval(function() {
|
365
|
+
if ( j1.getState() == 'footer_loaded') {
|
366
|
+
// clear interval checking
|
367
|
+
clearInterval(footerLoaded);
|
368
|
+
logger.info('Loading HTML data finished');
|
369
|
+
|
370
|
+
// Continue to run initializers
|
371
|
+
//
|
372
|
+
state = j1.getMessage('info', 'setState', 'running');
|
373
|
+
logText = j1.getMessage('info', 'setState', 'text');
|
374
|
+
logText = logText + j1.getMessage('info', 'setState', 'running');
|
375
|
+
j1.logger('j1.init.deferred', 'info', logText);
|
376
|
+
|
377
|
+
user_state.timestamp = timestamp_now;
|
378
|
+
j1.writeCookie({
|
379
|
+
name: cookie_names.user_session,
|
380
|
+
data: user_state
|
381
|
+
});
|
382
|
+
|
383
|
+
// ---------------------------------------------------------------
|
384
|
+
// Finalize|Display page (sequential asynchronous)
|
385
|
+
// ---------------------------------------------------------------
|
386
|
+
$.when(
|
387
|
+
// jadams 2019-01-20: for MDB, enabled only drawer, switch and ripples
|
388
|
+
j1.initMDB(settings),
|
389
|
+
j1.initClipboard(settings),
|
390
|
+
j1.finalizePage(settings))
|
391
|
+
.then (function () {
|
392
|
+
j1.displayPage();
|
393
|
+
})
|
394
|
+
.catch(function(error) {
|
395
|
+
var logger = log4javascript.getLogger('j1.init.deferred');
|
396
|
+
json_data = JSON.stringify(error, undefined, 2);
|
397
|
+
logText = 'deferred: ' + json_data;
|
398
|
+
logger.error(logText);
|
399
|
+
});
|
400
|
+
}
|
401
|
+
}, 25); // END 'footerLoaded'
|
402
|
+
}) // END load global modules
|
403
|
+
.catch(function(error) {
|
404
|
+
var logger = log4javascript.getLogger('j1.init.deferred');
|
405
|
+
json_data = JSON.stringify(error, undefined, 2);
|
406
|
+
logText = 'deferred: ' + json_data;
|
407
|
+
logger.error(logText);
|
374
408
|
});
|
375
|
-
}) // END load
|
409
|
+
}) // END load global data objects
|
376
410
|
.catch(function(error) {
|
377
|
-
var logger = log4javascript.getLogger('j1.init.deferred');
|
411
|
+
var logger = log4javascript.getLogger('j1.init.deferred');
|
378
412
|
json_data = JSON.stringify(error, undefined, 2);
|
379
413
|
logText = 'deferred: ' + json_data;
|
380
414
|
logger.error(logText);
|
@@ -390,6 +424,7 @@ var j1 = (function () {
|
|
390
424
|
var logger = log4javascript.getLogger('j1.initBanner');
|
391
425
|
var banner = [];
|
392
426
|
var bannerOptions = [];
|
427
|
+
var mod = 'j1';
|
393
428
|
|
394
429
|
{% comment %}
|
395
430
|
Closure to pass additional data (e.g. #banner_id) to AJAX load callback
|
@@ -504,6 +539,7 @@ var j1 = (function () {
|
|
504
539
|
initPanel: function ( options ) {
|
505
540
|
var logger = log4javascript.getLogger('j1.initPanel');
|
506
541
|
var panel = [];
|
542
|
+
var mod = 'j1';
|
507
543
|
|
508
544
|
{% comment %} Closure to pass additional data (e.g. panel_id) to AJAX load callback
|
509
545
|
See: http://stackoverflow.com/questions/939032/jquery-pass-more-parameters-into-callback
|
@@ -589,6 +625,7 @@ var j1 = (function () {
|
|
589
625
|
// -------------------------------------------------------------------------
|
590
626
|
initFooter: function ( options ) {
|
591
627
|
var logger = log4javascript.getLogger('j1.initFooter');
|
628
|
+
var mod = 'j1';
|
592
629
|
|
593
630
|
logText = 'initialization is being started';
|
594
631
|
logger.info(logText);
|
@@ -598,6 +635,11 @@ var j1 = (function () {
|
|
598
635
|
if ( statusTxt == 'success' ) {
|
599
636
|
logText = 'footer on ID ' +footer_id+ ' loaded successfully';
|
600
637
|
logger.info(logText);
|
638
|
+
|
639
|
+
state = 'footer_loaded';
|
640
|
+
logger.info('Set state for module ' + mod + ': ' + state);
|
641
|
+
executeFunctionByName(mod + '.setState', window, state)
|
642
|
+
|
601
643
|
logText = 'initialization finished';
|
602
644
|
logger.info(logText);
|
603
645
|
}
|
@@ -678,17 +720,17 @@ var j1 = (function () {
|
|
678
720
|
}, // END initClipboard
|
679
721
|
|
680
722
|
// -------------------------------------------------------------------------
|
681
|
-
//
|
723
|
+
//
|
682
724
|
// Display the page if the (text) header is signaled as 'initialized'
|
683
725
|
// AND the menubar is signaled as (state) 'finished'
|
684
726
|
// -------------------------------------------------------------------------
|
685
|
-
|
686
|
-
var logger = log4javascript.getLogger('j1.
|
727
|
+
finalizePage: function ( options ) {
|
728
|
+
var logger = log4javascript.getLogger('j1.finalizePage');
|
687
729
|
var user_state = j1.readCookie(cookie_names.user_session);
|
688
730
|
var cookie_consent = j1.readCookie(cookie_names.cookie_consent);
|
689
731
|
var settings = options;
|
690
732
|
var authClientEnabled = j1.authClientEnabled();
|
691
|
-
var flickerTimeout = {{
|
733
|
+
var flickerTimeout = {{template_config.flicker_timeout}};
|
692
734
|
var provider;
|
693
735
|
var previous_page;
|
694
736
|
var appDetected;
|
@@ -697,11 +739,11 @@ var j1 = (function () {
|
|
697
739
|
|
698
740
|
user_state.current_page = window.location.pathname;
|
699
741
|
|
700
|
-
logText = 'Finalize
|
742
|
+
logText = 'Finalize page';
|
701
743
|
logger.info(logText);
|
702
744
|
|
703
745
|
// -----------------------------------------------------------------------
|
704
|
-
//
|
746
|
+
// APP mode
|
705
747
|
// -----------------------------------------------------------------------
|
706
748
|
if (user_state.mode === 'app') {
|
707
749
|
var url = new parseURL(window.location.href)
|
@@ -712,7 +754,7 @@ var j1 = (function () {
|
|
712
754
|
$.when($.ajax(ep))
|
713
755
|
.then(function(data) {
|
714
756
|
// set logger for callback|anonymous
|
715
|
-
var logger = log4javascript.getLogger('j1.
|
757
|
+
var logger = log4javascript.getLogger('j1.finalizePage.deferred');
|
716
758
|
appDetected = true;
|
717
759
|
|
718
760
|
user_state = j1.mergeData(user_state, data);
|
@@ -744,86 +786,6 @@ var j1 = (function () {
|
|
744
786
|
}
|
745
787
|
} // END check protected pages
|
746
788
|
|
747
|
-
setTimeout( function() {
|
748
|
-
// display current page
|
749
|
-
$('#no_flicker').css('display', 'block');
|
750
|
-
|
751
|
-
// Because of async (HTML) data loads, Event Handlers are called late
|
752
|
-
j1.core.navigator.eventHandler();
|
753
|
-
j1.core.cookie_consent.eventHandler( cookie_consent );
|
754
|
-
|
755
|
-
user_state = j1.readCookie(cookie_names.user_session);
|
756
|
-
// previous_page = j1.getPrevPage();
|
757
|
-
|
758
|
-
// Update sidebar
|
759
|
-
logger.info('Update sidebar');
|
760
|
-
j1.core.navigator.updateSidebar();
|
761
|
-
|
762
|
-
if ( user_state.previous_page !== user_state.current_page ) {
|
763
|
-
logText = 'Page change detected';
|
764
|
-
logger.info(logText);
|
765
|
-
logText = 'Previous page: ' + user_state.previous_page;
|
766
|
-
logger.info(logText);
|
767
|
-
logText = 'Current page: ' + user_state.current_page;
|
768
|
-
logger.info(logText);
|
769
|
-
}
|
770
|
-
|
771
|
-
// Show ControlCenter Icon
|
772
|
-
$('#quickLinksControlCenterButton').css('display', 'block');
|
773
|
-
|
774
|
-
// Show or Hide cookie icon
|
775
|
-
if ( user_state.cookies_accepted === 'accepted' ) {
|
776
|
-
// Display cookie icon
|
777
|
-
$('#quickLinksCookieButton').css('display', 'block');
|
778
|
-
} else {
|
779
|
-
logText = 'Hide cookie icon';
|
780
|
-
logger.info(logText);
|
781
|
-
// Display cookie icon
|
782
|
-
$('#quickLinksCookieButton').css('display', 'none');
|
783
|
-
}
|
784
|
-
|
785
|
-
// Show or Hide SignInOut|ControlCenter Icons
|
786
|
-
if ( appDetected && authClientEnabled ) {
|
787
|
-
|
788
|
-
if ( user_state.authenticated === 'true' ) {
|
789
|
-
// Set SignOut
|
790
|
-
$('#navLinkSignInOut').attr("data-target","#modalOmniSignOut");
|
791
|
-
$('#iconSignInOut').removeClass( "mdi-login" ).addClass( "mdi-logout" );
|
792
|
-
} else {
|
793
|
-
// Set SignIn
|
794
|
-
$('#navLinkSignInOut').attr("data-target","#modalOmniSignIn");
|
795
|
-
$('#iconSignInOut').removeClass( "mdi-logout" ).addClass( "mdi-login" );
|
796
|
-
}
|
797
|
-
logger.info('Show SignInOut icon');
|
798
|
-
$('#quickLinksSignInOutButton').css('display', 'block');
|
799
|
-
} else {
|
800
|
-
logger.info('Show SignInOut icon');
|
801
|
-
$('#quickLinksSignInOutButton').css('display', 'block');
|
802
|
-
}
|
803
|
-
|
804
|
-
// If the page requested contains an anchor element,
|
805
|
-
// do a smooth scroll
|
806
|
-
j1.scrollTo();
|
807
|
-
|
808
|
-
// Set|Log status
|
809
|
-
state = 'finished';
|
810
|
-
logText = 'state: ' + state;
|
811
|
-
logger.info(logText);
|
812
|
-
logText = "J1 Template successfully initialized";
|
813
|
-
logger.info(logText);
|
814
|
-
|
815
|
-
}, flickerTimeout ); // END App mode
|
816
|
-
});
|
817
|
-
} else {
|
818
|
-
// ---------------------------------------------------------------------
|
819
|
-
// web mode
|
820
|
-
// ---------------------------------------------------------------------
|
821
|
-
|
822
|
-
// pause the display of current page for flicker timeout [ms]
|
823
|
-
setTimeout( function() {
|
824
|
-
// display current page
|
825
|
-
$('#no_flicker').css('display', 'block');
|
826
|
-
|
827
789
|
// Because of async (HTML) data loads, Event Handlers are called late
|
828
790
|
j1.core.navigator.eventHandler();
|
829
791
|
j1.core.cookie_consent.eventHandler( cookie_consent );
|
@@ -835,7 +797,6 @@ var j1 = (function () {
|
|
835
797
|
logger.info('Update sidebar');
|
836
798
|
j1.core.navigator.updateSidebar();
|
837
799
|
|
838
|
-
current_page = window.location.pathname;
|
839
800
|
if ( user_state.previous_page !== user_state.current_page ) {
|
840
801
|
logText = 'Page change detected';
|
841
802
|
logger.info(logText);
|
@@ -845,7 +806,10 @@ var j1 = (function () {
|
|
845
806
|
logger.info(logText);
|
846
807
|
}
|
847
808
|
|
848
|
-
//Show
|
809
|
+
// Show ControlCenter Icon
|
810
|
+
$('#quickLinksControlCenterButton').css('display', 'block');
|
811
|
+
|
812
|
+
// Show or Hide cookie icon
|
849
813
|
if ( user_state.cookies_accepted === 'accepted' ) {
|
850
814
|
// Display cookie icon
|
851
815
|
$('#quickLinksCookieButton').css('display', 'block');
|
@@ -856,21 +820,96 @@ var j1 = (function () {
|
|
856
820
|
$('#quickLinksCookieButton').css('display', 'none');
|
857
821
|
}
|
858
822
|
|
859
|
-
//
|
860
|
-
|
861
|
-
j1.scrollTo();
|
823
|
+
// Show or Hide SignInOut|ControlCenter Icons
|
824
|
+
if ( appDetected && authClientEnabled ) {
|
862
825
|
|
863
|
-
|
864
|
-
|
865
|
-
|
826
|
+
if ( user_state.authenticated === 'true' ) {
|
827
|
+
// Set SignOut
|
828
|
+
$('#navLinkSignInOut').attr("data-target","#modalOmniSignOut");
|
829
|
+
$('#iconSignInOut').removeClass( "mdi-login" ).addClass( "mdi-logout" );
|
830
|
+
} else {
|
831
|
+
// Set SignIn
|
832
|
+
$('#navLinkSignInOut').attr("data-target","#modalOmniSignIn");
|
833
|
+
$('#iconSignInOut').removeClass( "mdi-logout" ).addClass( "mdi-login" );
|
834
|
+
}
|
835
|
+
logger.info('Show SignInOut icon');
|
836
|
+
$('#quickLinksSignInOutButton').css('display', 'block');
|
837
|
+
} else {
|
838
|
+
logger.info('Show SignInOut icon');
|
839
|
+
$('#quickLinksSignInOutButton').css('display', 'block');
|
840
|
+
}
|
841
|
+
});
|
842
|
+
} else {
|
843
|
+
// ---------------------------------------------------------------------
|
844
|
+
// WEB mode
|
845
|
+
// ---------------------------------------------------------------------
|
846
|
+
|
847
|
+
// Because of async (HTML) data loads, Event Handlers are called late
|
848
|
+
j1.core.navigator.eventHandler();
|
849
|
+
j1.core.cookie_consent.eventHandler( cookie_consent );
|
850
|
+
|
851
|
+
user_state = j1.readCookie(cookie_names.user_session);
|
852
|
+
|
853
|
+
// Update sidebar
|
854
|
+
logger.info('Update sidebar');
|
855
|
+
j1.core.navigator.updateSidebar();
|
856
|
+
|
857
|
+
current_page = window.location.pathname;
|
858
|
+
if ( user_state.previous_page !== user_state.current_page ) {
|
859
|
+
logText = 'Page change detected';
|
860
|
+
logger.info(logText);
|
861
|
+
logText = 'Previous page: ' + user_state.previous_page;
|
866
862
|
logger.info(logText);
|
867
|
-
logText =
|
863
|
+
logText = 'Current page: ' + user_state.current_page;
|
868
864
|
logger.info(logText);
|
869
|
-
}
|
865
|
+
}
|
866
|
+
|
867
|
+
// Show or Hide cookie icon
|
868
|
+
if ( user_state.cookies_accepted === 'accepted' ) {
|
869
|
+
// Display cookie icon
|
870
|
+
$('#quickLinksCookieButton').css('display', 'block');
|
871
|
+
} else {
|
872
|
+
logText = 'Hide cookie icon';
|
873
|
+
logger.info(logText);
|
874
|
+
// Display cookie icon
|
875
|
+
$('#quickLinksCookieButton').css('display', 'none');
|
876
|
+
}
|
870
877
|
|
871
878
|
return true;
|
872
879
|
}
|
873
880
|
|
881
|
+
}, // END finalizePage
|
882
|
+
|
883
|
+
// -------------------------------------------------------------------------
|
884
|
+
// displayPage
|
885
|
+
// Show the page after timeout of {{hideOnReload}} ms
|
886
|
+
// -------------------------------------------------------------------------
|
887
|
+
// NOTE:
|
888
|
+
// jadams, 2019-08-06: flickerTimeout not used since new strategy
|
889
|
+
// (Promises|jQuery thenables) are used for initialization.
|
890
|
+
// Currently, the timeout cause loading the image header to
|
891
|
+
// fail. Backstretch API doesn't calculate image sizes correctly
|
892
|
+
// because (most probably) the page is 'visible' too late.
|
893
|
+
// -------------------------------------------------------------------------
|
894
|
+
displayPage: function ( options ) {
|
895
|
+
var logger = log4javascript.getLogger('j1.displayPage');
|
896
|
+
var flickerTimeout = {{template_config.flicker_timeout}};
|
897
|
+
|
898
|
+
setTimeout( function() {
|
899
|
+
// Display page
|
900
|
+
$('#no_flicker').css('display', 'block');
|
901
|
+
// If the page requested contains an anchor element,
|
902
|
+
// do a smooth scroll to
|
903
|
+
j1.scrollTo();
|
904
|
+
|
905
|
+
// Set|Log status
|
906
|
+
state = 'finished';
|
907
|
+
logText = 'state: ' + state;
|
908
|
+
logger.info(logText);
|
909
|
+
logText = "J1 Template successfully initialized";
|
910
|
+
logger.info(logText);
|
911
|
+
}, flickerTimeout);
|
912
|
+
|
874
913
|
}, // END displayPage
|
875
914
|
|
876
915
|
// -------------------------------------------------------------------------
|
@@ -945,8 +984,8 @@ var j1 = (function () {
|
|
945
984
|
// -------------------------------------------------------------------------
|
946
985
|
scrollTo: function () {
|
947
986
|
// Unclear why a offset correction is needed (sometimes ???)
|
948
|
-
var offset_correction = {{
|
949
|
-
var offset = {{
|
987
|
+
var offset_correction = {{toccer_options.headingsOffset}};
|
988
|
+
var offset = {{toccer_options.smoothScrollOffset}};
|
950
989
|
var anchor_id = window.location.href.split("#")[1];
|
951
990
|
var selector;
|
952
991
|
var heading;
|
@@ -959,7 +998,7 @@ var j1 = (function () {
|
|
959
998
|
|
960
999
|
// scroll only, if an anchor is given with URL
|
961
1000
|
if (selector.length) {
|
962
|
-
var delay = {{
|
1001
|
+
var delay = {{toccer_options.smoothScrollDuration}};
|
963
1002
|
var scroll_to = parseInt( selector.offset().top - offset - offset_correction );
|
964
1003
|
//var scroll_to = selector.offset().top;
|
965
1004
|
$('html,body').animate({scrollTop: scroll_to}, delay,
|
@@ -1137,7 +1176,8 @@ var j1 = (function () {
|
|
1137
1176
|
// Load color definitions from colors_data_path
|
1138
1177
|
// -------------------------------------------------------------------------
|
1139
1178
|
getColorData: function (data_path) {
|
1140
|
-
var logger
|
1179
|
+
var logger = log4javascript.getLogger('j1.getColorData');
|
1180
|
+
var j1_colors = {};
|
1141
1181
|
|
1142
1182
|
return $.ajax({
|
1143
1183
|
url: data_path,
|
@@ -1199,7 +1239,8 @@ var j1 = (function () {
|
|
1199
1239
|
// Load loadFontSize definitions from font_size_data_path
|
1200
1240
|
// -------------------------------------------------------------------------
|
1201
1241
|
getFontSizeData: function (data_path) {
|
1202
|
-
var logger
|
1242
|
+
var logger = log4javascript.getLogger('j1.getFontSizeData');
|
1243
|
+
var j1_font_sizes = {};
|
1203
1244
|
|
1204
1245
|
return $.ajax({
|
1205
1246
|
url: data_path,
|
@@ -1239,7 +1280,8 @@ var j1 = (function () {
|
|
1239
1280
|
var reCSS = /\bpx\b|\brem\b|\bem\b|\%|\binherit\b|\binitial\b|\bunset\b/;
|
1240
1281
|
var isCSS = size.match(reCSS);
|
1241
1282
|
|
1242
|
-
|
1283
|
+
// if ( typeof j1_font_sizes[size] != "undefined" ) {
|
1284
|
+
if ( typeof j1.fonts[size] != "undefined" ) {
|
1243
1285
|
return j1.fonts[size];
|
1244
1286
|
} else if (isCSS) {
|
1245
1287
|
return size;
|
@@ -1257,9 +1299,10 @@ var j1 = (function () {
|
|
1257
1299
|
// Loads the message catalog object
|
1258
1300
|
// -------------------------------------------------------------------------
|
1259
1301
|
getMessageCatalog: function (data_path /*, request_type, data_type*/) {
|
1260
|
-
var logger
|
1261
|
-
var
|
1262
|
-
var
|
1302
|
+
var logger = log4javascript.getLogger('j1.loadMessageCatalog');
|
1303
|
+
var message_catalog = {};
|
1304
|
+
var type = typeof request_type == 'undefined' || request_type == '' ? 'GET' : request_type;
|
1305
|
+
var data_type = typeof data_type == 'undefined' || data_type == '' ? 'text' : data_type;
|
1263
1306
|
var messageData;
|
1264
1307
|
var logBase;
|
1265
1308
|
var logText;
|
@@ -1568,7 +1611,7 @@ var j1 = (function () {
|
|
1568
1611
|
// Get a log message from the log message catalog object
|
1569
1612
|
// -------------------------------------------------------------------------
|
1570
1613
|
getMessage: function (level, message, property) {
|
1571
|
-
var message =
|
1614
|
+
var message = j1.messages[level][message]["message"][property];
|
1572
1615
|
|
1573
1616
|
return message;
|
1574
1617
|
}, // END getMessage
|