$masterkey = '';
			foreach($mKeys[$strTableName] as $mk)
			{
				$options['masterKeysReq'][$mkr++] = $data[$mk];
				$masterkey .= $data[$mk];
			}
			
			$options["pageSize"] = $_SESSION[$strTableName."_pagesize"];
			$options["masterkey"] = $masterkey;
			$options["crosstable_refresh"] = postvalue("crosstable_refresh");
			$reportPageObject = new ReportPage($options);
			$reportPageObject->init();
			$reportPageObject->prepareDetailForEditViewPage($dpParams['params'][$d]);
					
			//add detail settings to master settings
			$reportPageObject->addControlsJSAndCSS();
			$reportPageObject->fillSetCntrlMaps();
			$pageObject->jsSettings['tableSettings'][$strTableName]	= $reportPageObject->jsSettings['tableSettings'][$strTableName];
			$dControlsMap[$strTableName] = $reportPageObject->controlsMap;
			$dViewControlsMap[$strTableName] = $reportPageObject->viewControlsMap;
			foreach($reportPageObject->jsSettings['global']['shortTNames'] as $keySet=>$val)
			{
					if(!array_key_exists($keySet,$pageObject->settingsMap["globalSettings"]['shortTNames']))
							$pageObject->settingsMap["globalSettings"]['shortTNames'][$keySet] = $val;
			}

			//Add detail's js files to master's files
			$pageObject->copyAllJSFiles($reportPageObject->grabAllJSFiles());

			//Add detail's css files to master's files
			$pageObject->copyAllCSSFiles($reportPageObject->grabAllCSSFiles());
Example #2
0
 /**
  * @param String reportTName
  * @param Number reportId
  * @param &Array data
  */
 protected function setDetailReportOnEditView($reportTName, $reportId, &$data)
 {
     include_once getabspath('classes/reportpage.php');
     //array of params for ReportPage constructor
     $options = array();
     $options["id"] = $reportId;
     $options["mode"] = REPORT_DETAILS;
     $options["tName"] = $reportTName;
     $options["pageType"] = PAGE_REPORT;
     $options["masterTable"] = $this->tName;
     $options["xt"] = new Xtempl(true);
     //#9607 1. Temporary fix
     $options["flyId"] = $this->genId() + 1;
     //fix it!
     $options["masterKeysReq"] = array();
     $mkr = 1;
     $mKeys = $this->pSet->getMasterKeysByDetailTable($reportTName);
     foreach ($mKeys as $mk) {
         $options["masterKeysReq"][$mkr++] = $data[$mk];
     }
     $reportPageObject = new ReportPage($options);
     $reportPageObject->init();
     if (isMobile()) {
         $reportPageObject->pageSize = -1;
     }
     $reportPageObject->prepareDetailsForEditViewPage();
     //add detail settings to master settings
     $reportPageObject->addControlsJSAndCSS();
     $reportPageObject->fillSetCntrlMaps();
     $this->copyDetailPreviewJSAndCSS($reportPageObject);
     $this->assignDisplayDetailTableXtVariable($reportPageObject);
     $this->updateSettingsWidthDPData($reportPageObject);
     $this->viewControlsMap["dViewControlsMap"][$reportTName] = $reportPageObject->viewControlsMap;
     $this->controlsMap["dControlsMap"][$reportTName] = $reportPageObject->controlsMap;
     $this->controlsMap["dpTablesParams"][] = array("tName" => $reportTName, "id" => $options["id"], "pType" => PAGE_REPORT);
 }