Skip to content
Snippets Groups Projects
statuses-administration.component.html 5.09 KiB
Newer Older
  • Learn to ignore specific revisions
  • <mat-sidenav-container autosize class="maarch-container">
        <mat-sidenav #snav [mode]="appService.getViewMode() ? 'over' : 'side'" [fixedInViewport]="appService.getViewMode()"
                     [opened]="!appService.getViewMode()" [ngStyle]="{'width': appService.getViewMode() ? '80%' : '350px'}">
            <header-panel [snavLeft]="snav"></header-panel>
            <menu-shortcut></menu-shortcut>
            <menu-nav></menu-nav>
            <mat-nav-list>
                <h3 mat-subheader>{{lang.actions}}</h3>
                <a mat-list-item routerLink="/administration/statuses/new">
                    <mat-icon color="primary" mat-list-icon class="fa fa-plus"></mat-icon>
                    <p mat-line>
                        {{lang.add}}
                    </p>
                </a>
            </mat-nav-list>
            <mat-divider></mat-divider>
        </mat-sidenav>
        <mat-sidenav-content>
            <div class="bg-head">
                <div class="bg-head-title" [class.customContainerRight]="appService.getViewMode()">
                    <div class="bg-head-title-label">
                        <header-left [snavLeft]="snav"></header-left>
                    </div>
                    <div class="bg-head-title-tool">
                        <header-right></header-right>
                    </div>
    
                <div class="bg-head-content" [class.fullContainer]="appService.getViewMode()">
                </div>
            </div>
            <div class="container" [class.fullContainer]="appService.getViewMode()">
                <div class="container-content">
                    <div *ngIf="loading" style="display:flex;height:100%;">
                        <mat-spinner style="margin:auto;"></mat-spinner>
    
                    <mat-card *ngIf="!loading" class="card-app-content">
                        <div class="row">
                            <div class="col-md-6 col-xs-6">
                                <mat-form-field>
                                    <input matInput (keyup)="applyFilter($event.target.value)" placeholder="{{lang.filterBy}}">
                                </mat-form-field>
                            </div>
                            <div class="col-md-6 col-xs-6">
                                <mat-paginator #paginator [length]="100" [hidePageSize]="true" [pageSize]="10">
                                </mat-paginator>
                            </div>
                        </div>
                        <mat-table #table [dataSource]="dataSource" matSort matSortActive="label_status" matSortDirection="asc">
                            <ng-container matColumnDef="img_filename">
                                <mat-header-cell *matHeaderCellDef>{{lang.imgRelated}}</mat-header-cell>
                                <mat-cell *matCellDef="let element" color="primary">
                                    <mat-icon class="fm {{element.img_filename}} fm-2x" *ngIf="element.img_filename.indexOf('fm') == 0" aria-hidden="true"></mat-icon>
                                    <mat-icon class="fa {{element.img_filename}} fa-2x" *ngIf="element.img_filename.indexOf('fa') == 0" aria-hidden="true"></mat-icon>
                                </mat-cell>
                            </ng-container>
                            <ng-container matColumnDef="id">
                                <mat-header-cell *matHeaderCellDef mat-sort-header [class.hide-for-mobile]="appService.getViewMode()">{{lang.id}}</mat-header-cell>
                                <mat-cell *matCellDef="let element" [class.hide-for-mobile]="appService.getViewMode()">
                                    {{element.id}} </mat-cell>
                            </ng-container>
                            <ng-container matColumnDef="label_status">
                                <mat-header-cell *matHeaderCellDef mat-sort-header>{{lang.statusName}}</mat-header-cell>
                                <mat-cell *matCellDef="let element">
                                    {{element.label_status}} </mat-cell>
                            </ng-container>
                            <ng-container matColumnDef="identifier">
                                <mat-header-cell *matHeaderCellDef></mat-header-cell>
                                <mat-cell *matCellDef="let element" style="justify-content: flex-end;">
                                    <button mat-icon-button color="warn" matTooltip="{{lang.delete}}" (click)="$event.stopPropagation();deleteStatus(element)">
                                        <mat-icon class="fa fa-trash-alt fa-2x" aria-hidden="true"></mat-icon>
                                    </button>
                                </mat-cell>
                            </ng-container>
                            <mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row>
                            <mat-row *matRowDef="let row; columns: displayedColumns;" routerLink="/administration/statuses/{{row.identifier}}" style="cursor:pointer;" matTooltip="{{lang.view}}"></mat-row>
                        </mat-table>
                        <div class="mat-paginator" style="min-height:48px;min-height: 48px;display: flex;justify-content: end;align-items: center;padding-right: 20px;">{{statuses.length}} {{lang.statuses}}</div>
                    </mat-card>
                </div>
            </div>
        </mat-sidenav-content>
    </mat-sidenav-container>