Fix some delegate view bugs
This commit is contained in:
parent
ac4cb39105
commit
44f1d1e819
@ -0,0 +1,8 @@
|
|||||||
|
.mat-basic-chip .mat-chip-ripple {
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
position: absolute;
|
||||||
|
pointer-events: none;
|
||||||
|
}
|
@ -1,4 +1,4 @@
|
|||||||
import { Component, Input, OnDestroy } from '@angular/core';
|
import { Component, Input, OnDestroy, ViewEncapsulation } from '@angular/core';
|
||||||
|
|
||||||
import { Subscription } from 'rxjs';
|
import { Subscription } from 'rxjs';
|
||||||
import { distinctUntilChanged } from 'rxjs/operators';
|
import { distinctUntilChanged } from 'rxjs/operators';
|
||||||
@ -19,7 +19,9 @@ import {
|
|||||||
*/
|
*/
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'os-speaker-button',
|
selector: 'os-speaker-button',
|
||||||
templateUrl: './speaker-button.component.html'
|
templateUrl: './speaker-button.component.html',
|
||||||
|
styleUrls: ['./speaker-button.component.scss'],
|
||||||
|
encapsulation: ViewEncapsulation.None
|
||||||
})
|
})
|
||||||
export class SpeakerButtonComponent implements OnDestroy {
|
export class SpeakerButtonComponent implements OnDestroy {
|
||||||
@Input()
|
@Input()
|
||||||
|
@ -155,22 +155,25 @@
|
|||||||
<mat-icon>cloud_upload</mat-icon>
|
<mat-icon>cloud_upload</mat-icon>
|
||||||
<span>{{ 'Import' | translate }}</span>
|
<span>{{ 'Import' | translate }}</span>
|
||||||
</button>
|
</button>
|
||||||
<mat-divider></mat-divider>
|
<div *osPerms="'agenda.can_manage'">
|
||||||
<button
|
<mat-divider></mat-divider>
|
||||||
mat-menu-item
|
<button
|
||||||
*osPerms="'agenda.can_manage'"
|
mat-menu-item
|
||||||
class="red-warning-text"
|
class="red-warning-text"
|
||||||
(click)="deleteAllSpeakersOfAllListsOfSpeakers()"
|
(click)="deleteAllSpeakersOfAllListsOfSpeakers()"
|
||||||
>
|
>
|
||||||
<mat-icon>delete</mat-icon>
|
<mat-icon>delete</mat-icon>
|
||||||
<span>{{ 'Clear all list of speakers' | translate }}</span>
|
<span>{{ 'Clear all list of speakers' | translate }}</span>
|
||||||
</button>
|
</button>
|
||||||
<mat-divider></mat-divider>
|
</div>
|
||||||
<!-- Settings -->
|
<div *osPerms="'core.can_manage_config'">
|
||||||
<button mat-menu-item *osPerms="'core.can_manage_config'" routerLink="/settings/agenda">
|
<mat-divider></mat-divider>
|
||||||
<mat-icon>settings</mat-icon>
|
<!-- Settings -->
|
||||||
<span>{{ 'Settings' | translate }}</span>
|
<button mat-menu-item routerLink="/settings/agenda">
|
||||||
</button>
|
<mat-icon>settings</mat-icon>
|
||||||
|
<span>{{ 'Settings' | translate }}</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="isMultiSelect">
|
<div *ngIf="isMultiSelect">
|
||||||
|
@ -98,12 +98,14 @@
|
|||||||
<mat-icon>archive</mat-icon>
|
<mat-icon>archive</mat-icon>
|
||||||
<span>{{ 'Export ...' | translate }}</span>
|
<span>{{ 'Export ...' | translate }}</span>
|
||||||
</button>
|
</button>
|
||||||
<mat-divider></mat-divider>
|
<div *osPerms="'core.can_manage_config'">
|
||||||
<!-- Settings -->
|
<mat-divider></mat-divider>
|
||||||
<button mat-menu-item *osPerms="'core.can_manage_config'" routerLink="/settings/elections">
|
<!-- Settings -->
|
||||||
<mat-icon>settings</mat-icon>
|
<button mat-menu-item routerLink="/settings/elections">
|
||||||
<span>{{ 'Settings' | translate }}</span>
|
<mat-icon>settings</mat-icon>
|
||||||
</button>
|
<span>{{ 'Settings' | translate }}</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="isMultiSelect">
|
<div *ngIf="isMultiSelect">
|
||||||
|
@ -209,7 +209,6 @@
|
|||||||
[object]="mediafile"
|
[object]="mediafile"
|
||||||
[menuItem]="true"
|
[menuItem]="true"
|
||||||
></os-projector-button>
|
></os-projector-button>
|
||||||
<os-speaker-button [object]="mediafile" [menuItem]="true"></os-speaker-button>
|
|
||||||
<div *ngIf="canEdit">
|
<div *ngIf="canEdit">
|
||||||
<button mat-menu-item (click)="onEditFile(mediafile)">
|
<button mat-menu-item (click)="onEditFile(mediafile)">
|
||||||
<mat-icon>edit</mat-icon>
|
<mat-icon>edit</mat-icon>
|
||||||
|
@ -255,7 +255,6 @@ export class MediafileListComponent extends BaseListViewComponent<ViewMediafile>
|
|||||||
*/
|
*/
|
||||||
public showFileMenu(file: ViewMediafile): boolean {
|
public showFileMenu(file: ViewMediafile): boolean {
|
||||||
return (
|
return (
|
||||||
this.operator.hasPerms(Permission.agendaCanSeeListOfSpeakers) ||
|
|
||||||
(file.isProjectable() && this.operator.hasPerms(Permission.coreCanManageProjector)) ||
|
(file.isProjectable() && this.operator.hasPerms(Permission.coreCanManageProjector)) ||
|
||||||
(file.isFont() && this.operator.hasPerms(Permission.coreCanManageLogosAndFonts)) ||
|
(file.isFont() && this.operator.hasPerms(Permission.coreCanManageLogosAndFonts)) ||
|
||||||
(file.isImage() && this.operator.hasPerms(Permission.coreCanManageLogosAndFonts)) ||
|
(file.isImage() && this.operator.hasPerms(Permission.coreCanManageLogosAndFonts)) ||
|
||||||
|
@ -64,7 +64,7 @@
|
|||||||
<mat-icon>picture_as_pdf</mat-icon>
|
<mat-icon>picture_as_pdf</mat-icon>
|
||||||
<span>{{ 'PDF' | translate }}</span>
|
<span>{{ 'PDF' | translate }}</span>
|
||||||
</button>
|
</button>
|
||||||
<mat-divider></mat-divider>
|
<mat-divider *osPerms="['core.can_manage_projector', 'agenda.can_manage', 'core.can_see_history']"></mat-divider>
|
||||||
<!-- Project -->
|
<!-- Project -->
|
||||||
<os-projector-button
|
<os-projector-button
|
||||||
[object]="motion"
|
[object]="motion"
|
||||||
@ -93,7 +93,7 @@
|
|||||||
{{ 'History' | translate }}
|
{{ 'History' | translate }}
|
||||||
</span>
|
</span>
|
||||||
</button>
|
</button>
|
||||||
<mat-divider></mat-divider>
|
<mat-divider *ngIf="perms.isAllowed('update', motion) || perms.isAllowed('manage')"></mat-divider>
|
||||||
<!-- Edit-->
|
<!-- Edit-->
|
||||||
<button mat-menu-item (click)="setEditMode(true)" *ngIf="perms.isAllowed('update', motion)">
|
<button mat-menu-item (click)="setEditMode(true)" *ngIf="perms.isAllowed('update', motion)">
|
||||||
<mat-icon>edit</mat-icon>
|
<mat-icon>edit</mat-icon>
|
||||||
|
@ -262,7 +262,8 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<mat-divider
|
<mat-divider
|
||||||
*ngIf="categories.length || motionBlocks.length || hasAmendments() || perms.isAllowed('manage')"
|
*ngIf="(categories.length || motionBlocks.length || hasAmendments() || perms.isAllowed('manage'))
|
||||||
|
&& (perms.isAllowed('manage') || selectedView === 'list' || operator.hasPerms('core.can_manage_config'))"
|
||||||
></mat-divider>
|
></mat-divider>
|
||||||
|
|
||||||
<div *ngIf="perms.isAllowed('manage')">
|
<div *ngIf="perms.isAllowed('manage')">
|
||||||
@ -313,13 +314,15 @@
|
|||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<mat-divider></mat-divider>
|
<div *osPerms="'core.can_manage_config'">
|
||||||
|
<mat-divider></mat-divider>
|
||||||
|
|
||||||
<!-- Settings -->
|
<!-- Settings -->
|
||||||
<button mat-menu-item *osPerms="'core.can_manage_config'" routerLink="/settings/motions">
|
<button mat-menu-item routerLink="/settings/motions">
|
||||||
<mat-icon>settings</mat-icon>
|
<mat-icon>settings</mat-icon>
|
||||||
<span>{{ 'Settings' | translate }}</span>
|
<span>{{ 'Settings' | translate }}</span>
|
||||||
</button>
|
</button>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf="isMultiSelect">
|
<div *ngIf="isMultiSelect">
|
||||||
<button mat-menu-item (click)="selectAll()">
|
<button mat-menu-item (click)="selectAll()">
|
||||||
|
@ -7,6 +7,7 @@ import { ActivatedRoute, Router } from '@angular/router';
|
|||||||
import { TranslateService } from '@ngx-translate/core';
|
import { TranslateService } from '@ngx-translate/core';
|
||||||
import { PblColumnDefinition } from '@pebula/ngrid';
|
import { PblColumnDefinition } from '@pebula/ngrid';
|
||||||
|
|
||||||
|
import { OperatorService } from 'app/core/core-services/operator.service';
|
||||||
import { StorageService } from 'app/core/core-services/storage.service';
|
import { StorageService } from 'app/core/core-services/storage.service';
|
||||||
import { CategoryRepositoryService } from 'app/core/repositories/motions/category-repository.service';
|
import { CategoryRepositoryService } from 'app/core/repositories/motions/category-repository.service';
|
||||||
import { MotionBlockRepositoryService } from 'app/core/repositories/motions/motion-block-repository.service';
|
import { MotionBlockRepositoryService } from 'app/core/repositories/motions/motion-block-repository.service';
|
||||||
@ -222,7 +223,8 @@ export class MotionListComponent extends BaseListViewComponent<ViewMotion> imple
|
|||||||
public perms: LocalPermissionsService,
|
public perms: LocalPermissionsService,
|
||||||
private motionExport: MotionExportService,
|
private motionExport: MotionExportService,
|
||||||
private overlayService: OverlayService,
|
private overlayService: OverlayService,
|
||||||
public vp: ViewportService
|
public vp: ViewportService,
|
||||||
|
public operator: OperatorService
|
||||||
) {
|
) {
|
||||||
super(titleService, translate, matSnackBar, storage);
|
super(titleService, translate, matSnackBar, storage);
|
||||||
this.canMultiSelect = true;
|
this.canMultiSelect = true;
|
||||||
|
@ -105,9 +105,9 @@
|
|||||||
<mat-menu #topicExtraMenu="matMenu">
|
<mat-menu #topicExtraMenu="matMenu">
|
||||||
<os-projector-button [object]="topic" [menuItem]="true"></os-projector-button>
|
<os-projector-button [object]="topic" [menuItem]="true"></os-projector-button>
|
||||||
<os-speaker-button [object]="topic" [menuItem]="true"></os-speaker-button>
|
<os-speaker-button [object]="topic" [menuItem]="true"></os-speaker-button>
|
||||||
<div>
|
<div *osPerms="'agenda.can_manage'">
|
||||||
<mat-divider></mat-divider>
|
<mat-divider></mat-divider>
|
||||||
<button *osPerms="'agenda.can_manage'" mat-menu-item class="red-warning-text" (click)="onDeleteButton()">
|
<button mat-menu-item class="red-warning-text" (click)="onDeleteButton()">
|
||||||
<mat-icon>delete</mat-icon>
|
<mat-icon>delete</mat-icon>
|
||||||
<span>{{ 'Delete' | translate }}</span>
|
<span>{{ 'Delete' | translate }}</span>
|
||||||
</button>
|
</button>
|
||||||
|
@ -178,13 +178,15 @@
|
|||||||
<span>{{ 'Import' | translate }}</span>
|
<span>{{ 'Import' | translate }}</span>
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
<mat-divider></mat-divider>
|
<div *osPerms="'core.can_manage_config'">
|
||||||
|
<mat-divider></mat-divider>
|
||||||
|
|
||||||
<!-- Settings -->
|
<!-- Settings -->
|
||||||
<button mat-menu-item *osPerms="'core.can_manage_config'" routerLink="/settings/participants">
|
<button mat-menu-item routerLink="/settings/participants">
|
||||||
<mat-icon>settings</mat-icon>
|
<mat-icon>settings</mat-icon>
|
||||||
<span>{{ 'Settings' | translate }}</span>
|
<span>{{ 'Settings' | translate }}</span>
|
||||||
</button>
|
</button>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf="isMultiSelect">
|
<div *ngIf="isMultiSelect">
|
||||||
<button mat-menu-item (click)="selectAll()">
|
<button mat-menu-item (click)="selectAll()">
|
||||||
|
Loading…
Reference in New Issue
Block a user