Merge pull request #58 from asig2016/link_wigget_with_target_app

et2_link, et2_link_list: add target_app parameter to pass to egw().open
This commit is contained in:
Ralf Becker 2019-03-12 14:56:26 +01:00 committed by Hadi Nategh
parent 7ea486b426
commit 780b7e56b5

View File

@ -591,7 +591,7 @@ var et2_link_entry = (function(){ "use strict"; return et2_inputWidget.extend(
this.createInputWidget(); this.createInputWidget();
var self = this; var self = this;
jQuery(this.getInstanceManager().DOMContainer).on('clear', function(){ jQuery(this.getInstanceManager().DOMContainer).on('clear', function(){
// We need to unbind events to prevent a second triggerd event handler // We need to unbind events to prevent a second triggerd event handler
// (eg. setting a project in infolog edit dialog) when the widget gets cleared. // (eg. setting a project in infolog edit dialog) when the widget gets cleared.
@ -1226,6 +1226,12 @@ var et2_link = (function(){ "use strict"; return et2_valueWidget.extend([et2_IDe
"type": "string", "type": "string",
"default": "view", "default": "view",
"description": "Hook used for displaying link (view/edit/add)" "description": "Hook used for displaying link (view/edit/add)"
},
"target_app": {
"name": "Target application",
"type": "string",
"default": "",
"description": "Optional parameter to be passed to egw().open in order to open links in specified application"
} }
}, },
legacyOptions: ["only_app"], legacyOptions: ["only_app"],
@ -1298,7 +1304,10 @@ var et2_link = (function(){ "use strict"; return et2_valueWidget.extend([et2_IDe
{ {
this.link.addClass("et2_link"); this.link.addClass("et2_link");
this.link.click( function(e){ this.link.click( function(e){
self.egw().open(_value, "", self.options.link_hook,_value.extra_args,_value.app,_value.app); if( !self.options.target_app ){
self.options.target_app = _value.app;
}
self.egw().open(_value, "", self.options.link_hook,_value.extra_args,_value.app, self.options.target_app);
e.stopImmediatePropagation(); e.stopImmediatePropagation();
}); });
} }
@ -1653,6 +1662,12 @@ var et2_link_list = (function(){ "use strict"; return et2_link_string.extend(
type: "boolean", type: "boolean",
"default": false, "default": false,
description: "Does NOT allow user to enter data, just displays existing data" description: "Does NOT allow user to enter data, just displays existing data"
},
"target_app": {
"name": "Target application",
"type": "string",
"default": "",
"description": "Optional parameter to be passed to egw().open in order to open links in specified application "
} }
}, },
@ -1933,7 +1948,10 @@ var et2_link_list = (function(){ "use strict"; return et2_link_string.extend(
} }
else else
{ {
self.egw().open(_link_data, "", "view",null,_link_data.target ? _link_data.target : _link_data.app,_link_data.app); if( !self.options.target_app ){
self.options.target_app = _link_data.app;
}
self.egw().open(_link_data, "", "view",null,_link_data.target ? _link_data.target : _link_data.app,self.options.target_app);
} }
}); });
} }