vtigerossez/include/ListView/RelatedListViewContents.php
2013-01-30 21:51:28 -05:00

94 lines
3.6 KiB
PHP

<?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.
*
*********************************************************************************/
/**
* @author MAK
*/
if($ajaxaction == "LOADRELATEDLIST") {
global $relationId;
$relationId = vtlib_purify($_REQUEST['relation_id']);
if(!empty($relationId) && ((int)$relationId) > 0) {
$recordid = vtlib_purify($_REQUEST['record']);
if($_SESSION['rlvs'][$currentModule][$relationId]['currentRecord'] != $recordid) {
$resetCookie = true;
} else {
$resetCookie = false;
}
$_SESSION['rlvs'][$currentModule][$relationId]['currentRecord'] = $recordid;
$actions = vtlib_purify($_REQUEST['actions']);
$header = vtlib_purify($_REQUEST['header']);
$modObj->id = $recordid;
$relationInfo = getRelatedListInfoById($relationId);
$relatedModule = getTabModuleName($relationInfo['relatedTabId']);
$function_name = $relationInfo['functionName'];
$relatedListData = $modObj->$function_name($recordid, getTabid($currentModule),
$relationInfo['relatedTabId'], $actions);
require_once('Smarty_setup.php');
global $theme, $mod_strings, $app_strings;
$theme_path="themes/".$theme."/";
$image_path=$theme_path."images/";
$smarty = new vtigerCRM_Smarty;
// vtlib customization: Related module could be disabled, check it
if(is_array($relatedListData)) {
if( ($relatedModule == "Contacts" || $relatedModule == "Leads" ||
$relatedModule == "Accounts") && $currentModule == 'Campaigns' &&
!$resetCookie) {
//TODO for 5.3 this should be COOKIE not REQUEST, change here else where
// this logic is used for listview checkbox selection propogation.
$checkedRecordIdString = $_REQUEST[$relatedModule.'_all'];
$checkedRecordIdString = rtrim($checkedRecordIdString);
$checkedRecordIdList = explode(';', $checkedRecordIdString);
$relatedListData["checked"]=array();
if (isset($relatedListData['entries'])) {
foreach($relatedListData['entries'] as $key=>$val) {
if(in_array($key,$checkedRecordIdList)) {
$relatedListData["checked"][$key] = 'checked';
} else {
$relatedListData["checked"][$key] = '';
}
}
}
$smarty->assign("SELECTED_RECORD_LIST", $checkedRecordIdString);
} else {
$smarty->assign('RESET_COOKIE', $resetCookie);
}
}
// END
require_once('include/ListView/RelatedListViewSession.php');
RelatedListViewSession::addRelatedModuleToSession($relationId,$header);
$smarty->assign("MOD", $mod_strings);
$smarty->assign("APP", $app_strings);
$smarty->assign("THEME", $theme);
$smarty->assign("IMAGE_PATH", $image_path);
$smarty->assign("ID",$recordid);
$smarty->assign("MODULE",$currentModule);
$smarty->assign("RELATED_MODULE",$relatedModule);
$smarty->assign("HEADER",$header);
$smarty->assign("RELATEDLISTDATA", $relatedListData);
$smarty->display("RelatedListDataContents.tpl");
}
}else if($ajaxaction == "DISABLEMODULE"){
$relationId = vtlib_purify($_REQUEST['relation_id']);
if(!empty($relationId) && ((int)$relationId) > 0) {
$header = vtlib_purify($_REQUEST['header']);
require_once('include/ListView/RelatedListViewSession.php');
RelatedListViewSession::removeRelatedModuleFromSession($relationId,$header);
}
echo "SUCCESS";
}
?>