diff options
author | Simon Reis | 2020-11-11 17:09:20 +0000 |
---|---|---|
committer | Simon Reis | 2020-11-11 17:09:20 +0000 |
commit | cd0d5dc091ec69fdf297148cdc83e785c704fbc6 (patch) | |
tree | 77dd9c537474d10094a55cda655d94e5168298da | |
parent | 04acc03212a293f7c39758a0839e8ea3d2387e9e (diff) | |
download | org.eclipse.openk-usermodules.elogbookFE-cd0d5dc091ec69fdf297148cdc83e785c704fbc6.tar.gz org.eclipse.openk-usermodules.elogbookFE-cd0d5dc091ec69fdf297148cdc83e785c704fbc6.tar.xz org.eclipse.openk-usermodules.elogbookFE-cd0d5dc091ec69fdf297148cdc83e785c704fbc6.zip |
BTB-10 Als Benutzer möchte ich Indikatoren per Mausklick setzen können, damit die Meldungen im BTB sichtbar priorisiert werden können.
26 files changed, 464 insertions, 19 deletions
diff --git a/ng tools.txt b/ng tools.txt index a80d2bb..edef696 100644 --- a/ng tools.txt +++ b/ng tools.txt @@ -11,4 +11,5 @@ Build Production: ng build -prod Code coverage: -ng test --code-coverage --single-run
\ No newline at end of file +ng test --code-coverage --single-run +ng test --code-coverage --watch=false
\ No newline at end of file diff --git a/src/app/common/globals.ts b/src/app/common/globals.ts index eca474d..68d8b0a 100644 --- a/src/app/common/globals.ts +++ b/src/app/common/globals.ts @@ -18,6 +18,7 @@ export class Globals { static BASE_URL = '/elogbook/rest/beservice'; static BRANCHESNAME = 'BRANCHES'; static STATUSES = 'STATUSES'; + static PRIORITIES = 'PRIORITIES'; static FILTER_MATRIX = 'FILTER_MATRIX'; static DATE_RANGE_FUTURE = 'DATE_RANGE_FUTURE'; static DATE_RANGE_PAST = 'DATE_RANGE_PAST'; diff --git a/src/app/common/session-context.ts b/src/app/common/session-context.ts index 44818f2..01f1583 100644 --- a/src/app/common/session-context.ts +++ b/src/app/common/session-context.ts @@ -27,6 +27,7 @@ import { SortingState } from '../model/sorting-state'; import { JwtPayload } from '../model/jwt-payload'; import { UserMap } from '../common/user-map'; import { UserSettings } from 'app/model/user-settings'; +import { Priority } from 'app/model/priority'; @Injectable() export class SessionContext { @@ -210,6 +211,34 @@ export class SessionContext { return JSON.parse(statuses); } + setPriorities(priority: Priority[]): void { + localStorage.setItem(Globals.PRIORITIES, JSON.stringify(priority)); + } + + getPriorities(): Priority[] { + const priorities = localStorage.getItem(Globals.PRIORITIES); + return JSON.parse(priorities); + } + + getPrioById(id: number): Priority { + const priorities = this.getPriorities(); + if (priorities) { + const priority = priorities.filter(s => s.id === id)[0]; + if (priority) { + return priority; + } + } + return null; + } + + getPrioImagePathById(id: number): string{ + const priority = this.getPrioById(id); + if (priority) { + + } + return ""; + } + getStatusById(id: number): Status { const statuses = this.getStatuses(); if (statuses) { @@ -340,6 +369,7 @@ export class SessionContext { this.globalSearchFilter.statusClosedSelection = true; this.globalSearchFilter.fkRefBranch = -1; this.globalSearchFilter.fkRefGridTerritory = -1; + this.globalSearchFilter.fkRefNotificationPriority = -1; this.globalSearchFilter.fastSearchSelected = true; localStorage.setItem(Globals.SEARCHOBJECT, JSON.stringify(this.globalSearchFilter)); } diff --git a/src/app/dialogs/entry/entry.component.html b/src/app/dialogs/entry/entry.component.html index ff9c16e..a7cb628 100644 --- a/src/app/dialogs/entry/entry.component.html +++ b/src/app/dialogs/entry/entry.component.html @@ -57,6 +57,19 @@ <tbody> <tr> <td class="text-right"> + <label>Priorität</label> + </td> + <td class="text-left" style="width: 17%"> + <div class="form-group"> + <select class="form-control" [(ngModel)]="notification.fkRefNotificationPriority" + (ngModelChange)="notification.fkRefNotificationPriority = $event ? $event : null" name="prioSelection"> + <option value=""></option> + <option *ngFor="let priority of priorities" value="{{ priority.id }}">{{ priority.name }}</option> + </select> + </div> + </td> + <td></td> + <td class="text-right"> <label>Bereich</label> </td> <td class="text-left" style="width: 17%"> diff --git a/src/app/dialogs/entry/entry.component.ts b/src/app/dialogs/entry/entry.component.ts index 2c6a6d3..d5d877c 100644 --- a/src/app/dialogs/entry/entry.component.ts +++ b/src/app/dialogs/entry/entry.component.ts @@ -26,6 +26,7 @@ import { BannerMessage } from '../../common/banner-message'; import { StatusEn, BannerMessageStatusEn, ErrorType } from '../../common/enums'; import { FormattedTimestampPipe } from '../../common-components/pipes/formatted-timestamp.pipe'; import { MessageService } from '../../services/message.service'; +import { Priority } from 'app/model/priority'; @Component({ selector: 'app-entry', templateUrl: './entry.component.html', @@ -45,6 +46,7 @@ export class EntryComponent implements OnInit { gridTerritories: GridTerritory[]; branches: Branch[]; statuses: Status[]; + priorities: Priority[]; defaultBranch = ''; defaultGridTerritory = ''; @@ -60,6 +62,7 @@ export class EntryComponent implements OnInit { this.gridTerritories = this.sessionContext.getMasterGridTerritories(); this.branches = this.sessionContext.getBranches(); this.statuses = this.sessionContext.getStatuses(); + this.priorities = this.sessionContext.getPriorities(); this.user = this.sessionContext.getCurrUser(); this.daterangepickerConfig.settings = { diff --git a/src/app/filter/filter.component.html b/src/app/filter/filter.component.html index 007f1ad..bed93eb 100644 --- a/src/app/filter/filter.component.html +++ b/src/app/filter/filter.component.html @@ -67,7 +67,7 @@ mapUserName(getResponsiblity(responsibilityRow, 'W').responsibleUser) }}</span> </td> <td> - <span class="filterCheckbox"><input type="checkbox" *ngIf="responsibilityRow && getResponsiblity(responsibilityRow,'W')" + <span class="filterCheckbox"><input type="checkbox" *ngIf="responsibilityRow && getResponsiblity(responsibilityRow,'Z')" (change)="responsibilitiesSelectionChanged(true)" class="responsibility-checkbox-wr" [(ngModel)]="getResponsiblity(responsibilityRow,'Z').isActive"></span> <span class="filterUsername" *ngIf="responsibilityRow && getResponsiblity(responsibilityRow,'Z')">{{ mapUserName(getResponsiblity(responsibilityRow, 'Z').responsibleUser) }}</span> @@ -76,8 +76,7 @@ </tbody> </table> <button id="selectAllButton" class="btn btn-primary btn-sm" (click)="selectAllResponsibilities()">Alle setzen</button> - <button id="deselectAllButton" class="btn btn-primary btn-sm" (click)="deselectAllResponsibilities()">Alle - löschen</button> + <button id="deselectAllButton" class="btn btn-primary btn-sm" (click)="deselectAllResponsibilities()">Alle löschen</button> <button id="resetAllButton" class="btn btn-primary btn-sm" (click)="resetToDefaultAllResponsibilities()">Filter & Sortierung zurücksetzen</button> </div> </div> diff --git a/src/app/lists/abstract-list/abstract-list.component.css b/src/app/lists/abstract-list/abstract-list.component.css index ba4aa70..2849492 100644 --- a/src/app/lists/abstract-list/abstract-list.component.css +++ b/src/app/lists/abstract-list/abstract-list.component.css @@ -52,6 +52,14 @@ td { padding-right: 6px; } +.notification-tab-prio-col { + line-height: 1.42857143; + width: 3%; + min-width: 40px; + max-width: 50px; + text-align: center; +} + .notification-tab-first-col { line-height: 1.42857143; width: 12%; diff --git a/src/app/lists/abstract-list/abstract-list.component.ts b/src/app/lists/abstract-list/abstract-list.component.ts index 26c606c..4075a4f 100644 --- a/src/app/lists/abstract-list/abstract-list.component.ts +++ b/src/app/lists/abstract-list/abstract-list.component.ts @@ -374,10 +374,12 @@ export class AbstractListComponent implements OnInit, OnChanges, OnDestroy { case 'fkRefGridTerritory': return this.sessionContext.getGridTerritoryById(notification.fkRefGridTerritory) ? this.sessionContext.getGridTerritoryById(notification.fkRefGridTerritory).name.toLowerCase() : null; + case 'fkRefNotificationPriority': + return this.sessionContext.getPrioById(notification.fkRefNotificationPriority) ? + this.sessionContext.getPrioById(notification.fkRefNotificationPriority).weighting * -1 : null; default: return notification[columnName] ? notification[columnName].toLowerCase() : null; } - } public getListHelperTool() { diff --git a/src/app/lists/finished-notifications/finished-notifications.component.html b/src/app/lists/finished-notifications/finished-notifications.component.html index 2c3f975..7386951 100644 --- a/src/app/lists/finished-notifications/finished-notifications.component.html +++ b/src/app/lists/finished-notifications/finished-notifications.component.html @@ -42,6 +42,9 @@ <th *ngIf="withCheckboxes" class="notification-check-col"> <input type="checkbox" [(ngModel)]="selectAll" (change)="changeAllSelection()"> </th> + <th class="notification-tab-prio-col"> + <app-sorting [initColumnName]="'fkRefNotificationPriority'" (click)=" sort('fkRefNotificationPriority')" [isDesc]="sortingState?.isDesc" [defaultState]="sortingState?.defaultState" [columnName]="sortingState?.column">Prio</app-sorting> + </th> <th class="notification-tab-first-col"> <app-sorting [initColumnName]="'beginDate'" (click)=" sort('beginDate')" [isDesc]="sortingState?.isDesc" [defaultState]="sortingState?.defaultState" [columnName]="sortingState?.column">Beginnt am</app-sorting> </th> @@ -65,12 +68,16 @@ </thead> <tbody> <tr *ngFor="let notification of notifications" class='notification_row_testable'> - <td [attr.colspan]="(withCheckboxes && withEditButtons)?9:8" style="padding:0px;"> + <td [attr.colspan]="(withCheckboxes && withEditButtons)?10:9" style="padding:0px;"> <table style="width:100%"> <tr> <td *ngIf="withCheckboxes" class="notification-check-col"> <input type="checkbox" [(ngModel)]="notification.selected" (change)="selectionChanged()"> </td> + <td class="notification-tab-prio-col"> + <img *ngIf="sessionContext.getPrioById(notification.fkRefNotificationPriority)?.imageName" + src="assets/img/{{sessionContext.getPrioById(notification.fkRefNotificationPriority)?.imageName}}" width="18"> + </td> <td class="notification-tab-first-col" ngInit="notification.historyOpen=false"> <a *ngIf="notification.version > 1 && isCollapsible" href="#history_finishedNot_{{notification.id}}" data-toggle="collapse" class="glyphicon glyphicon-menu-down glyphicon-menu-up" (click)="toggleHistoryTab(notification)" [ngClass]="{'glyphicon-menu-up': notification.historyOpen, 'glyphicon-menu-down': !notification.historyOpen}" @@ -108,10 +115,14 @@ </td> </tr> <tr id="history_openNot_{{notification.id}}" [ngClass]="{'panel-collapse': notification.historyOpen}" *ngIf="isCollapsible && notification.historyOpen"> - <td [attr.colspan]="8"> + <td [attr.colspan]="9"> <table style="width:100%;" class="notificationVersions"> <tbody> <tr *ngFor="let notificationVersion of notification.decoratorNotificationVersions"> + <td class="notification-tab-prio-col"> + <img *ngIf="sessionContext.getPrioById(notificationVersion.fkRefNotificationPriority)?.imageName" + src="assets/img/{{sessionContext.getPrioById(notificationVersion.fkRefNotificationPriority)?.imageName}}" width="18"> + </td> <td class="notification-tab-version-col"> <span> {{ notificationVersion.beginDate | formattedTimestamp: 'DD.MM.YYYY HH:mm' }} diff --git a/src/app/lists/future-notifications/future-notifications.component.html b/src/app/lists/future-notifications/future-notifications.component.html index 4dfd4a1..58754e6 100644 --- a/src/app/lists/future-notifications/future-notifications.component.html +++ b/src/app/lists/future-notifications/future-notifications.component.html @@ -45,6 +45,9 @@ <th *ngIf="withCheckboxes" class="notification-check-col"> <input type="checkbox" [(ngModel)]="selectAll" (change)="changeAllSelection()"> </th> + <th class="notification-tab-prio-col"> + <app-sorting [initColumnName]="'fkRefNotificationPriority'" (click)=" sort('fkRefNotificationPriority')" [isDesc]="sortingState?.isDesc" [defaultState]="sortingState?.defaultState" [columnName]="sortingState?.column">Prio</app-sorting> + </th> <th class="notification-tab-first-col"> <app-sorting [initColumnName]="'beginDate'" (click)=" sort('beginDate')" [isDesc]="sortingState?.isDesc" [defaultState]="sortingState?.defaultState" [columnName]="sortingState?.column">Beginnt am</app-sorting> </th> @@ -68,13 +71,17 @@ </thead> <tbody> <tr *ngFor="let notification of notifications"> - <td [attr.colspan]="(withCheckboxes && withEditButtons)?8:7" style="padding:0px;"> + <td [attr.colspan]="(withCheckboxes && withEditButtons)?9:8" style="padding:0px;"> <table style="width:100%"> <tbody> <tr> <td *ngIf="withCheckboxes" class="notification-check-col" > <input type="checkbox" [(ngModel)]="notification.selected" (change)="selectionChanged()"> </td> + <td class="notification-tab-prio-col"> + <img *ngIf="sessionContext.getPrioById(notification.fkRefNotificationPriority)?.imageName" + src="assets/img/{{sessionContext.getPrioById(notification.fkRefNotificationPriority)?.imageName}}" width="18"> + </td> <td class="notification-tab-first-col" ngInit="notification.historyOpen=false"> <a *ngIf="notification.version > 1 && isCollapsible" href="#history_futureNot_{{notification.id}}" data-toggle="collapse" class="glyphicon glyphicon-menu-down glyphicon-menu-up" (click)="toggleHistoryTab(notification)" [ngClass]="{'glyphicon-menu-up': notification.historyOpen, 'glyphicon-menu-down': !notification.historyOpen}" @@ -109,10 +116,14 @@ </td> </tr> <tr id="history_openNot_{{notification.id}}" [ngClass]="{'panel-collapse': notification.historyOpen}" *ngIf="isCollapsible && notification.historyOpen"> - <td colspan="8"> + <td colspan="9"> <table style="width:100%;" class="notificationVersions"> <tbody> <tr *ngFor="let notificationVersion of notification.decoratorNotificationVersions"> + <td class="notification-tab-prio-col"> + <img *ngIf="sessionContext.getPrioById(notificationVersion.fkRefNotificationPriority)?.imageName" + src="assets/img/{{sessionContext.getPrioById(notificationVersion.fkRefNotificationPriority)?.imageName}}" width="18"> + </td> <td class="notification-tab-version-col">{{ notificationVersion.beginDate | formattedTimestamp: 'DD.MM.YYYY HH:mm' }}</td> <td class="notification-tab-branch" > {{ sessionContext.getBrancheById(notificationVersion.fkRefBranch)?.name }} diff --git a/src/app/lists/open-notifications/open-notifications.component.html b/src/app/lists/open-notifications/open-notifications.component.html index 28bdb21..1ea2ae6 100644 --- a/src/app/lists/open-notifications/open-notifications.component.html +++ b/src/app/lists/open-notifications/open-notifications.component.html @@ -25,6 +25,9 @@ <th *ngIf="withCheckboxes" class="notification-check-col"> <input type="checkbox" [(ngModel)]="selectAll" (change)="changeAllSelection()"> </th> + <th class="notification-tab-prio-col"> + <app-sorting [initColumnName]="'fkRefNotificationPriority'" (click)=" sort('fkRefNotificationPriority')" [isDesc]="sortingState?.isDesc" [defaultState]="sortingState?.defaultState" [columnName]="sortingState?.column">Prio</app-sorting> + </th> <th class="notification-tab-first-col"> <app-sorting [initColumnName]="'beginDate'" (click)=" sort('beginDate')" [isDesc]="sortingState?.isDesc" [defaultState]="sortingState?.defaultState" [columnName]="sortingState?.column">Beginnt am</app-sorting> </th> @@ -51,13 +54,17 @@ </thead> <tbody> <tr *ngFor="let notification of notifications"> - <td [attr.colspan]="(withCheckboxes && withEditButtons)?9:8" style="padding:0px;"> + <td [attr.colspan]="(withCheckboxes && withEditButtons)?10:9" style="padding:0px;"> <table style="width:100%"> <tbody> <tr> <td *ngIf="withCheckboxes" class="notification-check-col"> <input type="checkbox" [(ngModel)]="notification.selected" (change)="selectionChanged()"> </td> + <td class="notification-tab-prio-col"> + <img *ngIf="sessionContext.getPrioById(notification.fkRefNotificationPriority)?.imageName" + src="assets/img/{{sessionContext.getPrioById(notification.fkRefNotificationPriority)?.imageName}}" width="18"> + </td> <td class="notification-tab-first-col" ngInit="notification.historyOpen=false"> <a *ngIf="notification.version > 1 && isCollapsible" href="#history_openNot_{{notification.id}}" data-toggle="collapse" class="glyphicon glyphicon-menu-down glyphicon-menu-up" (click)="toggleHistoryTab(notification)" [ngClass]="{'glyphicon-menu-up': notification.historyOpen, 'glyphicon-menu-down': !notification.historyOpen}" @@ -109,10 +116,14 @@ </td> </tr> <tr id="history_openNot_{{notification.id}}" [ngClass]="{'panel-collapse': notification.historyOpen}" *ngIf="isCollapsible && notification.historyOpen"> - <td [attr.colspan]="8"> + <td [attr.colspan]="9"> <table style="width:100%;" class="notificationVersions"> <tbody> <tr *ngFor="let notificationVersion of notification.decoratorNotificationVersions"> + <td class="notification-tab-prio-col"> + <img *ngIf="sessionContext.getPrioById(notificationVersion.fkRefNotificationPriority)?.imageName" + src="assets/img/{{sessionContext.getPrioById(notificationVersion.fkRefNotificationPriority)?.imageName}}" width="18"> + </td> <td class="notification-tab-version-col">{{ notificationVersion.beginDate | formattedTimestamp: 'DD.MM.YYYY HH:mm' }}</td> <td class="notification-tab-branch"> <span *ngIf="sessionContext.getBrancheById(notificationVersion.fkRefBranch)"> diff --git a/src/app/lists/search-result-list/search-result-list.component.html b/src/app/lists/search-result-list/search-result-list.component.html index e3f7474..49fa698 100644 --- a/src/app/lists/search-result-list/search-result-list.component.html +++ b/src/app/lists/search-result-list/search-result-list.component.html @@ -25,6 +25,10 @@ <th *ngIf="withCheckboxes" class="notification-check-col"> <input type="checkbox" [(ngModel)]="selectAll" (change)="changeAllSelection()"> </th> + <th class="notification-tab-prio-col"> + <app-sorting [initColumnName]="'fkRefNotificationPriority'" (click)=" sort('fkRefNotificationPriority')" [isDesc]="sortingState?.isDesc" + [defaultState]="sortingState?.defaultState" [columnName]="sortingState?.column">Prio</app-sorting> + </th> <th class="search-result-tab-first-col"> <app-sorting [initColumnName]="'beginDate'" (click)="sort('beginDate')" [isDesc]="sortingState?.isDesc" [defaultState]="sortingState?.defaultState" [columnName]="sortingState?.column">Beginnt am</app-sorting> @@ -61,13 +65,17 @@ </thead> <tbody> <tr *ngFor="let notification of notifications; let i = index"> - <td colspan="9" style="padding:0px;" border=3> + <td colspan="10" style="padding:0px;" border=3> <table style="width:100%"> <tbody> <tr [ngClass]="{'incident-id-change' : notifications[i] && notifications[i+1] && notifications[i].incidentId !== notifications[i+1].incidentId}"> <td *ngIf="withCheckboxes" class="notification-check-col"> <input type="checkbox" [(ngModel)]="notification.selected" (change)="selectionChanged()"> </td> + <td class="notification-tab-prio-col"> + <img *ngIf="sessionContext.getPrioById(notification.fkRefNotificationPriority)?.imageName" + src="assets/img/{{sessionContext.getPrioById(notification.fkRefNotificationPriority)?.imageName}}" width="18"> + </td> <td class="search-result-tab-first-col">{{ notification.beginDate | formattedTimestamp: 'DD.MM.YYYY HH:mm' }} </td> diff --git a/src/app/model/global-search-filter.ts b/src/app/model/global-search-filter.ts index cf8a0a9..8227da1 100644 --- a/src/app/model/global-search-filter.ts +++ b/src/app/model/global-search-filter.ts @@ -21,4 +21,5 @@ export class GlobalSearchFilter { fkRefBranch: number; fkRefGridTerritory: number; fastSearchSelected: boolean; + fkRefNotificationPriority: number; }
\ No newline at end of file diff --git a/src/app/model/notification.ts b/src/app/model/notification.ts index a91ace2..18b9574 100644 --- a/src/app/model/notification.ts +++ b/src/app/model/notification.ts @@ -13,6 +13,7 @@ export class Notification { id: number; selected: boolean; incidentId: number; + fkRefNotificationPriority: number; status: string; fkRefBranch: number; fkRefGridTerritory: number; diff --git a/src/app/model/priority.ts b/src/app/model/priority.ts new file mode 100644 index 0000000..e17db1b --- /dev/null +++ b/src/app/model/priority.ts @@ -0,0 +1,17 @@ +/** +****************************************************************************** +* Copyright © 2017-2018 PTA GmbH. +* All rights reserved. This program and the accompanying materials +* are made available under the terms of the Eclipse Public License v1.0 +* which accompanies this distribution, and is available at +* +* http://www.eclipse.org/legal/epl-v10.html +* +****************************************************************************** +*/ +export class Priority { + id: number; + name: string; + weighting: number; + imageName: string; +} diff --git a/src/app/pages/search/search.component.html b/src/app/pages/search/search.component.html index 7d442b2..962b5ec 100644 --- a/src/app/pages/search/search.component.html +++ b/src/app/pages/search/search.component.html @@ -64,7 +64,7 @@ </td> <td colspan="2"></td> </tr> - <tr height="60px"> + <tr> <td class="text-right"><label>Bereich</label></td> <td class="text-left" style="width: 17%"> <div class="form-group"> @@ -80,11 +80,11 @@ </td> <td width="160"> <span class="filterCheckbox"><input type="checkbox" - class="responsibility-checkbox-gr" [(ngModel)]="currentSearchFilter.statusOpenSelection" name="statusOpen"></span> offen + class="responsibility-checkbox-gr" [(ngModel)]="currentSearchFilter.statusOpenSelection" name="statusOpen"></span>offen </td> <td width="160"> <span class="filterCheckbox"><input type="checkbox" - class="responsibility-checkbox-gr" [(ngModel)]="currentSearchFilter.statusInWorkSelection" name="statusInWork"></span> in Arbeit + class="responsibility-checkbox-gr" [(ngModel)]="currentSearchFilter.statusInWorkSelection" name="statusInWork"></span>in Arbeit </td> <td colspan="4"></td> </tr> @@ -101,11 +101,28 @@ <td colspan="4" style="border: none;"></td> <td width="160" style="border: none;"> <span class="filterCheckbox"><input type="checkbox" - class="responsibility-checkbox-gr" [(ngModel)]="currentSearchFilter.statusDoneSelection" name="statusDone"></span> erledigt + class="responsibility-checkbox-gr" [(ngModel)]="currentSearchFilter.statusDoneSelection" name="statusDone"></span>erledigt </td> <td width="160" style="border: none;"> <span class="filterCheckbox"><input type="checkbox" - class="responsibility-checkbox-gr" [(ngModel)]="currentSearchFilter.statusClosedSelection" name="statusClosed"></span> geschlossen + class="responsibility-checkbox-gr" [(ngModel)]="currentSearchFilter.statusClosedSelection" name="statusClosed"></span>geschlossen + </td> + <td style="border: none;"></td> + </tr> + <tr> + <td class="text-right" style="border: none;"><label>Priorität</label></td> + <td class="text-left" style="width: 17%; border: none;"> + <div class="form-group"> + <select class="form-control" [(ngModel)]="currentSearchFilter.fkRefNotificationPriority" name="prioSelection"> + <option value="-1">Alle</option> + <option *ngFor="let priority of priorities" value="{{ priority.id }}">{{ priority.name }}</option> + </select> + </div> + </td> + <td colspan="4" style="border: none;"></td> + <td style="border: none;"> + </td> + <td style="border: none;"> </td> <td style="border: none;"></td> </tr> @@ -113,7 +130,7 @@ <td class="text-right"><label>Schnellsuche</label></td> <td colspan="4"> <span class="filterCheckbox"><input type="checkbox" - class="responsibility-checkbox-gr" [(ngModel)]="currentSearchFilter.fastSearchSelected" name="fastSearchSelected"></span> Schnellsuche ausführen + class="responsibility-checkbox-gr" [(ngModel)]="currentSearchFilter.fastSearchSelected" name="fastSearchSelected"></span>Schnellsuche ausführen </td> <td colspan="6"></td> </tr> diff --git a/src/app/pages/search/search.component.ts b/src/app/pages/search/search.component.ts index f091ba1..04ee699 100644 --- a/src/app/pages/search/search.component.ts +++ b/src/app/pages/search/search.component.ts @@ -30,6 +30,7 @@ import { Observable } from 'rxjs/Observable'; import 'rxjs/add/observable/throw'; import { SearchResultService } from '../../services/search-result.service'; import { slideInOpacity } from '../../common/router.animations'; +import { Priority } from 'app/model/priority'; @Component({ selector: 'app-search', @@ -49,6 +50,7 @@ export class SearchComponent implements OnInit { gridTerritories: GridTerritory[]; branches: Branch[]; statuses: Status[]; + priorities: Priority[]; public globalSearchFilter: GlobalSearchFilter; public currentSearchFilter: GlobalSearchFilter = new GlobalSearchFilter(); @@ -65,6 +67,7 @@ export class SearchComponent implements OnInit { this.gridTerritories = this.sessionContext.getMasterGridTerritories(); this.branches = this.sessionContext.getBranches(); this.statuses = this.sessionContext.getStatuses(); + this.priorities = this.sessionContext.getPriorities(); this.currentSearchFilter = this.sessionContext.getGlobalSearchFilter(); } diff --git a/src/app/services/base-data.service.ts b/src/app/services/base-data.service.ts index 6f63a41..41b360a 100644 --- a/src/app/services/base-data.service.ts +++ b/src/app/services/base-data.service.ts @@ -24,6 +24,7 @@ import { Status } from '../model/status'; import { GridTerritory } from '../model/gridterritory'; import { GRIDTERRITORIES } from '../test-data/gridterritories'; import { MessageService } from './message.service'; +import { Priority } from 'app/model/priority'; @Injectable() export class BaseDataService extends BaseHttpService { @@ -45,6 +46,16 @@ export class BaseDataService extends BaseHttpService { .catch((error) => { return super.handleErrorPromise(error); }); } + public getPriorities(): Observable<Priority[]> { + const headers = new Headers(); + const url = super.getBaseUrl() + '/notificationPriorities/'; + this.createCommonHeaders(headers, this._sessionContext); + + return this._http.get(url, { headers: headers }) + .map(res => super.extractData(res, this._sessionContext)) + .catch((error) => { return super.handleErrorPromise(error); }); + } + public getBranches(): Observable<Branch[]> { const headers = new Headers(); const url = super.getBaseUrl() + '/branches/'; diff --git a/src/app/services/jobs/base-data-loader.service.spec.ts b/src/app/services/jobs/base-data-loader.service.spec.ts index e3164b9..98fdb9f 100644 --- a/src/app/services/jobs/base-data-loader.service.spec.ts +++ b/src/app/services/jobs/base-data-loader.service.spec.ts @@ -20,15 +20,18 @@ import { SessionContext } from '../../common/session-context'; import { BaseDataService } from '../base-data.service'; import { USERS} from '../../test-data/users'; import { BaseDataLoaderService } from './base-data-loader.service'; +import { Priority } from 'app/model/priority'; describe('BaseDataLoaderService', () => { class MockDataService extends AbstractMockObservableService { public statusList: Status[]; public branchList: Branch[]; + public prioritiesList: Priority[]; public gridTerritoryList: GridTerritory[]; public statusError; public branchError; public gridTerritoryError; + public priorityError; getStatuses() { const newService = new MockDataService(); @@ -48,6 +51,13 @@ describe('BaseDataLoaderService', () => { newService.error = this.gridTerritoryError; return newService; } + + getPriorities() { + const newService = new MockDataService(); + newService.content = this.prioritiesList; + newService.error = this.priorityError; + return newService; + } } class MockUserService extends AbstractMockObservableService { @@ -87,10 +97,11 @@ describe('BaseDataLoaderService', () => { })); - fit('should be load the base-data after MSG_LOG_IN_SUCCEEDED-Message "', fakeAsync(() => { + it('should be load the base-data after MSG_LOG_IN_SUCCEEDED-Message "', fakeAsync(() => { mockDataService.statusList = [{ id: 1, name: 'offen' }]; mockDataService.branchList = [{ id: 1, name: 'W', description: 'Wasser' }]; mockDataService.gridTerritoryList = [{ id: 1, name: 'MA', description: 'Mannheim', fkRefMaster: 1 }]; + mockDataService.prioritiesList = [{ id: 1, name: 'Wichtig', weighting: 30, imageName: "prio-important-icon-web.svg" }]; mockUserService.userList = USERS; expect(sessionContext.getStatuses()).toBeNull(); diff --git a/src/app/services/jobs/base-data-loader.service.ts b/src/app/services/jobs/base-data-loader.service.ts index 7ddd1a6..ec09242 100644 --- a/src/app/services/jobs/base-data-loader.service.ts +++ b/src/app/services/jobs/base-data-loader.service.ts @@ -48,6 +48,12 @@ export class BaseDataLoaderService { console.log(error); }); + this.baseDataService.getPriorities() + .subscribe(res => this.sessionContext.setPriorities(res), + error => { + console.log(error); + }); + this.baseDataService.getGridTerritories() .subscribe(res => this.sessionContext.setGridTerritories(res), error => { diff --git a/src/app/test-data/notifications.ts b/src/app/test-data/notifications.ts index 64d2c43..a6f77c2 100644 --- a/src/app/test-data/notifications.ts +++ b/src/app/test-data/notifications.ts @@ -17,6 +17,7 @@ export const DUMMY_CREATED_NOTIFICATION: Notification = { fkRefBranch: 1, fkRefGridTerritory: 1, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', @@ -43,6 +44,7 @@ export const DUMMY_UPDATED_NOTIFICATION: Notification = { fkRefBranch: 1, fkRefGridTerritory: 1, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', @@ -69,6 +71,7 @@ export const DUMMY_NOTIFICATION: Notification = { fkRefBranch: 1, fkRefGridTerritory: 2, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', @@ -96,6 +99,7 @@ export const CURRENT_NOTIFICATIONS: Notification[] = [ fkRefBranch: 1, fkRefGridTerritory: 1, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', @@ -122,6 +126,7 @@ export const CURRENT_NOTIFICATIONS: Notification[] = [ fkRefBranch: 1, fkRefGridTerritory: 1, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', @@ -151,6 +156,7 @@ export const FUTURE_NOTIFICATIONS: Notification[] = [ fkRefBranch: 2, fkRefGridTerritory: 1, fkRefNotificationStatus: 1, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', @@ -177,6 +183,7 @@ export const FUTURE_NOTIFICATIONS: Notification[] = [ fkRefBranch: 1, fkRefGridTerritory: 1, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', @@ -206,6 +213,7 @@ export const OPEN_NOTIFICATIONS: Notification[] = [ fkRefBranch: 1, fkRefGridTerritory: 1, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', @@ -232,6 +240,7 @@ export const OPEN_NOTIFICATIONS: Notification[] = [ fkRefBranch: 1, fkRefGridTerritory: 2, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theobald', @@ -258,6 +267,7 @@ export const OPEN_NOTIFICATIONS: Notification[] = [ fkRefBranch: 1, fkRefGridTerritory: 2, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo-Bold', @@ -284,6 +294,7 @@ export const OPEN_NOTIFICATIONS: Notification[] = [ fkRefBranch: 1, fkRefGridTerritory: 1, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theofrank', @@ -313,6 +324,7 @@ export const FINISHED_NOTIFICATIONS: Notification[] = [ fkRefBranch: 1, fkRefGridTerritory: 1, fkRefNotificationStatus: 4, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'christobal', @@ -339,6 +351,7 @@ export const FINISHED_NOTIFICATIONS: Notification[] = [ fkRefBranch: 2, fkRefGridTerritory: 1, fkRefNotificationStatus: 4, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'frankobal', @@ -365,6 +378,7 @@ export const FINISHED_NOTIFICATIONS: Notification[] = [ fkRefBranch: 1, fkRefGridTerritory: 1, fkRefNotificationStatus: 3, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', @@ -394,6 +408,7 @@ export const NOTIFICATION_VERSIONS: Notification[] = [ fkRefBranch: 2, fkRefGridTerritory: 1, fkRefNotificationStatus: 1, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'christobal', @@ -420,6 +435,7 @@ export const NOTIFICATION_VERSIONS: Notification[] = [ fkRefBranch: 2, fkRefGridTerritory: 1, fkRefNotificationStatus: 1, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'frankobal', @@ -446,6 +462,7 @@ export const NOTIFICATION_VERSIONS: Notification[] = [ fkRefBranch: 2, fkRefGridTerritory: 1, fkRefNotificationStatus: 1, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', diff --git a/src/app/test-data/reminder-notifications.ts b/src/app/test-data/reminder-notifications.ts index 9fbf952..ebe24bc 100644 --- a/src/app/test-data/reminder-notifications.ts +++ b/src/app/test-data/reminder-notifications.ts @@ -17,6 +17,7 @@ export const DUMMY_CREATED_REMINDER_NOTIFICATION: Notification = { fkRefBranch: 1, fkRefGridTerritory: 1, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', @@ -43,6 +44,7 @@ export const DUMMY_UPDATED_REMINDER_NOTIFICATION: Notification = { fkRefBranch: 1, fkRefGridTerritory: 1, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', @@ -69,6 +71,7 @@ export const DUMMY_REMINDER_NOTIFICATION: Notification = { fkRefBranch: 1, fkRefGridTerritory: 2, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', @@ -96,6 +99,7 @@ export const REMINDER_NOTIFICATIONS: Notification[] = [ fkRefBranch: 1, fkRefGridTerritory: 1, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', @@ -122,6 +126,7 @@ export const REMINDER_NOTIFICATIONS: Notification[] = [ fkRefBranch: 1, fkRefGridTerritory: 1, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', @@ -148,6 +153,7 @@ export const REMINDER_NOTIFICATIONS: Notification[] = [ fkRefBranch: 1, fkRefGridTerritory: 2, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo-Bold', diff --git a/src/app/test-data/search-result-notifications.ts b/src/app/test-data/search-result-notifications.ts index 482b7f2..e5112fb 100644 --- a/src/app/test-data/search-result-notifications.ts +++ b/src/app/test-data/search-result-notifications.ts @@ -18,6 +18,7 @@ export const DUMMY_UPDATED_NOTIFICATION: Notification = { fkRefBranch: 1, fkRefGridTerritory: 1, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', @@ -46,6 +47,7 @@ export const SEARCH_RESULT_NOTIFICATIONS: Notification[] = [ fkRefBranch: 1, fkRefGridTerritory: 1, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', @@ -72,6 +74,7 @@ export const SEARCH_RESULT_NOTIFICATIONS: Notification[] = [ fkRefBranch: 1, fkRefGridTerritory: 2, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theobald', @@ -98,6 +101,7 @@ export const SEARCH_RESULT_NOTIFICATIONS: Notification[] = [ fkRefBranch: 1, fkRefGridTerritory: 2, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo-Bold', @@ -127,6 +131,7 @@ export const SEARCH_RESULT_NOTIFICATIONS2: Notification[] = [ fkRefBranch: 1, fkRefGridTerritory: 1, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo', @@ -153,6 +158,7 @@ export const SEARCH_RESULT_NOTIFICATIONS2: Notification[] = [ fkRefBranch: 2, fkRefGridTerritory: 2, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theobald', @@ -179,6 +185,7 @@ export const SEARCH_RESULT_NOTIFICATIONS2: Notification[] = [ fkRefBranch: 3, fkRefGridTerritory: 2, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theo-Bold', @@ -205,6 +212,7 @@ export const SEARCH_RESULT_NOTIFICATIONS2: Notification[] = [ fkRefBranch: 4, fkRefGridTerritory: 1, fkRefNotificationStatus: 2, + fkRefNotificationPriority: null, beginDate: '2017-01-16T14:01:001', modDate: null, modUser: 'theofrank', diff --git a/src/assets/img/prio-important-icon-web.svg b/src/assets/img/prio-important-icon-web.svg new file mode 100644 index 0000000..955e36a --- /dev/null +++ b/src/assets/img/prio-important-icon-web.svg @@ -0,0 +1,85 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="60" + height="60" + version="1.1" + viewBox="0 0 15.874857 15.874857" + id="svg14" + sodipodi:docname="prio-important-icon-web.svg" + inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"> + <defs + id="defs18" /> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="2560" + inkscape:window-height="1377" + id="namedview16" + showgrid="true" + inkscape:zoom="12" + inkscape:cx="23.72977" + inkscape:cy="23.144116" + inkscape:window-x="-8" + inkscape:window-y="-8" + inkscape:window-maximized="1" + inkscape:current-layer="g10" + inkscape:document-rotation="0" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0"> + <inkscape:grid + type="xygrid" + id="grid10" + originx="4.6186399e-06" + originy="-3.5725197e-07" /> + </sodipodi:namedview> + <metadata + id="metadata2"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + transform="translate(-101.4242,-161.14419)" + id="g10"> + <g + id="g15" + transform="matrix(3.0000108,0,0,3.0000108,-202.8495,-322.29012)"> + <path + id="circle4" + style="fill:#ff0000;paint-order:stroke fill markers" + d="m 106.7158,163.78999 a 2.6458001,2.6458001 0 0 1 -2.6458,2.6458 2.6458001,2.6458001 0 0 1 -2.6458,-2.6458 2.6458001,2.6458001 0 0 1 2.6458,-2.6458 2.6458001,2.6458001 0 0 1 2.6458,2.6458 z" /> + <g + transform="matrix(0.5996,0,0,0.5996,185.26,183.24)" + fill="#ffffff" + style="white-space:pre;shape-inside:url(#rect857-5)" + aria-label="!" + id="g8"> + <path + d="m -135.87,-32.036 -0.1323,-1.9802 q -0.0372,-0.57878 -0.0372,-0.83096 0,-0.34313 0.17776,-0.5333 0.18191,-0.1943 0.47543,-0.1943 0.35553,0 0.47542,0.24805 0.11989,0.24391 0.11989,0.70693 0,0.27285 -0.0289,0.55397 l -0.17777,2.0381 q -0.0289,0.3638 -0.12402,0.55811 -0.0951,0.1943 -0.31419,0.1943 -0.22324,0 -0.31006,-0.18604 -0.0868,-0.19017 -0.12402,-0.57464 z m 0.45888,2.7202 q -0.25218,0 -0.44235,-0.16123 -0.18603,-0.16536 -0.18603,-0.45889 0,-0.25632 0.17776,-0.43408 0.18191,-0.1819 0.44235,-0.1819 0.26045,0 0.44235,0.1819 0.18604,0.17777 0.18604,0.43408 0,0.28939 -0.18604,0.45475 -0.18603,0.16536 -0.43408,0.16536 z" + fill="#ffffff" + id="path6" /> + </g> + </g> + </g> +</svg> diff --git a/src/assets/img/prio-info-icon-web.svg b/src/assets/img/prio-info-icon-web.svg new file mode 100644 index 0000000..a72af5d --- /dev/null +++ b/src/assets/img/prio-info-icon-web.svg @@ -0,0 +1,100 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="60" + height="60" + version="1.1" + viewBox="0 0 15.874857 15.874857" + id="svg20" + sodipodi:docname="prio-info-icon-web.svg" + inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"> + <defs + id="defs24" /> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="2560" + inkscape:window-height="1377" + id="namedview22" + showgrid="false" + inkscape:zoom="12" + inkscape:cx="-20.847125" + inkscape:cy="26.99095" + inkscape:window-x="-8" + inkscape:window-y="-8" + inkscape:window-maximized="1" + inkscape:current-layer="g18" + inkscape:document-rotation="0" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0" /> + <metadata + id="metadata2"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + transform="translate(-93.993195,-121.2042)" + id="g18"> + <path + id="circle4" + style="fill:#337ab7;stroke-width:3.00001;paint-order:stroke fill markers" + d="m 109.86805,129.14163 a 7.9374289,7.9374289 0 0 1 -7.93743,7.93743 7.9374289,7.9374289 0 0 1 -7.937425,-7.93743 7.9374289,7.9374289 0 0 1 7.937425,-7.93743 7.9374289,7.9374289 0 0 1 7.93743,7.93743 z" /> + <g + transform="matrix(1.7988065,0,0,1.7988065,346.00043,187.45314)" + fill="#ffffff" + style="white-space:pre;shape-inside:url(#rect857)" + aria-label="i" + id="g8"> + <path + d="m -135.12,-33.256 v 3.2618 q 0,0.339 -0.16123,0.51263 -0.16123,0.17363 -0.40928,0.17363 -0.24805,0 -0.40514,-0.17777 -0.15296,-0.17777 -0.15296,-0.5085 v -3.2287 q 0,-0.33486 0.15296,-0.50436 0.15709,-0.1695 0.40514,-0.1695 0.24805,0 0.40928,0.1695 0.16123,0.1695 0.16123,0.47129 z m -0.55811,-1.1658 q -0.23564,0 -0.40514,-0.14469 -0.16536,-0.14469 -0.16536,-0.40928 0,-0.23978 0.16949,-0.39274 0.17364,-0.1571 0.40101,-0.1571 0.21911,0 0.38861,0.14056 0.1695,0.14056 0.1695,0.40928 0,0.26045 -0.16537,0.40928 -0.16536,0.14469 -0.39274,0.14469 z" + fill="#ffffff" + id="path6" /> + </g> + <text + fill="#000000" + font-size="20px" + letter-spacing="0px" + word-spacing="0px" + style="line-height:125%" + xml:space="preserve" + id="text16"><tspan + x="0" + y="0" + fill="#ffffff" + font-family="'Arial Rounded MT Bold'" + font-size="8.4667px" + font-weight="bold" + style="line-height:1.25;white-space:pre;shape-inside:url(#rect857)" + xml:space="preserve" + id="tspan14"><tspan + xml:space="preserve" + id="tspan12"><tspan + fill="#ffffff" + font-family="'Arial Rounded MT Bold'" + font-size="8.4667px" + font-weight="bold" + xml:space="preserve" + id="tspan10">i</tspan></tspan></tspan></text> + </g> +</svg> diff --git a/src/assets/img/prio-normal-icon-web.svg b/src/assets/img/prio-normal-icon-web.svg new file mode 100644 index 0000000..adf6272 --- /dev/null +++ b/src/assets/img/prio-normal-icon-web.svg @@ -0,0 +1,64 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="60" + height="60" + version="1.1" + viewBox="0 0 15.874857 15.874857" + id="svg8" + sodipodi:docname="prio-normal-icon-web.svg" + inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"> + <defs + id="defs12" /> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="2560" + inkscape:window-height="1377" + id="namedview10" + showgrid="false" + inkscape:zoom="48" + inkscape:cx="10.499956" + inkscape:cy="10.499979" + inkscape:window-x="-8" + inkscape:window-y="-8" + inkscape:window-maximized="1" + inkscape:current-layer="svg8" + inkscape:document-rotation="0" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0" /> + <metadata + id="metadata2"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + transform="matrix(2.9999938,0,0,2.9999938,-350.02183,-343.21185)" + id="g6"> + <path + id="ellipse4" + style="fill:none;stroke:#cccccc;stroke-width:0.84263;paint-order:normal" + d="m 121.5445,117.05 a 2.2244999,2.2244999 0 0 1 -2.2245,2.2245 2.2244999,2.2244999 0 0 1 -2.2245,-2.2245 2.2244999,2.2244999 0 0 1 2.2245,-2.2245 2.2244999,2.2244999 0 0 1 2.2245,2.2245 z" /> + </g> +</svg> |