protected function renderContent() { $this->renderScripts(); $mappingFormLayoutUtil = ImportToMappingFormLayoutUtil::make(get_class($this->model), new ZurmoActiveForm(), $this->model->importRulesType, $this->mappableAttributeIndicesAndDerivedTypes); $mappingDataMetadataWithRenderedElements = $this->resolveMappingDataMetadataWithRenderedElements($mappingFormLayoutUtil, $this->mappingDataMetadata, $this->model->firstRowIsHeaderRow, $this->model->importRulesType, $this->model->id); return MappingFormLayoutUtil::renderMappingDataMetadataWithRenderedElements($mappingDataMetadataWithRenderedElements); }
/** * @param MappingFormLayoutUtil $mappingFormLayoutUtil * @param array $mappingDataMetadata * @param $firstRowIsHeaderRow * @param $importRulesType * @param int $id * @return array */ protected function resolveMappingDataMetadataWithRenderedElements($mappingFormLayoutUtil, $mappingDataMetadata, $firstRowIsHeaderRow, $importRulesType, $id) { assert('$mappingFormLayoutUtil instanceof MappingFormLayoutUtil'); assert('is_int($id)'); $ajaxOnChangeUrl = Yii::app()->createUrl("import/default/mappingRulesEdit", array('id' => $id)); $metadata = array(); $metadata['rows'] = array(); foreach ($mappingDataMetadata as $columnName => $mappingDataRow) { assert('$mappingDataRow["type"] == "extraColumn"'); $row = array(); $row['cells'] = array(); $row['cells'][] = $mappingFormLayoutUtil->renderAttributeAndColumnTypeContent($columnName, $mappingDataRow['type'], $mappingDataRow['attributeIndexOrDerivedType'], $ajaxOnChangeUrl); if ($firstRowIsHeaderRow) { $row['cells'][] = ' '; } $row['cells'][] = ' '; //Never any sample data for the extraColumn $row['cells'][] = $mappingFormLayoutUtil->renderMappingRulesElements($columnName, $mappingDataRow['attributeIndexOrDerivedType'], $importRulesType, $mappingDataRow['type'], array()); $metadata['rows'][] = $row; } return $metadata; }
public function testGetSampleColumnHeaderId() { $content = MappingFormLayoutUtil::getSampleColumnHeaderId(); $this->assertEquals($content, 'sample-column-header'); }
protected function getFormLayoutHeaderColumnsContent() { $headerColumns = array(); $headerColumns[] = Zurmo::t('ImportModule', 'Zurmo Field', LabelUtil::getTranslationParamsForAllModules()); if ($this->model->firstRowIsHeaderRow) { $headerColumns[] = Zurmo::t('ImportModule', 'Header'); } $headerColumns[] = '<div id="' . MappingFormLayoutUtil::getSampleColumnHeaderId() . '">' . $this->sampleColumnPagerContent . '</div>'; $headerColumns[] = Zurmo::t('ImportModule', 'Rules'); return $headerColumns; }
protected function getFormLayoutHeaderColumnsContent() { $headerColumns = array(); $headerColumns[] = Zurmo::t('ImportModule', 'Zurmo Field', LabelUtil::getTranslationParamsForAllModules()); if ($this->model->firstRowIsHeaderRow) { $headerColumns[] = Zurmo::t('Core', 'Header'); } $headerColumns[] = ZurmoHtml::tag('div', array('id' => MappingFormLayoutUtil::getSampleColumnHeaderId(), 'class' => 'clearfix'), $this->sampleColumnPagerContent); return $headerColumns; }
public function actionSampleRow($id) { $import = Import::getById((int) $_GET['id']); $importWizardForm = ImportWizardUtil::makeFormByImport($import); $dataProvider = $this->makeDataProviderForSampleRow($import, (bool) $importWizardForm->firstRowIsHeaderRow); $data = $dataProvider->getData(); $renderedContentData = array(); $pagerUrl = Yii::app()->createUrl('import/default/sampleRow', array('id' => $import->id)); $headerContent = ImportDataProviderPagerUtil::renderPagerAndHeaderTextContent($dataProvider, $pagerUrl); $renderedContentData[MappingFormLayoutUtil::getSampleColumnHeaderId()] = $headerContent; foreach ($data as $sampleColumnData) { foreach ($sampleColumnData as $columnName => $value) { if (!in_array($columnName, ImportDatabaseUtil::getReservedColumnNames())) { $renderedContentData[MappingFormLayoutUtil::resolveSampleColumnIdByColumnName($columnName)] = MappingFormLayoutUtil::renderChoppedStringContent($value); } } } echo CJSON::encode($renderedContentData); Yii::app()->end(0, false); }