blob: 6be42566bf8ee17b69bca1ab89f9b153ebbb5cf2 [file] [log] [blame]
package Kalamar::Plugin::Notifications;
use Mojo::Base 'Mojolicious::Plugin::Notifications::Engine';
use Mojo::ByteStream 'b';
use Mojo::Util qw/xml_escape quote/;
use Mojo::JSON qw/decode_json encode_json/;
use File::Spec;
use File::Basename;
# Notification method
sub notifications {
my ($self, $c, $notify_array) = @_;
return '' unless @$notify_array;
my $s = '';
foreach (@$notify_array) {
$s .= qq{<div class="notify notify-} . $_->[0] . '"';
$s .= ' data-type=' . quote($_->[0]);
if (ref $_->[1] && ref $_->[1] eq 'HASH') {
$s .= ' data-src=' . quote($_->[1]->{src}) if $_->[1]->{src};
};
$s .= '>' . xml_escape($_->[-1]) . "</div>\n";
};
return b('<div id="notifications">' . $s . '</div>');
};
1;