public function Render(Renderer $renderer)
 {
     $this->recordCardView->GetGrid()->GetPage()->UpdateValuesFromUrl();
     $this->recordCardView->ProcessMessages();
     echo $renderer->Render($this->recordCardView);
 }
Exemplo n.º 2
0
 public function RenderRecordCardView(RecordCardView $recordCardView)
 {
     $Grid = $recordCardView->GetGrid();
     $linkBuilder = null;
     $primaryKeyMap = array();
     $Grid->GetDataset()->Open();
     $Row = array();
     if ($Grid->GetDataset()->Next()) {
         $linkBuilder = $Grid->CreateLinkBuilder();
         $linkBuilder->AddParameter(OPERATION_PARAMNAME, OPERATION_PRINT_ONE);
         $keyValues = $Grid->GetDataset()->GetPrimaryKeyValues();
         for ($i = 0; $i < count($keyValues); $i++) {
             $linkBuilder->AddParameter("pk{$i}", $keyValues[$i]);
         }
         $primaryKeyMap = $Grid->GetDataset()->GetPrimaryKeyValuesMap();
         $rowValues = $Grid->GetDataset()->GetFieldValues();
         foreach ($Grid->GetSingleRecordViewColumns() as $Column) {
             $columnName = $Grid->GetDataset()->IsLookupField($Column->GetName()) ? $Grid->GetDataset()->IsLookupFieldNameByDisplayFieldName($Column->GetName()) : $Column->GetName();
             $columnRenderResult = '';
             $customRenderColumnHandled = false;
             $Grid->OnCustomRenderColumn->Fire(array($columnName, $Column->GetData(), $rowValues, &$columnRenderResult, &$customRenderColumnHandled));
             $columnRenderResult = $customRenderColumnHandled ? $columnRenderResult : $this->Render($Column);
             $Row[] = $columnRenderResult;
         }
     } else {
         RaiseError('Cannot retrieve single record. Check the primary key fields.');
     }
     $customParams = array();
     $this->DisplayTemplate($Grid->GetPage()->GetCustomTemplate(PagePart::VerticalGrid, PageMode::ModalView, 'view/record_card_view.tpl', $customParams), array('Grid' => $Grid, 'Columns' => $Grid->GetSingleRecordViewColumns()), array_merge($customParams, array('PrintOneRecord' => $Grid->GetPage()->GetPrinterFriendlyAvailable(), 'PrintRecordLink' => $linkBuilder->GetLink(), 'Title' => $Grid->GetPage()->GetShortCaption(), 'PrimaryKeyMap' => $primaryKeyMap, 'ColumnCount' => count($Grid->GetSingleRecordViewColumns()), 'Row' => $Row)));
 }
Exemplo n.º 3
0
 public function RenderRecordCardView(RecordCardView $recordCardView)
 {
     $Grid = $recordCardView->GetGrid();
     $linkBuilder = null;
     $primaryKeyMap = array();
     $Grid->GetDataset()->Open();
     $Row = array();
     if ($Grid->GetDataset()->Next()) {
         $linkBuilder = $Grid->CreateLinkBuilder();
         $linkBuilder->AddParameter(OPERATION_PARAMNAME, OPERATION_PRINT_ONE);
         $keyValues = $Grid->GetDataset()->GetPrimaryKeyValues();
         for ($i = 0; $i < count($keyValues); $i++) {
             $linkBuilder->AddParameter("pk{$i}", $keyValues[$i]);
         }
         $primaryKeyMap = $Grid->GetDataset()->GetPrimaryKeyValuesMap();
         $rowValues = $Grid->GetDataset()->GetFieldValues();
         $this->renderingRecordCardView = true;
         try {
             foreach ($Grid->GetSingleRecordViewColumns() as $Column) {
                 $Row[] = $Grid->renderCell($this, $Column, $rowValues);
             }
         } catch (Exception $e) {
             $this->renderingRecordCardView = false;
             throw $e;
         }
         $this->renderingRecordCardView = false;
     } else {
         RaiseCannotRetrieveSingleRecordError();
     }
     $customParams = array();
     $this->DisplayTemplate($Grid->GetPage()->GetCustomTemplate(PagePart::VerticalGrid, PageMode::ModalView, 'view/record_card_view.tpl', $customParams), array('Grid' => $Grid, 'Columns' => $Grid->GetSingleRecordViewColumns()), array_merge($customParams, array('PrintOneRecord' => $Grid->GetPage()->GetPrinterFriendlyAvailable(), 'PrintRecordLink' => $linkBuilder->GetLink(), 'Title' => $Grid->GetPage()->GetShortCaption(), 'PrimaryKeyMap' => $primaryKeyMap, 'ColumnCount' => count($Grid->GetSingleRecordViewColumns()), 'Row' => $Row)));
 }