Revize 82cf9149
Přidáno uživatelem Jan Pašek před téměř 4 roky(ů)
static/index.html | ||
---|---|---|
3 | 3 |
<head> |
4 | 4 |
<meta charset="UTF-8"> |
5 | 5 |
<title>X.509 Certificate Management</title> |
6 |
<link rel="stylesheet" href="/static/css/app.css"> |
|
7 | 6 |
<link rel="stylesheet" href="/static/css/bootstrap.min.css"> |
8 | 7 |
<link href="https://cdn.jsdelivr.net/npm/vue-loading-overlay@3/dist/vue-loading.css" rel="stylesheet"> |
8 |
<link rel="stylesheet" href="/static/css/app.css"> |
|
9 | 9 |
</head> |
10 | 10 |
<body> |
11 |
<div id="certificateListingPage" class="p-4">
|
|
11 |
<div id="certificateListingPage" class="p-5 h-100">
|
|
12 | 12 |
<div v-if="loading"> |
13 | 13 |
<loading :active.sync="loading" |
14 | 14 |
:can-cancel="false" |
15 | 15 |
loader="dots" |
16 | 16 |
:is-full-page="true"></loading> |
17 | 17 |
</div> |
18 |
<div v-if="!loading" v-cloak> |
|
19 |
<div> |
|
20 |
<h1 class="d-inline-block">Certificate Listing</h1> |
|
21 |
</div> |
|
22 |
<div class="alert alert-success" v-if="successMessage !== ''" role="alert" v-cloak> |
|
23 |
{{ successMessage }} |
|
24 |
</div> |
|
25 |
<div class="mt-2 mb-2"> |
|
26 |
<a class="btn btn-success mb-3 text-center" href="/static/create_certificate.html"><b>+</b></a> |
|
27 |
<button v-on:click="toggleFilters" v-if="!displayFilters" class="btn btn-outline-primary ml-4 mb-3" data-toggle="collapse" data-target="#filteringCollapse">Show filtering</button> |
|
28 |
<button v-on:click="toggleFilters" v-if="displayFilters" class="btn btn-outline-primary ml-4 mb-3" data-toggle="collapse" data-target="#filteringCollapse">Hide filtering</button> |
|
29 |
<div class="collapse mt-2" id="filteringCollapse"> |
|
30 |
<div class="card card-body"> |
|
31 |
<div class="container"> |
|
32 |
<div class="row align-items-center"> |
|
33 |
<div class="col-3"> |
|
34 |
<div class="form-group mb-0"> |
|
35 |
<h5>Usage:</h5> |
|
36 |
<div class="form-check ml-4"> |
|
37 |
<input class="form-check-input" type="checkbox" id="usageCA" v-model="filtering.usage.CA"> |
|
38 |
<label class="form-check-label" for="usageCA"> |
|
39 |
CA |
|
40 |
</label> |
|
41 |
</div> |
|
42 |
<div class="form-check ml-4"> |
|
43 |
<input class="form-check-input" type="checkbox" id="usageSignature" v-model="filtering.usage.digitalSignature"> |
|
44 |
<label class="form-check-label" for="usageSignature"> |
|
45 |
Digital signature |
|
46 |
</label> |
|
47 |
</div> |
|
48 |
<div class="form-check ml-4"> |
|
49 |
<input class="form-check-input" type="checkbox" id="usageAuth" v-model="filtering.usage.authentication"> |
|
50 |
<label class="form-check-label" for="usageAuth"> |
|
51 |
Authentication |
|
52 |
</label> |
|
53 |
</div> |
|
54 |
<div class="form-check ml-4"> |
|
55 |
<input class="form-check-input" type="checkbox" id="usageSSL" v-model="filtering.usage.SSL"> |
|
56 |
<label class="form-check-label" for="usageSSL"> |
|
57 |
SSL/TLS |
|
58 |
</label> |
|
18 |
<div v-if="!loading" v-cloak class="card h-100"> |
|
19 |
<div class="card-body"> |
|
20 |
<div> |
|
21 |
<h1 class="d-inline-block">Certificate Listing</h1> |
|
22 |
</div> |
|
23 |
<div class="alert alert-success" v-if="successMessage !== ''" role="alert" v-cloak> |
|
24 |
{{ successMessage }} |
|
25 |
</div> |
|
26 |
<div class="mt-2 mb-2"> |
|
27 |
<a class="btn btn-success mb-3 text-center" href="/static/create_certificate.html"><b>+</b></a> |
|
28 |
<button v-on:click="toggleFilters" v-if="!displayFilters" class="btn btn-outline-primary ml-4 mb-3" data-toggle="collapse" data-target="#filteringCollapse">Show filtering</button> |
|
29 |
<button v-on:click="toggleFilters" v-if="displayFilters" class="btn btn-outline-primary ml-4 mb-3" data-toggle="collapse" data-target="#filteringCollapse">Hide filtering</button> |
|
30 |
<div class="collapse mt-2" id="filteringCollapse"> |
|
31 |
<div class="card card-body filtering-box"> |
|
32 |
<div class="container"> |
|
33 |
<div class="row align-items-center"> |
|
34 |
<div class="col-3"> |
|
35 |
<div class="form-group mb-0"> |
|
36 |
<h5>Usage:</h5> |
|
37 |
<div class="form-check ml-4"> |
|
38 |
<input class="form-check-input" type="checkbox" id="usageCA" v-model="filtering.usage.CA"> |
|
39 |
<label class="form-check-label" for="usageCA"> |
|
40 |
CA |
|
41 |
</label> |
|
42 |
</div> |
|
43 |
<div class="form-check ml-4"> |
|
44 |
<input class="form-check-input" type="checkbox" id="usageSignature" v-model="filtering.usage.digitalSignature"> |
|
45 |
<label class="form-check-label" for="usageSignature"> |
|
46 |
Digital signature |
|
47 |
</label> |
|
48 |
</div> |
|
49 |
<div class="form-check ml-4"> |
|
50 |
<input class="form-check-input" type="checkbox" id="usageAuth" v-model="filtering.usage.authentication"> |
|
51 |
<label class="form-check-label" for="usageAuth"> |
|
52 |
Authentication |
|
53 |
</label> |
|
54 |
</div> |
|
55 |
<div class="form-check ml-4"> |
|
56 |
<input class="form-check-input" type="checkbox" id="usageSSL" v-model="filtering.usage.SSL"> |
|
57 |
<label class="form-check-label" for="usageSSL"> |
|
58 |
SSL/TLS |
|
59 |
</label> |
|
60 |
</div> |
|
59 | 61 |
</div> |
60 | 62 |
</div> |
61 |
</div>
|
|
62 |
<div class="col-3">
|
|
63 |
<div class="form-group mb-0">
|
|
64 |
<h5>Type:</h5>
|
|
65 |
<div class="form-check ml-4">
|
|
66 |
<input class="form-check-input" type="checkbox" id="rootCA" v-model="filtering.type.RootCA">
|
|
67 |
<label class="form-check-label" for="rootCA">
|
|
68 |
Root CA
|
|
69 |
</label>
|
|
70 |
</div>
|
|
71 |
<div class="form-check ml-4">
|
|
72 |
<input class="form-check-input" type="checkbox" id="intermediateCA" v-model="filtering.type.IntermediateCA">
|
|
73 |
<label class="form-check-label" for="intermediateCA">
|
|
74 |
Intermediate CA
|
|
75 |
</label>
|
|
76 |
</div>
|
|
77 |
<div class="form-check ml-4">
|
|
78 |
<input class="form-check-input" type="checkbox" id="endCertificate" v-model="filtering.type.EndCertificate">
|
|
79 |
<label class="form-check-label" for="endCertificate">
|
|
80 |
End certificate
|
|
81 |
</label>
|
|
63 |
<div class="col-3">
|
|
64 |
<div class="form-group mb-0">
|
|
65 |
<h5>Type:</h5>
|
|
66 |
<div class="form-check ml-4">
|
|
67 |
<input class="form-check-input" type="checkbox" id="rootCA" v-model="filtering.type.RootCA">
|
|
68 |
<label class="form-check-label" for="rootCA">
|
|
69 |
Root CA
|
|
70 |
</label>
|
|
71 |
</div>
|
|
72 |
<div class="form-check ml-4">
|
|
73 |
<input class="form-check-input" type="checkbox" id="intermediateCA" v-model="filtering.type.IntermediateCA">
|
|
74 |
<label class="form-check-label" for="intermediateCA">
|
|
75 |
Intermediate CA
|
|
76 |
</label>
|
|
77 |
</div>
|
|
78 |
<div class="form-check ml-4">
|
|
79 |
<input class="form-check-input" type="checkbox" id="endCertificate" v-model="filtering.type.EndCertificate">
|
|
80 |
<label class="form-check-label" for="endCertificate">
|
|
81 |
End certificate
|
|
82 |
</label>
|
|
83 |
</div>
|
|
82 | 84 |
</div> |
83 | 85 |
</div> |
84 |
</div>
|
|
85 |
<div class="col-3">
|
|
86 |
<div class="form-group mb-0">
|
|
87 |
<h5>Common name:</h5>
|
|
88 |
<div>
|
|
89 |
<input class="form-control" type="text" id="commonName" placeholder="Enter common name" v-model="filtering.CN">
|
|
86 |
<div class="col-3">
|
|
87 |
<div class="form-group mb-0">
|
|
88 |
<h5>Common name:</h5>
|
|
89 |
<div>
|
|
90 |
<input class="form-control" type="text" id="commonName" placeholder="Enter common name" v-model="filtering.CN">
|
|
91 |
</div>
|
|
90 | 92 |
</div> |
91 | 93 |
</div> |
92 |
</div>
|
|
93 |
<div class="col-3">
|
|
94 |
<button class="btn btn-primary mb-2" style="width: 115px;" v-on:click="reloadData">Apply filters</button>
|
|
95 |
<button class="btn btn-secondary mb-2" style="width: 115px;" v-on:click="clearFilters">Clear filters</button>
|
|
94 |
<div class="col-3">
|
|
95 |
<button class="btn btn-primary mb-2" style="width: 115px;" v-on:click="reloadData">Apply filters</button>
|
|
96 |
<button class="btn btn-secondary mb-2" style="width: 115px;" v-on:click="clearFilters">Clear filters</button>
|
|
97 |
</div>
|
|
96 | 98 |
</div> |
97 | 99 |
</div> |
98 | 100 |
</div> |
99 | 101 |
</div> |
100 | 102 |
</div> |
101 |
</div>
|
|
102 |
<table class="table table-striped table-hover text-center">
|
|
103 |
<thead class="thead-dark">
|
|
104 |
<tr>
|
|
105 |
<th class="align-middle" scope="col" rowspan="2">Common name</th>
|
|
106 |
<th class="align-middle" scope="col" colspan="2">Validity</th>
|
|
107 |
<th class="align-middle" scope="col" rowspan="2">Usage</th>
|
|
108 |
<th class="align-middle" scope="col" rowspan="2">Certificate</th>
|
|
109 |
<th class="align-middle" scope="col" rowspan="2">Chain of trust</th>
|
|
110 |
<th class="align-middle" scope="col" rowspan="2">Root</th>
|
|
111 |
<th class="align-middle" scope="col" rowspan="2">Private key</th>
|
|
112 |
<th class="align-middle" scope="col" rowspan="2">Issuer</th>
|
|
113 |
</tr>
|
|
114 |
<tr>
|
|
115 |
<th scope="col">Start</th>
|
|
116 |
<th scope="col">End</th>
|
|
117 |
</tr>
|
|
118 |
</thead>
|
|
119 |
<tbody>
|
|
120 |
<tr is="certificate-item"
|
|
121 |
v-for="certificate in certificates"
|
|
122 |
v-bind:certificate="certificate"
|
|
123 |
v-bind:key="certificate.id">
|
|
124 |
</tr>
|
|
125 |
</tbody>
|
|
126 |
</table>
|
|
127 |
<div v-if="hasNextPage || hasPreviousPage">
|
|
128 |
<ul class="pagination justify-content-center">
|
|
129 |
<li class="page-item" v-bind:class="{disabled: !hasPreviousPage}">
|
|
130 |
<button v-on:click="onPreviousPage" class="page-link"><<</button>
|
|
131 |
</li> |
|
132 |
<li class="page-item"><button class="page-link">{{ currentPage }}</button></li>
|
|
133 |
<li class="page-item" v-bind:class="{disabled: !hasNextPage}">
|
|
134 |
<button v-on:click="onNextPage" class="page-link">>></button>
|
|
135 |
</li>
|
|
136 |
</ul>
|
|
103 |
<table class="table table-striped table-hover text-center">
|
|
104 |
<thead class="thead-dark">
|
|
105 |
<tr>
|
|
106 |
<th class="align-middle" scope="col" rowspan="2">Common name</th>
|
|
107 |
<th class="align-middle" scope="col" colspan="2">Validity</th>
|
|
108 |
<th class="align-middle" scope="col" rowspan="2">Usage</th>
|
|
109 |
<th class="align-middle" scope="col" rowspan="2">Certificate</th>
|
|
110 |
<th class="align-middle" scope="col" rowspan="2">Chain of trust</th>
|
|
111 |
<th class="align-middle" scope="col" rowspan="2">Root</th>
|
|
112 |
<th class="align-middle" scope="col" rowspan="2">Private key</th>
|
|
113 |
<th class="align-middle" scope="col" rowspan="2">Issuer</th>
|
|
114 |
</tr>
|
|
115 |
<tr>
|
|
116 |
<th scope="col">Start</th>
|
|
117 |
<th scope="col">End</th>
|
|
118 |
</tr>
|
|
119 |
</thead>
|
|
120 |
<tbody>
|
|
121 |
<tr is="certificate-item"
|
|
122 |
v-for="certificate in certificates"
|
|
123 |
v-bind:certificate="certificate"
|
|
124 |
v-bind:key="certificate.id">
|
|
125 |
</tr>
|
|
126 |
</tbody>
|
|
127 |
</table>
|
|
128 |
<div v-if="hasNextPage || hasPreviousPage">
|
|
129 |
<ul class="pagination justify-content-center">
|
|
130 |
<li class="page-item" v-bind:class="{disabled: !hasPreviousPage}">
|
|
131 |
<button v-on:click="onPreviousPage" class="page-link"><<</button>
|
|
132 |
</li>
|
|
133 |
<li class="page-item"><button class="page-link">{{ currentPage }}</button></li>
|
|
134 |
<li class="page-item" v-bind:class="{disabled: !hasNextPage}">
|
|
135 |
<button v-on:click="onNextPage" class="page-link">>></button>
|
|
136 |
</li>
|
|
137 |
</ul>
|
|
138 |
</div>
|
|
137 | 139 |
</div> |
138 | 140 |
</div> |
139 | 141 |
</div> |
Také k dispozici: Unified diff
Re #8701 - Design improvements of GUI