I'm trying to use the delete context method, but when selecting multiple folders and deleting them it sends the same delete request multiple times. The more folders (no subfolders) I try to delete the more requests it sends.
My theory is that the datasource somehow doesn't register it has been deleted, so it tries to automatically sync the datasource by sending it again. Note that I'm using a virutal filesystem, but I'm returning the same object as in this sample
Also note that I'm using a mix of MVC and Jquery so I have a custom scheme as recommended in some of my previous tickets.
This is scheme:
$.extend(true, kendo.data, {
schemas: {
"filemanager": {
data: function (data) {
return data.Items || data || [];
},
model: {
id: "path",
hasChildren: "hasDirectories",
fields: {
entryId: { field: "EntryId", editable: false, type: "Number" },
folderId: { field: "FolderId", editable: false, type: "Number" },
name: { field: "Name", editable: true, type: "String", defaultValue: "New Folder" },
size: { field: "Size", editable: false, type: "Number" },
path: { field: "Path", editable: false, type: "String" },
extension: { field: "Extension", editable: false, type: "String" },
isDirectory: { field: "IsDirectory", editable: false, defaultValue: true, type: "Boolean" },
hasDirectories: { field: "HasDirectories", editable: false, defaultValue: false, type: "Boolean" },
created: { field: "Created", type: "Date", editable: false },
createdUtc: { field: "CreatedUtc", type: "Date", editable: false },
modified: { field: "Modified", type: "Date", editable: false },
modifiedUtc: { field: "ModifiedUtc", type: "Date", editable: false }
}
}
}
}
});
$("#document-manager").kendoFileManager({
dataSource: {
transport: {
read: {
type: "post",
url: "/FileManager/Read",
data: function() {
return getFileMetaData()
}
},
update: {
type: "post",
url: "/FileManager/Rename",
},
create: {
type: "post",
url: "/FileManager/Create",
data: function () {
return getFileMetaData()
}
},
destroy: {
type: "post",
url: "/FileManager/DeleteEntry"
}
},
},
contextMenu: {
items: [
{ name: "rename" },
{ name: "delete" }
]
},
});
And lastly my C# controller method which deletes the folder and returns the same object as in the above mentioned sample:
[HttpPost]
public async Task<ActionResult> DeleteEntry(FileManagerEntry deleteDto)
{
await _fileManagerService.DeleteEntry(deleteDto);
return Json(new object[0], JsonRequestBehavior.AllowGet);
}
You can also see in this screencast that it sends the delete request multiple times for the same entry:
https://screencast-o-matic.com/watch/cYfolKzXZs
In the Grid view of the FileManager, if you choose to Sort By Date from the Toolbar, the sort icon in the Grid's column header is missing.
The sort arrow icons are missing in the Grid's column header
The icons should be visible
In the FileManager, adding a new subfolder and then selecting the parent folder ( or switching between Grid and List View ) results in duplicated subfolder.
Regression introduced with 2024.2.519
The new subfolder is duplicated.
The subfolder should not be duplicated.
With LESS bootstrap theme, the scrollbar does not appear in the ListView if there are too many files.
The scrollbar does not appear when there are too many items in the ListView.
A scrollbar should appear
According to https://docs.telerik.com/kendo-ui/controls/data-management/filemanager/context-menu:
You can define your custom items which can execute custom commands
However, no option allows me to configure my own commands.
I managed to hack this: https://dojo.telerik.com/@GaloisGirl/iLoHIhoh , but it's an ugly solution.
Paging in FileManager's List view does not work as expected. Paging in Grid View behaves as expected.
Only one page is displayed in the pager
The pager should be updated to show the correct number of pages.
If you try to specify an icon through the ContextMenu items in the FileManager, no icon is rendered.
Regression introduced with 2023.1.117
Workaround: https://dojo.telerik.com/oFuGacAT/14
No icons are shown in the ContextMenu
The specified icons should be visible
There is no padding between semicolon and the data "Type:Folder" wouldn't be better "Type: folder" with a space in between?
When the FileManager is initialized with a local data source the Context Menu is not displayed.
The context menu is not displayed. The Context menu is not expected to be displayed for the built-in rename and delete commands, but a context menu is not displayed when custom commands are implemented.
A context menu should be displayed when local data source is used.
Context: my communication with the back-end is wrapped in a library, that handles the xhr requests and if needed, throws a custom exception. My transport is therefore made of functions. The sample below simulates getting an error from that library.
Demo: https://dojo.telerik.com/@GaloisGirl/ayEpOKOQ/2
Actual result:
In a FileManager with a configured toolbar, if you use the view method, the button selection in the toolbar will not change accordingly.
The GridView button is not displayed as selected
The GridView button should be selected
When the FileManager has data in the following structure Folder > SubFolder, File1, File2... and a Grid view with enabled paging, an error is thrown when you attempt to double click on "Folder".
In the FileManager, if you try to override the default Search message through the messages.toolbar.search option, the new message is not being set.
Regression with R1 2023
The Search placeholder message is not being updated.
The Search holder message should be updated with the value from the configuration.
When an item is selected in the left panel and setDataSource is used in FileManager, the left panel becomes empty. The behavior does not occur if the setDataSource method is used without previously selecting an item.
The left panel in FileManager becomes empty.
The newly set folders should be displayed even if an item is selected before setting the new dataSource.
When you select multiple files in the FileManager and then toggle the preview pane, the default multipleFilesTemplate is broken
Regression introduced with 2023.1.117
Workaround - https://dojo.telerik.com/eFaRIWav/4
The current content of the PreviewPane is "span class="k-file-name">2 items
The content of the PreviewPane should be "2 items"
When the views.grid option of the FileManager is used and the filterable option is enabled, the filter menu is empty. Also the 'Date Created' column is empy.
Currenlty, the filter menu of the Grid in the 'Grid View' is empty. The 'Date Created' column does not show the dates.
The filter menu in the 'Grid View' and the 'Date Created' column of the FileManager should be not be empty.
As a temporary workaround, the fields of the model could be defined with lowercase. Here is a Dojo example where the workaround is applied.
Run sample at https://dojo.telerik.com/@GaloisGirl/OJUPoYOY and check JavaScript log.
Hello,
I am using Kendo UI Version: 2020.2.617 R2 SP1 2020 and I am having issues with the Rename functionality of the FileManager in IE 11 and Chrome.
In IE 11, If I rename a Folder from the left navigation pane (or tree view) then it works just fine; the api/FileManager/Update endpoint is called by the FileManager widget. But when I rename a File or Folder from the "view pane" (by right-clicking to get the context menu), then the Open event is executed (like if you double clicked the file) instead of the Update endpoint being called.
In Chrome (latest version), I get the same thing, but with the exception that I can rename a folder (not a File) from the context menu.
My REST API is built using .Net WebAPI… Not MVC.
If you need more information, please do not hesitate to contact me.
Regards,
Eric.