[ Index ] |
PHP Cross Reference of vtigercrm-6.1.0 |
[Summary view] [Print] [Text view]
1 <?php 2 /********************************************************************************* 3 ** The contents of this file are subject to the vtiger CRM Public License Version 1.0 4 * ("License"); You may not use this file except in compliance with the License 5 * The Original Code is: vtiger CRM Open Source 6 * The Initial Developer of the Original Code is vtiger. 7 * Portions created by vtiger are Copyright (C) vtiger. 8 * All Rights Reserved. 9 * 10 ********************************************************************************/ 11 require_once ('include/Zend/Json.php'); 12 if(isset($_REQUEST["record"]) && $_REQUEST['record']!='') 13 { 14 $reportid = vtlib_purify($_REQUEST["record"]); 15 $oReport = new Reports($reportid); 16 $oReport->getAdvancedFilterList($reportid); 17 18 $oRep = new Reports(); 19 $secondarymodule = ''; 20 $secondarymodules =Array(); 21 22 if(!empty($oRep->related_modules[$oReport->primodule])) { 23 foreach($oRep->related_modules[$oReport->primodule] as $key=>$value){ 24 if(isset($_REQUEST["secondarymodule_".$value]))$secondarymodules []= $_REQUEST["secondarymodule_".$value]; 25 } 26 } 27 $secondarymodule = implode(":",$secondarymodules); 28 29 if($secondarymodule!='') 30 $oReport->secmodule = $secondarymodule; 31 32 $COLUMNS_BLOCK = getPrimaryColumns_AdvFilterHTML($oReport->primodule); 33 $COLUMNS_BLOCK .= getSecondaryColumns_AdvFilterHTML($oReport->secmodule); 34 $report_std_filter->assign("COLUMNS_BLOCK", $COLUMNS_BLOCK); 35 36 $FILTER_OPTION = Reports::getAdvCriteriaHTML(); 37 $report_std_filter->assign("FOPTION",$FILTER_OPTION); 38 39 $rel_fields = getRelatedFieldColumns(); 40 $report_std_filter->assign("REL_FIELDS",Zend_Json::encode($rel_fields)); 41 42 $report_std_filter->assign("CRITERIA_GROUPS",$oReport->advft_criteria); 43 } else { 44 $primarymodule = $_REQUEST["primarymodule"]; 45 $COLUMNS_BLOCK = getPrimaryColumns_AdvFilterHTML($primarymodule); 46 $ogReport = new Reports(); 47 if(!empty($ogReport->related_modules[$primarymodule])) { 48 foreach($ogReport->related_modules[$primarymodule] as $key=>$value){ 49 //$BLOCK1 .= getSecondaryColumnsHTML($_REQUEST["secondarymodule_".$value]); 50 $COLUMNS_BLOCK .= getSecondaryColumns_AdvFilterHTML($_REQUEST["secondarymodule_".$value]); 51 } 52 } 53 $report_std_filter->assign("COLUMNS_BLOCK", $COLUMNS_BLOCK); 54 55 $rel_fields = getRelatedFieldColumns(); 56 $report_std_filter->assign("REL_FIELDS",Zend_Json::encode($rel_fields)); 57 } 58 59 /** Function to get primary columns for an advanced filter 60 * This function accepts The module as an argument 61 * This generate columns of the primary modules for the advanced filter 62 * It returns a HTML string of combo values 63 */ 64 65 function getPrimaryColumns_AdvFilterHTML($module,$selected="") 66 { 67 global $ogReport, $app_list_strings, $current_language; 68 $mod_strings = return_module_language($current_language,$module); 69 $block_listed = array(); 70 foreach($ogReport->module_list[$module] as $key=>$value) 71 { 72 if(isset($ogReport->pri_module_columnslist[$module][$value]) && !$block_listed[$value]) 73 { 74 $block_listed[$value] = true; 75 $shtml .= "<optgroup label=\"".$app_list_strings['moduleList'][$module]." ".getTranslatedString($value)."\" class=\"select\" style=\"border:none\">"; 76 foreach($ogReport->pri_module_columnslist[$module][$value] as $field=>$fieldlabel) 77 { 78 if(isset($mod_strings[$fieldlabel])) 79 { 80 //fix for ticket 5191 81 $selected = decode_html($selected); 82 $field = decode_html($field); 83 //fix ends 84 if($selected == $field) 85 { 86 $shtml .= "<option selected value=\"".$field."\">".$mod_strings[$fieldlabel]."</option>"; 87 }else 88 { 89 $shtml .= "<option value=\"".$field."\">".$mod_strings[$fieldlabel]."</option>"; 90 } 91 }else 92 { 93 if($selected == $field) 94 { 95 $shtml .= "<option selected value=\"".$field."\">".$fieldlabel."</option>"; 96 }else 97 { 98 $shtml .= "<option value=\"".$field."\">".$fieldlabel."</option>"; 99 } 100 } 101 } 102 } 103 } 104 return $shtml; 105 } 106 107 108 109 /** Function to get Secondary columns for an advanced filter 110 * This function accepts The module as an argument 111 * This generate columns of the secondary module for the advanced filter 112 * It returns a HTML string of combo values 113 */ 114 115 function getSecondaryColumns_AdvFilterHTML($module,$selected="") 116 { 117 global $ogReport; 118 global $app_list_strings; 119 global $current_language; 120 121 if($module != "") 122 { 123 $secmodule = explode(":",$module); 124 for($i=0;$i < count($secmodule) ;$i++) 125 { 126 $mod_strings = return_module_language($current_language,$secmodule[$i]); 127 if(vtlib_isModuleActive($secmodule[$i])){ 128 $block_listed = array(); 129 foreach($ogReport->module_list[$secmodule[$i]] as $key=>$value) 130 { 131 if(isset($ogReport->sec_module_columnslist[$secmodule[$i]][$value]) && !$block_listed[$value]) 132 { 133 $block_listed[$value] = true; 134 $shtml .= "<optgroup label=\"".$app_list_strings['moduleList'][$secmodule[$i]]." ".getTranslatedString($value)."\" class=\"select\" style=\"border:none\">"; 135 foreach($ogReport->sec_module_columnslist[$secmodule[$i]][$value] as $field=>$fieldlabel) 136 { 137 if(isset($mod_strings[$fieldlabel])) 138 { 139 if($selected == $field) 140 { 141 $shtml .= "<option selected value=\"".$field."\">".$mod_strings[$fieldlabel]."</option>"; 142 }else 143 { 144 $shtml .= "<option value=\"".$field."\">".$mod_strings[$fieldlabel]."</option>"; 145 } 146 }else 147 { 148 if($selected == $field) 149 { 150 $shtml .= "<option selected value=\"".$field."\">".$fieldlabel."</option>"; 151 }else 152 { 153 $shtml .= "<option value=\"".$field."\">".$fieldlabel."</option>"; 154 } 155 } 156 } 157 } 158 } 159 } 160 } 161 } 162 return $shtml; 163 } 164 165 function getRelatedColumns($selected=""){ 166 global $ogReport; 167 $rel_fields = $ogReport->adv_rel_fields; 168 if($selected!='All'){ 169 $selected = split(":",$selected); 170 } 171 $related_fields = array(); 172 foreach($rel_fields as $i=>$index){ 173 $shtml=''; 174 foreach($index as $key=>$value){ 175 $fieldarray = split("::",$value); 176 $shtml .= "<option value=\"".$fieldarray[0]."\">".$fieldarray[1]."</option>"; 177 } 178 $related_fields[$i] = $shtml; 179 } 180 if(!empty($selected) && $selected[4]!='') 181 return $related_fields[$selected[4]]; 182 else if($selected=='All'){ 183 return $related_fields; 184 } 185 else 186 return ; 187 } 188 189 function getRelatedFieldColumns($selected=""){ 190 global $ogReport; 191 $rel_fields = $ogReport->adv_rel_fields; 192 return $rel_fields; 193 } 194 195 ?>
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 |