1<!-- TODO: Replace table with resusable table component -->
2<div class="table__row-value row">
3  <div class="certificate__type-cell bold">
4    {{getCertificateName(cert.Description)}}
5  </div>
6  <div class="certificate__title-inline">
7    Issued by:
8  </div>
9  <div class="certificate__issue-cell">
10    {{cert.Issuer.CommonName}}
11  </div>
12  <div class="certificate__title-inline">
13    Issued to:
14  </div>
15  <div class="certificate__issue-cell">
16    {{cert.Subject.CommonName}}
17  </div>
18  <div class="certificate__title-inline">
19    Valid from:
20  </div>
21  <div class="certificate__date-cell">
22    {{cert.ValidNotBefore | date:medium}}
23  </div>
24  <div class="certificate__title-inline">
25    Valid until:
26  </div>
27  <div class="certificate__status-cell">
28    <icon file="icon-critical.svg"
29      aria-label="certificate has expired"
30      class="certificate__status-icon"
31      ng-if="cert.isExpired">
32    </icon>
33    <icon file="icon-warning.svg"
34      aria-label="certificate will expire soon"
35      class="certificate__status-icon"
36      ng-if="cert.isExpiring">
37    </icon>
38  </div>
39  <div class="certificate__date-cell">
40    {{cert.ValidNotAfter | date:medium}}
41  </div>
42  <div class="certificate__buttons-cell">
43    <button
44      type="button"
45      ng-click="cert.upload = true"
46      aria-label="Replace certificate"
47      class="btn  btn-tertiary certificate__button">
48      <icon file="icon-replace.svg" aria-hidden="true"></icon>
49    </button>
50  </div>
51  <div ng-show="cert.upload === true" class="upload__certificate">
52    <div class="close-btn">
53      <button
54        type="button"
55        ng-click="cert.upload=false"
56        aria-label="close replace certificate upload form">
57        <icon file="icon-close.svg" aria-hidden="true"></icon>
58      </button>
59    </div>
60    <div class="file-upload">
61      <label
62        for="upload_{{ cert.Description + cert.Id }}"
63        class="file-upload-btn btn btn-secondary"
64        tabindex="0">Choose file</label>
65      <input
66        name="upload_{{ cert.Description + cert.Id }}"
67        id="upload_{{ cert.Description + cert.Id }}"
68        type="file"
69        file="cert.file"
70        class="file-upload-input"/>
71    </div>
72    <div class="file-upload-container file-upload-field">
73      <span ng-if="!cert.file">No file selected</span>
74      <span>{{ cert.file.name }}</span>
75      <button
76        type="reset"
77        class="btn file-upload-reset"
78        ng-if="cert.file.name"
79        ng-click="cert.file = '';"
80        aria-label="remove selected file">
81        <icon file="icon-close.svg" aria-hidden="true"></icon>
82      </button>
83    </div>
84    <div class="replace-btn">
85      <button
86        type="submit"
87        ng-disabled="!cert.file"
88        class="btn btn-primary"
89        ng-click="replaceCertificate(cert)">
90        Replace
91      </button>
92    </div>
93  </div>
94</div>
95