DmitrMakeev commited on
Commit
43aee25
1 Parent(s): bef3d81

Update biz_v.html

Browse files
Files changed (1) hide show
  1. biz_v.html +14 -320
biz_v.html CHANGED
@@ -3,238 +3,9 @@
3
  <head>
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>API Request</title>
7
  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/notyf/notyf.min.css">
8
- <style>
9
- body {
10
- font-family: Arial, sans-serif;
11
- text-align: center;
12
- background-color: #f0f0f0;
13
- margin: 0;
14
- padding: 0;
15
- }
16
- h1 {
17
- background-color: #4CAF50;
18
- color: white;
19
- padding: 20px;
20
- margin: 0;
21
- border-bottom: 2px solid #388E3C;
22
- font-size: 28px;
23
- text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
24
- }
25
- .container {
26
- display: flex;
27
- justify-content: space-around;
28
- margin-top: 20px;
29
- }
30
- .block {
31
- width: 45%;
32
- text-align: left;
33
- background-color: white;
34
- padding: 20px;
35
- border-radius: 10px;
36
- box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
37
- }
38
- .form-group {
39
- margin: 20px 0;
40
- }
41
- .form-group label {
42
- display: block;
43
- margin-bottom: 8px;
44
- font-size: 16px;
45
- }
46
- .form-group input,
47
- .form-group select {
48
- width: 100%;
49
- padding: 12px;
50
- font-size: 16px;
51
- border: 1px solid #ccc;
52
- border-radius: 5px;
53
- box-sizing: border-box;
54
- }
55
- button {
56
- display: block;
57
- margin: 20px auto;
58
- color: white;
59
- background-color: #4CAF50;
60
- border: none;
61
- cursor: pointer;
62
- padding: 12px 24px;
63
- font-size: 16px;
64
- border-radius: 5px;
65
- transition: background-color 0.3s ease;
66
- }
67
- button:hover {
68
- background-color: #388E3C;
69
- }
70
- .input-row {
71
- display: flex;
72
- justify-content: center;
73
- gap: 10px;
74
- margin-top: 20px;
75
- }
76
- .input-row input[type="file"] {
77
- padding: 10px;
78
- font-size: 16px;
79
- border: 1px solid #ccc;
80
- border-radius: 5px;
81
- }
82
- .input-row input[type="checkbox"] {
83
- margin-top: 5px;
84
- }
85
- .input-row label {
86
- display: flex;
87
- align-items: center;
88
- color: #4CAF50;
89
- font-size: 16px;
90
- }
91
- #uploadButton {
92
- color: white;
93
- background-color: #4CAF50;
94
- border: none;
95
- cursor: pointer;
96
- padding: 10px 20px;
97
- font-size: 16px;
98
- border-radius: 5px;
99
- margin-top: 20px;
100
- display: block;
101
- margin-left: auto;
102
- margin-right: auto;
103
- }
104
- #uploadButton:hover {
105
- background-color: #388E3C;
106
- }
107
- /* Центрирование заголовков блоков */
108
- .block h2 {
109
- text-align: center;
110
- }
111
- /* Custom Checkbox Styles */
112
- .container-checkbox {
113
- color: #000000;
114
- display: block;
115
- position: relative;
116
- padding-left: 35px;
117
- margin-bottom: 12px;
118
- cursor: pointer;
119
- font-size: 16px;
120
- -webkit-user-select: none;
121
- -moz-user-select: none;
122
- -ms-user-select: none;
123
- user-select: none;
124
- }
125
- .container-checkbox input {
126
- position: absolute;
127
- opacity: 0;
128
- cursor: pointer;
129
- height: 0;
130
- width: 0;
131
- }
132
- .checkmark {
133
- position: absolute;
134
- top: 0;
135
- left: 0;
136
- height: 25px;
137
- width: 25px;
138
- background-color: #eee;
139
- }
140
- .container-checkbox:hover input ~ .checkmark {
141
- background-color: #ccc;
142
- }
143
- .container-checkbox input:checked ~ .checkmark {
144
- background-color: #4CAF50;
145
- }
146
- .checkmark:after {
147
- content: "";
148
- position: absolute;
149
- display: none;
150
- }
151
- .container-checkbox input:checked ~ .checkmark:after {
152
- display: block;
153
- }
154
- .container-checkbox .checkmark:after {
155
- left: 9px;
156
- top: 5px;
157
- width: 5px;
158
- height: 10px;
159
- border: solid white;
160
- border-width: 0 3px 3px 0;
161
- -webkit-transform: rotate(45deg);
162
- -ms-transform: rotate(45deg);
163
- transform: rotate(45deg);
164
- }
165
- /* Стили для input[type="date"] */
166
- input[type="date"] {
167
- background-color: #4CAF50;
168
- color: white;
169
- padding: 12px;
170
- font-size: 16px;
171
- border: none;
172
- border-radius: 5px;
173
- width: 100%;
174
- box-sizing: border-box;
175
- }
176
- ::-webkit-calendar-picker-indicator {
177
- background-color: white;
178
- padding: 5px;
179
- cursor: pointer;
180
- border-radius: 3px;
181
- }
182
-
183
-
184
-
185
-
186
- #dropdown {
187
- width: 100%;
188
- padding: 12px;
189
- font-size: 16px;
190
- border: 1px solid #ccc;
191
- border-radius: 5px;
192
- box-sizing: border-box;
193
- margin-bottom: 20px;
194
- }
195
-
196
-
197
- .input-row label {
198
-
199
- color: #000000;
200
-
201
- }
202
-
203
- </style>
204
  </head>
205
-
206
-
207
-
208
-
209
-
210
-
211
-
212
-
213
-
214
-
215
-
216
-
217
-
218
-
219
-
220
-
221
-
222
-
223
-
224
-
225
-
226
-
227
-
228
-
229
-
230
-
231
-
232
-
233
-
234
-
235
-
236
-
237
-
238
  <body>
239
  <h1>WhatsMasterGRM - Принудительное обновление базы</h1>
240
 
@@ -243,7 +14,7 @@
243
  <h2>Тильда - Таблица CSV</h2>
244
  <form id="uploadForm" enctype="multipart/form-data" method="post">
245
  <div class="input-row">
246
- <input type="file" name="file" accept=".csv">
247
  </div>
248
  <div class="input-row">
249
  <label class="container-checkbox">
@@ -262,30 +33,6 @@
262
  <div id="result"></div>
263
  </div>
264
 
265
-
266
-
267
-
268
-
269
-
270
-
271
-
272
-
273
-
274
-
275
-
276
-
277
-
278
-
279
-
280
-
281
-
282
-
283
-
284
-
285
-
286
-
287
-
288
-
289
  <div class="block">
290
  <h2>Бизон 365 - API</h2>
291
  <div class="form-group">
@@ -309,7 +56,6 @@
309
  </div>
310
  </div>
311
 
312
- <!-- Подключение скрипта Notyf -->
313
  <script src="https://cdn.jsdelivr.net/npm/notyf/notyf.min.js"></script>
314
  <script>
315
  document.getElementById('uploadForm').addEventListener('submit', function(event) {
@@ -317,21 +63,7 @@
317
  const form = new FormData(this);
318
  const notyf = new Notyf({
319
  duration: 5000,
320
- position: {
321
- x: 'right',
322
- y: 'top'
323
- },
324
- types: [
325
- {
326
- type: 'info',
327
- background: 'green',
328
- icon: {
329
- className: 'notyf__icon--info',
330
- tagName: 'span',
331
- text: ''
332
- }
333
- }
334
- ]
335
  });
336
  notyf.open({
337
  type: 'info',
@@ -352,48 +84,31 @@
352
  console.error('Error:', error);
353
  notyf.open({
354
  type: 'error',
355
- message: 'An error occurred while uploading the file.'
356
  });
357
  });
358
  });
359
- </script>
360
 
361
- <script>
362
- const notyf = new Notyf({
363
- duration: 5000,
364
- position: {
365
- x: 'right',
366
- y: 'top',
367
- },
368
- });
369
- let requestButtonClicked = false;
370
  document.getElementById('sendRequestButton').addEventListener('click', function() {
371
- if (requestButtonClicked) return;
372
- requestButtonClicked = true;
373
  const token = document.getElementById('tokenInput').value;
374
  const minDate = document.getElementById('dateInput').value;
375
  const type = document.getElementById('typeSelect').value;
376
  const url = '/send_request';
377
  fetch(url, {
378
  method: 'POST',
379
- headers: {
380
- 'Content-Type': 'application/x-www-form-urlencoded'
381
- },
382
- body: 'token=' + encodeURIComponent(token) + '&minDate=' + encodeURIComponent(minDate) + '&type=' + encodeURIComponent(type)
383
  })
384
  .then(response => response.json())
385
  .then(data => {
386
- console.log('JSON Response:', data);
387
  createDropdown(data);
388
  })
389
  .catch(error => {
390
  console.error('Error:', error);
391
- notyf.error('Error: ' + error.message);
392
- })
393
- .finally(() => {
394
- requestButtonClicked = false;
395
  });
396
  });
 
397
  function createDropdown(data) {
398
  const container = document.getElementById('dropdown-container');
399
  container.innerHTML = '';
@@ -408,45 +123,24 @@
408
  });
409
  container.appendChild(select);
410
  const sendGetRequestButton = document.getElementById('sendGetRequestButton');
411
- sendGetRequestButton.removeEventListener('click', handleGetRequest);
412
  sendGetRequestButton.addEventListener('click', handleGetRequest);
413
  }
 
414
  function handleGetRequest() {
415
  const selectedValue = document.getElementById('dropdown').value;
416
  const token = document.getElementById('tokenInput').value;
417
- const getUrl = '/send_get_request?token=' + encodeURIComponent(token) + '&webinarId=' + encodeURIComponent(selectedValue);
418
- fetch(getUrl, {
419
- method: 'GET'
420
- })
421
  .then(response => response.json())
422
  .then(data => {
423
- console.log('GET Response:', data);
424
- notyf.success('Пользователи добавлены в базу данных WhatsGRM');
425
  })
426
  .catch(error => {
427
  console.error('Error:', error);
428
- notyf.error('Error: ' + error.message);
429
  });
430
  }
431
  </script>
432
-
433
-
434
-
435
-
436
-
437
-
438
-
439
-
440
-
441
-
442
-
443
-
444
-
445
-
446
-
447
-
448
-
449
-
450
-
451
  </body>
452
  </html>
 
 
3
  <head>
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>WhatsMasterGRM - Принудительное обновление базы</title>
7
  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/notyf/notyf.min.css">
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8
  </head>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9
  <body>
10
  <h1>WhatsMasterGRM - Принудительное обновление базы</h1>
11
 
 
14
  <h2>Тильда - Таблица CSV</h2>
15
  <form id="uploadForm" enctype="multipart/form-data" method="post">
16
  <div class="input-row">
17
+ <input type="file" name="file" accept=".csv" required>
18
  </div>
19
  <div class="input-row">
20
  <label class="container-checkbox">
 
33
  <div id="result"></div>
34
  </div>
35
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
36
  <div class="block">
37
  <h2>Бизон 365 - API</h2>
38
  <div class="form-group">
 
56
  </div>
57
  </div>
58
 
 
59
  <script src="https://cdn.jsdelivr.net/npm/notyf/notyf.min.js"></script>
60
  <script>
61
  document.getElementById('uploadForm').addEventListener('submit', function(event) {
 
63
  const form = new FormData(this);
64
  const notyf = new Notyf({
65
  duration: 5000,
66
+ position: { x: 'right', y: 'top' }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
67
  });
68
  notyf.open({
69
  type: 'info',
 
84
  console.error('Error:', error);
85
  notyf.open({
86
  type: 'error',
87
+ message: 'Произошла ошибка при загрузке файла.'
88
  });
89
  });
90
  });
 
91
 
 
 
 
 
 
 
 
 
 
92
  document.getElementById('sendRequestButton').addEventListener('click', function() {
 
 
93
  const token = document.getElementById('tokenInput').value;
94
  const minDate = document.getElementById('dateInput').value;
95
  const type = document.getElementById('typeSelect').value;
96
  const url = '/send_request';
97
  fetch(url, {
98
  method: 'POST',
99
+ headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
100
+ body: new URLSearchParams({ token, minDate, type }).toString()
 
 
101
  })
102
  .then(response => response.json())
103
  .then(data => {
 
104
  createDropdown(data);
105
  })
106
  .catch(error => {
107
  console.error('Error:', error);
108
+ new Notyf().error('Ошибка: ' + error.message);
 
 
 
109
  });
110
  });
111
+
112
  function createDropdown(data) {
113
  const container = document.getElementById('dropdown-container');
114
  container.innerHTML = '';
 
123
  });
124
  container.appendChild(select);
125
  const sendGetRequestButton = document.getElementById('sendGetRequestButton');
 
126
  sendGetRequestButton.addEventListener('click', handleGetRequest);
127
  }
128
+
129
  function handleGetRequest() {
130
  const selectedValue = document.getElementById('dropdown').value;
131
  const token = document.getElementById('tokenInput').value;
132
+ const getUrl = `/send_get_request?token=${encodeURIComponent(token)}&webinarId=${encodeURIComponent(selectedValue)}`;
133
+ fetch(getUrl, { method: 'GET' })
 
 
134
  .then(response => response.json())
135
  .then(data => {
136
+ new Notyf().success('Пользователи добавлены в базу данных WhatsMasterGRM');
 
137
  })
138
  .catch(error => {
139
  console.error('Error:', error);
140
+ new Notyf().error('Ошибка: ' + error.message);
141
  });
142
  }
143
  </script>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
144
  </body>
145
  </html>
146
+