From 93ff8a3969c7111ecb0eeb1831b4da77fbb75483 Mon Sep 17 00:00:00 2001 From: Florian Mounier Date: Wed, 7 Oct 2015 16:38:24 +0200 Subject: [PATCH] Add an exit confirm dialog --- butterfly/sass/_layout.sass | 2 +- butterfly/static/ext.js | 8 +++++++- butterfly/static/ext.min.js | 2 +- butterfly/static/main.css | 2 +- coffees/ext/close_confirm.coffee | 5 +++++ coffees/ext/theme.coffee | 2 +- 6 files changed, 16 insertions(+), 5 deletions(-) create mode 100644 coffees/ext/close_confirm.coffee diff --git a/butterfly/sass/_layout.sass b/butterfly/sass/_layout.sass index a63590c..51df8a9 100644 --- a/butterfly/sass/_layout.sass +++ b/butterfly/sass/_layout.sass @@ -40,7 +40,7 @@ body /* Pop ups */ .hidden - display: none + display: none !important #popup position: fixed diff --git a/butterfly/static/ext.js b/butterfly/static/ext.js index 0383392..c177e88 100644 --- a/butterfly/static/ext.js +++ b/butterfly/static/ext.js @@ -77,6 +77,12 @@ return e.preventDefault(); }); + addEventListener('beforeunload', function(e) { + if (!(butterfly.body.classList.contains('dead') || location.href.indexOf('session') > -1)) { + return e.returnValue = 'This terminal is active and not in session. Are you sure you want to kill it?'; + } + }); + Popup = (function() { function Popup() { this.el = document.getElementById('popup'); @@ -506,7 +512,7 @@ if (theme === 'default') { url = "/static/main.css"; } else { - url = "theme/" + theme + "/style.css"; + url = "/theme/" + theme + "/style.css"; } inner += '