46 : void
47 {
48 if ($this->
user->isAnonymous() || 0 === $this->user->getId()) {
49 return;
50 }
51
52 $notificationSettings =
new ilSetting(
'notifications');
53 if ($notificationSettings->get('enable_osd', '0') !== '1') {
54 return;
55 }
56
57 $osdTemplate =
new ilTemplate(
'tpl.osd_notifications.js',
true,
true,
'components/ILIAS/Notifications');
58
59 $osdTemplate->setVariable(
60 'OSD_INTERVAL',
61 $notificationSettings->get('osd_interval', (string) self::DEFAULT_POLLING_INTERVAL)
62 );
63 $osdTemplate->setVariable(
64 'OSD_PLAY_SOUND',
65 $notificationSettings->get('osd_play_sound') && $this->user->getPref('osd_play_sound') ? 'true' : 'false'
66 );
67
69
70 $this->page->addJavaScript('assets/js/notifications.js');
71 $this->page->addCSS('assets/css/osd.css');
72 $this->page->addOnLoadCode($osdTemplate->get());
73 }
special template class to simplify handling of ITX/PEAR
static initjQuery(?ilGlobalTemplateInterface $a_tpl=null)
inits and adds the jQuery JS-File to the global or a passed template