nodebb-plugin-equipment-calendar 5.0.0 → 5.0.1
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/library.js +17 -0
- package/package.json +1 -1
- package/plugin.json +1 -1
package/library.js
CHANGED
|
@@ -7,6 +7,23 @@ try { if (!fetchFn) { fetchFn = require('undici').fetch; } } catch (e) {}
|
|
|
7
7
|
const db = require.main.require('./src/database');
|
|
8
8
|
const meta = require.main.require('./src/meta');
|
|
9
9
|
const groups = require.main.require('./src/groups');
|
|
10
|
+
|
|
11
|
+
async function isUserInAnyGroups(uid, groupsCsv) {
|
|
12
|
+
if (!uid) return false;
|
|
13
|
+
const str = Array.isArray(groupsCsv) ? groupsCsv.join(',') : String(groupsCsv || '');
|
|
14
|
+
const names = str.split(',').map(s => s.trim()).filter(Boolean);
|
|
15
|
+
if (!names.length) return false;
|
|
16
|
+
for (const name of names) {
|
|
17
|
+
try {
|
|
18
|
+
// groups.isMember expects (uid, groupName)
|
|
19
|
+
const ok = await groups.isMember(uid, name);
|
|
20
|
+
if (ok) return true;
|
|
21
|
+
} catch (e) {
|
|
22
|
+
// ignore
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
10
27
|
const user = require.main.require('./src/user');
|
|
11
28
|
const notifications = require.main.require('./src/notifications');
|
|
12
29
|
const Emailer = require.main.require('./src/emailer');
|
package/package.json
CHANGED