nodebb-plugin-ezoic-infinite 0.4.4 → 0.4.5

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 CHANGED
@@ -23,9 +23,11 @@ function parseBool(v, def = false) {
23
23
  async function getAllGroups() {
24
24
  const names = await db.getSortedSetRange('groups:createtime', 0, -1);
25
25
  const filtered = names.filter(name => !groups.isPrivilegeGroup(name));
26
- return groups.getGroupsData(filtered);
26
+ const data = await groups.getGroupsData(filtered);
27
+ // Sort alphabetically for ACP usability
28
+ data.sort((a, b) => String(a.name).localeCompare(String(b.name), 'fr', { sensitivity: 'base' }));
29
+ return data;
27
30
  }
28
-
29
31
  async function getSettings() {
30
32
  const s = await meta.settings.get(SETTINGS_KEY);
31
33
  return {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nodebb-plugin-ezoic-infinite",
3
- "version": "0.4.4",
3
+ "version": "0.4.5",
4
4
  "description": "Ezoic ads with infinite scroll using a pool of placeholder IDs",
5
5
  "main": "library.js",
6
6
  "license": "MIT",
package/public/admin.js CHANGED
@@ -1,4 +1,4 @@
1
- /* globals app */
1
+ /* globals ajaxify */
2
2
  'use strict';
3
3
 
4
4
  (function () {
@@ -6,13 +6,19 @@
6
6
  const $form = $('.ezoic-infinite-settings');
7
7
  if (!$form.length) return;
8
8
 
9
- require(['settings'], function (Settings) {
9
+ require(['settings', 'alerts'], function (Settings, alerts) {
10
10
  Settings.load('ezoic-infinite', $form);
11
11
 
12
12
  $('#save').off('click.ezoicInfinite').on('click.ezoicInfinite', function (e) {
13
13
  e.preventDefault();
14
+
14
15
  Settings.save('ezoic-infinite', $form, function () {
15
- app.alertSuccess('Enregistré');
16
+ // Toast vert (NodeBB core)
17
+ if (alerts && typeof alerts.success === 'function') {
18
+ alerts.success('Enregistré');
19
+ } else if (window.app && typeof window.app.alertSuccess === 'function') {
20
+ window.app.alertSuccess('Enregistré');
21
+ }
16
22
  });
17
23
  });
18
24
  });