1
0
mirror of https://github.com/beestat/app.git synced 2025-05-24 02:14:03 -04:00
beestat/js/component/modal/announcements.js

56 lines
1.6 KiB
JavaScript

/**
* Announcements
*/
beestat.component.modal.announcements = function() {
beestat.component.modal.apply(this, arguments);
};
beestat.extend(beestat.component.modal.announcements, beestat.component.modal);
/**
* Decorate
*
* @param {rocket.Elements} parent
*/
beestat.component.modal.announcements.prototype.decorate_contents_ = function(parent) {
var announcements = $.values(beestat.cache.announcement).reverse();
if (announcements.length === 0) {
parent.appendChild($.createElement('p').innerText('No recent announcements! :)'));
} else {
announcements.forEach(function(announcement) {
parent.appendChild($.createElement('div').style({
'border-bottom': '1px solid #eee',
'margin-left': (beestat.style.size.gutter * -1) + 'px',
'margin-right': (beestat.style.size.gutter * -1) + 'px',
'margin-top': (beestat.style.size.gutter) + 'px',
'margin-bottom': (beestat.style.size.gutter) + 'px'
}));
var icon = new beestat.component.icon(announcement.icon)
.set_text(announcement.title +
' • ' +
moment.utc(announcement.created_at).fromNow());
icon.render(parent);
beestat.dispatcher.dispatchEvent('view_announcements');
parent.appendChild($.createElement('p').innerHTML(announcement.text));
});
beestat.setting(
'last_read_announcement_id',
announcements[0].announcement_id
);
}
};
/**
* Get the title.
*
* @return {string} The title.
*/
beestat.component.modal.announcements.prototype.get_title_ = function() {
return 'Announcements';
};