public function UpdateSearchControls() { /** @var AdvancedSearchControl $advancedSearch */ $advancedSearch = $this->GetPage()->AdvancedSearchControl; if ($advancedSearch != null) { foreach ($advancedSearch->GetSearchColumns() as $searchColumn) { $columnName = $searchColumn->GetFieldName(); $column = $this->FindViewColumnByName($columnName); /** @var Field $field */ if ($column) { $field = $this->dataset->GetFieldByName($column->GetName()); } else { $field = $this->dataset->GetFieldByName($columnName); } if ($field && $searchColumn) { if ($searchColumn instanceof LookupSearchColumn) { $this->filterBuilder->AddField($searchColumn, $searchColumn->GetFieldName(), $searchColumn->GetCaption(), $field->GetEngFieldType(), 'Typeahead', array('handler' => $searchColumn->GetHandlerName())); $searchColumnViewData['Value'] = $searchColumn->GetDisplayValue(); } else { if ($field instanceof DateTimeField || $field instanceof DateField) { $this->filterBuilder->AddField($searchColumn, $searchColumn->GetFieldName(), $searchColumn->GetCaption(), $field->GetEngFieldType(), null, array('fdow' => GetFirstDayOfWeek())); } else { $this->filterBuilder->AddField($searchColumn, $searchColumn->GetFieldName(), $searchColumn->GetCaption(), $field->GetEngFieldType(), null, null); } } } } } }
public function GetValue(Renderer $renderer) { $result = ''; $primaryKeyValues = array(); ExtractPrimaryKeyValues($primaryKeyValues, METHOD_GET); $this->dataset->SetSingleRecordState($primaryKeyValues); $this->dataset->Open(); if ($this->dataset->Next()) { if ($this->column == null) { } else { $result = $renderer->Render($this->column); } } $this->dataset->Close(); return $result; }
/** * @param IDataset $dataset * @param int $userId * @return bool */ private function IsRecordOwner(IDataset $dataset, $userId) { return $dataset->GetFieldValueByName($this->ownerIdField) == $userId; }