1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

update tuners

This commit is contained in:
Luke Pulverenti 2015-07-25 14:11:46 -04:00
parent a2ac684553
commit 7a37be78a6
6 changed files with 269 additions and 47 deletions

View file

@ -143,11 +143,9 @@
if (liveTvInfo.IsEnabled) {
$('.liveTvStatusContent', page).show();
$('.noLiveTvServices', page).hide();
} else {
$('.liveTvStatusContent', page).hide();
$('.noLiveTvServices', page).show();
}
var servicesToDisplay = liveTvInfo.Services.filter(function (s) {
@ -192,18 +190,14 @@
for (var i = 0, length = devices.length; i < length; i++) {
var device = devices[i];
var href = 'livetvtunerprovider-' + device.Type + '.html?id=' + device.Id;
html += '<li>';
html += '<a href="#">';
html += '<a href="' + href + '">';
html += '<h3>';
if (device.Type == 'm3u') {
html += "M3U";
}
else if (device.Type == 'hdhomerun') {
html += "HD Homerun";
} else {
html += device.Type;
}
html += device.Type;
html += '</h3>';
html += '<p>';
@ -396,13 +390,40 @@
});
}
function addDevice(button) {
var menuItems = [];
menuItems.push({
name: 'HD Homerun',
id: 'hdhomerun'
});
menuItems.push({
name: 'M3U',
id: 'm3u'
});
require(['actionsheet'], function () {
ActionSheetElement.show({
items: menuItems,
positionTo: button,
callback: function (id) {
Dashboard.navigate('livetvtunerprovider-' + id + '.html');
}
});
});
}
$(document).on('pageinitdepends', "#liveTvStatusPage", function () {
var page = this;
$('.btnAddDevice', page).on('click', function () {
$('#txtDevicePath', page).val('');
page.querySelector('.dlgAddDevice').open();
addDevice(this);
});
$('.formAddDevice', page).on('submit', function () {

View file

@ -0,0 +1,73 @@
(function ($, document, window) {
function reload(page, providerId) {
$('#txtDevicePath', page).val('');
$('#chkFavorite', page).checked(false).checkboxradio('refresh');
if (providerId) {
ApiClient.getNamedConfiguration("livetv").done(function (config) {
var info = config.TunerHosts.filter(function (i) {
return i.Id == providerId;
})[0];
$('#txtDevicePath', page).val(info.Url || '');
$('#chkFavorite', page).checked(info.ImportFavoritesOnly).checkboxradio('refresh');
});
}
}
function submitForm(page) {
Dashboard.showLoadingMsg();
var info = {
Type: 'hdhomerun',
Url: $('#txtDevicePath', page).val(),
ImportFavoritesOnly: $('#chkFavorite', page).checked()
};
var id = getParameterByName('id');
if (id) {
info.Id = id;
}
ApiClient.ajax({
type: "POST",
url: ApiClient.getUrl('LiveTv/TunerHosts'),
data: JSON.stringify(info),
contentType: "application/json"
}).done(function (result) {
Dashboard.processServerConfigurationUpdateResult();
Dashboard.navigate('livetvstatus.html');
}).fail(function () {
Dashboard.alert({
message: Globalize.translate('ErrorSavingTvProvider')
});
});
}
$(document).on('pageinitdepends', "#liveTvTunerProviderHdHomerunPage", function () {
var page = this;
$('form', page).on('submit', function () {
submitForm(page);
return false;
});
}).on('pageshowready', "#liveTvTunerProviderHdHomerunPage", function () {
var providerId = getParameterByName('id');
var page = this;
reload(page, providerId);
});
})(jQuery, document, window);

View file

@ -0,0 +1,70 @@
(function ($, document, window) {
function reload(page, providerId) {
$('#txtDevicePath', page).val('');
if (providerId) {
ApiClient.getNamedConfiguration("livetv").done(function (config) {
var info = config.TunerHosts.filter(function (i) {
return i.Id == providerId;
})[0];
$('#txtDevicePath', page).val(info.Url || '');
});
}
}
function submitForm(page) {
Dashboard.showLoadingMsg();
var info = {
Type: 'm3u',
Url: $('#txtDevicePath', page).val(),
ImportFavoritesOnly: $('#chkFavorite', page).checked()
};
var id = getParameterByName('id');
if (id) {
info.Id = id;
}
ApiClient.ajax({
type: "POST",
url: ApiClient.getUrl('LiveTv/TunerHosts'),
data: JSON.stringify(info),
contentType: "application/json"
}).done(function (result) {
Dashboard.processServerConfigurationUpdateResult();
Dashboard.navigate('livetvstatus.html');
}).fail(function () {
Dashboard.alert({
message: Globalize.translate('ErrorSavingTvProvider')
});
});
}
$(document).on('pageinitdepends', "#liveTvTunerProviderM3UPage", function () {
var page = this;
$('form', page).on('submit', function () {
submitForm(page);
return false;
});
}).on('pageshowready', "#liveTvTunerProviderM3UPage", function () {
var providerId = getParameterByName('id');
var page = this;
reload(page, providerId);
});
})(jQuery, document, window);