File manager - Edit - /home/autoph/public_html/ahglegal/ajs/vendors/bootstrap-growl/bootstrap-growl.js
Back
/* * Project: Bootstrap Growl - v2.0.1 * Description: Turns standard Bootstrap alerts into "Growl-like" notifications. * Author: Mouse0270 aka Robert McIntosh * License: MIT License * Website: https://github.com/mouse0270/bootstrap-growl */ ;(function ( $, window, document, undefined ) { // Create the defaults once var pluginName = "growl", dataKey = "plugin_" + pluginName, defaults = { element: 'body', type: "info", allow_dismiss: true, placement: { from: "top", align: "right" }, offset: 20, spacing: 10, z_index: 1031, delay: 5000, timer: 1000, url_target: '_blank', mouse_over: false, animate: { enter: 'animated fadeInDown', exit: 'animated fadeOutUp' }, onShow: null, onShown: null, onHide: null, onHidden: null, icon_type: 'class', template: '<div data-growl="container" class="alert" role="alert"><button type="button" aria-hidden="true" class="close" data-growl="dismiss">×</button><span data-growl="icon"></span><span data-growl="title"></span><span data-growl="message"></span><a href="#" data-growl="url"></a></div>' }; // The actual plugin constructor var setDefaults = function(element, options) { defaults = $.extend(true, {}, defaults, options); }, closeAll = function(options) { if (!options) { $('[data-growl="container"]').find('[data-growl="dismiss"]').trigger('click'); }else{ $('[data-growl="container"][data-growl-position="'+options+'"]').find('[data-growl="dismiss"]').trigger('click'); } }, Plugin = function (element, content, options) { var content = { content: { message: typeof content == 'object' ? content.message : content, title: content.title ? content.title : null, icon: content.icon ? content.icon : null, url: content.url ? content.url : null } }; options = $.extend(true, {}, content, options); this.settings = $.extend(true, {}, defaults, options); plugin = this; init(options, this.settings, plugin); this.$template = $template; }, init = function (options, settings, plugin) { var base = { settings: settings, element: settings.element, template: settings.template }; if (typeof settings.offset == 'number') { settings.offset = { x: settings.offset, y: settings.offset }; } $template = buildGrowl(base); addContent($template, base.settings); placement($template, base.settings); bindControls($template, base.settings,plugin); }, buildGrowl = function(base) { var $template = $(base.settings.template); $template.addClass('alert-' + base.settings.type); $template.attr('data-growl-position', base.settings.placement.from + '-' + base.settings.placement.align); $template.find('[data-growl="dismiss"]').css('display', 'none'); $template.removeClass('alert-dismissable'); if (base.settings.allow_dismiss) { $template.addClass('alert-dismissable'); $template.find('[data-growl="dismiss"]').css('display', 'block'); } return $template; }, addContent = function($template, settings) { $template.find('[data-growl="dismiss"]').css({ 'z-index': ((settings.z_index-1) >= 1 ? (settings.z_index-1) : 1) }); if (settings.content.icon) { if (settings.icon_type.toLowerCase() == 'class') { $template.find('[data-growl="icon"]').addClass(settings.content.icon); }else{ if ($template.find('[data-growl="icon"]').is('img')) { $template.find('[data-growl="icon"]').attr('src', settings.content.icon); }else{ $template.find('[data-growl="icon"]').append('<img src="'+settings.content.icon+'" />'); } } } if (settings.content.title) { $template.find('[data-growl="title"]').html(settings.content.title); } if (settings.content.message) { $template.find('[data-growl="message"]').html(settings.content.message); } if (settings.content.url) { $template.find('[data-growl="url"]').attr('href', settings.content.url).attr('target', settings.url_target); $template.find('[data-growl="url"]').css({ 'position': 'absolute', 'top': 0, 'left': 0, 'width': '100%', 'height': '100%', 'z-index': ((settings.z_index-2) >= 1 ? (settings.z_index-2) : 1) }); } }, placement = function($template, settings) { var offsetAmt = settings.offset.y, gCSS = { 'position': (settings.element === 'body' ? 'fixed' : 'absolute'), 'margin': 0, 'z-index': settings.z_index, 'display': 'inline-block' }, hasAnimation = false; $('[data-growl-position="' + settings.placement.from + '-' + settings.placement.align + '"]').each(function() { return offsetAmt = Math.max(offsetAmt, parseInt($(this).css(settings.placement.from)) + $(this).outerHeight() + settings.spacing); }); gCSS[settings.placement.from] = offsetAmt + "px"; $template.css(gCSS); if (settings.onShow) { settings.onShow(event); } $(settings.element).append($template); switch (settings.placement.align) { case 'center': $template.css({ 'left': '50%', 'marginLeft': -($template.outerWidth() / 2) + 'px' }); break; case 'left': $template.css('left', settings.offset.x + 'px'); break; case 'right': $template.css('right', settings.offset.x + 'px'); break; } $template.addClass('growl-animated'); $template.one('webkitAnimationStart oanimationstart MSAnimationStart animationstart', function(event) { hasAnimation = true; }); $template.one('webkitAnimationEnd oanimationend MSAnimationEnd animationend', function(event) { if (settings.onShown) { settings.onShown(event); } }); setTimeout(function() { if (!hasAnimation) { if (settings.onShown) { settings.onShown(event); } } }, 600); }, bindControls = function($template, settings, plugin) { $template.addClass(settings.animate.enter); $template.find('[data-growl="dismiss"]').on('click', function() { plugin.close(); }); $template.on('mouseover', function(e) { $template.addClass('hovering'); }).on('mouseout', function() { $template.removeClass('hovering'); }); if (settings.delay >= 1) { $template.data('growl-delay', settings.delay); var timer = setInterval(function() { var delay = parseInt($template.data('growl-delay')) - settings.timer; if ((!$template.hasClass('hovering') && settings.mouse_over == 'pause') || settings.mouse_over != 'pause') { $template.data('growl-delay', delay); } if (delay <= 0) { clearInterval(timer); plugin.close(); } }, settings.timer); } }; // Avoid Plugin.prototype conflicts Plugin.prototype = { update: function(command, update) { switch (command) { case 'icon': if (this.settings.icon_type.toLowerCase() == 'class') { this.$template.find('[data-growl="icon"]').removeClass(this.settings.content.icon); this.$template.find('[data-growl="icon"]').addClass(update); }else{ if (this.$template.find('[data-growl="icon"]').is('img')) { this.$template.find('[data-growl="icon"]') }else{ this.$template.find('[data-growl="icon"]').find('img').attr().attr('src', update); } } break; case 'url': this.$template.find('[data-growl="url"]').attr('href', update); break; case 'type': this.$template.removeClass(function (index, css) { return (css.match (/(^|\s)alert-\S+/g) || []).join(' '); }); this.$template.addClass('alert-' + update); break; default: this.$template.find('[data-growl="' + command +'"]').html(update); } return this; }, close: function() { var base = this.$template, settings = this.settings, posX = base.css(settings.placement.from), hasAnimation = false; if (settings.onHide) { settings.onHide(event); } base.addClass(this.settings.animate.exit); base.nextAll('[data-growl-position="' + this.settings.placement.from + '-' + this.settings.placement.align + '"]').each(function() { $(this).css(settings.placement.from, posX); posX = (parseInt(posX)+(settings.spacing)) + $(this).outerHeight(); }); base.one('webkitAnimationStart oanimationstart MSAnimationStart animationstart', function(event) { hasAnimation = true; }); base.one('webkitAnimationEnd oanimationend MSAnimationEnd animationend', function(event) { $(this).remove(); if (settings.onHidden) { settings.onHidden(event); } }); setTimeout(function() { if (!hasAnimation) { base.remove(); if (settings.onHidden) { settings.onHidden(event); } } }, 100); return this; } }; // A really lightweight plugin wrapper around the constructor, // preventing against multiple instantiations $.growl = function ( content, options ) { if (content == false && options.command == "closeAll") { closeAll(options.position); return false; }else if (content == false) { setDefaults(this, options); return false; } var plugin = new Plugin( this, content, options ); return plugin; }; })( jQuery, window, document );
| ver. 1.4 |
.
| PHP 7.3.33 | Generation time: 0.09 |
proxy
|
phpinfo
|
Settings