Skip to content

Commit add6d78

Browse files
committed
Update My schedule icon on session element after sign out
1 parent 5c04655 commit add6d78

File tree

3 files changed

+22
-5
lines changed

3 files changed

+22
-5
lines changed

src/behaviors/my-schedule-behavior.html

+1
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@
4343
},
4444

4545
isInMySchedule: function (id) {
46+
if (!this.app.user) return false;
4647
if (!this.app.user.sessions) {
4748
this.app.user.sessions = {};
4849
}

src/elements/session-element.html

+19-3
Original file line numberDiff line numberDiff line change
@@ -196,8 +196,8 @@ <h2 class="session-title">[[session.title]]</h2>
196196
</div>
197197

198198
<iron-icon
199-
class$="action-icon [[_getMyScheduleIcon(session.id, app.user.sessions)]]"
200-
icon$="[[_getMyScheduleIcon(session.id, app.user.sessions)]]"
199+
class$="action-icon [[myScheduleIcon]]"
200+
icon$="[[myScheduleIcon]]"
201201
on-tap="toggleMyScheduleSession"
202202
session-id$="[[session.id]]"
203203
disabled$="[[!online]]"
@@ -270,9 +270,19 @@ <h2 class="session-title">[[session.title]]</h2>
270270
sessionColor: {
271271
type: String,
272272
value: ''
273+
},
274+
275+
myScheduleIcon: {
276+
type: String,
277+
value: 'add-circle-outline'
273278
}
274279
},
275280

281+
observers: [
282+
'_getMyScheduleIcon(session.id, app.user.sessions)',
283+
'_userUpdated(app.user)'
284+
],
285+
276286
ready: function () {
277287
this.async(function () {
278288
this.sessionColor = this.getComputedStyleValue('--' + this._generateClass(this.session.mainTag));
@@ -289,7 +299,13 @@ <h2 class="session-title">[[session.title]]</h2>
289299
},
290300

291301
_getMyScheduleIcon: function (id) {
292-
return this.isInMySchedule(id) ? 'remove-circle' : 'add-circle-outline';
302+
this.myScheduleIcon = this.isInMySchedule(id) ? 'remove-circle' : 'add-circle-outline';
303+
},
304+
305+
_userUpdated: function (user) {
306+
if (!user && this.session) {
307+
this._getMyScheduleIcon(this.session.id);
308+
}
293309
}
294310
});
295311

src/pages/schedule-page.html

+2-2
Original file line numberDiff line numberDiff line change
@@ -72,15 +72,15 @@
7272
<template is="dom-repeat" items="[[schedule]]" as="day" on-dom-change="updateCascadedNodes">
7373
<schedule-day
7474
name$="day[[_addToValue(index, 1)]]"
75-
app={{app}}
75+
app="{{app}}"
7676
day="[[day]]"
7777
filters="[[filters]]"
7878
></schedule-day>
7979
</template>
8080
<template is="dom-if" if="{{app.user}}">
8181
<my-schedule
8282
name="myschedule"
83-
app={{app}}
83+
app="{{app}}"
8484
schedule="[[schedule]]"
8585
></my-schedule>
8686
</template>

0 commit comments

Comments
 (0)