silverstripe-webpack/app/client/src/js/_layout.js

75 lines
1.6 KiB
JavaScript
Raw Normal View History

2020-02-07 20:51:42 +01:00
'use strict';
2018-09-15 00:55:42 +02:00
import $ from 'jquery';
2019-11-25 08:00:33 +01:00
import Events from '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_events';
2018-09-15 00:55:42 +02:00
2020-08-14 00:36:26 +02:00
// AOS
import 'aos/dist/aos.css';
import AOS from 'aos/dist/aos.js';
const LayoutUI = (($) => {
2019-06-08 17:54:43 +02:00
// Constants
const W = window;
2020-09-09 18:45:03 +02:00
const $W = $(W);
2019-06-08 17:54:43 +02:00
const D = document;
const $Body = $('body');
const NAME = 'LayoutUI';
class LayoutUI {
static init() {
const ui = this;
ui.dispose();
2020-09-09 18:45:03 +02:00
console.log(`${NAME}: init`);
2019-06-08 17:54:43 +02:00
// your custom UI
2020-08-14 00:36:26 +02:00
AOS.init();
2019-06-08 17:54:43 +02:00
2020-02-12 21:31:59 +01:00
// Fire further js when layout is ready
2020-09-09 18:45:03 +02:00
$W.trigger(Events.LODEDANDREADY);
2020-02-12 21:31:59 +01:00
2020-02-07 20:51:42 +01:00
// Custom fonts
$Body.append(
2020-02-12 21:31:59 +01:00
'<link href="https://fonts.googleapis.com/css?family=Open+Sans:300,400,400i,700,700i&display=swap" rel="stylesheet" />',
2020-02-07 20:51:42 +01:00
);
/*google analytics */
/*(function(i, s, o, g, r, a, m) {
i['GoogleAnalyticsObject'] = r;
(i[r] =
i[r] ||
function() {
(i[r].q = i[r].q || []).push(arguments);
}),
(i[r].l = 1 * new Date());
(a = s.createElement(o)), (m = s.getElementsByTagName(o)[0]);
a.async = 1;
a.src = g;
m.parentNode.insertBefore(a, m);
})(
window,
document,
'script',
'//www.google-analytics.com/analytics.js',
'ga',
);
ga('create', 'UA-********-*', 'auto');
ga('send', 'pageview');*/
2019-06-08 17:54:43 +02:00
}
static dispose() {
2020-09-09 18:45:03 +02:00
console.log(`${NAME}: dispose`);
2018-09-15 00:55:42 +02:00
}
2019-06-08 17:54:43 +02:00
}
2018-09-15 00:55:42 +02:00
2020-09-09 18:45:03 +02:00
$W.on(`${NAME}.init ${Events.AJAX} ${Events.LOADED}`, () => {
2019-06-08 17:54:43 +02:00
LayoutUI.init();
});
2018-09-15 00:55:42 +02:00
2019-06-08 17:54:43 +02:00
W.LayoutUI = LayoutUI;
2018-09-15 00:55:42 +02:00
2019-06-08 17:54:43 +02:00
return LayoutUI;
2018-09-15 00:55:42 +02:00
})($);
export default LayoutUI;