[ Index ] |
PHP Cross Reference of vtigercrm-6.1.0 |
[Summary view] [Print] [Text view]
1 /*+*********************************************************************************** 2 * The contents of this file are subject to the vtiger CRM Public License Version 1.0 3 * ("License"); You may not use this file except in compliance with the License 4 * The Original Code is: vtiger CRM Open Source 5 * The Initial Developer of the Original Code is vtiger. 6 * Portions created by vtiger are Copyright (C) vtiger. 7 * All Rights Reserved. 8 *************************************************************************************/ 9 10 Vtiger_Detail_Js("Reports_Detail_Js",{},{ 11 advanceFilterInstance : false, 12 detailViewContentHolder : false, 13 HeaderContentsHolder : false, 14 15 16 getContentHolder : function() { 17 if(this.detailViewContentHolder == false) { 18 this.detailViewContentHolder = jQuery('div.contentsDiv'); 19 } 20 return this.detailViewContentHolder; 21 }, 22 23 getHeaderContentsHolder : function(){ 24 if(this.HeaderContentsHolder == false) { 25 this.HeaderContentsHolder = jQuery('div.reportsDetailHeader '); 26 } 27 return this.HeaderContentsHolder; 28 }, 29 30 calculateValues : function(){ 31 //handled advanced filters saved values. 32 var advfilterlist = this.advanceFilterInstance.getValues(); 33 return JSON.stringify(advfilterlist); 34 }, 35 36 registerSaveOrGenerateReportEvent : function(){ 37 var thisInstance = this; 38 jQuery('.generateReport').on('click',function(e){ 39 e.preventDefault(); 40 var advFilterCondition = thisInstance.calculateValues(); 41 var recordId = thisInstance.getRecordId(); 42 var currentMode = jQuery(e.currentTarget).data('mode'); 43 var postData = { 44 'advanced_filter': advFilterCondition, 45 'record' : recordId, 46 'view' : "SaveAjax", 47 'module' : app.getModuleName(), 48 'mode' : currentMode 49 }; 50 var form = thisInstance.getForm(); 51 var result = form.validationEngine('validate'); 52 if(result === true) { 53 var progressIndicatorElement = jQuery.progressIndicator({ 54 }); 55 AppConnector.request(postData).then( 56 function(data){ 57 progressIndicatorElement.progressIndicator({mode:'hide'}) 58 thisInstance.getContentHolder().find('#reportContentsDiv').html(data); 59 Vtiger_Helper_Js.showHorizontalTopScrollBar(); 60 61 // To get total records count 62 var count = parseInt(jQuery('#updatedCount').val()); 63 if(count < 1000){ 64 jQuery('#countValue').text(count); 65 jQuery('#moreRecordsText').hide(); 66 }else{ 67 jQuery('#countValue').html('<img src="layouts/vlayout/skins/images/loading.gif">'); 68 var params = { 69 'module' : app.getModuleName(), 70 'advanced_filter': advFilterCondition, 71 'record' : recordId, 72 'action' : "DetailAjax", 73 'mode': "getRecordsCount" 74 }; 75 AppConnector.request(params).then( 76 function(data){ 77 var count = parseInt(data.result); 78 jQuery('#countValue').text(count); 79 if(count > 1000) 80 jQuery('#moreRecordsText').show(); 81 else 82 jQuery('#moreRecordsText').hide(); 83 } 84 ); 85 } 86 } 87 ); 88 } 89 }); 90 }, 91 92 registerEventsForActions : function() { 93 var thisInstance = this; 94 jQuery('.reportActions').click(function(e){ 95 var element = jQuery(e.currentTarget); 96 var href = element.data('href'); 97 var type = element.attr("name"); 98 var advFilterCondition = thisInstance.calculateValues(); 99 var headerContainer = thisInstance.getHeaderContentsHolder(); 100 if(type.indexOf("Print") != -1){ 101 var newEle = '<form action='+href+' method="POST" target="_blank">'+ 102 '<input type = "hidden" name ="'+csrfMagicName+'" value=\''+csrfMagicToken+'\'>'+ 103 '<input type="hidden" value="" name="advanced_filter" id="advanced_filter" /></form>'; 104 }else{ 105 newEle = '<form action='+href+' method="POST">'+ 106 '<input type = "hidden" name ="'+csrfMagicName+'" value=\''+csrfMagicToken+'\'>'+ 107 '<input type="hidden" value="" name="advanced_filter" id="advanced_filter" /></form>'; 108 } 109 var ele = jQuery(newEle); 110 var form = ele.appendTo(headerContainer); 111 form.find('#advanced_filter').val(advFilterCondition); 112 form.submit(); 113 }) 114 }, 115 116 registerEvents : function(){ 117 this._super(); 118 this.registerSaveOrGenerateReportEvent(); 119 this.registerEventsForActions(); 120 var container = this.getContentHolder(); 121 this.advanceFilterInstance = Vtiger_AdvanceFilter_Js.getInstance(jQuery('.filterContainer',container)); 122 } 123 });
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Fri Nov 28 20:08:37 2014 | Cross-referenced by PHPXref 0.7.1 |