36 lines
1.2 KiB
PHP
36 lines
1.2 KiB
PHP
<script>
|
|
function roomManager() {
|
|
return {
|
|
rooms: @json($rooms), // Pass rooms data from the controller
|
|
init() {
|
|
this.rooms.forEach(room => {
|
|
new Sortable(document.getElementById('room-' + room.id), {
|
|
group: 'shared',
|
|
animation: 150,
|
|
onEnd: this.updateOrder.bind(this)
|
|
});
|
|
});
|
|
},
|
|
updateOrder(event) {
|
|
let order = [];
|
|
event.to.querySelectorAll('li').forEach((el, index) => {
|
|
order.push({
|
|
id: el.dataset.id,
|
|
room_id: event.to.id.split('-')[1],
|
|
room_order: index
|
|
});
|
|
});
|
|
|
|
fetch('/admin/auditions/roomUpdate', {
|
|
method: 'POST',
|
|
headers: {
|
|
'Content-Type': 'application/json',
|
|
'X-CSRF-TOKEN': '{{ csrf_token() }}'
|
|
},
|
|
body: JSON.stringify(order)
|
|
});
|
|
}
|
|
}
|
|
}
|
|
</script>
|