/*! @package noty - jQuery Notification Plugin @version version: 2.4.1 @contributors https://github.com/needim/noty/graphs/contributors @documentation Examples and Documentation - http://needim.github.com/noty/ @license Licensed under the MIT licenses: http://www.opensource.org/licenses/mit-license.php */ if (typeof Object.create !== 'function') { Object.create = function (o) { function F() { } F.prototype = o; return new F(); }; } var NotyObject = { init: function (options) { // Mix in the passed in options with the default options this.options = $.extend({}, $.noty.defaults, options); this.options.layout = (this.options.custom) ? $.noty.layouts['inline'] : $.noty.layouts[this.options.layout]; if ($.noty.themes[this.options.theme]) { this.options.theme = $.noty.themes[this.options.theme]; if (this.options.theme.template) this.options.template = this.options.theme.template; if (this.options.theme.animation) this.options.animation = this.options.theme.animation; } else { this.options.themeClassName = this.options.theme; } this.options = $.extend({}, this.options, this.options.layout.options); if (this.options.id) { if ($.noty.store[this.options.id]) { return $.noty.store[this.options.id]; } } else { this.options.id = 'noty_' + (new Date().getTime() * Math.floor(Math.random() * 1000000)); } // Build the noty dom initial structure this._build(); // return this so we can chain/use the bridge with less code. return this; }, // end init _build: function () { // Generating noty bar var $bar = $('
').attr('id', this.options.id); $bar.append(this.options.template).find('.noty_text').html(this.options.text); this.$bar = (this.options.layout.parent.object !== null) ? $(this.options.layout.parent.object).css(this.options.layout.parent.css).append($bar) : $bar; if (this.options.themeClassName) this.$bar.addClass(this.options.themeClassName).addClass('noty_container_type_' + this.options.type); // Set buttons if available if (this.options.buttons) { var $buttons; // Try find container for buttons in presented template, and create it if not found if (this.$bar.find('.noty_buttons').length > 0) { $buttons = this.$bar.find('.noty_buttons'); } else { $buttons = $('
').addClass('noty_buttons'); (this.options.layout.parent.object !== null) ? this.$bar.find('.noty_bar').append($buttons) : this.$bar.append($buttons); } var self = this; $.each(this.options.buttons, function (i, button) { var $button = $('