@@ -10,17 +10,12 @@ tags:
1010** Dashboard:** Room Management
1111** Path:** ` settings `
1212
13- <!-- START_DESCRIPTION -->
14- No description provided.
15- <!-- END_DESCRIPTION -->
16-
17- ![ View Screenshot] ( ../../../assets/images/dashboards/dashboard_settings.png )
18-
19- ## Summary
2013<!-- START_SUMMARY -->
2114* No summary generated yet.*
2215<!-- END_SUMMARY -->
2316
17+ ![ View Screenshot] ( ../../../assets/images/dashboards/dashboard_settings.png )
18+
2419## Related Packages
2520This view contains entities managed by:
2621
@@ -48,17 +43,13 @@ sections:
4843 heading : Add / Update Room
4944 icon : mdi:home-plus
5045 - type : markdown
51- content : ' **Instructions:**
52-
46+ content : |
47+ **Instructions:**
5348
5449 1. Select a **Native Area** from the list.
55-
5650 2. Click **Initialize** to create helpers for it.
5751
58-
5952 *Uses Home Assistant Areas as the source.*
60-
61- '
6253 - type : entities
6354 show_header_toggle : false
6455 entities :
@@ -83,9 +74,14 @@ sections:
8374 action : call-service
8475 service : script.create_room_settings
8576 card_mod :
86- style : " ha-card {\n border: none;\n background: var(--green-color);\n --primary-text-color:\
87- \ white;\n --secondary-text-color: white;\n --card-mod-icon-color: black;\n \
88- }\n "
77+ style : |
78+ ha-card {
79+ border: none;
80+ background: var(--green-color);
81+ --primary-text-color: white;
82+ --secondary-text-color: white;
83+ --card-mod-icon-color: black;
84+ }
8985 - type : heading
9086 heading : Danger Zone
9187 icon : mdi:alert-circle-outline
@@ -113,9 +109,14 @@ sections:
113109 action : call-service
114110 service : script.delete_room_settings
115111 card_mod :
116- style : " ha-card {\n border: none;\n background: var(--red-color);\n --primary-text-color:\
117- \ white;\n --secondary-text-color: white;\n --card-mod-icon-color: black;\
118- \ /* Icon visibility fix */\n }\n "
112+ style : |
113+ ha-card {
114+ border: none;
115+ background: var(--red-color);
116+ --primary-text-color: white;
117+ --secondary-text-color: white;
118+ --card-mod-icon-color: black; /* Icon visibility fix */
119+ }
119120 - type : grid
120121 cards :
121122 - type : heading
@@ -131,21 +132,27 @@ sections:
131132 \ entity with 'automation_mode' in the ID #}\n {% set mode_selectors = states.select\
132133 \ | selectattr('entity_id', 'search', 'automation_mode') | list %}\n\n {% for\
133134 \ sel in mode_selectors %}\n {# Extract slug. Handles \" select.bathroom_automation_mode\" \
134- \ or \" select.room_bathroom_automation_mode\" #}\n {% set raw_id = sel.entity_id.split('.')[1]\
135- \ %}\n {% if raw_id.startswith('room_') %}\n {% set slug = raw_id.replace('room_',\
136- \ '').replace('_automation_mode', '') %}\n {% else %}\n {% set slug =\
137- \ raw_id.replace('_automation_mode', '') %}\n {% endif %}\n \n {# UPDATED:\
138- \ Generate Name purely from Slug (Cleaner) #}\n {% set name = slug.replace('_',\
139- \ ' ') | title %}\n \n {# --- Header --- #}\n {% set ns.cards = ns.cards\
140- \ + [{'type': 'section', 'label': name}] %}\n \n {# --- Controls --- #}\n \
141- \ \n {# Mode Selector #}\n {% set ns.cards = ns.cards + [{'entity': sel.entity_id,\
142- \ 'name': 'Mode'}] %}\n \n {# Room State #}\n {% set state_select = 'select.room_'\
143- \ ~ slug ~ '_state' %}\n {% if states[state_select] is defined %}\n {%\
144- \ set ns.cards = ns.cards + [{'entity': state_select, 'name': 'Current State'}]\
145- \ %}\n {% endif %}\n\n {# Occupancy #}\n {% set occ_sensor = 'binary_sensor.room_'\
146- \ ~ slug ~ '_occupancy' %}\n {% if states[occ_sensor] is defined %}\n \
147- \ {% set ns.cards = ns.cards + [{'entity': occ_sensor, 'name': 'Occupancy'}]\
148- \ %}\n {% endif %}\n \n {# Idle Time #}\n {% set idle_entity = 'number.room_' ~ slug ~ '_presence_idle_time' %}\n {% if states[idle_entity] is defined %}\n {% set ns.cards = ns.cards + [{'entity': idle_entity, 'name': 'Idle Time (sec)'}] %}\n {% endif %}\n \n {# Off Delay #}\n {% set delay_entity = 'number.room_' ~ slug ~ '_lights_presence_delay' %}\n {% if states[delay_entity] is defined %}\n {% set ns.cards = ns.cards + [{'entity': delay_entity, 'name': 'Off Delay (sec)'}] %}\n {% endif %}\n \n {# Lux Sensor #}\n \
135+ \ or \" select.room_bathroom_automation_mode\" #}\n {% set raw_id = sel.entity_id.split('.')[1]\
136+ \ %}\n {% if raw_id.startswith('room_') %}\n {% set slug = raw_id[5:] | replace('_automation_mode','')\
137+ \ %}\n {% else %}\n {% set slug = raw_id.replace('_automation_mode','') %}\n \
138+ {% endif %}\n\n \n {# UPDATED: Generate Name purely from Slug (Cleaner)\
139+ \ #}\n {% set name = slug.replace('_', ' ') | title %}\n \n {# --- Header\
140+ \ --- #}\n {% set ns.cards = ns.cards + [{'type': 'section', 'label': name}]\
141+ \ %}\n \n {# --- Controls --- #}\n \n {# Mode Selector #}\n {% set ns.cards\
142+ \ = ns.cards + [{'entity': sel.entity_id, 'name': 'Mode'}] %}\n \n {# Room\
143+ \ State #}\n {% set state_select = 'select.room_' ~ slug ~ '_state' %}\n \
144+ \ {% if states[state_select] is defined %}\n {% set ns.cards = ns.cards\
145+ \ + [{'entity': state_select, 'name': 'Current State'}] %}\n {% endif %}\n \
146+ \n {# Occupancy #}\n {% set occ_sensor = 'binary_sensor.room_' ~ slug ~\
147+ \ '_occupancy' %}\n {% if states[occ_sensor] is defined %}\n {% set ns.cards\
148+ \ = ns.cards + [{'entity': occ_sensor, 'name': 'Occupancy'}] %}\n {% endif\
149+ \ %}\n \n {# Idle Time #}\n {% set idle_entity = 'number.room_' ~ slug\
150+ \ ~ '_presence_idle_time' %}\n {% if states[idle_entity] is defined %}\n \
151+ \ {% set ns.cards = ns.cards + [{'entity': idle_entity, 'name': 'Idle Time\
152+ \ (sec)'}] %}\n {% endif %}\n \n {# Off Delay #}\n {% set delay_entity\
153+ \ = 'number.room_' ~ slug ~ '_lights_presence_delay' %}\n {% if states[delay_entity]\
154+ \ is defined %}\n {% set ns.cards = ns.cards + [{'entity': delay_entity,\
155+ \ 'name': 'Off Delay (sec)'}] %}\n {% endif %}\n \n {# Lux Sensor #}\n \
149156 \ {% set lux_s = 'text.room_' ~ slug ~ '_lux_sensor' %}\n {% if states[lux_s]\
150157 \ is defined %}\n {% set ns.cards = ns.cards + [{'entity': lux_s, 'name':\
151158 \ 'Lux Sensor ID'}] %}\n {% endif %}\n \n {# Lux Threshold #}\n {% set\
0 commit comments