This repository has been archived on 2021-09-15. You can view files and clone it, but cannot push or open issues or pull requests.
M2OLA/frontend/app/views/administrationSpace.html

189 lines
10 KiB
HTML

<div layout="column">
<md-toolbar>
<div class="md-toolbar-tools">
<h2 md-truncate flex>Bienvenue Isabelle Michu</h2>
<md-button ng-click="logout()">
Se déconnecter
</md-button>
</div>
</md-toolbar>
</div>
<div layout="row" layout-margin>
<div ng-cloak flex="100">
<md-content>
<md-tabs md-dynamic-height md-border-bottom>
<md-tab ng-repeat="formationGroup in formationGroups" label="{{formationGroup.label}}">
<div layout="row" layout-margin>
<md-card flex="50">
<md-card-title>
<md-card-title-text>
<span class="md-headline">Fiches d'absence</span>
</md-card-title-text>
</md-card-title>
<md-card-content>
<md-content flex layout-padding>
<div style="height: 350px; overflow: auto">
<div ng-repeat="formattedAbsence in formationGroup.formattedAbsences">
<md-subheader class="md-no-sticky">Période {{formattedAbsence.period}}</md-subheader>
<md-list-item ng-repeat="absence in formattedAbsence.absences">
<p>{{absence.title}}</p>
<ng-md-icon icon="delete" style="fill: grey" size="24" ng-click="deleteAbsence($parent.$parent.$index, $parent.$index, $index)"></ng-md-icon>
</md-list-item>
</div>
</div>
<br />
<center>
<md-button class="md-raised md-primary" ng-click="importAbsences($event)">Importer des fiches d'absences</md-button>
</center>
</md-content>
</md-card-content>
</md-card>
<md-card flex="50">
<md-card-title>
<md-card-title-text>
<span class="md-headline">Fiches de visite</span>
</md-card-title-text>
</md-card-title>
<md-card-content>
<md-content flex layout-padding>
<div style="height: 350px; overflow: auto">
<md-list-item ng-repeat="sheet in formationGroup.trackingSheets">
<p>{{sheet.fileName}}</p>
<ng-md-icon icon="delete" style="fill: grey" size="24" ng-click="deleteTrackingSheet($parent.$index, $index)"></ng-md-icon>
</md-list-item>
</div>
<br />
<center>
<md-button class="md-raised md-primary">Importer des fiches de visite</md-button>
</center>
</md-content>
</md-card-content>
</md-card>
</div>
</md-tab>
</md-tabs>
</md-content>
</div>
</div>
<script type="text/ng-template" id="import-fiches-absences">
<md-dialog aria-label="Importer des fiches d'absences">
<form ng-cloak>
<md-toolbar>
<div class="md-toolbar-tools">
<h2>Importer des fiches d'absences</h2>
</div>
</md-toolbar>
<md-dialog-content>
<div class="md-dialog-content">
<div layout="row">
<div flex>
<h3>Importer des fiches d'absences</h3>
<input type="file" nv-file-select="" accept=".pdf" uploader="uploader" multiple /><br/><br/>
<p class="note">
<ng-md-icon icon="warning" size="20"></ng-md-icon>
Note d'utilisation : chaque fiche d'absence doit respecter une règle de nommage.<br/> Nom
de fichier : Absence_Prenom_Nom_PN.pdf<br/>
<i>Le N de PN étant un numéro - exemple : (P1, P2, P3, etc.)</i>
</p>
<div ng-if="uploader.queue.length !== 0">
<h3>Liste des documents : </h3>
<p>Nombre de documents : {{ uploader.queue.length }}</p>
<div ng-if="areThereIllegalFiles()" style="background-color: #ef9a9a; padding: 2px 10px 2px 10px;margin: 10px 0 10px 0">
<p>
Les documents suivants ne respecte pas la règle de nommage :
</p>
<ul>
<li ng-repeat="fileName in uploader.queue | illegalFileNames:'absence'">{{fileName}}</li>
</ul>
</div>
<div ng-if="!allDocumentsAreIllegal()">
<table class="bordered">
<thead>
<tr>
<th width="50%">Nom</th>
<th ng-show="uploader.isHTML5">Taille</th>
<th>Status</th>
<th>Actions</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="item in uploader.queue | fileName:'absence'">
<td><strong>{{ item.file.name }}</strong></td>
<td ng-show="uploader.isHTML5" nowrap>{{ item.file.size/1024/1024|number:2 }} MB</td>
<td class="text-center">
<span ng-show="item.isSuccess">
<ng-md-icon icon="done" size="24"></ng-md-icon>
</span>
<span ng-show="item.isCancel">
<ng-md-icon icon="cancel" size="24"></ng-md-icon>
</span>
<span ng-show="item.isError">
<ng-md-icon icon="remove_circle_outline" size="24"></ng-md-icon>
</span>
</td>
<td nowrap>
<md-button type="button" class="md-raised md-primary" ng-click="item.upload()" ng-disabled="item.isReady || item.isUploading || item.isSuccess">
<ng-md-icon icon="file_upload" size="24"></ng-md-icon> Charger
</md-button>
<md-button type="button" class="md-raised" ng-click="item.cancel()" ng-disabled="!item.isUploading">
<ng-md-icon icon="cancel" size="24"></ng-md-icon> Annuler
</md-button>
<md-button type="button" class="md-raised md-warn" ng-click="item.remove()">
<ng-md-icon icon="remove_circle_outline" size="24"></ng-md-icon> Supprimer
</md-button>
</td>
</tr>
</tbody>
</table>
<div style='margin-top : 40px'>
<div>
Niveau de progression :
<md-progress-linear md-mode="determinate" value="{{uploader.progress}}"></md-progress-linear>
</div>
<md-button type="button" class="md-raised md-primary" ng-click="uploader.uploadAll()" ng-disabled="!uploader.getNotUploadedItems().length">
<ng-md-icon icon="file_upload" size="24"></ng-md-icon> Tout charger
</md-button>
<md-button type="button" class="md-raised" ng-click="uploader.cancelAll()" ng-disabled="!uploader.isUploading">
<ng-md-icon icon="cancel" size="24"></ng-md-icon> Tout annuler
</md-button>
<md-button type="button" class="md-raised md-warn" ng-click="uploader.clearQueue()" ng-disabled="!uploader.queue.length">
<ng-md-icon icon="remove_circle_outline" size="24"></ng-md-icon> Tout supprimer
</md-button>
</div>
</div>
</div>
</div>
</div>
</div>
</md-dialog-content>
<md-dialog-actions layout="row">
<span flex></span>
<md-button ng-click="answer('useful')">
Fermer
</md-button>
</md-dialog-actions>
</form>
</md-dialog>
</script>