var mapButton = {
name: 'map',
builder: function() {
+ var m = new Ext.menu.Menu()
+ m.add({
+ name: 'mapsel',
+ tooltip: _('Map selected services to channels'),
+ iconCls: 'clone',
+ text: _('Map selected services'),
+ });
+ m.add({
+ name: 'mapall',
+ tooltip: _('Map all services to channels'),
+ iconCls: 'clone',
+ text: _('Map all services'),
+ });
return new Ext.Toolbar.Button({
tooltip: _('Map services to channels'),
iconCls: 'clone',
- text: _('Map Services'),
+ text: _('Map services'),
+ menu: m,
disabled: false
});
},
- callback: tvheadend.service_mapper
+ callback: {
+ mapall: tvheadend.service_mapper_all,
+ mapsel: tvheadend.service_mapper_none,
+ }
};
var chopsButton = {
var mapButton = {
name: 'map',
builder: function() {
+ var m = new Ext.menu.Menu()
+ m.add({
+ name: 'mapsel',
+ tooltip: _('Map selected services to channels'),
+ iconCls: 'clone',
+ text: _('Map selected services'),
+ });
+ m.add({
+ name: 'mapall',
+ tooltip: _('Map all services to channels'),
+ iconCls: 'clone',
+ text: _('Map all services'),
+ });
return new Ext.Toolbar.Button({
tooltip: _('Map services to channels'),
iconCls: 'clone',
- text: _('Map All'),
+ text: _('Map services'),
+ menu: m,
disabled: false
});
},
- callback: tvheadend.service_mapper
+ callback: {
+ mapall: tvheadend.service_mapper_all,
+ mapsel: tvheadend.service_mapper_sel,
+ }
};
var selected = function(s, abuttons)
/*
* Start mapping
*/
-tvheadend.service_mapper = function(t, e, store, select)
+tvheadend.service_mapper_sel = function(t, e, store, select)
{
var panel = null;
var win = null;
}
tvheadend.idnode_editor_win(tvheadend.uilevel, {
+ winTitle: _('Map services to channels'),
loadURL: 'api/service/mapper/load',
saveURL: 'api/service/mapper/save',
saveText: _('Map services'),
alwaysDirty: true,
noApply: true,
- modifyData: modify_data,
+ modifyData: select ? modify_data : null,
postsave: function() {
tvheadend.select_tab('service_mapper');
},
}
});
}
+
+tvheadend.service_mapper0 = function(all)
+{
+ tvheadend.idnode_editor_win(tvheadend.uilevel, {
+ winTitle: _('Map services to channels'),
+ loadURL: 'api/service/mapper/load',
+ saveURL: 'api/service/mapper/save',
+ saveText: _('Map services'),
+ alwaysDirty: true,
+ noApply: true,
+ beforeShow: all ? function(panel, conf) {
+ var form = panel.getForm();
+ var services = form.findField('services');
+ services.on('afterrender', function() {
+ services.selectAll();
+ });
+ } : null,
+ postsave: function() {
+ tvheadend.select_tab('service_mapper');
+ },
+ help: function() {
+ new tvheadend.help(_('Map services'), 'config_mapper.html');
+ }
+ });
+}
+
+tvheadend.service_mapper_all = function()
+{
+ tvheadend.service_mapper0(1);
+}
+
+tvheadend.service_mapper_none = function()
+{
+ tvheadend.service_mapper0(0);
+}