@if (!loaded()) { } @if (loaded() && !objectNotificationsEnabled()) { {{ texts().disabled | transloco }} } @else if (loaded()) {
@for (day of days; track day; let i = $index) { }
@for (state of states(); track state) { }
{{ texts().notifiesOn | transloco }}: @for (e of objectEvents(); track e.key) { @if (e.key === 'flapping') { } @else if (stateIcon[e.key]; as icon) { } @else { {{ stateShort[e.key] }} } {{ stateLabels[e.key] | transloco }} }
@for (tick of dayTicks(); track tick.label) { {{ tick.label }} }
@for (tick of hourTicks(); track tick.left) { {{ tick.label }} }
@let h = objectRow();
{{ h.name }} @for (o of h.options; track o) { @if (o === 'flapping') { } @else if (stateIcon[o]; as icon) { } @else { {{ stateShort[o] }} } }
@if (h.hostname) {
{{ h.hostname }}
}
{{ h.timeperiod }}
@if (h.excludes.length) {
{{ h.excludes.join(', ') }}
}
@for (s of separators(); track s.left) {
} @for (b of h.effective; track b.left) {
@if (showLabel(b.width)) { {{ b.label }} }
} @if (showExcludes()) { @for (b of h.excluded; track b.left) {
@if (showLabel(b.width)) { {{ b.label }} }
} } @if (nowLeft(); as now) {
}
@for (row of contactRows(); track row.id) {
@if (row.notificationsEnabled) { } @if (!row.notificationsEnabled) { } {{ row.name }} @for (o of row.options; track o) { @if (o === 'flapping') { } @else if (stateIcon[o]; as icon) { } @else { {{ stateShort[o] }} } }
{{ row.timeperiod }}
@if (row.excludes.length) {
{{ row.excludes.join(', ') }}
}
@for (v of objectOffVeil(); track v.left) {
} @for (s of separators(); track s.left) {
} @for (b of row.notified; track b.left) {
@if (showLabel(b.width)) { {{ b.label }} }
} @for (b of row.blocked; track b.left) {
@if (showLabel(b.width)) { {{ b.label }} }
} @if (showExcludes()) { @for (b of row.excluded; track b.left) {
@if (showLabel(b.width)) { {{ b.label }} }
} } @if (nowLeft(); as now) {
}
} @empty {
{{ 'No contacts assigned' | transloco }}
} @let cov = coverage();
{{ 'Coverage' | transloco }}
{{ texts().coverage | transloco }}
@for (s of separators(); track s.left) {
} @for (q of cov.quiet; track q.left) {
} @for (g of cov.gaps; track g.left) {
@if (showLabel(g.width)) { {{ g.label }} }
} @if (nowLeft(); as now) {
}
@for (sc of stateCoverage(); track sc.state) {
@if (sc.state === 'flapping') { } @else if (stateIcon[sc.state]; as icon) { } @else { {{ stateShort[sc.state] }} } {{ stateLabels[sc.state] | transloco }}
@for (s of separators(); track s.left) {
} @for (q of sc.quiet; track q.left) {
} @for (g of sc.gaps; track g.left) {
@if (showLabel(g.width)) { {{ g.label }} }
} @if (nowLeft(); as now) {
}
}
@for (tick of hourTicks(); track tick.left) { {{ tick.label }} }
@for (tick of dayTicks(); track tick.label) { {{ tick.label }} }
{{ texts().legendNotifies | transloco }} {{ 'Contact gets notified' | transloco }} {{ texts().legendBlocked | transloco }} {{ 'Excluded' | transloco }} {{ 'State not subscribed' | transloco }} {{ 'Nobody gets notified' | transloco }} {{ 'Intended silence' | transloco }}
{{ hoverText() || ( 'Hover a bar for details' | transloco ) }}
}