Alerting: Global alert

Issue #529 resolved
M-JW created an issue

Die globalAlerts werden nur in den Portalen abgefeuert, die in den “restrictedAlerts“ eingetragen sind.

Beispiel in der folgender broadcastedPortalAlerts.json:

{
  "globalAlerts": ["Test1", "Test4"],

  "restrictedAlerts": {
    "https://localhost:9001/portal/basic/": ["Test3"]
  },

  "alerts": {
    "Test1": {
      "category": "Test 1",
      "content": "Lorem Ipsum 1 (global content)",
      "displayFrom": "2020-03-01 20:15:55",
      "displayUntil": "2022-05-17 14:30",
      "mustBeConfirmed": true,
      "once": {"seconds": 15}
    },
    "Test2": {
      "category": "Test 1",
      "content": "Lorem Ipsum 2 (content for master)",
      "displayFrom": false,
      "displayUntil": "2022-05-17 14:30",
      "mustBeConfirmed": true,
      "once": {"seconds": 30}
    },
    "Test3": {
      "category": "Test 2",
      "content": "Lorem Ipsum 3 (content for basic)",
      "displayFrom": false,
      "displayUntil": "2022-05-17 14:30",
      "mustBeConfirmed": true,
      "once": {"seconds": 45}
    },
    "Test4": {
      "category": "Test 2",
      "content": "Lorem Ipsum 4 (global content)",
      "displayFrom": false,
      "displayUntil": "2022-05-17 14:30",
      "mustBeConfirmed": true,
      "once": {"seconds": 60}
    }
  }
}

Ich habe aus den “restrictedAlerts“ folgenden Eintrag entfernt:

https://localhost:9001/portal/master/": ["Test2"],

Meine Erwartung wäre, dass wenn ich nun das portal/master aufrufe, die global alerts gefeuert werden.

Bei mir wird jedoch kein alert gefeuert.

Comments (3)

  1. Felix Nagel

    Fix kommt zusammen mit einem anderen Alerting Ticket.

    Falls du quick fix brauchst:

    Alerting.vue:

    vorher:

            if (data.restrictedAlerts !== undefined && typeof data.restrictedAlerts === "object") {
                collectedAlertIds = [...collectedAlertIds, ...data.restrictedAlerts[this.currentUrl]];
            }
    

    nachher:

            if (data.restrictedAlerts !== undefined && typeof data.restrictedAlerts === "object" && Array.isArray(data.restrictedAlerts[this.currentUrl])) {
                collectedAlertIds = [...collectedAlertIds, ...data.restrictedAlerts[this.currentUrl]];
            }
    

  2. Log in to comment