list_alt

{{ 'SETTINGS.EPG_SOURCES' | translate }}

{{ 'SETTINGS.EPG_SOURCES_DESCRIPTION' | translate }}

{{ 'SETTINGS.EPG_VIEW_MODE' | translate }}

{{ 'SETTINGS.EPG_VIEW_MODE_DESCRIPTION' | translate }}

@for (option of epgViewModeOptions(); track option.value) { }

{{ 'SETTINGS.EPG_OFFSET_TITLE' | translate }}

{{ 'SETTINGS.EPG_OFFSET_HINT' | translate }}

{{ 'SETTINGS.EPG_OFFSET_LABEL' | translate }} {{ 'SETTINGS.EPG_OFFSET_ERROR' | translate }}

{{ 'SETTINGS.EPG_SOURCE_LIST_TITLE' | translate }}

{{ 'SETTINGS.EPG_SOURCE_FORMATS_HINT' | translate }}

{{ 'SETTINGS.EPG_SOURCE_FORMATS_EXAMPLES' | translate }} https://example.org/guide.xml.gz /home/you/epg/guide.xml C:\epg\guide.xml.gz file:///…/guide.xml

@if (epgUrl().length === 0) {
event_busy

{{ 'SETTINGS.EPG_EMPTY_TITLE' | translate }}

{{ 'SETTINGS.EPG_EMPTY_HINT' | translate }}

} @else {
@for (_ of epgUrl().controls; track _; let i = $index) {
{{ 'SETTINGS.EPG_URL_PLACEHOLDER' | translate }} {{ 'SETTINGS.EPG_URL_ERROR' | translate }} @if (epgField.value) { } @if (canBrowseFiles()) { }
}
}

{{ 'SETTINGS.PREFER_UPLOADED_EPG_TITLE' | translate }}

{{ 'SETTINGS.PREFER_UPLOADED_EPG_HINT' | translate }}