mirror of
https://github.com/beestat/app.git
synced 2025-06-03 05:36:51 -04:00
Fixed visualizer settings not saving when changing time period
This commit is contained in:
parent
04f31c327e
commit
8d828030cf
@ -79,7 +79,9 @@ beestat.setting = function(argument_1, opt_value, opt_callback) {
|
|||||||
'visualize.heat_map_absolute.temperature.max': 80,
|
'visualize.heat_map_absolute.temperature.max': 80,
|
||||||
'visualize.heat_map_absolute.occupancy.min': 0,
|
'visualize.heat_map_absolute.occupancy.min': 0,
|
||||||
'visualize.heat_map_absolute.occupancy.max': 100,
|
'visualize.heat_map_absolute.occupancy.max': 100,
|
||||||
'visualize.hide_affiliate': false
|
'visualize.hide_affiliate': false,
|
||||||
|
'visualize.three_d.show_labels': false,
|
||||||
|
'visualize.three_d.auto_rotate': false
|
||||||
};
|
};
|
||||||
|
|
||||||
// Figure out what we're trying to do.
|
// Figure out what we're trying to do.
|
||||||
|
@ -383,7 +383,17 @@ beestat.component.card.three_d.prototype.decorate_drawing_pane_ = function(paren
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Set some defaults on the scene.
|
||||||
this.scene_.set_date(this.date_m_);
|
this.scene_.set_date(this.date_m_);
|
||||||
|
this.scene_.set_labels(beestat.setting('visualize.three_d.show_labels'));
|
||||||
|
this.scene_.set_auto_rotate(beestat.setting('visualize.three_d.auto_rotate'));
|
||||||
|
|
||||||
|
const floor_plan = beestat.cache.floor_plan[this.floor_plan_id_];
|
||||||
|
const groups = Object.values(floor_plan.data.groups);
|
||||||
|
groups.forEach(function(group) {
|
||||||
|
const setting_key = 'visualize.three_d.show_group.' + group.group_id;
|
||||||
|
self.scene_.set_layer_visible(group.group_id, beestat.setting(setting_key) !== false);
|
||||||
|
});
|
||||||
|
|
||||||
// Manage width of the scene.
|
// Manage width of the scene.
|
||||||
if (this.state_.width === undefined) {
|
if (this.state_.width === undefined) {
|
||||||
@ -702,41 +712,43 @@ beestat.component.card.three_d.prototype.decorate_toolbar_ = function(parent) {
|
|||||||
.set_text_color(beestat.style.color.lightblue.base)
|
.set_text_color(beestat.style.color.lightblue.base)
|
||||||
);
|
);
|
||||||
|
|
||||||
let labels = false;
|
|
||||||
|
|
||||||
// Add room
|
// Add room
|
||||||
tile_group.add_tile(new beestat.component.tile()
|
tile_group.add_tile(new beestat.component.tile()
|
||||||
.set_icon('label_off')
|
.set_icon(beestat.setting('visualize.three_d.show_labels') === false ? 'label_off' : 'label')
|
||||||
.set_title('Toggle Labels')
|
.set_title('Toggle Labels')
|
||||||
.set_text_color(beestat.style.color.gray.light)
|
.set_text_color(beestat.style.color.gray.light)
|
||||||
.set_background_color(beestat.style.color.bluegray.base)
|
.set_background_color(beestat.style.color.bluegray.base)
|
||||||
.set_background_hover_color(beestat.style.color.bluegray.light)
|
.set_background_hover_color(beestat.style.color.bluegray.light)
|
||||||
.addEventListener('click', function(e) {
|
.addEventListener('click', function(e) {
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
labels = !labels;
|
beestat.setting(
|
||||||
this.set_icon(
|
'visualize.three_d.show_labels',
|
||||||
'label' + (labels === false ? '_off' : '')
|
!beestat.setting('visualize.three_d.show_labels')
|
||||||
);
|
);
|
||||||
self.scene_.set_labels(labels);
|
this.set_icon(
|
||||||
|
'label' + (beestat.setting('visualize.three_d.show_labels') === false ? '_off' : '')
|
||||||
|
);
|
||||||
|
self.scene_.set_labels(beestat.setting('visualize.three_d.show_labels'));
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
|
|
||||||
let auto_rotate = false;
|
|
||||||
|
|
||||||
// Add room
|
// Add room
|
||||||
tile_group.add_tile(new beestat.component.tile()
|
tile_group.add_tile(new beestat.component.tile()
|
||||||
.set_icon('restart_off')
|
.set_icon(beestat.setting('visualize.three_d.auto_rotate') === false ? 'restart_off' : 'restart')
|
||||||
.set_title('Toggle Auto-Rotate')
|
.set_title('Toggle Auto-Rotate')
|
||||||
.set_text_color(beestat.style.color.gray.light)
|
.set_text_color(beestat.style.color.gray.light)
|
||||||
.set_background_color(beestat.style.color.bluegray.base)
|
.set_background_color(beestat.style.color.bluegray.base)
|
||||||
.set_background_hover_color(beestat.style.color.bluegray.light)
|
.set_background_hover_color(beestat.style.color.bluegray.light)
|
||||||
.addEventListener('click', function(e) {
|
.addEventListener('click', function(e) {
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
auto_rotate = !auto_rotate;
|
beestat.setting(
|
||||||
this.set_icon(
|
'visualize.three_d.auto_rotate',
|
||||||
'restart' + (auto_rotate === false ? '_off' : '')
|
!beestat.setting('visualize.three_d.auto_rotate')
|
||||||
);
|
);
|
||||||
self.scene_.set_auto_rotate(auto_rotate);
|
this.set_icon(
|
||||||
|
'restart' + (beestat.setting('visualize.three_d.auto_rotate') === false ? '_off' : '')
|
||||||
|
);
|
||||||
|
self.scene_.set_auto_rotate(beestat.setting('visualize.three_d.auto_rotate'));
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -761,7 +773,7 @@ beestat.component.card.three_d.prototype.decorate_floors_ = function(parent) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
let icon_number = 1;
|
let icon_number = 1;
|
||||||
sorted_groups.forEach(function(group, i) {
|
sorted_groups.forEach(function(group) {
|
||||||
const button = new beestat.component.tile()
|
const button = new beestat.component.tile()
|
||||||
.set_title(group.name)
|
.set_title(group.name)
|
||||||
.set_shadow(false)
|
.set_shadow(false)
|
||||||
@ -775,18 +787,18 @@ beestat.component.card.three_d.prototype.decorate_floors_ = function(parent) {
|
|||||||
icon = 'numeric_' + icon_number++;
|
icon = 'numeric_' + icon_number++;
|
||||||
}
|
}
|
||||||
|
|
||||||
let layer_visible = true;
|
const setting_key = 'visualize.three_d.show_group.' + group.group_id;
|
||||||
button
|
button
|
||||||
.set_icon(icon + '_box')
|
.set_icon(icon + (beestat.setting(setting_key) === false ? '' : '_box'))
|
||||||
.addEventListener('click', function() {
|
.addEventListener('click', function() {
|
||||||
if (layer_visible === true) {
|
beestat.setting(
|
||||||
self.scene_.set_layer_visible('group_' + i, false);
|
setting_key,
|
||||||
button.set_icon(icon);
|
beestat.setting(setting_key) === false
|
||||||
} else {
|
);
|
||||||
self.scene_.set_layer_visible('group_' + i, true);
|
self.scene_.set_layer_visible(group.group_id, beestat.setting(setting_key));
|
||||||
button.set_icon(icon + '_box');
|
this.set_icon(
|
||||||
}
|
icon + (beestat.setting(setting_key) === false ? '' : '_box')
|
||||||
layer_visible = !layer_visible;
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
tile_group.add_tile(button);
|
tile_group.add_tile(button);
|
||||||
|
@ -709,10 +709,10 @@ beestat.component.scene.prototype.add_floor_plan_ = function() {
|
|||||||
const floor_plan = beestat.cache.floor_plan[this.floor_plan_id_];
|
const floor_plan = beestat.cache.floor_plan[this.floor_plan_id_];
|
||||||
|
|
||||||
this.layers_ = {};
|
this.layers_ = {};
|
||||||
floor_plan.data.groups.forEach(function(group, i) {
|
floor_plan.data.groups.forEach(function(group) {
|
||||||
const layer = new THREE.Group();
|
const layer = new THREE.Group();
|
||||||
self.main_group_.add(layer);
|
self.main_group_.add(layer);
|
||||||
self.layers_['group_' + i] = layer;
|
self.layers_[group.group_id] = layer;
|
||||||
group.rooms.forEach(function(room) {
|
group.rooms.forEach(function(room) {
|
||||||
self.add_room_(layer, group, room);
|
self.add_room_(layer, group, room);
|
||||||
});
|
});
|
||||||
|
Loading…
x
Reference in New Issue
Block a user