.opts = PO_EXPERT,
.group = 1
},
+ {
+ .type = PT_BOOL,
+ .id = "caclient_ui",
+ .name = N_("Conditional Access"),
+ .desc = N_("Enable the CAs (conditional accesses) tab in web user interface "
+ "for the advanced level. By default, this tab is visible only "
+ "in the expert level."),
+ .off = offsetof(config_t, caclient_ui),
+ .group = 1
+ },
{
.type = PT_U32,
.id = "descrambler_buffer",
uint32_t cookie_expires;
int dscp;
uint32_t descrambler_buffer;
+ int caclient_ui;
int parser_backlog;
int epg_compress;
} config_t;
htsmsg_add_str(r, NULL, tc->name);
tc++;
}
+ if (config.caclient_ui)
+ htsmsg_add_str(r, NULL, "caclient_advanced");
return r;
}
val: 'title',
fields: ['uuid', 'title', 'status'],
tabIndex: index,
- uilevel: 'expert',
+ uilevel: tvheadend.capabilities.indexOf('caclient_advanced') === -1
+ ? 'expert' : 'advanced',
list: { url: 'api/caclient/list', params: { } },
edit: { params: { list: list } },
add: {