protected function getSortColumn()
    {
        if (!$this->isSortable()) {
            return false;
        }

        if ($this->sortColumn !== null) {
            return $this->sortColumn;
        }

        /*
         * User preference
         */
        if ($this->showSorting && ($sortOptions = $this->getSession('sort'))) {
            $this->sortColumn = $sortOptions['column'];
            $this->sortDirection = $sortOptions['direction'];
        }

        /*
         * Supplied default
         */
        else {
            if (is_string($this->defaultSort)) {
                $this->sortColumn = $this->defaultSort;
                $this->sortDirection = 'desc';
            }
            elseif (is_array($this->defaultSort) && isset($this->defaultSort['column'])) {
                $this->sortColumn = $this->defaultSort['column'];
                $this->sortDirection = $this->defaultSort['direction'] ?? 'desc';
            }
        }

        /*
         * First available column
         */
        if ($this->sortColumn === null || !$this->isSortable($this->sortColumn)) {
            $columns = $this->visibleColumns ?: $this->getVisibleColumns();
            $columns = array_filter($columns, function ($column) { return $column->sortable; });
            $this->sortColumn = key($columns);
            $this->sortDirection = 'desc';
        }

        return $this->sortColumn;
    }
protected function getSortColumn()
    {
        if (!$this->isSortable()) {
            return false;
        }

        if ($this->sortColumn !== null) {
            return $this->sortColumn;
        }

        /*
         * User preference
         */
        if ($this->showSorting && ($sortOptions = $this->getSession('sort'))) {
            $this->sortColumn = $sortOptions['column'];
            $this->sortDirection = $sortOptions['direction'];
        }

        /*
         * Supplied default
         */
        else {
            if (is_string($this->defaultSort)) {
                $this->sortColumn = $this->defaultSort;
                $this->sortDirection = 'desc';
            }
            elseif (is_array($this->defaultSort) && isset($this->defaultSort['column'])) {
                $this->sortColumn = $this->defaultSort['column'];
                $this->sortDirection = $this->defaultSort['direction'] ?? 'desc';
            }
        }

        /*
         * First available column
         */
        if ($this->sortColumn === null || !$this->isSortable($this->sortColumn)) {
            $columns = $this->visibleColumns ?: $this->getVisibleColumns();
            $columns = array_filter($columns, function ($column) { return $column->sortable; });
            $this->sortColumn = key($columns);
            $this->sortDirection = 'desc';
        }

        return $this->sortColumn;
    }
protected function getSortColumn ( ) { if ( ! $ this -> isSortable ( ) ) { return false ; } if ( $ this -> sortColumn !== null ) { return $ this -> sortColumn ; } /*
         * User preference
         */ if ( $ this -> showSorting && ( $ sortOptions = $ this -> getSession ( 'sort' ) ) ) { $ this -> sortColumn = $ sortOptions [ 'column' ] ; $ this -> sortDirection = $ sortOptions [ 'direction' ] ; } /*
         * Supplied default
         */ else { if ( is_string ( $ this -> defaultSort ) ) { $ this -> sortColumn = $ this -> defaultSort ; $ this -> sortDirection = 'desc' ; } elseif ( is_array ( $ this -> defaultSort ) && isset ( $ this -> defaultSort [ 'column' ] ) ) { $ this -> sortColumn = $ this -> defaultSort [ 'column' ] ; $ this -> sortDirection = $ this -> defaultSort [ 'direction' ] ?? 'desc' ; } } /*
         * First available column
         */ if ( $ this -> sortColumn === null || ! $ this -> isSortable ( $ this -> sortColumn ) ) { $ columns = $ this -> visibleColumns ? : $ this -> getVisibleColumns ( ) ; $ columns = array_filter ( $ columns , function ( $ column ) { return $ column -> sortable ; } ) ; $ this -> sortColumn = key ( $ columns ) ; $ this -> sortDirection = 'desc' ; } return $ this -> sortColumn ; }
Returns the current sorting column, saved in a session or cached.
Returns the current sorting column saved in a session or cached .