You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							262 lines
						
					
					
						
							8.6 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							262 lines
						
					
					
						
							8.6 KiB
						
					
					
				| <?php | |
| /********************************************************************************* | |
| ** The contents of this file are subject to the vtiger CRM Public License Version 1.0 | |
|  * ("License"); You may not use this file except in compliance with the License | |
|  * The Original Code is:  vtiger CRM Open Source | |
|  * The Initial Developer of the Original Code is vtiger. | |
|  * Portions created by vtiger are Copyright (C) vtiger. | |
|  * All Rights Reserved. | |
| * | |
|  ********************************************************************************/ | |
| require_once('XTemplate/xtpl.php'); | |
| require_once('data/Tracker.php'); | |
| 
 | |
| global $mod_strings; | |
| global $app_list_strings; | |
| global $app_strings; | |
| global $current_user; | |
| $focus = 0; | |
| global $theme; | |
| global $vtlog; | |
| 
 | |
| //<<<<<>>>>>> | |
| global $oCustomView; | |
| //<<<<<>>>>>> | |
|  | |
| $error_msg = ''; | |
| $theme_path="themes/".$theme."/"; | |
| $image_path=$theme_path."images/"; | |
| require_once($theme_path.'layout_utils.php'); | |
| require_once('modules/CustomView/CustomView.php'); | |
| 
 | |
| $submodule = array('VENDOR'=>'Vendor','PRICEBOOK'=>'PriceBook','PRODUCTS'=>'Products','PO'=>'Orders','SO'=>'SalesOrder'); | |
| 
 | |
| if(isset($_REQUEST['smodule']) && $_REQUEST['smodule'] != '') | |
| { | |
|       $cv_module = $submodule[$_REQUEST['smodule']]; | |
| } | |
| else | |
| { | |
|       $cv_module = $_REQUEST['module']; | |
| } | |
| 
 | |
| //$cv_module = $_REQUEST['module']; | |
| $recordid = $_REQUEST['record']; | |
| 
 | |
| $xtpl=new XTemplate ('modules/CustomView/EditView.html'); | |
| $xtpl->assign("MOD", $mod_strings); | |
| $xtpl->assign("APP", $app_strings); | |
| $xtpl->assign("IMAGE_PATH", $image_path); | |
| $xtpl->assign("MODULE",$cv_module); | |
| $xtpl->assign("CVMODULE", $cv_module); | |
| $xtpl->assign("CUSTOMVIEWID",$recordid); | |
| $xtpl->assign("DATAFORMAT",$current_user->date_format); | |
| if($recordid == "") | |
| { | |
|         $oCustomView = new CustomView(); | |
|         $modulecollist = $oCustomView->getModuleColumnsList($cv_module); | |
| 	$vtlog->logthis('CustomView :: Successfully got ColumnsList for the module'.$cv_module,'info'); | |
| 	if(isset($modulecollist)) | |
| 	{ | |
|         	$choosecolhtml = getByModule_ColumnsHTML($cv_module,$modulecollist); | |
| 	} | |
|         //step2 | |
|         $stdfilterhtml = $oCustomView->getStdFilterCriteria(); | |
| 	$vtlog->logthis('CustomView :: Successfully got StandardFilter for the module'.$cv_module,'info'); | |
|         $stdfiltercolhtml = getStdFilterHTML($cv_module); | |
|         $stdfilterjs = $oCustomView->getCriteriaJS(); | |
| 
 | |
|         //step4 | |
|         $advfilterhtml = getAdvCriteriaHTML(); | |
| 	for($i=1;$i<11;$i++) | |
| 	{ | |
| 		$xtpl->assign("CHOOSECOLUMN".$i,$choosecolhtml); | |
| 	} | |
| 	$vtlog->logthis('CustomView :: Successfully got AdvancedFilter for the module'.$cv_module,'info'); | |
| 	for($i=1;$i<6;$i++) | |
| 	{ | |
| 		$xtpl->assign("FOPTION".$i,$advfilterhtml); | |
|         	$xtpl->assign("BLOCK".$i,$choosecolhtml); | |
| 	} | |
| 
 | |
| 	$xtpl->assign("STDFILTERCOLUMNS",$stdfiltercolhtml); | |
| 	$xtpl->assign("STDFILTERCRITERIA",$stdfilterhtml); | |
| 	$xtpl->assign("STDFILTER_JAVASCRIPT",$stdfilterjs); | |
| 
 | |
| 	$xtpl->assign("MANDATORYCHECK",implode(",",$oCustomView->mandatoryvalues)); | |
| 	$xtpl->assign("SHOWVALUES",implode(",",$oCustomView->showvalues)); | |
| } | |
| else | |
| { | |
| 	$oCustomView = new CustomView(); | |
| 
 | |
| 	$customviewdtls = $oCustomView->getCustomViewByCvid($recordid); | |
| 	$vtlog->logthis('CustomView :: Successfully got ViewDetails for the Viewid'.$recordid,'info'); | |
| 
 | |
| 	$modulecollist = $oCustomView->getModuleColumnsList($cv_module); | |
| 	$selectedcolumnslist = $oCustomView->getColumnsListByCvid($recordid); | |
| 	$vtlog->logthis('CustomView :: Successfully got ColumnsList for the Viewid'.$recordid,'info'); | |
| 
 | |
| 	$xtpl->assign("VIEWNAME",$customviewdtls["viewname"]); | |
| 
 | |
| 	if($customviewdtls["setdefault"] == 1) | |
| 	{ | |
| 		$xtpl->assign("CHECKED","checked"); | |
| 	} | |
| 	if($customviewdtls["setmetrics"] == 1) | |
|         { | |
|                 $xtpl->assign("MCHECKED","checked"); | |
|         } | |
| 	for($i=1;$i<10;$i++) | |
|         { | |
|            $choosecolhtml = getByModule_ColumnsHTML($cv_module,$modulecollist,$selectedcolumnslist[$i-1]); | |
| 	   $xtpl->assign("CHOOSECOLUMN".$i,$choosecolhtml); | |
|         } | |
| 
 | |
| 	$stdfilterlist = $oCustomView->getStdFilterByCvid($recordid); | |
| 	$vtlog->logthis('CustomView :: Successfully got Standard Filter for the Viewid'.$recordid,'info'); | |
| 	$stdfilterhtml = $oCustomView->getStdFilterCriteria($stdfilterlist["stdfilter"]); | |
|         $stdfiltercolhtml = getStdFilterHTML($cv_module,$stdfilterlist["columnname"]); | |
|         $stdfilterjs = $oCustomView->getCriteriaJS(); | |
| 
 | |
| 	if(isset($stdfilterlist["startdate"]) && isset($stdfilterlist["enddate"])) | |
| 	{ | |
| 		$xtpl->assign("STARTDATE",$stdfilterlist["startdate"]); | |
| 		$xtpl->assign("ENDDATE",$stdfilterlist["enddate"]); | |
| 	} | |
| 
 | |
| 	$advfilterlist = $oCustomView->getAdvFilterByCvid($recordid); | |
| 	$vtlog->logthis('CustomView :: Successfully got Advanced Filter for the Viewid'.$recordid,'info'); | |
| 	for($i=1;$i<6;$i++) | |
|         { | |
|                 $advfilterhtml = getAdvCriteriaHTML($advfilterlist[$i-1]["comparator"]); | |
| 		$advcolumnhtml = getByModule_ColumnsHTML($cv_module,$modulecollist,$advfilterlist[$i-1]["columnname"]); | |
| 		$xtpl->assign("FOPTION".$i,$advfilterhtml); | |
|                 $xtpl->assign("BLOCK".$i,$advcolumnhtml); | |
| 		$xtpl->assign("VALUE".$i,$advfilterlist[$i-1]["value"]); | |
|         } | |
| 
 | |
| 	$xtpl->assign("STDFILTERCOLUMNS",$stdfiltercolhtml); | |
|         $xtpl->assign("STDFILTERCRITERIA",$stdfilterhtml); | |
|         $xtpl->assign("STDFILTER_JAVASCRIPT",$stdfilterjs); | |
| 
 | |
| 	$xtpl->assign("MANDATORYCHECK",implode(",",$oCustomView->mandatoryvalues)); | |
| 	$xtpl->assign("SHOWVALUES",implode(",",$oCustomView->showvalues)); | |
| 	 | |
| 	$cactionhtml = "<input name='customaction' class='button' type='button' value='Create Custom Action' onclick=goto_CustomAction('".$cv_module."');>"; | |
| 
 | |
| 	if($cv_module == "Leads" || $cv_module == "Accounts" || $cv_module == "Contacts") | |
| 	{ | |
| 		$xtpl->assign("CUSTOMACTIONBUTTON",$cactionhtml); | |
| 	} | |
| } | |
| 
 | |
| $xtpl->assign("RETURN_MODULE", $cvmodule); | |
| $xtpl->assign("RETURN_ACTION", "index"); | |
| 
 | |
| $xtpl->parse("main"); | |
| $xtpl->out("main"); | |
| 
 | |
| //step2 | |
| function getByModule_ColumnsHTML($module,$columnslist,$selected="") | |
| { | |
| 	global $oCustomView; | |
| 	global $app_list_strings; | |
| 	 | |
| 	$mod_strings = return_module_language($current_language,$module); | |
| 
 | |
| 	foreach($oCustomView->module_list[$module] as $key=>$value) | |
|         { | |
|             $shtml .= "<optgroup label=\"".$app_list_strings['moduleList'][$module]." ".$key."\" class=\"select\" style=\"border:none\">"; | |
| 	    if(isset($columnslist[$module][$key])) | |
| 	    { | |
|             foreach($columnslist[$module][$key] as $field=>$fieldlabel) | |
|             { | |
| 		    if(isset($mod_strings[$fieldlabel])) | |
| 		    { | |
| 			    if($selected == $field) | |
| 			    { | |
| 				    $shtml .= "<option selected value=\"".$field."\">".$mod_strings[$fieldlabel]."</option>"; | |
| 			    }else | |
| 			    { | |
| 				    $shtml .= "<option value=\"".$field."\">".$mod_strings[$fieldlabel]."</option>"; | |
| 			    } | |
| 		    }else | |
| 		    { | |
| 			    if($selected == $field) | |
| 			    { | |
| 				    $shtml .= "<option selected value=\"".$field."\">".$fieldlabel."</option>"; | |
| 			    }else | |
| 			    { | |
| 				    $shtml .= "<option value=\"".$field."\">".$fieldlabel."</option>"; | |
| 			    } | |
| 		    } | |
|             } | |
| 	    } | |
|         } | |
|         return $shtml; | |
| } | |
| //step2 | |
|  | |
| //step3 | |
| function getStdFilterHTML($module,$selected="") | |
| { | |
|         global $app_list_strings; | |
|         global $oCustomView; | |
| 	//print_r($mod_strings); | |
|         $result = $oCustomView->getStdCriteriaByModule($module); | |
| 	$mod_strings = return_module_language($current_language,$module); | |
| 
 | |
|         if(isset($result)) | |
|         { | |
|                 foreach($result as $key=>$value) | |
|                 { | |
|                         if(isset($mod_strings[$value])) | |
| 			{ | |
| 			if($key == $selected) | |
|                         { | |
|                         $shtml .= "<option selected value=\"".$key."\">".$app_list_strings['moduleList'][$module]." - ".$mod_strings[$value]."</option>"; | |
|                         }else | |
|                         { | |
|                         $shtml .= "<option value=\"".$key."\">".$app_list_strings['moduleList'][$module]." - ".$mod_strings[$value]."</option>"; | |
|                         } | |
| 			}else | |
| 			{ | |
| 			if($key == $selected) | |
|                         { | |
|                    	$shtml .= "<option selected value=\"".$key."\">".$app_list_strings['moduleList'][$module]." - ".$value."</option>"; | |
|                         }else | |
|                         { | |
|                         $shtml .= "<option value=\"".$key."\">".$app_list_strings['moduleList'][$module]." - ".$value."</opt | |
| ion>"; | |
|                         } | |
| 			} | |
|                 } | |
|         } | |
| 
 | |
|         return $shtml; | |
| } | |
| //step3 | |
|  | |
| //step4 | |
| function getAdvCriteriaHTML($selected="") | |
| { | |
|          global $adv_filter_options; | |
| 	 global $app_list_strings; | |
| 
 | |
|          foreach($adv_filter_options as $key=>$value) | |
|          { | |
|                 if($selected == $key) | |
|                 { | |
|                         $shtml .= "<option selected value=\"".$key."\">".$value."</option>"; | |
|                 }else | |
|                 { | |
|                         $shtml .= "<option value=\"".$key."\">".$value."</option>"; | |
|                 } | |
|          } | |
| 
 | |
|          return $shtml; | |
| } | |
| //step4 | |
|  | |
| ?>
 | |
| 
 |