mirror of
https://github.com/turt2live/matrix-dimension.git
synced 2024-10-01 05:05:53 +00:00
Use template variables and convert Google Calendar widgets to new format
Fixes https://github.com/turt2live/matrix-dimension/issues/179 Part of https://github.com/turt2live/matrix-dimension/issues/141
This commit is contained in:
parent
5f6658a194
commit
3ab0bbbfd2
@ -4,7 +4,7 @@
|
||||
Shared Calendar ID
|
||||
<input type="text" class="form-control"
|
||||
placeholder="en.uk#holiday@group.v.calendar.google.com"
|
||||
[(ngModel)]="widget.dimension.newData.src" name="widget-url-{{widget.id}}"
|
||||
[(ngModel)]="widget.dimension.newData.shareId" name="widget-url-{{widget.id}}"
|
||||
[disabled]="isUpdating"/>
|
||||
</label>
|
||||
</ng-template>
|
||||
|
@ -12,7 +12,7 @@ export class GoogleCalendarWidgetConfigComponent extends WidgetComponent {
|
||||
}
|
||||
|
||||
protected OnNewWidgetPrepared(widget: EditableWidget) {
|
||||
widget.dimension.newData.src = "";
|
||||
widget.dimension.newData.shareId = "";
|
||||
}
|
||||
|
||||
protected OnWidgetsDiscovered(widgets: EditableWidget[]) {
|
||||
@ -21,6 +21,10 @@ export class GoogleCalendarWidgetConfigComponent extends WidgetComponent {
|
||||
// Convert legacy Dimension widgets to new source
|
||||
widget.data.src = widget.data.dimSrc;
|
||||
}
|
||||
if (widget.data.src && !widget.data.shareId) {
|
||||
// Convert even more legacy Dimension widgets to new source
|
||||
widget.data.shareId = widget.data.src;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -33,11 +37,10 @@ export class GoogleCalendarWidgetConfigComponent extends WidgetComponent {
|
||||
}
|
||||
|
||||
private setCalendarUrl(widget: EditableWidget) {
|
||||
if (!widget.dimension.newData.src || widget.dimension.newData.src.trim().length === 0) {
|
||||
if (!widget.dimension.newData.shareId || widget.dimension.newData.shareId.trim().length === 0) {
|
||||
throw new Error("Please enter a shared calendar ID");
|
||||
}
|
||||
|
||||
const encodedId = encodeURIComponent(widget.dimension.newData.src);
|
||||
widget.dimension.newUrl = window.location.origin + "/widgets/gcal?calendarId=" + encodedId;
|
||||
widget.dimension.newUrl = window.location.origin + "/widgets/gcal?calendarId=$shareId";
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user