public function finish() {
        parent::finish();
        if ($this->isRowActionsEnabled() && !$this->hasValueViewer(static::ROW_ACTIONS_COLUMN_NAME)) {
            $this->addValueViewer(static::ROW_ACTIONS_COLUMN_NAME, null);
        }
        if ($this->isNestedViewEnabled() && !$this->hasValueViewer($this->getColumnNameForNestedView())) {
            $this->addValueViewer($this->getColumnNameForNestedView(), DataGridColumn::create()->setIsVisible(false));
        }
        if ($this->isRowsReorderingEnabled()) {
            $reorderingColumns = $this->getRowsPositioningColumns();
            $allowedColumnTypes = [Column::TYPE_INT, Column::TYPE_FLOAT, Column::TYPE_UNIX_TIMESTAMP];
            foreach ($reorderingColumns as $columnName) {
                if (!$this->hasValueViewer($columnName)) {
                    throw new NotFoundException(
                        "Column '$columnName' provided for reordering was not found within declared data grid columns"
                    );
                }
                $valueViewer = $this->getValueViewer($columnName);
                if (!$valueViewer->isLinkedToDbColumn() && $valueViewer->getTableColumn()->isItExistsInDb()) {
                    throw new \UnexpectedValueException(
                        "Column '$columnName' provided for reordering must be linked to a column that exists in database"
                    );
                }
                $colType = $valueViewer->getTableColumn()->getType();
                if (!in_array($colType, $allowedColumnTypes, true)) {
                    throw new \UnexpectedValueException(
                        "Column '$columnName' provided for reordering should be of a numeric type (int, float, unix ts)."
                        . "'{$colType}' type is not acceptable'"
                    );
                }
                $valueViewer->setIsSortable(true);
            }
        }
    }
public function finish() {
        parent::finish();
        if ($this->isRowActionsEnabled() && !$this->hasValueViewer(static::ROW_ACTIONS_COLUMN_NAME)) {
            $this->addValueViewer(static::ROW_ACTIONS_COLUMN_NAME, null);
        }
        if ($this->isNestedViewEnabled() && !$this->hasValueViewer($this->getColumnNameForNestedView())) {
            $this->addValueViewer($this->getColumnNameForNestedView(), DataGridColumn::create()->setIsVisible(false));
        }
        if ($this->isRowsReorderingEnabled()) {
            $reorderingColumns = $this->getRowsPositioningColumns();
            $allowedColumnTypes = [Column::TYPE_INT, Column::TYPE_FLOAT, Column::TYPE_UNIX_TIMESTAMP];
            foreach ($reorderingColumns as $columnName) {
                if (!$this->hasValueViewer($columnName)) {
                    throw new NotFoundException(
                        "Column '$columnName' provided for reordering was not found within declared data grid columns"
                    );
                }
                $valueViewer = $this->getValueViewer($columnName);
                if (!$valueViewer->isLinkedToDbColumn() && $valueViewer->getTableColumn()->isItExistsInDb()) {
                    throw new \UnexpectedValueException(
                        "Column '$columnName' provided for reordering must be linked to a column that exists in database"
                    );
                }
                $colType = $valueViewer->getTableColumn()->getType();
                if (!in_array($colType, $allowedColumnTypes, true)) {
                    throw new \UnexpectedValueException(
                        "Column '$columnName' provided for reordering should be of a numeric type (int, float, unix ts)."
                        . "'{$colType}' type is not acceptable'"
                    );
                }
                $valueViewer->setIsSortable(true);
            }
        }
    }
public function finish ( ) { parent :: finish ( ) ; if ( $ this -> isRowActionsEnabled ( ) && ! $ this -> hasValueViewer ( static :: ROW_ACTIONS_COLUMN_NAME ) ) { $ this -> addValueViewer ( static :: ROW_ACTIONS_COLUMN_NAME , null ) ; } if ( $ this -> isNestedViewEnabled ( ) && ! $ this -> hasValueViewer ( $ this -> getColumnNameForNestedView ( ) ) ) { $ this -> addValueViewer ( $ this -> getColumnNameForNestedView ( ) , DataGridColumn :: create ( ) -> setIsVisible ( false ) ) ; } if ( $ this -> isRowsReorderingEnabled ( ) ) { $ reorderingColumns = $ this -> getRowsPositioningColumns ( ) ; $ allowedColumnTypes = [ Column :: TYPE_INT , Column :: TYPE_FLOAT , Column :: TYPE_UNIX_TIMESTAMP ] ; foreach ( $ reorderingColumns as $ columnName ) { if ( ! $ this -> hasValueViewer ( $ columnName ) ) { throw new NotFoundException ( "Column '$columnName' provided for reordering was not found within declared data grid columns" ) ; } $ valueViewer = $ this -> getValueViewer ( $ columnName ) ; if ( ! $ valueViewer -> isLinkedToDbColumn ( ) && $ valueViewer -> getTableColumn ( ) -> isItExistsInDb ( ) ) { throw new \ UnexpectedValueException ( "Column '$columnName' provided for reordering must be linked to a column that exists in database" ) ; } $ colType = $ valueViewer -> getTableColumn ( ) -> getType ( ) ; if ( ! in_array ( $ colType , $ allowedColumnTypes , true ) ) { throw new \ UnexpectedValueException ( "Column '$columnName' provided for reordering should be of a numeric type (int, float, unix ts)." . "'{$colType}' type is not acceptable'" ) ; } $ valueViewer -> setIsSortable ( true ) ; } } }
Finish building config.
This may trigger some actions that should be applied after all configurations were provided
Finish building config . This may trigger some actions that should be applied after all configurations were provided