39 : void
40 {
42
44
45 if (!
$ilDB->tableExists(self::$tbl_userconfig)) {
46 $fields = [
50 ];
51 $ilDB->createTable(self::$tbl_userconfig, $fields);
52 $ilDB->addPrimaryKey(self::$tbl_userconfig, [
'usr_id',
'module',
'channel']);
53 }
54
55 if (!
$ilDB->tableExists(self::$tbl_userlistener)) {
56 $fields = [
61 ];
62 $ilDB->createTable(self::$tbl_userlistener, $fields);
63 $ilDB->addPrimaryKey(self::$tbl_userlistener, [
'usr_id',
'module',
'sender_id']);
64 }
65
66 if (!
$ilDB->tableExists(self::$tbl_notification_data)) {
67 $fields = [
70 ];
71 $ilDB->createTable(self::$tbl_notification_data, $fields);
72 $ilDB->addPrimaryKey(self::$tbl_notification_data, [
'notification_id']);
73
74 $ilDB->createSequence(self::$tbl_notification_data);
75 }
76
77 if (!
$ilDB->tableExists(self::$tbl_notification_queue)) {
78 $fields = [
82 ];
83 $ilDB->createTable(self::$tbl_notification_queue, $fields);
84 $ilDB->addPrimaryKey(self::$tbl_notification_queue, [
'notification_id',
'usr_id']);
85 }
86
87 if (!
$ilDB->tableExists(self::$tbl_notification_osd_handler)) {
88 $fields = [
95 ];
96 $ilDB->createTable(self::$tbl_notification_osd_handler, $fields);
97
98 $ilDB->addPrimaryKey(self::$tbl_notification_osd_handler, [
'notification_osd_id']);
99
100 $ilDB->createSequence(self::$tbl_notification_osd_handler);
101 }
102
103 if (!
$ilDB->tableExists(self::$tbl_notification_channels)) {
104 $fields = [
111 ];
112 $ilDB->createTable(self::$tbl_notification_channels, $fields);
113
114 $ilDB->addPrimaryKey(self::$tbl_notification_channels, [
'channel_name']);
115
118 'mail',
119 'mail',
120 'mail_desc',
121 'ilNotificationMailHandler',
122 'components/ILIAS/Notifications/classes/class.ilNotificationMailHandler.php'
123 );
126 'osd',
127 'osd',
128 'osd_desc',
129 'ilNotificationOSDHandler',
130 'components/ILIAS/Notifications/classes/class.ilNotificationOSDHandler.php'
131 );
132 }
133
134 if (!
$ilDB->tableExists(self::$tbl_notification_types)) {
135 $fields = [
141 ];
142 $ilDB->createTable(self::$tbl_notification_types, $fields);
143 $ilDB->addPrimaryKey(self::$tbl_notification_types, [
'type_name']);
144
147 }
148 }
static registerChannel(ilDBInterface $db, string $name, string $title, string $description, string $class, string $classfile, string $config_type='set_by_user')
static registerType(ilDBInterface $db, string $name, string $title, string $description, string $notification_group, string $config_type='set_by_user')