lib/public/javascripts/angular/services/notification.js
window.notification = function(message, type) {
var color;
// type of notification to color mapping
switch(type) {
case 'success':
color = 'green';
break;
case 'error':
color = 'red';
break;
case 'fatal':
color = 'red-fatal';
break;
case 'info':
color = 'blue';
break;
}
// if past notification isn't the same as the currrent one
if ($('.notification-red-fatal').text() != message) {
// remove current notification div
if ($('#notification').length) { $('#notification').remove(); }
// add a new notification with of the desired type and message
$('.container').prepend('<div id="notification" class="notification-'+ color +'">'+ message +'</div>');
}
if (type != 'fatal'){
setTimeout(function(){
$('#notification').animate({height: 'toggle', easing: 'swing'}, 1000);
}, 1000);
}
}
services.factory('Notification', function() {
return {
error: function(message) {
window.notification(message, 'error');
},
fatal: function(message) {
window.notification(message, 'fatal');
},
info: function(message) {
window.notification(message, 'info');
},
success: function(message) {
window.notification(message, 'success');
}
};
});