iobroker.fullcalendar 1.1.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +11 -5
- package/admin/adapter-settings.js +29 -4
- package/admin/tab.html +4 -2
- package/io-package.json +166 -161
- package/main.js +12 -10
- package/package.json +19 -5
package/LICENSE
CHANGED
package/README.md
CHANGED
|
@@ -8,15 +8,22 @@
|
|
|
8
8
|
|
|
9
9
|
Schedules with [fullcalendar](https://fullcalendar.io).
|
|
10
10
|
|
|
11
|
-
You must not use any external resources, the scheduling is processed only in ioBroker and will be not combined with any external services like "google
|
|
11
|
+
You must not use any external resources, the scheduling is processed only in ioBroker and will be not combined with any external services like "google calendar" or "iTunes".
|
|
12
12
|
|
|
13
13
|

|
|
14
14
|
|
|
15
|
-
You can control your events with
|
|
15
|
+
You can control your events with calendar and can plan to control them periodically.
|
|
16
16
|
|
|
17
|
+
<!--
|
|
18
|
+
Placeholder for the next version (at the beginning of the line):
|
|
19
|
+
### __WORK IN PROGRESS__
|
|
20
|
+
-->
|
|
17
21
|
## Changelog
|
|
22
|
+
### 1.2.0 (2021-12-14)
|
|
23
|
+
* (bluefox) Updated to use with js-controller 3.3 and admin 5
|
|
24
|
+
|
|
18
25
|
### 1.1.0 (2020-01-12)
|
|
19
|
-
* (foxriver76) Updated to use with js-controller 2.x
|
|
26
|
+
* (foxriver76) Updated to use with js-controller 2.x
|
|
20
27
|
|
|
21
28
|
### 1.0.0 (2019-11-17)
|
|
22
29
|
* (bluefox) Support of compact mode added
|
|
@@ -40,8 +47,7 @@ You can control your events with calender and can plan to control them periodica
|
|
|
40
47
|
### 0.1.0 (2017-03-20)
|
|
41
48
|
* (bluefox) initial commit
|
|
42
49
|
|
|
43
|
-
|
|
44
50
|
## License
|
|
45
51
|
CC BY-NC 4.0
|
|
46
52
|
|
|
47
|
-
Copyright (c) 2017-
|
|
53
|
+
Copyright (c) 2017-2021 bluefox <dogafox@gmail.com>
|
|
@@ -3,7 +3,8 @@ var parts = path.split('/');
|
|
|
3
3
|
parts.splice(-3);
|
|
4
4
|
|
|
5
5
|
var socket = io.connect('/', {path: parts.join('/') + '/socket.io'});
|
|
6
|
-
var
|
|
6
|
+
var query = (window.location.search || '').replace(/^\?/, '').replace(/#.*$/, '');
|
|
7
|
+
var args = {};
|
|
7
8
|
var common = null; // common information of adapter
|
|
8
9
|
var host = null; // host object on which the adapter runs
|
|
9
10
|
var changed = false;
|
|
@@ -14,11 +15,33 @@ var onChangeSupported = false;
|
|
|
14
15
|
|
|
15
16
|
var tmp = window.location.pathname.split('/');
|
|
16
17
|
adapter = tmp[tmp.length - 2];
|
|
18
|
+
|
|
19
|
+
// parse parameters
|
|
20
|
+
query.trim().split('&').filter(function (t) {return t.trim();}).forEach(function (b, i) {
|
|
21
|
+
const parts = b.split('=');
|
|
22
|
+
if (!i && parts.length === 1 && !isNaN(parseInt(b, 10))) {
|
|
23
|
+
args.instance = parseInt(b, 10);
|
|
24
|
+
}
|
|
25
|
+
var name = parts[0];
|
|
26
|
+
args[name] = parts.length === 2 ? parts[1] : true;
|
|
27
|
+
|
|
28
|
+
if (name === 'instance') {
|
|
29
|
+
args.instance = parseInt( args.instance, 10) || 0;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
if (args[name] === 'true') {
|
|
33
|
+
args[name] = true;
|
|
34
|
+
} else if (args[name] === 'false') {
|
|
35
|
+
args[name] = false;
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
var instance = args.instance;
|
|
39
|
+
|
|
17
40
|
var _adapterInstance = 'system.adapter.' + adapter + '.' + instance;
|
|
18
41
|
|
|
19
42
|
$(document).ready(function () {
|
|
20
43
|
'use strict';
|
|
21
|
-
|
|
44
|
+
|
|
22
45
|
if (typeof noConfigDialog === 'undefined') {
|
|
23
46
|
// Extend dictionary with standard words for adapter
|
|
24
47
|
if (typeof systemDictionary === 'undefined') systemDictionary = {};
|
|
@@ -90,7 +113,7 @@ $(document).ready(function () {
|
|
|
90
113
|
}
|
|
91
114
|
});
|
|
92
115
|
}
|
|
93
|
-
|
|
116
|
+
|
|
94
117
|
// callback if something changed
|
|
95
118
|
function onChange(isChanged) {
|
|
96
119
|
onChangeSupported = true;
|
|
@@ -515,7 +538,9 @@ function sendToHost(host, command, message, callback) {
|
|
|
515
538
|
function fillSelectCertificates(id, type, actualValued) {
|
|
516
539
|
var str = '<option value="">' + _('none') + '</option>';
|
|
517
540
|
for (var i = 0; i < certs.length; i++) {
|
|
518
|
-
if (certs[i].type != type)
|
|
541
|
+
if (certs[i].type != type) {
|
|
542
|
+
continue;
|
|
543
|
+
}
|
|
519
544
|
str += '<option value="' + certs[i].name + '" ' + ((certs[i].name === actualValued) ? 'selected' : '') + '>' + certs[i].name + '</option>';
|
|
520
545
|
}
|
|
521
546
|
|
package/admin/tab.html
CHANGED
|
@@ -331,7 +331,7 @@
|
|
|
331
331
|
} else {
|
|
332
332
|
delete event.native.astro;
|
|
333
333
|
delete event.native.offset;
|
|
334
|
-
|
|
334
|
+
|
|
335
335
|
// extract time
|
|
336
336
|
time = checkTime($dialog.find('#dialog_event_time').val());
|
|
337
337
|
if (typeof time === 'string') {
|
|
@@ -1050,7 +1050,9 @@
|
|
|
1050
1050
|
}
|
|
1051
1051
|
|
|
1052
1052
|
function initSelectId(callback) {
|
|
1053
|
-
if (selectId)
|
|
1053
|
+
if (selectId) {
|
|
1054
|
+
return selectId;
|
|
1055
|
+
}
|
|
1054
1056
|
selectId = $('#dialog-select-member').selectId('init', {
|
|
1055
1057
|
objects: objects,
|
|
1056
1058
|
states: states,
|
package/io-package.json
CHANGED
|
@@ -1,167 +1,172 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
"zh-cn": "日历时间表"
|
|
53
|
-
},
|
|
54
|
-
"desc": {
|
|
55
|
-
"en": "This adapter allows planing with calendar",
|
|
56
|
-
"de": "Adapter für geplante Aktionen in ioBroker mittels Kalender",
|
|
57
|
-
"ru": "Драйвер позволяет планировать с помощью календаря",
|
|
58
|
-
"pt": "Este adaptador permite aplainar com calendário",
|
|
59
|
-
"nl": "Met deze adapter kunt u schaven met kalender",
|
|
60
|
-
"fr": "Cet adaptateur permet de planifier avec calendrier",
|
|
61
|
-
"it": "Questo adattatore consente la piallatura con calendario",
|
|
62
|
-
"es": "Este adaptador permite planear con calendario",
|
|
63
|
-
"pl": "Ten adapter umożliwia struganie za pomocą kalendarza",
|
|
64
|
-
"zh-cn": "该适配器允许日历计划"
|
|
65
|
-
},
|
|
66
|
-
"authors": [
|
|
67
|
-
"bluefox <dogafox@gmail.com>"
|
|
68
|
-
],
|
|
69
|
-
"license": "CC BY-NC 4.0",
|
|
70
|
-
"platform": "javascript/Node.js",
|
|
71
|
-
"icon": "fullcalendar.png",
|
|
72
|
-
"mode": "daemon",
|
|
73
|
-
"compact": true,
|
|
74
|
-
"keywords": [
|
|
75
|
-
"schedule",
|
|
76
|
-
"calendar"
|
|
77
|
-
],
|
|
78
|
-
"materialize": true,
|
|
79
|
-
"messagebox": true,
|
|
80
|
-
"extIcon": "https://raw.githubusercontent.com/ioBroker/ioBroker.fullcalendar/master/admin/fullcalendar.png",
|
|
81
|
-
"readme": "https://github.com/ioBroker/ioBroker.fullcalendar/blob/master/README.md",
|
|
82
|
-
"loglevel": "info",
|
|
83
|
-
"adminTab": {
|
|
84
|
-
"singleton": false,
|
|
85
|
-
"name": "Calendar",
|
|
86
|
-
"fa-icon": "calendar_today"
|
|
87
|
-
},
|
|
88
|
-
"dependencies": [
|
|
89
|
-
{
|
|
90
|
-
"admin": ">=2.0.0"
|
|
91
|
-
},
|
|
92
|
-
{
|
|
93
|
-
"js-controller": ">=2.0.0"
|
|
94
|
-
}
|
|
95
|
-
],
|
|
96
|
-
"enabled": true,
|
|
97
|
-
"type": "date-and-time",
|
|
98
|
-
"noConfig": false
|
|
2
|
+
"common": {
|
|
3
|
+
"name": "fullcalendar",
|
|
4
|
+
"version": "1.2.0",
|
|
5
|
+
"news": {
|
|
6
|
+
"1.2.0": {
|
|
7
|
+
"en": "Updated to use with js-controller 3.3 and admin 5",
|
|
8
|
+
"de": "Aktualisiert für die Verwendung mit js-controller 3.3 und admin 5",
|
|
9
|
+
"ru": "Обновлено для использования с js-controller 3.3 и admin 5",
|
|
10
|
+
"pt": "Atualizado para usar com js-controller 3.3 e admin 5",
|
|
11
|
+
"nl": "Bijgewerkt voor gebruik met js-controller 3.3 en admin 5",
|
|
12
|
+
"fr": "Mis à jour pour être utilisé avec js-controller 3.3 et admin 5",
|
|
13
|
+
"it": "Aggiornato per l'uso con js-controller 3.3 e admin 5",
|
|
14
|
+
"es": "Actualizado para usar con js-controller 3.3 y admin 5",
|
|
15
|
+
"pl": "Zaktualizowano do użycia z js-controller 3.3 i administratorem 5",
|
|
16
|
+
"zh-cn": "更新为与 js-controller 3.3 和 admin 5 一起使用"
|
|
17
|
+
},
|
|
18
|
+
"1.1.0": {
|
|
19
|
+
"en": "Updated to use with js-controller 2.x",
|
|
20
|
+
"de": "Aktualisiert zur Verwendung mit js-controller 2.x",
|
|
21
|
+
"ru": "Обновлен для использования с js-controller 2.x",
|
|
22
|
+
"pt": "Atualizado para uso com o js-controller 2.x",
|
|
23
|
+
"nl": "Bijgewerkt voor gebruik met js-controller 2.x",
|
|
24
|
+
"fr": "Mis à jour pour être utilisé avec js-controller 2.x",
|
|
25
|
+
"it": "Aggiornato per l'uso con js-controller 2.x",
|
|
26
|
+
"es": "Actualizado para usar con js-controller 2.x",
|
|
27
|
+
"pl": "Zaktualizowano do użytku z js-kontrolerem 2.x",
|
|
28
|
+
"zh-cn": "更新为与js-controller 2.x一起使用"
|
|
29
|
+
},
|
|
30
|
+
"1.0.0": {
|
|
31
|
+
"en": "Support of compact mode added",
|
|
32
|
+
"de": "Unterstützung des Kompaktmodus hinzugefügt",
|
|
33
|
+
"ru": "Добавлена поддержка компактного режима",
|
|
34
|
+
"pt": "Adicionado suporte ao modo compacto",
|
|
35
|
+
"nl": "Ondersteuning van compacte modus toegevoegd",
|
|
36
|
+
"fr": "Prise en charge du mode compact ajouté",
|
|
37
|
+
"it": "Supporto della modalità compatta aggiunto",
|
|
38
|
+
"es": "Soporte de modo compacto agregado",
|
|
39
|
+
"pl": "Dodano obsługę trybu kompaktowego",
|
|
40
|
+
"zh-cn": "支持紧凑模式"
|
|
41
|
+
},
|
|
42
|
+
"0.2.4": {
|
|
43
|
+
"en": "Translations",
|
|
44
|
+
"de": "Übersetzungen",
|
|
45
|
+
"ru": "Поправлен перевод"
|
|
46
|
+
},
|
|
47
|
+
"0.2.3": {
|
|
48
|
+
"en": "Fix interval settings\nUpdate fullcalendar library",
|
|
49
|
+
"de": "Intervalleinstellungen korrigiert\nUpdate fullcalendar library",
|
|
50
|
+
"ru": "Исправлена ошибка с интервалом\nОбновлена библиотека fullcalendar"
|
|
51
|
+
}
|
|
99
52
|
},
|
|
100
|
-
"
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
53
|
+
"title": "Calendar schedule",
|
|
54
|
+
"titleLang": {
|
|
55
|
+
"en": "Calendar schedule",
|
|
56
|
+
"de": "Kalender Zeitplan",
|
|
57
|
+
"ru": "Календарное расписание",
|
|
58
|
+
"pt": "Agenda do calendário",
|
|
59
|
+
"nl": "Kalender schema",
|
|
60
|
+
"fr": "Calendrier calendrier",
|
|
61
|
+
"it": "Calendario",
|
|
62
|
+
"es": "Calendario calendario",
|
|
63
|
+
"pl": "Harmonogram kalendarza",
|
|
64
|
+
"zh-cn": "日历时间表"
|
|
112
65
|
},
|
|
113
|
-
"
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
"name": "Last configured event",
|
|
128
|
-
"type": "json",
|
|
129
|
-
"read": true,
|
|
130
|
-
"write": false
|
|
131
|
-
},
|
|
132
|
-
"native": {}
|
|
133
|
-
},
|
|
134
|
-
{
|
|
135
|
-
"_id": "info.lastEvent",
|
|
136
|
-
"type": "state",
|
|
137
|
-
"common": {
|
|
138
|
-
"role": "state",
|
|
139
|
-
"name": "Any last event",
|
|
140
|
-
"type": "json",
|
|
141
|
-
"read": true,
|
|
142
|
-
"write": false
|
|
143
|
-
},
|
|
144
|
-
"native": {}
|
|
145
|
-
}
|
|
66
|
+
"desc": {
|
|
67
|
+
"en": "This adapter allows planing with calendar",
|
|
68
|
+
"de": "Adapter für geplante Aktionen in ioBroker mittels Kalender",
|
|
69
|
+
"ru": "Драйвер позволяет планировать с помощью календаря",
|
|
70
|
+
"pt": "Este adaptador permite aplainar com calendário",
|
|
71
|
+
"nl": "Met deze adapter kunt u schaven met kalender",
|
|
72
|
+
"fr": "Cet adaptateur permet de planifier avec calendrier",
|
|
73
|
+
"it": "Questo adattatore consente la piallatura con calendario",
|
|
74
|
+
"es": "Este adaptador permite planear con calendario",
|
|
75
|
+
"pl": "Ten adapter umożliwia struganie za pomocą kalendarza",
|
|
76
|
+
"zh-cn": "该适配器允许日历计划"
|
|
77
|
+
},
|
|
78
|
+
"authors": [
|
|
79
|
+
"bluefox <dogafox@gmail.com>"
|
|
146
80
|
],
|
|
147
|
-
"
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
81
|
+
"license": "CC-BY-NC-4.0",
|
|
82
|
+
"platform": "Javascript/Node.js",
|
|
83
|
+
"icon": "fullcalendar.png",
|
|
84
|
+
"mode": "daemon",
|
|
85
|
+
"compact": true,
|
|
86
|
+
"keywords": [
|
|
87
|
+
"schedule",
|
|
88
|
+
"calendar"
|
|
89
|
+
],
|
|
90
|
+
"materialize": true,
|
|
91
|
+
"messagebox": true,
|
|
92
|
+
"extIcon": "https://raw.githubusercontent.com/ioBroker/ioBroker.fullcalendar/master/admin/fullcalendar.png",
|
|
93
|
+
"readme": "https://github.com/ioBroker/ioBroker.fullcalendar/blob/master/README.md",
|
|
94
|
+
"loglevel": "info",
|
|
95
|
+
"adminTab": {
|
|
96
|
+
"singleton": false,
|
|
97
|
+
"name": "Calendar",
|
|
98
|
+
"fa-icon": "calendar_today"
|
|
99
|
+
},
|
|
100
|
+
"dependencies": [
|
|
101
|
+
{
|
|
102
|
+
"js-controller": ">=3.3.0"
|
|
103
|
+
}
|
|
104
|
+
],
|
|
105
|
+
"enabled": true,
|
|
106
|
+
"type": "date-and-time",
|
|
107
|
+
"noConfig": false,
|
|
108
|
+
"plugins": {
|
|
109
|
+
"sentry": {
|
|
110
|
+
"dsn": "https://89d6f43ab4b5424785f6454d630c3286@sentry.iobroker.net/164"
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
},
|
|
114
|
+
"native": {
|
|
115
|
+
"debounce": 1000,
|
|
116
|
+
"changesRelogInterval": 0,
|
|
117
|
+
"ackType": "any",
|
|
118
|
+
"changesMinDelta": 0,
|
|
119
|
+
"allEventsEnabled": false,
|
|
120
|
+
"allEventsMax": 1000,
|
|
121
|
+
"allEventsSaveOnDisk": false,
|
|
122
|
+
"eventsPath": "calendar/",
|
|
123
|
+
"cfgEventsEnabled": true,
|
|
124
|
+
"cfgEventsMax": 1000,
|
|
125
|
+
"cfgEventsSaveOnDisk": false
|
|
126
|
+
},
|
|
127
|
+
"instanceObjects": [
|
|
128
|
+
{
|
|
129
|
+
"_id": "info",
|
|
130
|
+
"type": "channel",
|
|
131
|
+
"common": {
|
|
132
|
+
"name": "Information"
|
|
133
|
+
},
|
|
134
|
+
"native": {}
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"_id": "info.lastConfiguredEvent",
|
|
138
|
+
"type": "state",
|
|
139
|
+
"common": {
|
|
140
|
+
"role": "state",
|
|
141
|
+
"name": "Last configured event",
|
|
142
|
+
"type": "json",
|
|
143
|
+
"read": true,
|
|
144
|
+
"write": false
|
|
145
|
+
},
|
|
146
|
+
"native": {}
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
"_id": "info.lastEvent",
|
|
150
|
+
"type": "state",
|
|
151
|
+
"common": {
|
|
152
|
+
"role": "state",
|
|
153
|
+
"name": "Any last event",
|
|
154
|
+
"type": "json",
|
|
155
|
+
"read": true,
|
|
156
|
+
"write": false
|
|
157
|
+
},
|
|
158
|
+
"native": {}
|
|
159
|
+
}
|
|
160
|
+
],
|
|
161
|
+
"objects": [
|
|
162
|
+
{
|
|
163
|
+
"_id": "_design/schedule",
|
|
164
|
+
"language": "javascript",
|
|
165
|
+
"views": {
|
|
166
|
+
"schedule": {
|
|
167
|
+
"map": "function(doc) { if (doc.type === 'schedule') emit(doc.common.name, doc); }"
|
|
165
168
|
}
|
|
166
|
-
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
]
|
|
167
172
|
}
|
package/main.js
CHANGED
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
6
|
// you have to require the utils module and call adapter function
|
|
7
|
-
const utils
|
|
8
|
-
const adapterName
|
|
9
|
-
const timeUtils
|
|
10
|
-
const later
|
|
11
|
-
const SunCalc
|
|
7
|
+
const utils = require('@iobroker/adapter-core'); // Get common adapter utils
|
|
8
|
+
const adapterName = require('./package.json').name.split('.').pop();
|
|
9
|
+
const timeUtils = require('./admin/utils.js');
|
|
10
|
+
const later = require('later');
|
|
11
|
+
const SunCalc = require('./admin/suncalc.js');
|
|
12
12
|
let adapter;
|
|
13
13
|
|
|
14
14
|
let events;
|
|
@@ -327,19 +327,19 @@ function checkEvent(event) {
|
|
|
327
327
|
function getRoomFunc(id) {
|
|
328
328
|
let room = '';
|
|
329
329
|
for (const r in rooms) {
|
|
330
|
-
if (room.hasOwnProperty(r) && rooms[r].common.members.
|
|
330
|
+
if (room.hasOwnProperty(r) && rooms[r].common.members.includes(id)) {
|
|
331
331
|
room = rooms[r].common.name || r.substring('enum.rooms.'.length);
|
|
332
332
|
break;
|
|
333
333
|
}
|
|
334
334
|
}
|
|
335
335
|
let func = '';
|
|
336
336
|
for (const f in funcs) {
|
|
337
|
-
if (funcs[r].common.members.
|
|
337
|
+
if (funcs[r].common.members.includes(id)) {
|
|
338
338
|
func = funcs[r].common.name || r.substring('enum.functions.'.length);
|
|
339
339
|
break;
|
|
340
340
|
}
|
|
341
341
|
}
|
|
342
|
-
return {func
|
|
342
|
+
return {func, room};
|
|
343
343
|
}
|
|
344
344
|
|
|
345
345
|
function readEnums(cb) {
|
|
@@ -394,7 +394,9 @@ function main() {
|
|
|
394
394
|
events = {};
|
|
395
395
|
if (!err && res) {
|
|
396
396
|
for (let i = 0; i < res.rows.length; i++) {
|
|
397
|
-
if (res.rows[i].id === 'schedules')
|
|
397
|
+
if (res.rows[i].id === 'schedules') {
|
|
398
|
+
continue;
|
|
399
|
+
}
|
|
398
400
|
events[res.rows[i].value._id] = checkEvent(res.rows[i].value);
|
|
399
401
|
}
|
|
400
402
|
}
|
|
@@ -406,7 +408,7 @@ function main() {
|
|
|
406
408
|
}
|
|
407
409
|
|
|
408
410
|
if (adapter.config.cfgEventsEnabled) {
|
|
409
|
-
adapter.getObjectView('
|
|
411
|
+
adapter.getObjectView('system', 'custom', {startkey: '', endkey: '\u9999'}, (err, res) => {
|
|
410
412
|
let count = 0;
|
|
411
413
|
if (!err && res) {
|
|
412
414
|
for (let i = 0; i < res.rows.length; i++) {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iobroker.fullcalendar",
|
|
3
3
|
"description": "This adapter allows planing with calendar.",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.2.0",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "bluefox",
|
|
7
7
|
"email": "dogafox@gmail.com"
|
|
@@ -25,19 +25,33 @@
|
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"later": "^1.2.0",
|
|
28
|
-
"@iobroker/adapter-core": "^
|
|
28
|
+
"@iobroker/adapter-core": "^2.5.1"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
|
+
"@alcalzone/release-script": "^3.4.1",
|
|
32
|
+
"@alcalzone/release-script-plugin-iobroker": "^3.4.1",
|
|
33
|
+
"@alcalzone/release-script-plugin-license": "^3.4.1",
|
|
31
34
|
"gulp": "^4.0.2",
|
|
32
|
-
"mocha": "^
|
|
33
|
-
"chai": "^4.
|
|
35
|
+
"mocha": "^9.1.3",
|
|
36
|
+
"chai": "^4.3.4"
|
|
34
37
|
},
|
|
35
38
|
"bugs": {
|
|
36
39
|
"url": "https://github.com/ioBroker/ioBroker.fullcalendar/issues"
|
|
37
40
|
},
|
|
38
41
|
"main": "main.js",
|
|
42
|
+
"files": [
|
|
43
|
+
"admin/",
|
|
44
|
+
"img/",
|
|
45
|
+
"io-package.json",
|
|
46
|
+
"LICENSE",
|
|
47
|
+
"main.js"
|
|
48
|
+
],
|
|
39
49
|
"scripts": {
|
|
40
|
-
"test": "node node_modules/mocha/bin/mocha --exit"
|
|
50
|
+
"test": "node node_modules/mocha/bin/mocha --exit",
|
|
51
|
+
"release": "release-script",
|
|
52
|
+
"release-patch": "release-script patch --yes",
|
|
53
|
+
"release-minor": "release-script minor --yes",
|
|
54
|
+
"release-major": "release-script major --yes"
|
|
41
55
|
},
|
|
42
56
|
"license": "CC-BY-NC-4.0"
|
|
43
57
|
}
|