Projekt

Obecné

Profil

« Předchozí | Další » 

Revize 82cf9149

Přidáno uživatelem Jan Pašek před téměř 4 roky(ů)

Re #8701 - Design improvements of GUI

Zobrazit rozdíly:

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