sensor and location done and some cleanupd
testing will be required
This commit is contained in:
@ -3,19 +3,26 @@ $(document).ready(function () {
|
||||
$('#locationContainer').show();
|
||||
$('#createLocationForm').hide();
|
||||
$('#updateLocationForm').hide();
|
||||
$('#deleteLocationForm').hide();
|
||||
});
|
||||
$('#addLocationLink').on('click', function () {
|
||||
$('#locationContainer').hide();
|
||||
$('#createLocationForm').show();
|
||||
$('#updateLocationForm').hide();
|
||||
$('#deleteLocationForm').hide();
|
||||
});
|
||||
$('#updateLocationLink').on('click', function () {
|
||||
$('#locationContainer').hide();
|
||||
$('#createLocationForm').hide();
|
||||
$('#updateLocationForm').show();
|
||||
populateLocationDropdown();
|
||||
$('#deleteLocationForm').hide();
|
||||
});
|
||||
|
||||
$('#deleteLocationLink').on('click', function () {
|
||||
$('#locationContainer').hide();
|
||||
$('#createLocationForm').hide();
|
||||
$('#updateLocationForm').show();
|
||||
$('#deleteLocationForm').show();
|
||||
});
|
||||
});
|
||||
|
||||
let locationArray = [];
|
||||
@ -42,8 +49,7 @@ $(document).ready(function () {
|
||||
});
|
||||
}
|
||||
populateTableAndArray(locationsData);
|
||||
console.log(locationArray);
|
||||
|
||||
populateLocationDropdown();
|
||||
$('#locationForm').on('submit', function (e) {
|
||||
e.preventDefault();
|
||||
|
||||
@ -136,3 +142,39 @@ $('#locationForm').on('submit', function (e) {
|
||||
// Handle error as needed
|
||||
});
|
||||
});
|
||||
|
||||
$('#deleteForm').on('submit', function (e) {
|
||||
e.preventDefault();
|
||||
const selectedLocationId = $('#locationDropdown').val();
|
||||
const csrf_token = $('#userForm input[name="csrf_token"]').val();
|
||||
|
||||
fetch('/location/delete', {
|
||||
method: 'DELETE',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
body: JSON.stringify({
|
||||
id:selectedLocationId,
|
||||
csrf_token: csrf_token
|
||||
}),
|
||||
})
|
||||
.then(response => {
|
||||
if (response.ok) {
|
||||
// Status 201 indicates successful creation
|
||||
return response.json();
|
||||
} else {
|
||||
return response.json().then(data => {
|
||||
throw new Error(data.message || `HTTP error! Status: ${response.status}`);
|
||||
});
|
||||
}
|
||||
})
|
||||
.then(data => {
|
||||
console.log(`Location deleted successfully. Message: ${data.message}`);
|
||||
alert('Location deleted successfully!');
|
||||
resetFormFields();
|
||||
})
|
||||
.catch(error => {
|
||||
console.error('Location not deleted successfully', error);
|
||||
// Handle error as needed
|
||||
});
|
||||
});
|
@ -62,9 +62,9 @@
|
||||
</div>
|
||||
|
||||
<div id="updateLocationForm" class="location-update-container" style="display: none;">
|
||||
<h3>Add Location</h3>
|
||||
<h3>Update Location</h3>
|
||||
<div class="content">
|
||||
<form action="/api/v0/location/update" id="updateForm" method="put">
|
||||
<form action="/location/update" id="updateForm" method="put">
|
||||
<div class="Location-details">
|
||||
<div class="input-box">
|
||||
<span class="details">Location to Update</span>
|
||||
@ -87,6 +87,25 @@
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="deleteLocationForm" class="location-delete-container" style="display: none;">
|
||||
<h3>Delete Location</h3>
|
||||
<div class="content">
|
||||
<form action="/location/delete" id="deleteForm" method="delete">
|
||||
<div class="Location-details">
|
||||
<div class="input-box">
|
||||
<span class="details">Location to Delete</span>
|
||||
<select name="location" id="locationDropdown" required>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<input type="hidden" name="csrf_token" value="<%= csrfToken %>">
|
||||
<div class="button">
|
||||
<input type="submit" value="submit">
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<footer>
|
||||
Any Issue faced, Please contact the administrator at 11111111 or ecosaverAdmin@gmail.com
|
||||
</footer>
|
||||
|
@ -3,12 +3,32 @@ $(document).ready(function () {
|
||||
$('#sensorContainer').show();
|
||||
$('#createSensorForm').hide();
|
||||
$('#additional-text4').hide();
|
||||
$('#updateSensorForm').hide();
|
||||
$('#deleteSensorForm').hide();
|
||||
});
|
||||
$('#addSensorLink').on('click', function () {
|
||||
$('#sensorContainer').hide();
|
||||
$('#createSensorForm').show();
|
||||
$('#additional-text4').show();
|
||||
$('#updateSensorForm').hide();
|
||||
$('#deleteSensorForm').hide();
|
||||
});
|
||||
$('#updateSensorLink').on('click', function () {
|
||||
$('#sensorContainer').hide();
|
||||
$('#createSensorForm').show();
|
||||
$('#additional-text4').show();
|
||||
$('#updateSensorForm').show();
|
||||
$('#deleteSensorForm').hide();
|
||||
});
|
||||
$('#deleteSensorLink').on('click', function () {
|
||||
$('#sensorContainer').hide();
|
||||
$('#createSensorForm').show();
|
||||
$('#additional-text4').show();
|
||||
$('#updateSensorForm').hide();
|
||||
$('#deleteSensorForm').show();
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
function populateTableAndArray(data, locationsArray) {
|
||||
const tableBody = document.getElementById("sensorTableBody");
|
||||
@ -38,16 +58,13 @@ $(document).ready(function () {
|
||||
|
||||
function populateLocationDropdown() {
|
||||
const locationDropdown = document.getElementById('locationDropdown');
|
||||
|
||||
// Clear existing options
|
||||
locationDropdown.innerHTML = '';
|
||||
|
||||
// Add a default option
|
||||
const defaultOption = document.createElement('option');
|
||||
defaultOption.text = 'Select a Location';
|
||||
defaultOption.value = '';
|
||||
locationDropdown.add(defaultOption);
|
||||
|
||||
// Add locations as options
|
||||
locationsArray.forEach(location => {
|
||||
const option = document.createElement('option');
|
||||
@ -58,6 +75,29 @@ $(document).ready(function () {
|
||||
}
|
||||
populateLocationDropdown();
|
||||
|
||||
function populateSensorDropdown() {
|
||||
const sensorDropdown = document.getElementById('sensorDropdown');
|
||||
|
||||
// Clear existing options
|
||||
sensorDropdown.innerHTML = '';
|
||||
|
||||
// Add a default option
|
||||
const defaultOption = document.createElement('option');
|
||||
defaultOption.text = 'Select a Sensor';
|
||||
defaultOption.value = '';
|
||||
sensorDropdown.add(defaultOption);
|
||||
|
||||
// Add locations as options
|
||||
sensorArray.forEach(location => {
|
||||
const option = document.createElement('option');
|
||||
option.text = sensor.sensorname;
|
||||
option.value = sensor.id;
|
||||
sensorDropdown.add(option);
|
||||
});
|
||||
}
|
||||
populateSensorDropdown();
|
||||
|
||||
|
||||
$('#sensorForm').on('submit', function (e) {
|
||||
e.preventDefault();
|
||||
const sensor = $('#sensor').val();
|
||||
@ -73,7 +113,6 @@ $('#sensorForm').on('submit', function (e) {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
body: JSON.stringify({
|
||||
id: id,
|
||||
sensorname: sensor,
|
||||
added_by: user,
|
||||
mac_address: macAddress,
|
||||
@ -102,3 +141,85 @@ $('#sensorForm').on('submit', function (e) {
|
||||
// Handle error as needed
|
||||
});
|
||||
});
|
||||
|
||||
$('#updatesensorForm').on('submit', function (e) {
|
||||
e.preventDefault();
|
||||
const id = $('#sensorDropdown').val();
|
||||
const sensorname = $('#sensorname').val();
|
||||
const user = req.session.jobTitle;
|
||||
const macAddress = $('#macAddress').val();
|
||||
const description = $('#description').val();
|
||||
const location = $('#locationDropdown').val();
|
||||
const csrf_token = $('#userForm input[name="csrf_token"]').val();
|
||||
|
||||
fetch('sensor/update', {
|
||||
method: 'PUT',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
body: JSON.stringify({
|
||||
id: id,
|
||||
sensorname: sensorname,
|
||||
added_by: user,
|
||||
mac_address: macAddress,
|
||||
description: description,
|
||||
location: location,
|
||||
csrf_token: csrf_token
|
||||
}),
|
||||
})
|
||||
.then(response => {
|
||||
if (response.ok) {
|
||||
// Status 201 indicates successful creation
|
||||
return response.json();
|
||||
} else {
|
||||
return response.json().then(data => {
|
||||
throw new Error(data.message || `HTTP error! Status: ${response.status}`);
|
||||
});
|
||||
}
|
||||
})
|
||||
.then(data => {
|
||||
console.log(`Sensor updated successfully. Message: ${data.message}`);
|
||||
alert('Sensor updated successfully!');
|
||||
resetFormFields();
|
||||
})
|
||||
.catch(error => {
|
||||
console.error('Sensor not updated successfully', error);
|
||||
// Handle error as needed
|
||||
});
|
||||
});
|
||||
|
||||
$('#deleteForm').on('submit', function (e) {
|
||||
e.preventDefault();
|
||||
const selectedSensorId = $('#sensorDropdown').val();
|
||||
const csrf_token = $('#userForm input[name="csrf_token"]').val();
|
||||
|
||||
fetch('/sensor/delete', {
|
||||
method: 'DELETE',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
body: JSON.stringify({
|
||||
id:selectedSensorId,
|
||||
csrf_token: csrf_token
|
||||
}),
|
||||
})
|
||||
.then(response => {
|
||||
if (response.ok) {
|
||||
// Status 201 indicates successful creation
|
||||
return response.json();
|
||||
} else {
|
||||
return response.json().then(data => {
|
||||
throw new Error(data.message || `HTTP error! Status: ${response.status}`);
|
||||
});
|
||||
}
|
||||
})
|
||||
.then(data => {
|
||||
console.log(`Sensor deleted successfully. Message: ${data.message}`);
|
||||
alert('Sensor deleted successfully!');
|
||||
resetFormFields();
|
||||
})
|
||||
.catch(error => {
|
||||
console.error('Sensor not deleted successfully', error);
|
||||
// Handle error as needed
|
||||
});
|
||||
});
|
||||
|
@ -20,8 +20,8 @@
|
||||
<nav>
|
||||
<a href="#" id="allSensorLink">All Sensor</a>
|
||||
<a href="#" id="addSensorLink">Add Sensor</a>
|
||||
<a href="#">Update Sensor</a>
|
||||
<a href="#">Delete Sensor</a>
|
||||
<a href="#" id="updateSensorLink">Update Sensor</a>
|
||||
<a href="#" id="deleteSensorLink">Delete Sensor</a>
|
||||
<a href="/home" id="homeLink">Home</a>
|
||||
</nav>
|
||||
|
||||
@ -83,13 +83,68 @@
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div id="updateSensorForm" class="sensor-update-container" style="display: none;">
|
||||
<h3>Add Location</h3>
|
||||
<div class="content">
|
||||
<form action="/sensor/update" id="updateForm" method="put">
|
||||
<div class="Location-details">
|
||||
<div class="input-box">
|
||||
<span class="details">Sensor to Update</span>
|
||||
<select name="Sensor" id="sensorDropdown" required>
|
||||
</select>
|
||||
</div>
|
||||
<div class="input-box">
|
||||
<span class="details">Sensor Name</span>
|
||||
<input type="text" name="sensorname" id="sensorname" placeholder="Enter Sensor name" required>
|
||||
</div>
|
||||
<div class="input-box">
|
||||
<span class="details">Mac Address</span>
|
||||
<input type="text" name="macAddress" id="macAddress" placeholder="Enter the Mac Address" required>
|
||||
</div>
|
||||
<div class="input-box">
|
||||
<span class="details">Description</span>
|
||||
<input type="text" name="description" id="description" placeholder="Enter the description here" required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="input-box">
|
||||
<span class="details">Location</span>
|
||||
<select name="location" id="locationDropdown" required>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<input type="hidden" name="csrf_token" value="<%= csrfToken %>">
|
||||
<input type="hidden" name="csrf_token" value="<%= csrfToken %>">
|
||||
<div class="button">
|
||||
<input type="submit" value="submit">
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="deleteSensorForm" class="sensor-delete-container" style="display: none;">
|
||||
<h3>Delete Location</h3>
|
||||
<div class="content">
|
||||
<form action="/sensor/delete" id="deleteForm" method="delete">
|
||||
<div class="Location-details">
|
||||
<div class="input-box">
|
||||
<span class="details">Sensor to Delete</span>
|
||||
<select name="sensor" id="sensorDropdown" required>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<input type="hidden" name="csrf_token" value="<%= csrfToken %>">
|
||||
<div class="button">
|
||||
<input type="submit" value="submit">
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<footer>
|
||||
Any Issue faced, Please contact the administrator at 11111111 or ecosaverAdmin@gmail.com
|
||||
</footer>
|
||||
</body>
|
||||
<script>
|
||||
const locationsArray = <%=-JSON.stringify(locationsData) %>;
|
||||
const locationsArray = <%-JSON.stringify(locationsData) %>;
|
||||
const sensorArray = <%- JSON.stringify(sensorData) %>;
|
||||
</script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/dompurify/2.3.3/purify.min.js"></script>
|
||||
|
Reference in New Issue
Block a user