mirror of
				https://github.com/beestat/app.git
				synced 2025-11-04 02:47:01 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			67 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			67 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
/**
 | 
						|
 * Change floor plan
 | 
						|
 */
 | 
						|
beestat.component.modal.change_floor_plan = function() {
 | 
						|
  beestat.component.modal.apply(this, arguments);
 | 
						|
};
 | 
						|
beestat.extend(beestat.component.modal.change_floor_plan, beestat.component.modal);
 | 
						|
 | 
						|
/**
 | 
						|
 * Decorate
 | 
						|
 *
 | 
						|
 * @param {rocket.Elements} parent
 | 
						|
 */
 | 
						|
beestat.component.modal.change_floor_plan.prototype.decorate_contents_ = function(parent) {
 | 
						|
  const self = this;
 | 
						|
 | 
						|
  const p = document.createElement('p');
 | 
						|
  p.innerText = 'You have multiple floor plans; which one would you like to view?';
 | 
						|
  parent.appendChild(p);
 | 
						|
 | 
						|
  const grid = document.createElement('div');
 | 
						|
  grid.style.display = 'grid';
 | 
						|
  grid.style.gridTemplateColumns = 'repeat(auto-fit, minmax(150px, 1fr))';
 | 
						|
  grid.style.columnGap = beestat.style.size.gutter + 'px';
 | 
						|
  grid.style.rowGap = beestat.style.size.gutter + 'px';
 | 
						|
  parent.appendChild(grid);
 | 
						|
 | 
						|
  var sorted_floor_plans = $.values(beestat.cache.floor_plan)
 | 
						|
    .sort(function(a, b) {
 | 
						|
      return a.name > b.name;
 | 
						|
    });
 | 
						|
 | 
						|
  let div;
 | 
						|
  sorted_floor_plans.forEach(function(floor_plan) {
 | 
						|
    div = document.createElement('div');
 | 
						|
    grid.appendChild(div);
 | 
						|
 | 
						|
    const tile = new beestat.component.tile.floor_plan(floor_plan.floor_plan_id)
 | 
						|
      .set_text_color('#fff')
 | 
						|
      .set_display('block');
 | 
						|
 | 
						|
    if (floor_plan.floor_plan_id === beestat.setting('visualize.floor_plan_id')) {
 | 
						|
      tile.set_background_color(beestat.style.color.lightblue.base);
 | 
						|
    } else {
 | 
						|
      tile
 | 
						|
        .set_background_color(beestat.style.color.bluegray.base)
 | 
						|
        .set_background_hover_color(beestat.style.color.lightblue.base)
 | 
						|
        .addEventListener('click', function() {
 | 
						|
          beestat.setting('visualize.floor_plan_id', floor_plan.floor_plan_id);
 | 
						|
          self.dispose();
 | 
						|
        });
 | 
						|
    }
 | 
						|
 | 
						|
    tile.render($(div));
 | 
						|
  });
 | 
						|
};
 | 
						|
 | 
						|
/**
 | 
						|
 * Get title.
 | 
						|
 *
 | 
						|
 * @return {string} Title.
 | 
						|
 */
 | 
						|
beestat.component.modal.change_floor_plan.prototype.get_title_ = function() {
 | 
						|
  return 'Change Floor Plan';
 | 
						|
};
 | 
						|
 |