From: Jan Schneider Date: Fri, 12 Feb 2010 15:39:18 +0000 (+0100) Subject: Add close button to growler logs too. X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=d8c572aa164cfdb180497a88b9e180407011ed23;p=horde.git Add close button to growler logs too. --- diff --git a/horde/js/Growler.js b/horde/js/Growler.js index 33798cddc..9e85e056d 100644 --- a/horde/js/Growler.js +++ b/horde/js/Growler.js @@ -96,6 +96,19 @@ }); } + function removeLog(l) + { + try { + var le = l.down('DIV.GrowlerNoticeExit'); + if (!Object.isUndefined(le)) { + le.stopObserving('click', removeLog); + } + } catch (e) {} + try { + l.remove(); + } catch (e) {} + } + window.Growler = Class.create({ initialize: function(opts) @@ -172,7 +185,7 @@ growl: function(msg, options) { options = options || {}; - var notice, noticeExit, tmp, + var notice, noticeExit, log, logExit, tmp, opts = Object.clone(noticeOptions); Object.extend(opts, options); @@ -181,7 +194,11 @@ if (tmp.down().hasClassName('NoAlerts')) { tmp.down().remove(); } - tmp.insert(new Element('LI', { className: opts.className.empty() ? null : opts.className }).insert(msg).insert(new Element('SPAN', { className: 'alertdate'} ).insert('[' + (new Date).toLocaleString() + ']'))); + log = new Element('LI', { className: opts.className.empty() ? null : opts.className }).insert(msg).insert(new Element('SPAN', { className: 'alertdate'} ).insert('[' + (new Date).toLocaleString() + ']')); + logExit = new Element('DIV', { className: 'GrowlerNoticeExit' }).update("×"); + logExit.observe('click', removeLog.curry(log)); + log.insert(logExit); + tmp.insert(log); } notice = new Element('DIV', { className: 'GrowlerNotice' }).setStyle({ display: 'block', opacity: 0 }); diff --git a/horde/themes/screen.css b/horde/themes/screen.css index a56780d4a..77b967a11 100644 --- a/horde/themes/screen.css +++ b/horde/themes/screen.css @@ -961,14 +961,6 @@ table.calendarPopup { #Growler div.GrowlerNoticeHead { font-weight: bold; } -#Growler div.GrowlerNoticeExit { - float: right; - font-weight: bold; - cursor: pointer; -} -#Growler div.GrowlerNoticeExit:hover { - color: #444; -} #Growler div.horde-error, #GrowlerLog li.horde-error { background-image: url("graphics/alerts/error.png"); } @@ -1024,6 +1016,14 @@ table.calendarPopup { font-style: italic; padding-left: 10px; } +div.GrowlerNoticeExit { + float: right; + font-weight: bold; + cursor: pointer; +} +div.GrowlerNoticeExit:hover { + color: #444; +} .horde-message, .horde-success, .horde-warning, .horde-error { border-color: #316600; background-color: #5db110;