opened 07:12AM - 30 Oct 21 UTC
I'm testing my v8 package in v9 in which a block shows files from a folder:
```…
$file_folder = FileFolder::getByID($this->file_folder);
if ($file_folder) {
$files = $this->app->make(FolderItemList::class);
$files->filterByParentFolder($file_folder);
$files->setItemsPerPage($this->num_files);
$files->sortByNodeName(); // <-- THIS LINE causes the error
$files->setNameSpace($this->bID);
$paginator = $factory->createPaginationObject($files);
$pagination = $paginator->renderDefaultView();
$this->set('files', $paginator->getCurrentPageResults());
}
```
I get the following exception in v9:
Exception Occurred: /srv/www/htdocs/c9/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php:79 An exception occurred while executing 'SELECT distinct n.treeNodeID, if(nt.treeNodeTypeHandle='file', fv.fvTitle, n.treeNodeName) as name, if(nt.treeNodeTypeHandle='file', fv.fvDateAdded, n.dateModified) as dateModified, case when nt.treeNodeTypeHandle='file_folder' then 1 else (10 + fvType) end as type, fv.fvSize as size, folderItemName FROM TreeNodes n INNER JOIN TreeNodeTypes nt ON nt.treeNodeTypeID = n.treeNodeTypeID LEFT JOIN TreeFileNodes tf ON tf.treeNodeID = n.treeNodeID LEFT JOIN FileVersions fv ON tf.fID = fv.fID and fv.fvIsApproved = 1 LEFT JOIN Files f ON fv.fID = f.fID LEFT JOIN Users u ON f.uID = u.uID LEFT JOIN FileSearchIndexAttributes fsi ON f.fID = fsi.fID WHERE n.treeNodeParentID = ? ORDER BY folderItemName asc LIMIT 10' with params ["66"]:
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'folderItemName' in 'field list' (0)
Changing 'folderItemName' to 'name' on line 381 of concrete/src/File/FolderItemList.php in sortByNodeName() fixes the problem. I don't know if that's the right place thought.
I guess the 'folderItemType' must be changed for 'type' too because that's also going to throw an error in sortByNodeType()