mirror of
https://github.com/beestat/app.git
synced 2025-05-24 02:14:03 -04:00
101 lines
2.6 KiB
JavaScript
101 lines
2.6 KiB
JavaScript
/**
|
|
* Delete a floor plan.
|
|
*
|
|
* @param {number} floor_plan_id
|
|
*/
|
|
beestat.component.modal.delete_floor_plan = function(floor_plan_id) {
|
|
this.floor_plan_id_ = floor_plan_id;
|
|
|
|
beestat.component.modal.apply(this, arguments);
|
|
};
|
|
beestat.extend(beestat.component.modal.delete_floor_plan, beestat.component.modal);
|
|
|
|
/**
|
|
* Decorate
|
|
*
|
|
* @param {rocket.Elements} parent
|
|
*/
|
|
beestat.component.modal.delete_floor_plan.prototype.decorate_contents_ = function(parent) {
|
|
const p = document.createElement('p');
|
|
p.innerText = 'Are you sure you want to delete this floor plan?';
|
|
parent.appendChild(p);
|
|
|
|
new beestat.component.tile.floor_plan(this.floor_plan_id_)
|
|
.set_background_color(beestat.style.color.bluegray.base)
|
|
.set_text_color('#fff')
|
|
.render(parent);
|
|
};
|
|
|
|
/**
|
|
* Get title.
|
|
*
|
|
* @return {string} The title.
|
|
*/
|
|
beestat.component.modal.delete_floor_plan.prototype.get_title_ = function() {
|
|
return 'Delete Floor Plan';
|
|
};
|
|
|
|
/**
|
|
* Get the buttons that go on the bottom of this modal.
|
|
*
|
|
* @return {[beestat.component.button]} The buttons.
|
|
*/
|
|
beestat.component.modal.delete_floor_plan.prototype.get_buttons_ = function() {
|
|
const self = this;
|
|
|
|
const cancel_button = new beestat.component.tile()
|
|
.set_background_color('#fff')
|
|
.set_text_color(beestat.style.color.gray.base)
|
|
.set_text_hover_color(beestat.style.color.red.base)
|
|
.set_shadow(false)
|
|
.set_text('Cancel')
|
|
.addEventListener('click', function() {
|
|
self.dispose();
|
|
});
|
|
|
|
const delete_button = new beestat.component.tile()
|
|
.set_background_color(beestat.style.color.red.base)
|
|
.set_background_hover_color(beestat.style.color.red.light)
|
|
.set_text_color('#fff')
|
|
.set_text('Delete Floor Plan')
|
|
.addEventListener('click', function() {
|
|
this
|
|
.set_background_color(beestat.style.color.gray.base)
|
|
.set_background_hover_color()
|
|
.removeEventListener('click');
|
|
|
|
new beestat.api()
|
|
.add_call(
|
|
'floor_plan',
|
|
'delete',
|
|
{
|
|
'id': self.floor_plan_id_
|
|
},
|
|
'delete_floor_plan'
|
|
)
|
|
.add_call(
|
|
'floor_plan',
|
|
'read_id',
|
|
{},
|
|
'floor_plan'
|
|
)
|
|
.set_callback(function(response) {
|
|
self.dispose();
|
|
|
|
if (Object.keys(response.floor_plan).length > 0) {
|
|
beestat.setting('visualize.floor_plan_id', Object.values(response.floor_plan)[0].floor_plan_id);
|
|
} else {
|
|
beestat.setting('visualize.floor_plan_id', null);
|
|
}
|
|
|
|
beestat.cache.set('floor_plan', response.floor_plan);
|
|
})
|
|
.send();
|
|
});
|
|
|
|
return [
|
|
cancel_button,
|
|
delete_button
|
|
];
|
|
};
|