EmbyCrackedClient/web/livetvsetup/livetvtuner.js

1 line
6.3 KiB
JavaScript
Raw Normal View History

2025-06-25 11:46:04 +08:00
import BaseSettingsView from"./../modules/viewmanager/basesettingsview.js";import loading from"./../modules/loading/loading.js";import globalize from"./../modules/common/globalize.js";import"./../modules/emby-elements/emby-input/emby-input.js";import"./../modules/emby-elements/emby-button/emby-button.js";import"./../modules/emby-elements/emby-checkbox/emby-checkbox.js";import"./../modules/emby-elements/emby-select/emby-select.js";import"./../modules/emby-elements/emby-scroller/emby-scroller.js";import appRouter from"./../modules/approuter.js";import formHelper from"./../modules/common/responsehelper.js";import TunerPicker from"./../components/tunerpicker.js";function showAlert(options){return Emby.importModule("./modules/common/dialogs/alert.js").then(function(alert){return alert(options)})}function onBackClick(){appRouter.back()}function fillTypes(view,type){return ApiClient.getJSON(ApiClient.getUrl("LiveTv/TunerHosts/Types")).then(function(types){types=types.filter(function(t){return t.Id===type})[0];types&&(view.querySelector(".typeName").innerHTML=types.Name)})}function reload(view,providerInfo){return view.querySelector(".txtDevicePath").value="",view.querySelector(".chkFavorite").checked=!1,view.querySelector(".txtDevicePath").value="",providerInfo.Id?ApiClient.getTunerHostConfiguration(providerInfo.Id).then(function(info){fillTunerHostInfo(view,info||providerInfo)}):(fillTunerHostInfo(view,providerInfo),Promise.resolve())}function fillTunerHostInfo(view,info){onTypeChange(view,info.Type||""),view.querySelector(".txtDevicePath").value=info.Url||"",view.querySelector(".txtFriendlyName").value=info.FriendlyName||"",view.querySelector(".txtUserAgent").value=info.UserAgent||"",view.querySelector(".txtReferrer").value=info.Referrer||"",view.querySelector(".fldDeviceId").value=info.DeviceId||"",view.querySelector(".chkFavorite").checked=info.ImportFavoritesOnly,view.querySelector(".chkTranscode").checked=info.AllowHWTranscoding,view.querySelector(".txtTunerCount").value=info.TunerCount||"0"}function getDetectedDevice(result){return(new TunerPicker).show({serverId:ApiClient.serverId()})}function onTypeChange(view,value){var mayIncludeUnsupportedDrmChannels="hdhomerun"===value,supportsTranscoding="hdhomerun"===value,supportsFavorites="hdhomerun"===value,supportsTunerIpAddress="hdhomerun"===value,supportsTunerFileOrUrl="m3u"===value,supportsTunerCount="m3u"===value,supportsUserAgent="m3u"===value,suppportsSubmit="other"!==value,supportsSelectablePath=supportsTunerFileOrUrl,txtDevicePath=view.querySelector(".txtDevicePath");supportsTunerIpAddress?(txtDevicePath.label(globalize.translate("LabelTunerIpAddress")),view.querySelector(".fldPath").classList.remove("hide")):supportsTunerFileOrUrl?(txtDevicePath.label(globalize.translate("LabelFileOrUrl")),view.querySelector(".fldPath").classList.remove("hide")):view.querySelector(".fldPath").classList.add("hide"),"hdhomerun"===value||"hauppauge"===value?view.querySelector(".btnDetect").classList.remove("hide"):view.querySelector(".btnDetect").classList.add("hide"),supportsSelectablePath?(view.querySelector(".btnSelectPath").classList.remove("hide"),view.querySelector(".txtDevicePath").setAttribute("required","required")):(view.querySelector(".btnSelectPath").classList.add("hide"),view.querySelector(".txtDevicePath").removeAttribute("required")),supportsUserAgent?(view.querySelector(".fldUserAgent").classList.remove("hide"),view.querySelector(".fldReferrer").classList.remove("hide")):(view.querySelector(".fldUserAgent").classList.add("hide"),view.querySelector(".fldReferrer").classList.add("hide")),supportsFavorites?view.querySelector(".fldFavorites").classList.remove("hide"):view.querySelector(".fldFavorites").classList.add("hide"),supportsTranscoding?view.querySelector(".fldTranscode").classList.remove("hide"):view.querySelector(".fldTranscode").classList.add("hide"),supportsTunerCount?(view.querySelector(".fldTunerCount").classList.remove("hide"),view.querySelector(".txtTunerCount").setAttribute("required","required")):(view.querySelector(".fldTunerCount").classList.add("hide"),v