165 lines
5.4 KiB
JavaScript
Vendored
165 lines
5.4 KiB
JavaScript
Vendored
"use strict";
|
|
|
|
// Class definition
|
|
var KTToastrDemo = function() {
|
|
|
|
// Private functions
|
|
|
|
// basic demo
|
|
var demo = function() {
|
|
var i = -1;
|
|
var toastCount = 0;
|
|
var $toastlast;
|
|
|
|
var getMessage = function () {
|
|
var msgs = [
|
|
'New order has been placed!',
|
|
'Are you the six fingered man?',
|
|
'Inconceivable!',
|
|
'I do not think that means what you think it means.',
|
|
'Have fun storming the castle!'
|
|
];
|
|
i++;
|
|
if (i === msgs.length) {
|
|
i = 0;
|
|
}
|
|
|
|
return msgs[i];
|
|
};
|
|
|
|
var getMessageWithClearButton = function (msg) {
|
|
msg = msg ? msg : 'Clear itself?';
|
|
msg += '<br /><br /><button type="button" class="btn btn-outline-light btn-sm--air--wide clear">Yes</button>';
|
|
return msg;
|
|
};
|
|
|
|
$('#showtoast').click(function () {
|
|
var shortCutFunction = $("#toastTypeGroup input:radio:checked").val();
|
|
var msg = $('#message').val();
|
|
var title = $('#title').val() || '';
|
|
var $showDuration = $('#showDuration');
|
|
var $hideDuration = $('#hideDuration');
|
|
var $timeOut = $('#timeOut');
|
|
var $extendedTimeOut = $('#extendedTimeOut');
|
|
var $showEasing = $('#showEasing');
|
|
var $hideEasing = $('#hideEasing');
|
|
var $showMethod = $('#showMethod');
|
|
var $hideMethod = $('#hideMethod');
|
|
var toastIndex = toastCount++;
|
|
var addClear = $('#addClear').prop('checked');
|
|
|
|
toastr.options = {
|
|
closeButton: $('#closeButton').prop('checked'),
|
|
debug: $('#debugInfo').prop('checked'),
|
|
newestOnTop: $('#newestOnTop').prop('checked'),
|
|
progressBar: $('#progressBar').prop('checked'),
|
|
positionClass: $('#positionGroup input:radio:checked').val() || 'toast-top-right',
|
|
preventDuplicates: $('#preventDuplicates').prop('checked'),
|
|
onclick: null
|
|
};
|
|
|
|
if ($('#addBehaviorOnToastClick').prop('checked')) {
|
|
toastr.options.onclick = function () {
|
|
alert('You can perform some custom action after a toast goes away');
|
|
};
|
|
}
|
|
|
|
if ($showDuration.val().length) {
|
|
toastr.options.showDuration = $showDuration.val();
|
|
}
|
|
|
|
if ($hideDuration.val().length) {
|
|
toastr.options.hideDuration = $hideDuration.val();
|
|
}
|
|
|
|
if ($timeOut.val().length) {
|
|
toastr.options.timeOut = addClear ? 0 : $timeOut.val();
|
|
}
|
|
|
|
if ($extendedTimeOut.val().length) {
|
|
toastr.options.extendedTimeOut = addClear ? 0 : $extendedTimeOut.val();
|
|
}
|
|
|
|
if ($showEasing.val().length) {
|
|
toastr.options.showEasing = $showEasing.val();
|
|
}
|
|
|
|
if ($hideEasing.val().length) {
|
|
toastr.options.hideEasing = $hideEasing.val();
|
|
}
|
|
|
|
if ($showMethod.val().length) {
|
|
toastr.options.showMethod = $showMethod.val();
|
|
}
|
|
|
|
if ($hideMethod.val().length) {
|
|
toastr.options.hideMethod = $hideMethod.val();
|
|
}
|
|
|
|
if (addClear) {
|
|
msg = getMessageWithClearButton(msg);
|
|
toastr.options.tapToDismiss = false;
|
|
}
|
|
if (!msg) {
|
|
msg = getMessage();
|
|
}
|
|
|
|
$('#toastrOptions').text(
|
|
'toastr.options = '
|
|
+ JSON.stringify(toastr.options, null, 2)
|
|
+ ';'
|
|
+ '\n\ntoastr.'
|
|
+ shortCutFunction
|
|
+ '("'
|
|
+ msg
|
|
+ (title ? '", "' + title : '')
|
|
+ '");'
|
|
);
|
|
|
|
var $toast = toastr[shortCutFunction](msg, title); // Wire up an event handler to a button in the toast, if it exists
|
|
$toastlast = $toast;
|
|
|
|
if(typeof $toast === 'undefined'){
|
|
return;
|
|
}
|
|
|
|
if ($toast.find('#okBtn').length) {
|
|
$toast.delegate('#okBtn', 'click', function () {
|
|
alert('you clicked me. i was toast #' + toastIndex + '. goodbye!');
|
|
$toast.remove();
|
|
});
|
|
}
|
|
if ($toast.find('#surpriseBtn').length) {
|
|
$toast.delegate('#surpriseBtn', 'click', function () {
|
|
alert('Surprise! you clicked me. i was toast #' + toastIndex + '. You could perform an action here.');
|
|
});
|
|
}
|
|
if ($toast.find('.clear').length) {
|
|
$toast.delegate('.clear', 'click', function () {
|
|
toastr.clear($toast, { force: true });
|
|
});
|
|
}
|
|
});
|
|
|
|
function getLastToast(){
|
|
return $toastlast;
|
|
}
|
|
$('#clearlasttoast').click(function () {
|
|
toastr.clear(getLastToast());
|
|
});
|
|
$('#cleartoasts').click(function () {
|
|
toastr.clear();
|
|
});
|
|
}
|
|
|
|
return {
|
|
// public functions
|
|
init: function() {
|
|
demo();
|
|
}
|
|
};
|
|
}();
|
|
|
|
jQuery(document).ready(function() {
|
|
KTToastrDemo.init();
|
|
}); |