| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- "use strict";
- const appointmentErrorParagraph = document.getElementById("appointment-error");
- const appointmentSuccessParagraph = document.getElementById("appointment-success");
- const titleInput = document.getElementById('title');
- const descriptionInput = document.getElementById('description');
- const dueDateInput = document.getElementById('dueDate');
- const startDateInput = document.getElementById('startDate');
- const endDateInput = document.getElementById('endDate');
- const placeInput = document.getElementById('place');
- window.onload = async function() {
- document.getElementById("appointment-btn").addEventListener('click', async () => {
- await createAppointment();
- })
- }
- async function fetchWithToken(url, options) {
- const authToken = localStorage.getItem('token');
- return await fetch(url, {...options, headers: {
- 'Authorization': `Bearer ${authToken}`,
- 'Content-Type': 'application/json',
- }});
- }
- async function createAppointment() {
- const title = titleInput.value;
- const description = descriptionInput.value;
- const dueDate = dueDateInput.value;
- const startDate = startDateInput.value;
- const endDate = endDateInput.value;
- const place = placeInput.value;
- if (!title || !description || !dueDate || !startDate || !endDate) {
- appointmentSuccessParagraph.innerText = "";
- appointmentErrorParagraph.innerText = "Not fields filled";
- return;
- }
- const response = await fetchWithToken('/api/users/create', {
- method: 'POST',
- body: JSON.stringify({
- title: title,
- description: description,
- dueDate: dueDate,
- startDate: startDate,
- endDate: endDate,
- place: place
- })
- });
- const js = await response.json();
- if (!response.ok) {
- appointmentSuccessParagraph.innerText = "";
- appointmentErrorParagraph.innerText = js["message"];
- } else {
- appointmentErrorParagraph.innerText = "";
- appointmentSuccessParagraph.innerText = "Appointment created successfully.";
- }
- }
|