App-Netdisco

 view release on metacpan or  search on metacpan

share/public/javascripts/toastr.js  view on Meta::CPAN

                    return notify({
                        iconClass: getOptions().iconClasses.info,
                        message: message,
                        optionsOverride: optionsOverride,
                        title: title
                    });
                },

                notify = function (map) {
                    var 
                        options = getOptions(),
                        iconClass = map.iconClass || options.iconClass;

                    if (typeof (map.optionsOverride) !== 'undefined') {
                        options = $.extend(options, map.optionsOverride);
                        iconClass = map.optionsOverride.iconClass || iconClass;
                    }

                    var 
                        intervalId = null,
                        $container = getContainer(options),
                        $toastElement = $('<div/>'),
                        $titleElement = $('<div/>'),
                        $messageElement = $('<div/>'),
                        response = { options: options, map: map };

                    if (map.iconClass) {
                        $toastElement.addClass(options.toastClass).addClass(iconClass);
                    }

                    if (map.title) {
                        $titleElement.append(map.title).addClass(options.titleClass);
                        $toastElement.append($titleElement);
                    }

                    if (map.message) {
                        $messageElement.append(map.message).addClass(options.messageClass);
                        $toastElement.append($messageElement);
                    }

                    var fadeAway = function () {
                        if ($(':focus', $toastElement).length > 0) {
                            return;
                        }
                        var fade = function (callback) {
                            return $toastElement.fadeOut(options.fadeOut, callback);
                        };
                        var removeToast = function () {
                            if ($toastElement.is(':visible')) {
                                return;
                            }
                            $toastElement.remove();
                            if ($container.children().length === 0) {
                                $container.remove();
                            }
                        };
                        fade(removeToast);
                    };
                    var delayedFadeAway = function () {
                        if (options.timeOut > 0 || options.extendedTimeOut > 0) {
                            intervalId = setTimeout(fadeAway, options.extendedTimeOut);
                        }
                    };
                    var stickAround = function () {
                        clearTimeout(intervalId);
                        $toastElement.stop(true, true).fadeIn(options.fadeIn);
                    };
                    $toastElement.hide();
                    $container.prepend($toastElement);
                    $toastElement.fadeIn(options.fadeIn);
                    if (options.timeOut > 0) {
                        intervalId = setTimeout(fadeAway, options.timeOut);
                    }

                    $toastElement.hover(stickAround, delayedFadeAway);
                    if (!options.onclick && options.tapToDismiss) {
                        $toastElement.click(fadeAway);
                    }

                    if (options.onclick) {
                        $toastElement.click(function () {
                            options.onclick() && fadeAway();
                        });
                    }

                    if (options.debug && console) {
                        console.log(response);
                    }
                    return $toastElement;
                },

                success = function (message, title, optionsOverride) {
                    return notify({
                        iconClass: getOptions().iconClasses.success,
                        message: message,
                        optionsOverride: optionsOverride,
                        title: title
                    });
                },

                warning = function (message, title, optionsOverride) {
                    return notify({
                        iconClass: getOptions().iconClasses.warning,
                        message: message,
                        optionsOverride: optionsOverride,
                        title: title
                    });
                },


            clear = function () {
                var options = getOptions();
                var $container = $('#' + options.containerId);
                if ($container.length) {
                    $container.fadeOut(options.fadeOut, function () {
                        $container.remove();
                    });
                }
            };
            return {
                clear: clear,
                error: error,
                info: info,
                options: {},
                success: success,
                version: '1.1.1',
                warning: warning
            };
        })();
        return toastr;
    });
}(typeof define === 'function' && define.amd ? define : function (deps, factory) {



( run in 0.877 second using v1.01-cache-2.11-cpan-39bf76dae61 )