Restrict adding todo list and calendars to admin users (#19408)

This commit is contained in:
Bram Kragten 2024-01-16 10:44:28 +01:00 committed by GitHub
parent 0ba8babd87
commit 1f2683dd56
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 33 additions and 15 deletions

View File

@ -147,11 +147,18 @@ class PanelCalendar extends LitElement {
></ha-svg-icon>
</ha-button>
${calendarItems}
<li divider role="separator"></li>
<ha-list-item graphic="icon" @click=${this._addCalendar}>
<ha-svg-icon .path=${mdiPlus} slot="graphic"></ha-svg-icon>
${this.hass.localize("ui.components.calendar.create_calendar")}
</ha-list-item>
${this.hass.user?.is_admin
? html` <li divider role="separator"></li>
<ha-list-item graphic="icon" @click=${this._addCalendar}>
<ha-svg-icon
.path=${mdiPlus}
slot="graphic"
></ha-svg-icon>
${this.hass.localize(
"ui.components.calendar.create_calendar"
)}
</ha-list-item>`
: nothing}
</ha-button-menu>`
: html`<div slot="title">
${this.hass.localize("ui.components.calendar.my_calendars")}
@ -162,7 +169,7 @@ class PanelCalendar extends LitElement {
.label=${this.hass.localize("ui.common.refresh")}
@click=${this._handleRefresh}
></ha-icon-button>
${showPane
${showPane && this.hass.user?.is_admin
? html`<mwc-list slot="pane" multi}>${calendarItems}</mwc-list>
<ha-list-item
graphic="icon"

View File

@ -204,19 +204,30 @@ class PanelTodo extends LitElement {
></ha-svg-icon>
</ha-button>
${listItems}
<li divider role="separator"></li>
<ha-list-item graphic="icon" @click=${this._addList}>
<ha-svg-icon .path=${mdiPlus} slot="graphic"></ha-svg-icon>
${this.hass.localize("ui.panel.todo.create_list")}
</ha-list-item>
${this.hass.user?.is_admin
? html`<li divider role="separator"></li>
<ha-list-item graphic="icon" @click=${this._addList}>
<ha-svg-icon
.path=${mdiPlus}
slot="graphic"
></ha-svg-icon>
${this.hass.localize("ui.panel.todo.create_list")}
</ha-list-item>`
: nothing}
</ha-button-menu>`
: this.hass.localize("panel.todo")}
</div>
<mwc-list slot="pane" activatable>${listItems}</mwc-list>
<ha-list-item graphic="icon" slot="pane-footer" @click=${this._addList}>
<ha-svg-icon .path=${mdiPlus} slot="graphic"></ha-svg-icon>
${this.hass.localize("ui.panel.todo.create_list")}
</ha-list-item>
${showPane && this.hass.user?.is_admin
? html`<ha-list-item
graphic="icon"
slot="pane-footer"
@click=${this._addList}
>
<ha-svg-icon .path=${mdiPlus} slot="graphic"></ha-svg-icon>
${this.hass.localize("ui.panel.todo.create_list")}
</ha-list-item>`
: nothing}
<ha-button-menu slot="actionItems">
<ha-icon-button
slot="trigger"