|
<!DOCTYPE html> |
|
<html lang="en"> |
|
<head> |
|
<meta charset="UTF-8"> |
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|
<title>Комменты Бизон 365</title> |
|
<style> |
|
body { |
|
font-family: Arial, sans-serif; |
|
text-align: center; |
|
background-color: #f0f0f0; |
|
margin: 0; |
|
padding: 0; |
|
} |
|
h1 { |
|
background-color: #4CAF50; |
|
color: white; |
|
padding: 20px; |
|
margin: 0; |
|
border-bottom: 2px solid #388E3C; |
|
} |
|
.input-row { |
|
display: flex; |
|
flex-direction: column; |
|
align-items: center; |
|
gap: 10px; |
|
margin-top: 20px; |
|
} |
|
.input-row label, .input-row input, .input-row select, .input-row textarea { |
|
width: 80%; |
|
padding: 10px; |
|
font-size: 16px; |
|
border: 1px solid #ccc; |
|
border-radius: 5px; |
|
} |
|
.input-row input[type="number"] { |
|
max-width: 100px; |
|
} |
|
#sendRequestButton, #sendGetRequestButton { |
|
color: white; |
|
background-color: #4CAF50; |
|
border: none; |
|
cursor: pointer; |
|
padding: 10px 20px; |
|
font-size: 16px; |
|
border-radius: 5px; |
|
margin-top: 10px; |
|
} |
|
#sendRequestButton:hover, #sendGetRequestButton:hover { |
|
background-color: #388E3C; |
|
} |
|
.dropdown-container { |
|
margin-top: 20px; |
|
width: 80%; |
|
display: flex; |
|
justify-content: center; |
|
} |
|
select { |
|
background-color: #e8f5e9; |
|
} |
|
</style> |
|
</head> |
|
<body> |
|
<h1>Комменты Бизон 365</h1> |
|
|
|
<div class="input-row"> |
|
<label for="tokenInput">Enter Token:</label> |
|
<input type="text" id="tokenInput" placeholder="Your Token"> |
|
</div> |
|
|
|
<div class="input-row"> |
|
<label for="dateSelect">Select Min Date:</label> |
|
<input type="datetime-local" id="dateSelect"> |
|
</div> |
|
|
|
<div class="input-row"> |
|
<label for="maxDateSelect">Select Max Date:</label> |
|
<input type="datetime-local" id="maxDateSelect"> |
|
</div> |
|
|
|
<div class="input-row"> |
|
<label for="limitInput">Limit:</label> |
|
<input type="number" id="limitInput" value="20" min="1" max="100"> |
|
</div> |
|
|
|
<div class="input-row"> |
|
<label for="typeSelect">Type:</label> |
|
<select id="typeSelect"> |
|
<option value="LiveWebinars">Live Webinars</option> |
|
<option value="AutoWebinars">Auto Webinars</option> |
|
</select> |
|
</div> |
|
|
|
<div class="input-row"> |
|
<button id="sendRequestButton">Send Request</button> |
|
</div> |
|
|
|
<div class="input-row"> |
|
<textarea id="responseArea" rows="10" cols="50" readonly></textarea> |
|
</div> |
|
|
|
<div class="dropdown-container" id="dropdown-container"></div> |
|
|
|
<div class="input-row"> |
|
<button id="sendGetRequestButton">Send GET Request</button> |
|
</div> |
|
|
|
<div class="input-row"> |
|
<textarea id="secondResponseArea" rows="10" cols="50" readonly></textarea> |
|
</div> |
|
|
|
<script> |
|
document.getElementById('sendRequestButton').addEventListener('click', function() { |
|
const token = document.getElementById('tokenInput').value; |
|
const minDate = document.getElementById('dateSelect').value; |
|
const maxDate = document.getElementById('maxDateSelect').value; |
|
const limit = document.getElementById('limitInput').value; |
|
const type = document.getElementById('typeSelect').value; |
|
|
|
const url = '/send_request'; |
|
const params = new URLSearchParams(); |
|
params.append('token', token); |
|
params.append('minDate', minDate); |
|
params.append('maxDate', maxDate); |
|
params.append('limit', limit); |
|
params.append('type', type); |
|
|
|
fetch(url, { |
|
method: 'POST', |
|
headers: { |
|
'Content-Type': 'application/x-www-form-urlencoded' |
|
}, |
|
body: params.toString() |
|
}) |
|
.then(response => response.json()) |
|
.then(data => { |
|
console.log('JSON Response:', data); |
|
document.getElementById('responseArea').value = JSON.stringify(data, null, 2); |
|
createDropdown(data); |
|
}) |
|
.catch(error => { |
|
console.error('Error:', error); |
|
document.getElementById('responseArea').value = 'Error: ' + error.message; |
|
}); |
|
}); |
|
|
|
function createDropdown(data) { |
|
const container = document.getElementById('dropdown-container'); |
|
container.innerHTML = ''; |
|
const select = document.createElement('select'); |
|
select.id = 'dropdown'; |
|
select.style.backgroundColor = '#e8f5e9'; |
|
data.forEach(item => { |
|
const option = document.createElement('option'); |
|
option.value = item; |
|
option.text = item; |
|
select.appendChild(option); |
|
}); |
|
container.appendChild(select); |
|
} |
|
|
|
document.getElementById('sendGetRequestButton').addEventListener('click', function() { |
|
const selectedValue = document.getElementById('dropdown')?.value; |
|
if (!selectedValue) { |
|
alert('Please select a webinar from the dropdown.'); |
|
return; |
|
} |
|
const token = document.getElementById('tokenInput').value; |
|
const getUrl = `/send_get_request?token=${encodeURIComponent(token)}&webinarId=${encodeURIComponent(selectedValue)}`; |
|
|
|
fetch(getUrl, { |
|
method: 'GET' |
|
}) |
|
.then(response => response.json()) |
|
.then(data => { |
|
console.log('GET Response:', data); |
|
document.getElementById('secondResponseArea').value = JSON.stringify(data, null, 2); |
|
}) |
|
.catch(error => { |
|
console.error('Error:', error); |
|
document.getElementById('secondResponseArea').value = 'Error: ' + error.message; |
|
}); |
|
}); |
|
</script> |
|
</body> |
|
</html> |
|
|
|
|