summaryrefslogtreecommitdiffstats
path: root/reporting/3rd_party/js/main.js
diff options
context:
space:
mode:
Diffstat (limited to 'reporting/3rd_party/js/main.js')
-rw-r--r--reporting/3rd_party/js/main.js200
1 files changed, 200 insertions, 0 deletions
diff --git a/reporting/3rd_party/js/main.js b/reporting/3rd_party/js/main.js
new file mode 100644
index 0000000..7ae5408
--- /dev/null
+++ b/reporting/3rd_party/js/main.js
@@ -0,0 +1,200 @@
+/*
+ Phantom by HTML5 UP
+ html5up.net | @ajlkn
+ Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
+*/
+
+(function($) {
+
+ skel.breakpoints({
+ xlarge: '(max-width: 1680px)',
+ large: '(max-width: 1280px)',
+ medium: '(max-width: 980px)',
+ small: '(max-width: 736px)',
+ xsmall: '(max-width: 480px)'
+ });
+
+ $(function() {
+
+ var $window = $(window),
+ $body = $('body');
+
+ // Disable animations/transitions until the page has loaded.
+ $body.addClass('is-loading');
+
+ $window.on('load', function() {
+ window.setTimeout(function() {
+ $body.removeClass('is-loading');
+ }, 100);
+ });
+
+ // Touch?
+ if (skel.vars.touch)
+ $body.addClass('is-touch');
+
+ // Forms.
+ var $form = $('form');
+
+ // Auto-resizing textareas.
+ $form.find('textarea').each(function() {
+
+ var $this = $(this),
+ $wrapper = $('<div class="textarea-wrapper"></div>'),
+ $submits = $this.find('input[type="submit"]');
+
+ $this
+ .wrap($wrapper)
+ .attr('rows', 1)
+ .css('overflow', 'hidden')
+ .css('resize', 'none')
+ .on('keydown', function(event) {
+
+ if (event.keyCode == 13
+ && event.ctrlKey) {
+
+ event.preventDefault();
+ event.stopPropagation();
+
+ $(this).blur();
+
+ }
+
+ })
+ .on('blur focus', function() {
+ $this.val($.trim($this.val()));
+ })
+ .on('input blur focus --init', function() {
+
+ $wrapper
+ .css('height', $this.height());
+
+ $this
+ .css('height', 'auto')
+ .css('height', $this.prop('scrollHeight') + 'px');
+
+ })
+ .on('keyup', function(event) {
+
+ if (event.keyCode == 9)
+ $this
+ .select();
+
+ })
+ .triggerHandler('--init');
+
+ // Fix.
+ if (skel.vars.browser == 'ie'
+ || skel.vars.mobile)
+ $this
+ .css('max-height', '10em')
+ .css('overflow-y', 'auto');
+
+ });
+
+ // Fix: Placeholder polyfill.
+ $form.placeholder();
+
+ // Prioritize "important" elements on medium.
+ skel.on('+medium -medium', function() {
+ $.prioritize(
+ '.important\\28 medium\\29',
+ skel.breakpoint('medium').active
+ );
+ });
+
+ // Menu.
+ var $menu = $('#menu');
+
+ $menu.wrapInner('<div class="inner"></div>');
+
+ $menu._locked = false;
+
+ $menu._lock = function() {
+
+ if ($menu._locked)
+ return false;
+
+ $menu._locked = true;
+
+ window.setTimeout(function() {
+ $menu._locked = false;
+ }, 350);
+
+ return true;
+
+ };
+
+ $menu._show = function() {
+
+ if ($menu._lock())
+ $body.addClass('is-menu-visible');
+
+ };
+
+ $menu._hide = function() {
+
+ if ($menu._lock())
+ $body.removeClass('is-menu-visible');
+
+ };
+
+ $menu._toggle = function() {
+
+ if ($menu._lock())
+ $body.toggleClass('is-menu-visible');
+
+ };
+
+ $menu
+ .appendTo($body)
+ .on('click', function(event) {
+ event.stopPropagation();
+ })
+ .on('click', 'a', function(event) {
+
+ var href = $(this).attr('href');
+
+ event.preventDefault();
+ event.stopPropagation();
+
+ // Hide.
+ $menu._hide();
+
+ // Redirect.
+ if (href == '#menu')
+ return;
+
+ window.setTimeout(function() {
+ window.location.href = href;
+ }, 350);
+
+ })
+ .append('<a class="close" href="#menu">Close</a>');
+
+ $body
+ .on('click', 'a[href="#menu"]', function(event) {
+
+ event.stopPropagation();
+ event.preventDefault();
+
+ // Toggle.
+ $menu._toggle();
+
+ })
+ .on('click', function(event) {
+
+ // Hide.
+ $menu._hide();
+
+ })
+ .on('keydown', function(event) {
+
+ // Hide on escape.
+ if (event.keyCode == 27)
+ $menu._hide();
+
+ });
+
+ });
+
+})(jQuery); \ No newline at end of file