mirror of
				https://github.com/beestat/app.git
				synced 2025-10-31 10:07:01 -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
 | |
|   ];
 | |
| };
 |