From: Jaroslav Kysela Date: Wed, 21 Mar 2018 09:27:11 +0000 (+0100) Subject: webui: fix for the previous commit, show cached channel names for removed channels... X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=163322179186fcadbef18145ad10a7818e2b094a;p=thirdparty%2Ftvheadend.git webui: fix for the previous commit, show cached channel names for removed channels, fixes #5009 --- diff --git a/src/dvr/dvr_db.c b/src/dvr/dvr_db.c index dd0d2c544..0f1e4e91e 100644 --- a/src/dvr/dvr_db.c +++ b/src/dvr/dvr_db.c @@ -3689,7 +3689,7 @@ const idclass_t dvr_entry_class = { .get = dvr_entry_class_channel_name_get, .set = dvr_entry_class_channel_name_set, .off = offsetof(dvr_entry_t, de_channel_name), - .opts = PO_RDONLY, + .opts = PO_HIDDEN | PO_RDONLY, }, { .type = PT_STR, diff --git a/src/webui/static/app/dvr.js b/src/webui/static/app/dvr.js index 4bbb0bc7e..ec5bc96a6 100644 --- a/src/webui/static/app/dvr.js +++ b/src/webui/static/app/dvr.js @@ -183,6 +183,20 @@ tvheadend.dvrRowActions = function() { }); } +tvheadend.dvrChannelRenderer = function(st) { + return function(st) { + return function(v, meta, rec) { + if (v) { + var r = st.getById(v); + if (r) v = r.data.val; + } + if (!v) + v = rec.data['channelname']; + return v; + } + } +} + tvheadend.weekdaysRenderer = function(st) { return function(v) { var t = []; @@ -224,11 +238,10 @@ tvheadend.filesizeRenderer = function(st) { } } - tvheadend.displayDuplicate = function(v, meta, rec) { if (v == null) return ''; - var is_dup = record.data['duplicate']; + var is_dup = rec.data['duplicate']; if (is_dup) return "" + v + ""; else @@ -593,13 +606,16 @@ tvheadend.dvr_finished = function(panel, index) { } }, del: false, - list: 'disp_title,disp_extratext,episode_disp,channel,' + + list: 'disp_title,disp_extratext,episode_disp,channel,channelname,' + 'start_real,stop_real,duration,filesize,copyright_year,' + 'sched_status,errors,data_errors,playcount,url,config_name,owner,creator,comment,', columns: { disp_title: { renderer: tvheadend.displayWithYearRenderer(), }, + channel: { + renderer: tvheadend.dvrChannelRenderer(), + }, filesize: { renderer: tvheadend.filesizeRenderer() } @@ -709,13 +725,16 @@ tvheadend.dvr_failed = function(panel, index) { del: true, delquestion: _('Do you really want to delete the selected recordings?') + '

' + _('The associated file will be removed from storage.'), - list: 'disp_title,disp_extratext,episode_disp,channel,' + + list: 'disp_title,disp_extratext,episode_disp,channel,channelname,' + 'image,copyright_year,start_real,stop_real,duration,filesize,status,' + 'sched_status,errors,data_errors,playcount,url,config_name,owner,creator,comment', columns: { disp_title: { renderer: tvheadend.displayWithYearRenderer(), }, + channel: { + renderer: tvheadend.dvrChannelRenderer(), + }, filesize: { renderer: tvheadend.filesizeRenderer() } @@ -784,12 +803,15 @@ tvheadend.dvr_removed = function(panel, index) { uilevel: 'expert', edit: { params: { list: tvheadend.admin ? "retention,owner,disp_title,disp_extratext,episode_disp,comment" : "retention,comment" } }, del: true, - list: 'disp_title,disp_extratext,episode_disp,channel,image,' + + list: 'disp_title,disp_extratext,episode_disp,channel,channelname,image,' + 'copyright_year,start_real,stop_real,duration,status,' + 'sched_status,errors,data_errors,url,config_name,owner,creator,comment', columns: { disp_title: { renderer: tvheadend.displayWithYearRenderer(), + }, + channel: { + renderer: tvheadend.dvrChannelRenderer(), } }, sort: {