1 | <!DOCTYPE html>
|
---|
2 | <html lang="en">
|
---|
3 | <head>
|
---|
4 | <meta charset="UTF-8">
|
---|
5 | <title>Admin Page - Remove product</title>
|
---|
6 | <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.3.1/dist/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
|
---|
7 | <!-- Font Awesome -->
|
---|
8 | <link
|
---|
9 | href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css"
|
---|
10 | rel="stylesheet"
|
---|
11 | />
|
---|
12 | <!-- Google Fonts -->
|
---|
13 | <link
|
---|
14 | href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap"
|
---|
15 | rel="stylesheet"
|
---|
16 | />
|
---|
17 | <!-- MDB -->
|
---|
18 | <link
|
---|
19 | href="https://cdnjs.cloudflare.com/ajax/libs/mdb-ui-kit/5.0.0/mdb.min.css"
|
---|
20 | rel="stylesheet"
|
---|
21 | />
|
---|
22 | <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.3.1/dist/css/bootstrap.min.css"
|
---|
23 | integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
|
---|
24 | <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
|
---|
25 |
|
---|
26 | <style>
|
---|
27 | @import url('https://fonts.googleapis.com/css?family=Roboto:400,500,700');
|
---|
28 |
|
---|
29 | * {
|
---|
30 | -webkit-box-sizing: border-box;
|
---|
31 | box-sizing: border-box;
|
---|
32 | margin: 0;
|
---|
33 | padding: 0;
|
---|
34 | }
|
---|
35 |
|
---|
36 |
|
---|
37 | body {
|
---|
38 | font-family: 'Roboto', sans-serif;
|
---|
39 | }
|
---|
40 |
|
---|
41 | a {
|
---|
42 | text-decoration: none;
|
---|
43 | }
|
---|
44 |
|
---|
45 | .product-card {
|
---|
46 | width: 380px;
|
---|
47 | position: relative;
|
---|
48 | box-shadow: 0 2px 7px #dfdfdf;
|
---|
49 | margin: 50px auto;
|
---|
50 | background: #fafafa;
|
---|
51 | }
|
---|
52 |
|
---|
53 | .badge {
|
---|
54 | position: absolute;
|
---|
55 | left: 0;
|
---|
56 | top: 20px;
|
---|
57 | text-transform: uppercase;
|
---|
58 | font-size: 13px;
|
---|
59 | font-weight: 700;
|
---|
60 | background: red;
|
---|
61 | color: #fff;
|
---|
62 | padding: 3px 10px;
|
---|
63 | }
|
---|
64 |
|
---|
65 | .product-tumb {
|
---|
66 | display: flex;
|
---|
67 | align-items: center;
|
---|
68 | justify-content: center;
|
---|
69 | height: 300px;
|
---|
70 | padding: 50px;
|
---|
71 | background: #f0f0f0;
|
---|
72 | }
|
---|
73 |
|
---|
74 | .product-tumb img {
|
---|
75 | width: 300px;
|
---|
76 | height: 100%;
|
---|
77 | object-fit: contain;
|
---|
78 | background: #f0f0f0;
|
---|
79 | }
|
---|
80 |
|
---|
81 | .product-details {
|
---|
82 | padding: 30px;
|
---|
83 | }
|
---|
84 |
|
---|
85 | .product-catagory {
|
---|
86 | display: block;
|
---|
87 | font-size: 12px;
|
---|
88 | font-weight: 700;
|
---|
89 | text-transform: uppercase;
|
---|
90 | color: #ccc;
|
---|
91 | margin-bottom: 18px;
|
---|
92 | }
|
---|
93 |
|
---|
94 | .product-details h4 a {
|
---|
95 | font-weight: 500;
|
---|
96 | display: block;
|
---|
97 | margin-bottom: 18px;
|
---|
98 | text-transform: uppercase;
|
---|
99 | color: #363636;
|
---|
100 | text-decoration: none;
|
---|
101 | transition: 0.3s;
|
---|
102 | }
|
---|
103 |
|
---|
104 | .product-details h4 a:hover {
|
---|
105 | color: #fbb72c;
|
---|
106 | }
|
---|
107 |
|
---|
108 | .product-details p {
|
---|
109 | font-size: 15px;
|
---|
110 | line-height: 22px;
|
---|
111 | margin-bottom: 18px;
|
---|
112 | color: #999;
|
---|
113 | }
|
---|
114 |
|
---|
115 | .product-bottom-details {
|
---|
116 | overflow: hidden;
|
---|
117 | border-top: 1px solid #eee;
|
---|
118 | padding-top: 20px;
|
---|
119 | }
|
---|
120 |
|
---|
121 | .product-bottom-details div {
|
---|
122 | float: left;
|
---|
123 | width: 50%;
|
---|
124 | }
|
---|
125 |
|
---|
126 | .product-price {
|
---|
127 | font-size: 18px;
|
---|
128 | color: #fbb72c;
|
---|
129 | font-weight: 600;
|
---|
130 | }
|
---|
131 |
|
---|
132 | .product-price small {
|
---|
133 | font-size: 80%;
|
---|
134 | font-weight: 400;
|
---|
135 | text-decoration: line-through;
|
---|
136 | display: inline-block;
|
---|
137 | margin-right: 5px;
|
---|
138 | }
|
---|
139 |
|
---|
140 | .product-links {
|
---|
141 | text-align: right;
|
---|
142 | }
|
---|
143 |
|
---|
144 | .product-links a {
|
---|
145 | display: inline-block;
|
---|
146 | margin-left: 5px;
|
---|
147 | color: #e1e1e1;
|
---|
148 | transition: 0.3s;
|
---|
149 | font-size: 17px;
|
---|
150 | }
|
---|
151 |
|
---|
152 | .product-links a:hover {
|
---|
153 | color: #fbb72c;
|
---|
154 | }
|
---|
155 |
|
---|
156 | .grid-container {
|
---|
157 | display: grid;
|
---|
158 | grid-template-columns: auto auto auto;
|
---|
159 | padding: 10px;
|
---|
160 | }
|
---|
161 |
|
---|
162 | #cart {
|
---|
163 | position: fixed;
|
---|
164 | right: 10px;
|
---|
165 | bottom: 10px;
|
---|
166 | }
|
---|
167 |
|
---|
168 | </style>
|
---|
169 |
|
---|
170 | </head>
|
---|
171 | <body>
|
---|
172 | <nav class="navbar navbar-expand-lg navbar-dark bg-dark">
|
---|
173 | <a class="navbar-brand" href="#">Salon Bella</a>
|
---|
174 | <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
|
---|
175 | <span class="navbar-toggler-icon"></span>
|
---|
176 | </button>
|
---|
177 |
|
---|
178 | <div class="collapse navbar-collapse" id="navbarSupportedContent">
|
---|
179 | <ul class="navbar-nav mr-auto">
|
---|
180 | <li class="nav-item ">
|
---|
181 | <a class="nav-link" href="/adminDashboard">Home <span class="sr-only">(current)</span></a>
|
---|
182 | </li>
|
---|
183 |
|
---|
184 | <li class="nav-item dropdown">
|
---|
185 | <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
---|
186 | Functions - Reservations
|
---|
187 | </a>
|
---|
188 | <div class="dropdown-menu" aria-labelledby="navbarDropdown">
|
---|
189 | <a class="dropdown-item" href="/admin-scheduled-reservations">Scheduled Reservations</a>
|
---|
190 | <a class="dropdown-item" href="/admin-schedule-reservation">Schedule reservation</a>
|
---|
191 | <div class="dropdown-divider"></div>
|
---|
192 | <a class="dropdown-item" href="/admin-get-blocked-reservations">Blocked reservations</a>
|
---|
193 | <a class="dropdown-item" href="/admin-block-reservation">Block reservation</a>
|
---|
194 | </div>
|
---|
195 | </li>
|
---|
196 |
|
---|
197 | <li class="nav-item dropdown">
|
---|
198 | <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
---|
199 | Functions - Orders
|
---|
200 | </a>
|
---|
201 | <div class="dropdown-menu" aria-labelledby="navbarDropdown">
|
---|
202 | <a class="dropdown-item" href="/admin-get-orders">Ordered Products</a>
|
---|
203 | <a class="dropdown-item" href="/admin-add-product">Add product</a>
|
---|
204 | <a class="dropdown-item" href="/admin-remove-product">Remove product</a>
|
---|
205 | </div>
|
---|
206 | </li>
|
---|
207 |
|
---|
208 | </ul>
|
---|
209 | <form class="form-inline my-2 my-lg-0" method="get" action="/logout">
|
---|
210 | <button class="btn btn-outline-info my-2 my-sm-0" type="submit">Log out</button>
|
---|
211 | </form>
|
---|
212 | </div>
|
---|
213 | </nav>
|
---|
214 | <br>
|
---|
215 |
|
---|
216 | <div class="grid-container">
|
---|
217 | <#if products??>
|
---|
218 | <#list products as product>
|
---|
219 | <div class="container d-flex justify-content-center mt-50 mb-50">
|
---|
220 | <div class="product-card">
|
---|
221 | <div class="badge">Hot</div>
|
---|
222 | <div class="product-tumb">
|
---|
223 | <img src="data:image/jpeg;base64,${product['base64']}" alt=""/>
|
---|
224 | </div>
|
---|
225 | <div class="product-details">
|
---|
226 | <span class="product-catagory">${product['category']}</span>
|
---|
227 | <h4><a href="">${product['name']}</a></h4>
|
---|
228 | <p>${product['description']}</p>
|
---|
229 | <div class="product-bottom-details">
|
---|
230 | <div class="product-price">${product['price']} ден.</div>
|
---|
231 | <div class="product-links">
|
---|
232 | </div>
|
---|
233 | </div>
|
---|
234 | <br>
|
---|
235 | <form method="post" action="/admin-remove-product">
|
---|
236 | <input type="text" value="${product['id']}" name="id" hidden />
|
---|
237 | <button class="btn btn-outline-info my-2 my-sm-0" type="submit">Remove Product</button>
|
---|
238 | </form>
|
---|
239 |
|
---|
240 | </div>
|
---|
241 | </div>
|
---|
242 | </div>
|
---|
243 | </#list>
|
---|
244 | </#if>
|
---|
245 | </div>
|
---|
246 |
|
---|
247 |
|
---|
248 | <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
|
---|
249 | <script src="https://cdn.jsdelivr.net/npm/popper.js@1.14.7/dist/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
|
---|
250 | <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.3.1/dist/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
|
---|
251 | <script
|
---|
252 | type="text/javascript"
|
---|
253 | src="https://cdnjs.cloudflare.com/ajax/libs/mdb-ui-kit/5.0.0/mdb.min.js"
|
---|
254 | ></script>
|
---|
255 | </body>
|
---|
256 | </html> |
---|