/************************************* * SPDX-FileCopyrightText: 2009-2020 Vtenext S.r.l. * SPDX-License-Identifier: AGPL-3.0-only ************************************/ /* crmv@3085m crmv@3086m crmv@51865 crmv@192033 */ var globaldtlviewspanid = ""; var globaleditareaspanid = ""; var globalbuttonsspanid = ""; var globalcenterbuttonsspanid = ""; // crmv@160733 var globaltxtboxid = ""; var itsonview=false; var globaltempvalue = ''; // to retain the old value if we cancel the ajax edit var globaluitype = ''; var globalfieldname = ''; var globaldivobj = ''; var globaldivobjclass = ''; // crmv@171524 window.VTE = window.VTE || {}; VTE.DetailView = VTE.DetailView || { setFavorite: function(id) { var me = this; if (me.enableFavorite) return; me.enableFavorite = true; jQuery("#status").show(); jQuery.ajax({ url: 'index.php?module=SDK&action=SDKAjax&file=src/Favorites/SetFavorite&record='+id, success: function(data) { var res = data.split('###'); if (res[0] == 'favorite') { jQuery('#favoriteImg').text('star'); } else { jQuery('#favoriteImg').text('star_border'); } jQuery('#favorites_button').show(); jQuery('#favorites_list').html(res[1]); jQuery("#status").hide(); me.enableFavorite = false; } }); }, listenForDefreeze: function(module, record, params) { var me = this, params = params || {}, stompConnection = params['stomp_connection']; console.log("listenForDefreeze"); if (me.isListenForDefreeze) return; me.isListenForDefreeze = true; console.log("listenForDefreeze passed!"); if (!stompConnection) { console.warn('Invalid stomp connection'); return; } var checkTimeout = 0; VTE.StompUtils.connect(stompConnection, function() { console.log("Init DONE!"); VTE.StompUtils.subscribeToTopic(stompConnection['defreeze_topic_name'], function(m) { console.log("New DONE message: ", m); var message = JSON.parse(m.body); var messageRecord = parseInt(message.record); if (messageRecord === parseInt(record)) { clearTimeout(checkTimeout); checkTimeout = setTimeout(function() { VTE.DetailView.reloadFreezedRecord(module, record); }, 200); } }); }); }, listenForFreeze: function(module, record, params) { var me = this, params = params || {}, stompConnection = params['stomp_connection']; console.log("listenForFreeze"); if (me.isListenForFreeze) return; me.isListenForFreeze = true; console.log("listenForFreeze passed!"); if (!stompConnection) { console.warn('Invalid stomp connection'); return; } var checkTimeout = 0; VTE.StompUtils.connect(stompConnection, function() { console.log("Init FREEZED!"); VTE.StompUtils.subscribeToTopic(stompConnection['freeze_topic_name'], function(m) { console.log("New FREEZED message: ", m); var message = JSON.parse(m.body); var messageRecord = parseInt(message.record); console.log("Stomp record: " + messageRecord, "Current record: " + record); if (messageRecord === parseInt(record)) { clearTimeout(checkTimeout); checkTimeout = setTimeout(function() { VTE.DetailView.checkFreezedRecord(module, record, { 'stomp_connection': stompConnection, 'mode': 'detailviewajax', }); }, 200); } }); }); }, checkFreezedRecord: function(module, record, params) { var me = this, params = params || {}; var mode = params['mode'] || ''; console.log("Checking for freeze...", mode); if (mode == 'detailview') { jQuery.ajax({ url: 'index.php', data: { 'module': 'Utilities', 'crmid': record, 'action': 'UtilitiesAjax', 'file': 'CheckFreezed', }, dataType: 'json', success: function(data) { if (data && data.success) { if (data.is_freezed) { console.log("Record freeeezed!"); me.listenForDefreeze(module, record, params); } else { console.log("Record not freeeezed!"); me.reloadFreezedRecord(module, record); } } }, }); } else if (mode == 'detailviewajax') { console.log("Record ajax reload!"); me.listenForDefreeze(module, record, params); me.reloadFreezedRecord(module, record); } }, fetchElement: function(elementName, module, record, container, extraParams, callback) { var me = this; VteJS_DialogBox.block(container); var params = jQuery.extend({}, { 'module' : module, 'action' : module + 'Ajax', 'file' : 'DetailView', 'record' : record, 'fetch_only': elementName, }, extraParams || {}); jQuery.ajax({ url: 'index.php', type: 'POST', data: params, dataType: 'json', success: function(data) { VteJS_DialogBox.unblock(container); if (typeof callback == 'function') callback(data); } }); }, fetchNavbar: function(module, record, extraparams, callback) { var me = this; me.fetchElement('navbar', module, record, 'Buttons_List_3', null, function(data) { if (data && data.success) { if (current_theme == 'softed') { jQuery(data.html).first().appendTo('body') calculateButtonsList3(); } else { jQuery('#Buttons_Detail').html(data.html); } if (typeof callback == 'function') callback(); } }) }, reloadFreezedRecord: function(module, record, params) { var me = this; console.log("reloadFreezedRecord start"); VteJS_DialogBox.progress(); params = jQuery.extend({}, { 'navbar': true, 'fields': true, 'turbolift': true, 'history': true, }, params || {}); // Navbar if (params.navbar) { releaseOverAll('detailViewActionsContainer'); jQuery('#detailViewActionsContainer').remove(); me.fetchNavbar(module, record, null, navbarFetched); } else { navbarFetched(); } function navbarFetched() { // Fields if (params.fields) { loadDetailViewBlocks(module, record, '', 'DetailViewBlocks', null, null, null, null, fieldsFetched); } else { fieldsFetched(); } } function fieldsFetched() { jQuery('.dvtSelectedCell').first().click(); // Turbolift if (params.turbolift) { reloadTurboLift(module, record, null, true, turboliftFetched); } else { turboliftFetched(); } } function turboliftFetched() { // History if (params.history) { jQuery('#HistoryTab').empty(); HistoryTabScript.getHistory(module, record, historyFetched); } else { historyFetched(); } } function historyFetched() { // ... VteJS_DialogBox.hideprogress(); console.log("reloadFreezedRecord end"); } }, }; // crmv@171524e // crmv@194390 VTE.MapLocation = VTE.MapLocation || { busy: false, showBusy: function() { this.busy = true; VteJS_DialogBox.progress(); }, hideBusy: function() { this.busy = false; VteJS_DialogBox.hideprogress(); }, showAvailableAddresses: function() { jQuery('#locateMapModal').modal('show'); }, searchMapLocation: function(recordid, addressType) { var me = this, recordid = parseInt(recordid); if (recordid === 0) { console.error('Invalid record parameter'); return; } if (me.busy) return; me.showBusy(); var params = { module: 'Utilities', action: 'UtilitiesAjax', file: 'MapLocation', subaction: 'get_address_query', recordid: recordid, address_type: addressType }; jQuery.ajax({ url: 'index.php', method: 'GET', data: params, dataType: 'json', success: function(result) { if (result && result.success) { window.open('http://maps.google.com/maps?q='+result.address_query, '_blank'); } else { if (result.error) { alert(result.error); } } me.hideBusy(); } }); }, }; // crmv@194390e function showHide(showId, hideId) { show(showId); fnhide(hideId); } function hndCancel(valuespanid,textareapanid,fieldlabel,checkconfirm) { if (typeof(checkconfirm) == 'undefined') var checkconfirm = false; if(globaluitype == '56') { if (getObj(globaltxtboxid).checked == true) var currentvalue = 1; else var currentvalue = 0; if (globaltempvalue != currentvalue) { if (checkconfirm == true && confirm(alert_arr.LBL_SAVE_LAST_CHANGES)) { var link = jQuery('#'+globalbuttonsspanid).find('a').first(); link.click(); //crmv@51865bis } else if (checkconfirm == true) { getObj(globaltxtboxid).focus(); return false; //crmv@51865bis e } else { getObj(globaltxtboxid).value = globaltempvalue; if(globaltempvalue == 1) getObj(globaltxtboxid).checked = true; else getObj(globaltxtboxid).checked = false; } } } else if(globaluitype != '53' && globaluitype != '33') { if (globaltempvalue != getObj(globaltxtboxid).value) { if (checkconfirm == true && confirm(alert_arr.LBL_SAVE_LAST_CHANGES)) { var link = jQuery('#'+globalbuttonsspanid).find('a').first(); link.click(); return false; //crmv@51865bis } else if (checkconfirm == true) { getObj(globaltxtboxid).focus(); return false; //crmv@51865bis e } else { getObj(globaltxtboxid).value = globaltempvalue; } } } if (typeof(globaldivobj) != 'undefined') { globaldivobj.className = globaldivobjclass; } // crmv@171115 VTE.releasePanelBlocker({ restart: true, }); // crmv@171115e showHide(valuespanid,textareapanid); fnhide(globalbuttonsspanid); fnhide(globalcenterbuttonsspanid); // crmv@160733 globaltempvalue = ''; itsonview=false; return true; } function hndMouseClick(uitype,fieldLabel,fieldname,obj) { if(itsonview) { if (globalfieldname == fieldname) { return; } else { var res = hndCancel(globaldtlviewspanid,globaleditareaspanid,'',true); if (res == false) return false; } } globaluitype = uitype; globaldtlviewspanid= "dtlview_"+ fieldLabel;//valuespanid; globaleditareaspanid="editarea_"+ fieldLabel;//textareapanid; globalbuttonsspanid="buttons_"+ fieldLabel; globalcenterbuttonsspanid="centerbuttons_"+ fieldLabel; // crmv@160733 globalfieldlabel = fieldLabel; globalfieldname = fieldname; globaldivobj = obj; if(globaluitype == 53) { if(typeof(document.DetailView.assigntype[0]) != 'undefined') { var assign_type_U = document.DetailView.assigntype[0].checked; var assign_type_G = document.DetailView.assigntype[1].checked; if(assign_type_U == true) globaltxtboxid= 'txtbox_U'+fieldLabel; else if(assign_type_G == true) globaltxtboxid= 'txtbox_G'+fieldLabel; }else { globaltxtboxid= 'txtbox_U'+fieldLabel; } removePageSelection(); //crmv@55030 }else { globaltxtboxid="txtbox_"+ fieldLabel;//textboxpanid; } //crmv@54072 if(globaluitype == 19 || globaluitype == 21 || globaluitype == 208) { var height = jQuery(globaldivobj).height(); var height1 = jQuery("[id='editarea_"+fieldLabel+"']").height(); if (height1 > height) height = height1; jQuery("[id='txtbox_"+fieldLabel+"']").css('height',height); } //crmv@54072e handleEdit(); } function handleEdit() { if (typeof(globaldivobj) != 'undefined') { globaldivobjclass = globaldivobj.className; //crmv@57221 var classes = globaldivobjclass ? globaldivobjclass.split(' ') : []; var count = classes.length; if (count == 1) { globaldivobj.className = 'dvtCellInfoOn'; } else { for (var i=0;i/g, " "); }else { tagValue = trim(document.getElementById(txtBox).value); if(module == "Contacts") { if(getObj('portal')) { var port_obj = getObj('portal').checked; if(fieldName == "email" && tagValue == '' && port_obj == true) { alert(alert_arr.PORTAL_PROVIDE_EMAILID); return false; } } } } //crmv@7213 if ( (globaluitype == '1112' ) && (module= "Accounts") && (fieldName == "external_code") && (tagValue != '') ) { //crmv@19653 if (AjaxDuplicateValidateEXT_CODE(module,fieldName,tagValue,'ajax')) { //crmv@136764 //getObj('mouseArea_'+fieldLabel).onmouseover = ''; //getObj('mouseArea_'+fieldLabel).onmouseout = ''; //crmv@136764e } else //crmv@19653e return false; } var data = "file=DetailViewAjax&module=" + module + "&action=" + module + "Ajax&record=" + crmId+"&recordid=" + crmId ; data = data + "&fldName=" + fieldName + "&fieldValue=" + escapeAll(tagValue) + "&ajxaction=DETAILVIEW"+groupurl; // crmv@160733 // save confidential info if(module == "HelpDesk" && fieldName == "comments") { var pwd = jQuery('#confinfo_save_pwd').val(); var more = jQuery('#confinfo_save_more').val(); if (pwd) { data += '&ciaction=request&pwd='+encodeURIComponent(pwd)+'&data='+encodeURIComponent(more); } } // crmv@160733e // crmv@193226 // update address of related contacts var address_fields = [ 'bill_city', 'bill_street', 'bill_country', 'bill_code', 'bill_pobox', 'bill_state', 'ship_city', 'ship_street', 'ship_country', 'ship_code', 'ship_pobox', 'ship_state', ]; if (module == 'Accounts' && address_fields.indexOf(fieldName) >= 0) { var change = confirm(alert_arr.WANT_TO_CHANGE_CONTACT_ADDR); if (change) { data += '&address_change=yes'; } } // crmv@193226e jQuery.ajax({ url: 'index.php', method: 'POST', data: data, success: function(result) { if(result.indexOf(":#:FAILURE")>-1) { alert(alert_arr.ERROR_WHILE_EDITING); } else if(result.indexOf(":#:SUCCESS")>-1) { //For HD & FAQ - comments, we should empty the field value if((module == "HelpDesk" || module == "Faq") && fieldName == "comments") { getObj(dtlView).innerHTML = ""; getObj("comments").value = ""; getObj("comments_div").innerHTML = result.replace(":#:SUCCESS",""); if (typeof(SocialNotification) != 'undefined') SocialNotification.reply(module,crmId,escapeAll(tagValue)); //crmv@2940m } if (module == 'Processes' && fieldName.indexOf('vcf_') >- 1) DynaFormScript.loadDetailViewBlocks(crmId); //crmv@99316 //crmv@93990 jQuery.ajax({ 'url': 'index.php?module=Processes&action=ProcessesAjax&file=DetailViewAjax&ajxaction=CHECKDYNAFORMPOPUP&record='+crmId, success: function(data) { if(data.indexOf(":#:SUCCESS")>-1) DynaFormScript.popup(data.replace(":#:SUCCESS","")); } }); //crmv@93990e // crmv@179717 if (window.sendMessageFromPanel) { sendMessageFromPanel({ name: 'recordEdited' }); } // crmv@179717e // crmv@171115 VTE.releasePanelBlocker({ restart: true, }); // crmv@171115e jQuery('#status').hide(); //crmv@103534 } else if(result.indexOf("error='RECORDDELETED_")>-1 || result.indexOf("error='LEADCONVERTED_")>-1 || result.indexOf("error='RECORDNOTFOUND_")>-1) { window.location.reload(); } //crmv@103534e } }); tagValue = get_converted_html(tagValue); //crmv@7213e //crmv@sdk-18509 sdkUitypeFile = getSDKUitype(uitype); if (sdkUitypeFile != '') { jQuery.ajax({ url: sdkUitypeFile, dataType: 'text', async: false, cache: false, success: function(data){ eval(data); } }); } //crmv@sdk-18509e //crmv@7216 else if(uitype == '1013') { var temp_fieldname = 'internal_mailer_'+fieldName; if(jQuery('#'+temp_fieldname).length > 0) { var fax_chk_arr = jQuery('#'+temp_fieldname).html().split("####"); var fieldId = fax_chk_arr[0]; var fax_link = ""+tagValue+" "; } getObj(dtlView).innerHTML = fax_link; } //crmv@7216e //crmv@7220 else if((uitype == '11' || uitype == '1014') && typeof(use_asterisk) != 'undefined' && use_asterisk == true) { getObj(dtlView).innerHTML = ""+tagValue+""; } //crmv@7220e else if(uitype == '13' || uitype == '104') { var temp_fieldname = 'internal_mailer_'+fieldName; if(jQuery('#'+temp_fieldname).length > 0) { var mail_chk_arr = jQuery('#'+temp_fieldname).html().split("####"); var fieldId = mail_chk_arr[0]; var internal_mailer_flag = mail_chk_arr[1]; if(internal_mailer_flag == 1) var email_link = ""+tagValue+" "; else var email_link = ""+tagValue+" "; } getObj(dtlView).innerHTML = email_link; if(fieldName == "email" || fieldName == "email1"){ var priEmail = getObj("pri_email"); if(priEmail) priEmail.value = tagValue; }else{ var secEmail = getObj("sec_email"); if(secEmail) secEmail.value = tagValue; } }else if(uitype == '17') { getObj(dtlView).innerHTML = ""+tagValue+" "; }else if(uitype == '85') { getObj(dtlView).innerHTML = ""+tagValue+" "; }else if(uitype == '53') { var hdObj = getObj(hdTxt); if(isAdmin == "0") { getObj(dtlView).innerHTML = hdObj.value; }else if(isAdmin == "1" && assign_type_U == true) { getObj(dtlView).innerHTML = ""+hdObj.value+" "; }else if(isAdmin == "1" && assign_type_G == true) { getObj(dtlView).innerHTML = ""+hdObj.value+" "; } } else if(uitype == '52' || uitype == '77') { if(isAdmin == "1") getObj(dtlView).innerHTML = ""+document.getElementById(txtBox).options[document.getElementById(txtBox).selectedIndex].text+" "; else getObj(dtlView).innerHTML = document.getElementById(txtBox).options[document.getElementById(txtBox).selectedIndex].text; } else if(uitype == '56') { if(tagValue == '1') { getObj(dtlView).innerHTML = alert_arr.YES; }else { getObj(dtlView).innerHTML = alert_arr.NO; } getObj(txtBox).value = tagValue; //crmv@51865 } else if(uitype == 116) { getObj(dtlView).innerHTML = document.getElementById(txtBox).options[document.getElementById(txtBox).selectedIndex].text; } else if(getObj(popupTxt)) { var popObj = getObj(popupTxt); if(uitype == '53') { var hdObj = getObj(hdTxt); if(isAdmin == "0") { getObj(dtlView).innerHTML = hdObj.value; }else if(isAdmin == "1") { getObj(dtlView).innerHTML = ""+hdObj.value+" ";; } } else if(uitype == '56') { if(tagValue == '1') { getObj(dtlView).innerHTML = alert_arr.YES; }else { getObj(dtlView).innerHTML = ""; } } else { getObj(dtlView).innerHTML = popObj.value; } } //crmv@8982 else if(uitype == '111' || uitype == '15' || uitype == '1015' || uitype == '16' ) { //crmv@8982e var notaccess = document.getElementById(txtBox); tagValue = notaccess.options[notaccess.selectedIndex].text; if(tagValue == alert_arr.LBL_NOT_ACCESSIBLE) getObj(dtlView).innerHTML = ""+get_converted_html(tagValue)+""; else getObj(dtlView).innerHTML = get_converted_html(tagValue); } else if(uitype == '33') { /* Wordwrap a long list of multi-select combo box items at the * item separator string */ var DETAILVIEW_WORDWRAP_WIDTH = "70"; // must match value in DetailViewUI.tpl. var lineLength = 0; for(var i=0; i < notaccess_label.length; i++) { lineLength += notaccess_label[i].length + 2; // + 2 for item separator string /*if(lineLength > DETAILVIEW_WORDWRAP_WIDTH && i > 0) { lineLength = notaccess_label[i].length + 2; // reset. notaccess_label[i] = '
 ' + notaccess_label[i]; // prepend newline. }*/ notaccess_label[i] = get_converted_html(notaccess_label[i]); // Prevent a browser splitting multiword items: //notaccess_label[i] = notaccess_label[i].replace(/ /g, ' '); notaccess_label[i] = notaccess_label[i].replace(alert_arr.LBL_NOT_ACCESSIBLE,""+alert_arr.LBL_NOT_ACCESSIBLE+""); // for Not accessible label. } /* Join items with item separator string (which must match string in DetailViewUI.tpl, * EditViewUtils.php and CRMEntity.php)!! */ getObj(dtlView).innerHTML = notaccess_label.join(", "); } else if(uitype == '19') { var desc = tagValue.replace(/(^|[\n ])([\w]+?:\/\/.*?[^ \"\n\r\t<]*)/g, "$1$2"); desc = desc.replace(/(^|[\n ])((www|ftp)\.[\w\-]+\.[\w\-.\~]+(?:\/[^ \"\t\n\r<]*)?)/g, "$1$2"); desc = desc.replace(/(^|[\n ])([a-z0-9&\-_.]+?)@([\w\-]+\.([\w\-\.]+\.)*[\w]+)/i, "$1$2@$3"); //crmv@27617 desc = desc.replace(/,\"|\.\"|\)\"|\)\.\"|\.\)\"/, "\""); desc = desc.replace(/\n\r/g, "
").replace(/\n/g, '
'); // crmv@101312 getObj(dtlView).innerHTML = desc; //crmv@16265 } else if(uitype == '199') { tagValue.replace(/[\n\r]+/g, "
 "); i=0;tmp = ''; while (i "); } if (typeof(globaldivobj) != 'undefined') { globaldivobj.className = globaldivobjclass; } showHide(dtlView,editArea); //show,hide fnhide(buttons); fnhide('centerbuttons_'+fieldLabel); // crmv@160733 itsonview=false; } function setSelectValue(fieldLabel) { if(globaluitype == 53) { if(typeof(document.DetailView.assigntype[0]) != 'undefined') { var assign_type_U = document.DetailView.assigntype[0].checked; var assign_type_G = document.DetailView.assigntype[1].checked; if(assign_type_U == true) var selCombo= 'txtbox_U'+fieldLabel; else if(assign_type_G == true) var selCombo= 'txtbox_G'+fieldLabel; }else { var selCombo= 'txtbox_U'+fieldLabel; } }else { var selCombo= 'txtbox_'+fieldLabel; } var hdTxtBox = 'hdtxt_'+fieldLabel; var oHdTxtBox = document.getElementById(hdTxtBox); var oSelCombo = document.getElementById(selCombo); oHdTxtBox.value = oSelCombo.options[oSelCombo.selectedIndex].text; } //crmv@29079 // crmv@180878 function jq( myid ) { return "#" + myid.replace( /(:|\.|\[|\]|,|=|@|\?)/g, "\\$1" ); } // crmv@180878e //crmv@140887 function showHideStatus(sId, anchorImgId, sImagePath) { var $element = jQuery(jq(sId)); // crmv@180878 if ($element.length < 1) return; oObj = $element.get(0); if ($element.is(':visible')) { hideStatus(oObj, anchorImgId, sImagePath); } else { showStatus(oObj, anchorImgId, sImagePath); } } // crmv@140887e function hideStatus(oObj,anchorImgId,sImagePath) { oObj.style.display = 'none'; jQuery(jq(anchorImgId)).css('opacity', 0.5).attr('title', 'Display'); // crmv@180878 } function showStatus(oObj,anchorImgId,sImagePath) { oObj.style.display = 'block'; jQuery(jq(anchorImgId)).css('opacity', '').attr('title', 'Hide'); // crmv@180878 } //crmv@29079e function setCoOrdinate(elemId){ oBtnObj = document.getElementById(elemId); var tagName = document.getElementById('lstRecordLayout'); leftpos = 0; toppos = 0; aTag = oBtnObj; do { leftpos += aTag.offsetLeft; toppos += aTag.offsetTop; } while(aTag = aTag.offsetParent); tagName.style.top= toppos + 20 + 'px'; tagName.style.left= leftpos - 276 + 'px'; } function getListOfRecords(obj, sModule, iId, sParentTab) { jQuery.ajax({ url: 'index.php', method: 'POST', data: 'module=Users&action=getListOfRecords&ajax=true&CurModule='+sModule+'&CurRecordId='+iId+'&CurParentTab='+sParentTab, success: function(result) { if (sModule == 'Accounts') HideHierarch(); jQuery("#lstRecordLayout").html(result); var tagName = document.getElementById('lstRecordLayout'); var leftSide = findPosX(obj); var topSide = findPosY(obj); var maxW = tagName.style.width; var widthM = maxW.substring(0,maxW.length-2); var getVal = parseInt(leftSide) + parseInt(widthM); if(getVal > document.body.clientWidth ){ leftSide = parseInt(leftSide) - parseInt(widthM); tagName.style.left = leftSide + 230 + 'px'; tagName.style.top = topSide + 20 + 'px'; }else{ tagName.style.left = leftSide + 230 + 'px'; } setCoOrdinate(obj.id); tagName.style.display = 'block'; tagName.style.visibility = "visible"; } }); } //crmv@99316 crmv@105937 function loadDetailViewBlocks(module,record,view,destination,extraParams,status,dialog,scroll,callback) { if (typeof(status) == 'undefined' || status == '') var status = 'status'; if (typeof(dialog) == 'undefined') var dialog = true; if (typeof(scroll) == 'undefined') var scroll = true; if (dialog) VteJS_DialogBox.block(destination); jQuery('#'+status).show(); var params = { 'module' : module, 'action' : module+'Ajax', 'file' : 'DetailViewBlocks', 'record' : record, 'view' : view, 'panelid' : getCurrentPanelid(), // crmv@140129 }; jQuery.ajax({ url: 'index.php?'+jQuery.param(params), type: 'POST', data: ( extraParams && !jQuery.isEmptyObject(extraParams) ? '&' + jQuery.param(extraParams) : '' ), success: function(data){ jQuery('#'+destination).html(data); if (scroll && destination == 'DetailViewBlocks') jQuery('body').scrollTop(0); if (dialog) VteJS_DialogBox.unblock(destination); jQuery('#'+status).hide(); if (typeof callback == 'function') callback(); } }); } //crmv@99316e crmv@105937e //crmv@43864 function reloadTurboLift(module, crmid, relmodule, reloadOpenRelated, callback) { // crmv@171524 if (!module) return; reloadOpenRelated = reloadOpenRelated || false; // crmv@171524 var buttonId = 'tl_'+module+'_'+relmodule, unpinId = 'unPin_'+module+'_'+relmodule, tlButton = jQuery('#'+buttonId), isClicked = tlButton.hasClass('turboliftEntrySelected'), isPinned = (tlButton.is('[class^="turboliftEntry"]') && jQuery('#'+unpinId).is(':visible')), //crmv@62415 relationID = tlButton.attr('relation_id'), //crmv@62415 tlonclick = tlButton.attr('onclick'); // crmv@172697 var params = { 'module' : module, 'action' : module+'Ajax', 'file' : 'Turbolift', 'record' : crmid, 'ajaxaction' : 'show', }; if (jQuery('#turbolift_back_button').length == 0) { params['show_turbolift_back_button'] = 'no'; } if (amIinPopup()) { params['inOpenPopup'] = 'yes'; } if (isPinned) { //crmv@62415 if (relationID != ''){ // crmv@172697 var matches = tlonclick.match(/actions=([^&'"]*)/i); var actions=''; if (matches && matches[1] != '') { actions='&actions='+matches[1]; } loadRelatedListBlock('module='+module+'&action='+module+'Ajax&file=DetailViewAjax&ajxaction=LOADRELATEDLIST&order_by=&header='+relmodule+'&record='+crmid+'&relation_id='+relationID+actions, "tbl_"+module+'_'+relmodule, module+'_'+relmodule); // crmv@172697e } else{ top.location.reload(); return; } //crmv@62415 e } // crmv@171524 if (reloadOpenRelated) { jQuery('#RLContents, #DynamicRelatedList').find(">div[relation_id]").each(function(idx, el) { var $el = jQuery(el), relid = parseInt($el.data('relationid')); var elementId = $el.attr('id') || ''; var idSplitted = elementId.split('_'); var relatedModule = idSplitted[2]; if (!relatedModule) return true; console.log("RELMODULE PRE: ", relatedModule); if (relmodule && relmodule.length > 0 && relmodule !== relatedModule) { return true; } console.log("RELMODULE AFTER: ", relatedModule); loadRelatedListBlock('module='+module+'&action='+module+'Ajax&file=DetailViewAjax&ajxaction=LOADRELATEDLIST&order_by=&header='+relatedModule+'&record='+crmid+'&relation_id='+relid, "tbl_"+module+'_'+relatedModule, module+'_'+relatedModule); }); } // crmv@171524e // TODO: show a busy girella jQuery.ajax({ url: 'index.php', type: 'POST', data: params, success: function(data) { //crmv@121366 var scrollbar = jQuery('#turboLiftContainerDiv'); scrollbar.mCustomScrollbar("disable"); var cont = jQuery('#turboLiftRelationsContainer'); cont.html(data); scrollbar.mCustomScrollbar("update"); jQuery('div .mCSB_container .mCS_no_scrollbar').css('top','0px'); //crmv@121366e if (isClicked) { currentRelated = ''; //crmv@64719 if (cont.find('#'+buttonId).attr("onclick") == null) var btn = cont.find('#'+buttonId).children().first(); else var btn = cont.find('#'+buttonId); //crmv@64719e btn.click(); } if (typeof callback == 'function') callback(); // crmv@171524 } }); } //crmv@43864e function loadSummary(label,module,record,destination,relation_id) { var related = destination.replace('tbl_',''); if (jQuery('#'+destination+'_Summary').length == 0) { jQuery('
').appendTo(jQuery('#'+destination).parent()); } var extraParams = { 'show_details_button' : 'true', 'show_related_buttons' : 'true', 'DETAILVIEW_AJAX_EDIT' : 'false', 'relation_id' : relation_id, 'destination' : destination, } loadDetailViewBlocks(module,record,'summary',destination+'_Summary',extraParams,'indicator_'+related); jQuery('#'+destination).hide(); jQuery('#'+destination+'_Summary').show(); jQuery('#dtl_'+related).html(label); } function turnToRelatedList(label,real_destination,destination) { var related = destination.replace('tbl_',''); jQuery('#'+real_destination).remove(); //crmv@54375 jQuery('#'+destination).show(); jQuery('#dtl_'+related).html(label); } //crmv@63001 for mobile devices, trigger the onclick function hndMobileClick(el) { if (el && isMobile()) { if (typeof el.ondblclick == 'function') { el.ondblclick.call(el); } } } //crmv@63001e //crmv@161554 function gdprAnonymize(module,record) { jQuery.ajax({ 'url': 'index.php?module='+module+'&action='+module+'Ajax&file=DetailViewAjax&ajxaction=GDPRANONYMIZE&record='+record, success: function(data) { if (data != 'SUCCESS') { alert(alert_arr.ERROR, function(){ window.location.reload(); }); } else { window.location.reload(); } } }); } //crmv@161554e