mirror of
https://github.com/Combodo/iTop.git
synced 2026-05-18 14:58:43 +02:00
N°5904 When detaching/deleting a linked object, refresh datatable or display an error message
This commit is contained in:
@@ -12,19 +12,22 @@ let LinkSetWorker = new function(){
|
||||
*
|
||||
* @param sLinkedObjectClass
|
||||
* @param sLinkedObjectKey
|
||||
* @param sTableId
|
||||
* @constructor
|
||||
*/
|
||||
const CallAjaxDeleteLinkedObject = function(sLinkedObjectClass, sLinkedObjectKey){
|
||||
const CallAjaxDeleteLinkedObject = function(sLinkedObjectClass, sLinkedObjectKey, sTableId){
|
||||
let oTableSettingsDialog = $('#datatable_dlg_datatable_' + sTableId);
|
||||
|
||||
$.post(`${ROUTER_BASE_URL}?route=${ROUTE_LINK_SET_DELETE_OBJECT}`, {
|
||||
linked_object_class: sLinkedObjectClass,
|
||||
linked_object_key: sLinkedObjectKey,
|
||||
transaction_id: $('#linkset_transactions_id').val()
|
||||
}, function (data) {
|
||||
if(data.data.success){
|
||||
alert('Operation succeeded, todo refresh table !!');
|
||||
if(data.data.success === true){
|
||||
oTableSettingsDialog.DataTableSettings('DoRefresh');
|
||||
}
|
||||
else{
|
||||
alert('Operation failed, todo feedback !!');
|
||||
CombodoModal.OpenInformativeModal(data.data.error_message, 'error');
|
||||
}
|
||||
});
|
||||
};
|
||||
@@ -35,20 +38,23 @@ let LinkSetWorker = new function(){
|
||||
* @param sLinkedObjectClass
|
||||
* @param sLinkedObjectKey
|
||||
* @param sExternalKeyAttCode
|
||||
* @param sTableId
|
||||
* @constructor
|
||||
*/
|
||||
const CallAjaxDetachLinkedObject = function(sLinkedObjectClass, sLinkedObjectKey, sExternalKeyAttCode){
|
||||
const CallAjaxDetachLinkedObject = function(sLinkedObjectClass, sLinkedObjectKey, sExternalKeyAttCode, sTableId){
|
||||
let oTableSettingsDialog = $('#datatable_dlg_datatable_' + sTableId);
|
||||
|
||||
$.post(`${ROUTER_BASE_URL}?route=${ROUTE_LINK_SET_DETACH_OBJECT}`, {
|
||||
linked_object_class: sLinkedObjectClass,
|
||||
linked_object_key: sLinkedObjectKey,
|
||||
external_key_att_code: sExternalKeyAttCode,
|
||||
transaction_id: $('#linkset_transactions_id').val()
|
||||
}, function (data) {
|
||||
if(data.data.success){
|
||||
alert('Operation succeeded, todo refresh table !!');
|
||||
if(data.data.success === true){
|
||||
oTableSettingsDialog.DataTableSettings('DoRefresh');
|
||||
}
|
||||
else{
|
||||
alert('Operation failed, todo feedback !!');
|
||||
CombodoModal.OpenInformativeModal(data.data.error_message, 'error');
|
||||
}
|
||||
});
|
||||
};
|
||||
@@ -63,7 +69,7 @@ let LinkSetWorker = new function(){
|
||||
*/
|
||||
const CallAjaxModifyLinkedObject = function(sLinkedObjectClass, sLinkedObjectKey, sTableId){
|
||||
let oTable = $('#datatable_' + sTableId);
|
||||
let oTableSettingsDialog = $('#datatable_dlg_datatable_'+sTableId);
|
||||
let oTableSettingsDialog = $('#datatable_dlg_datatable_' + sTableId);
|
||||
|
||||
let oOptions = {
|
||||
title: Dict.S('UI:Links:ActionRow:Modify:Modal:Title'),
|
||||
@@ -90,7 +96,7 @@ let LinkSetWorker = new function(){
|
||||
*/
|
||||
const CallAjaxCreateLinkedObject = function(sTableId){
|
||||
let oTable = $('#datatable_' + sTableId);
|
||||
let oTableSettingsDialog = $('#datatable_dlg_datatable_'+sTableId);
|
||||
let oTableSettingsDialog = $('#datatable_dlg_datatable_' + sTableId);
|
||||
let sClass = oTable.closest('[data-role="ibo-block-links-table"]').attr('data-link-class');
|
||||
let sAttCode = oTable.closest('[data-role="ibo-block-links-table"]').attr('data-link-attcode');
|
||||
let sHostObjectClass = oTable.closest('[data-role="ibo-object-details"]').attr('data-object-class');
|
||||
|
||||
@@ -63,7 +63,7 @@ class BlockDirectLinksViewTable extends AbstractBlockLinksViewTable
|
||||
'label' => 'UI:Links:ActionRow:Detach',
|
||||
'tooltip' => 'UI:Links:ActionRow:Detach+',
|
||||
'icon_classes' => 'fas fa-minus',
|
||||
'js_row_action' => "LinkSetWorker.DetachLinkedObject('{$this->sTargetClass}', aRowData['{$this->sTargetClass}/_key_/raw'], '{$this->oAttDef->GetExtKeyToMe()}');",
|
||||
'js_row_action' => "LinkSetWorker.DetachLinkedObject('{$this->sTargetClass}', aRowData['{$this->sTargetClass}/_key_/raw'], '{$this->oAttDef->GetExtKeyToMe()}', '{$this->GetTableId()}');",
|
||||
'confirmation' => [
|
||||
'message' => 'UI:Links:ActionRow:Detach:Confirmation',
|
||||
'message_row_data' => "{$this->sTargetClass}/hyperlink",
|
||||
@@ -77,7 +77,7 @@ class BlockDirectLinksViewTable extends AbstractBlockLinksViewTable
|
||||
'label' => 'UI:Links:ActionRow:Delete',
|
||||
'tooltip' => 'UI:Links:ActionRow:Delete+',
|
||||
'icon_classes' => 'fas fa-trash',
|
||||
'js_row_action' => "LinkSetWorker.DeleteLinkedObject('{$this->oAttDef->GetLinkedClass()}', aRowData['{$this->oAttDef->GetLinkedClass()}/_key_/raw']);",
|
||||
'js_row_action' => "LinkSetWorker.DeleteLinkedObject('{$this->oAttDef->GetLinkedClass()}', aRowData['{$this->oAttDef->GetLinkedClass()}/_key_/raw'], '{$this->GetTableId()}');",
|
||||
'confirmation' => [
|
||||
'message' => 'UI:Links:ActionRow:Delete:Confirmation',
|
||||
'message_row_data' => "{$this->sTargetClass}/hyperlink",
|
||||
|
||||
@@ -72,7 +72,7 @@ class BlockIndirectLinksViewTable extends AbstractBlockLinksViewTable
|
||||
'label' => 'UI:Links:ActionRow:Detach',
|
||||
'tooltip' => 'UI:Links:ActionRow:Detach+',
|
||||
'icon_classes' => 'fas fa-minus',
|
||||
'js_row_action' => "LinkSetWorker.DeleteLinkedObject('{$this->oAttDef->GetLinkedClass()}', aRowData['Link/_key_/raw']);",
|
||||
'js_row_action' => "LinkSetWorker.DeleteLinkedObject('{$this->oAttDef->GetLinkedClass()}', aRowData['Link/_key_/raw'], '{$this->GetTableId()}');",
|
||||
'confirmation' => [
|
||||
'message' => 'UI:Links:ActionRow:Detach:Confirmation',
|
||||
'message_row_data' => "Remote/hyperlink",
|
||||
|
||||
Reference in New Issue
Block a user