blob: 6490bb0e688715f4ded50835c82819f2c2b107b5 [file] [log] [blame]
beccabroek309b5da2018-11-07 12:22:31 -06001<loader loading="loading"></loader>
2<div id="configuration-cert">
3 <div class="row column">
4 <h1>SSL certificates</h1>
5 </div>
6 <div ng-repeat="certificate in certificates|filter:{isExpiring:true}" class="row column">
7 <div class="small-12 alert alert-warning" role="alert">
8 <div class="icon__warning inline"></div> The uploaded {{certificate.Description}} is expiring in {{getDays(certificate.ValidNotAfter) === 0 ? 'less than one day!' : getDays(certificate.ValidNotAfter) + ' days!'}} Consider replacing it with a new certificate.
9 </div>
10 </div>
11 <div ng-repeat="certificate in certificates|filter:{isExpired:true}" class="row column">
12 <div class="small-12 alert alert-danger" role="alert">
13 <div class="icon__critical inline"></div> The uploaded {{certificate.Description}} has expired! Consider replacing it with a new certificate.
14 </div>
15 </div>
16 <div class="row column">
17 <button type="button" class="btn btn-tertiary"
18 ng-disabled="availableCertificateTypes.length === 0"
19 ng-click="addCertificateModal=true">
20 <icon file="icon-plus.svg"></icon>
21 Add new certificate
22 </button>
23 </div>
24 <div class="row column">
25 <div class="small-12 certificate__table">
26 <div class="table__row-header">
27 <div class="row column">
28 <div class="certificate__type-header">
29 Certificate
30 </div>
31 <div class="certificate__date-header">
32 Valid from
33 </div>
34 <div class="certificate__status-header">
35 </div>
36 <div class="certificate__date-header">
37 Valid until
38 </div>
39 </div>
40 </div>
41 <div ng-if="certificates.length < 1" class="empty__logs" >There have been no certificates added.</div>
42 <div ng-repeat="certificate in certificates">
43 <certificate cert="certificate" reload="loadCertificates()")></certificate>
44 </div>
45 </div>
46 </div>
47 <section class="modal add__certificate__modal" aria-hidden="true" role="dialog" ng-class="{'active': addCertificateModal}">
48 <div class="page-header ">
49 <h3>Add new certificate</h3>
50 </div>
51 <div class="modal__content">
52 <form name="add__cert__form" id="add__cert__form" ng-class="{'submitted': submitted}">
53 <div class="row column">
54 <div class="small-12">
55 <label for="cert__type">Certificate type</label>
56 <select id="cert__type" name="cert__type" ng-model="newCertificate.selectedType" required>
57 <option class="courier-bold" ng-value="">Select an option</option>
58 <option class="courier-bold" ng-value="type" ng-repeat="type in availableCertificateTypes">{{type.Description}}</option>
59 </select>
60 <div ng-messages="add__cert__form.cert__type.$error" class="form-error" ng-class="{'visible' : add__cert__form.cert__type.$touched || submitted}">
61 <p ng-message="required">Field is required</p>
62 </div>
63 </div>
64 </div>
65 <div class="row column">
66 <div class="small-12">
67 <label class ="select__new-label" for="upload_cert_new">Certificate file</label>
68 </div>
69 <div class="row column file__upload">
70 <label for='upload_cert_new'>
71 <input name="upload_cert_new" id="upload_cert_new" type="file" file="newCertificate.file" class="hide"/>
72 <span class="btn btn-secondary select__new-button">Choose file</span>
73 </label>
74 </div>
75 <div class="row column">
76 <div ng-if="newCertificate.file" class="small-7 file__name">
77 <span>{{newCertificate.file.name}}</span>
78 <icon file="icon-close.svg"
79 ng-if="newCertificate.file.name"
80 ng-click="newCertificate.file = '';"
81 class="float-right"></icon>
82 </div>
83 </div>
84 </div>
85 </form>
86 </div>
87 <div class="modal__button-wrapper">
88 <button class="btn btn-secondary" ng-click="addCertificateModal = false; newCertificate={};add__cert__form.$setUntouched();">Cancel</button>
89 <button class="btn btn-primary" ng-class="{'disabled' : add__cert__form.$invalid || !newCertificate.file}" ng-click="submitted = true; uploadCertificate();">Save</button>
90 </div>
91 </section>
92 <div class="modal-overlay" tabindex="-1" ng-class="{'active': addCertificateModal}"></div>
93</div>