Skip to content

Commit 50c5a1c

Browse files
Merge branch 'hotfix/hotfix-v28.2.3' into 936559-HF-Core-mvc
2 parents c2512f3 + 3946b8c commit 50c5a1c

File tree

278 files changed

+2971
-2649
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

278 files changed

+2971
-2649
lines changed
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
---
2+
title: Essential Studio for ##Platform_Name## Weekly Release Release Notes
3+
description: Essential Studio for ##Platform_Name## Weekly Release Release Notes
4+
platform: ej2-asp-core-mvc
5+
documentation: ug
6+
---
7+
8+
# Essential Studio for ##Platform_Name## Release Notes
9+
10+
{% include release-info.html date="February 04, 2025" version="v28.2.4" %}
11+
12+
{% directory path: _includes/release-notes/v28.2.4 %}
13+
14+
{% include {{file.url}} %}
15+
16+
{% enddirectory %}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
public ActionResult Default()
2+
{
3+
return View();
4+
}
5+
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
public ActionResult Default()
2+
{
3+
return View();
4+
}
5+
Lines changed: 27 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<div class=" control-section">
22
<div class="sample-container">
33
<!-- Filemanager element declaration -->
4-
<ejs-filemanager id="file" created="onCreated">
4+
<ejs-filemanager id="file" created="onCreated" success="onSuccess">
55
<e-filemanager-ajaxsettings url="/Home/FileOperations"
66
downloadUrl="/Home/Download"
77
uploadUrl="/Home/Upload"
@@ -12,28 +12,30 @@
1212
</div>
1313
</div>
1414
<script>
15-
function onCreated(args) {
16-
var fileObject = document.getElementById("file").ej2_instances[0];
17-
document.getElementById('filemanager_tb_upload').onclick = function (args) {
18-
args.stopPropagation();
19-
};
20-
var items = [{ text: 'Folder' }, { text: 'Files' }];
21-
var drpDownBtn = new ej.splitbuttons.DropDownButton(
22-
{
23-
items: items,
24-
select: (args) => {
25-
if (args.item.text === 'Folder') {
26-
fileObject.uploadSettings.directoryUpload = true;
27-
} else {
28-
fileObject.uploadSettings.directoryUpload = false;
29-
}
30-
setTimeout(function () {
31-
let uploadBtn = document.querySelector('.e-file-select-wrap button');
32-
uploadBtn.click();
33-
}, 100);
34-
}
35-
},
36-
'#filemanager_tb_upload'
37-
);
38-
}
15+
function onSuccess(args) {
16+
document.getElementById('file_tb_upload').onclick = function (args) {
17+
args.stopPropagation();
18+
};
19+
}
20+
function onCreated(args) {
21+
var fileObject = document.getElementById("file").ej2_instances[0];
22+
var items = [{ text: 'Folder' }, { text: 'Files' }];
23+
var drpDownBtn = new ej.splitbuttons.DropDownButton(
24+
{
25+
items: items,
26+
select: (args) => {
27+
if (args.item.text === 'Folder') {
28+
fileObject.uploadSettings.directoryUpload = true;
29+
} else {
30+
fileObject.uploadSettings.directoryUpload = false;
31+
}
32+
setTimeout(function () {
33+
let uploadBtn = document.querySelector('.e-file-select-wrap button');
34+
uploadBtn.click();
35+
}, 100);
36+
}
37+
},
38+
'#file_tb_upload'
39+
);
40+
}
3941
</script>

ej2-asp-core-mvc/code-snippet/file-manager/file-dialog/tagHelper

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,9 @@
6161
}
6262

6363
#openBtn {
64-
position: absolute;
65-
top: 67px;
66-
margin-left: 13px;
64+
position: absolute;
65+
top: 90px;
66+
margin-left: 17px;
6767
}
6868

6969
#target {

ej2-asp-core-mvc/code-snippet/file-manager/flat-data/razor

Lines changed: 9 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -7,42 +7,15 @@
77
string[] folder = new string[] { "Open", "|", "Cut", "Copy", "Paste", "|", "Delete", "Rename", "|", "Details" };
88
}
99

10-
@section ControlsSection {
11-
<div class=" control-section">
12-
<div class="sample-container">
13-
<ejs-filemanager id="flatdata" fileSystemData="ViewBag.ResultData">
14-
<e-filemanager-toolbarsettings items="items">
15-
</e-filemanager-toolbarsettings>
16-
<e-filemanager-contextmenusettings file="file" folder="folder" layout="layout">
17-
</e-filemanager-contextmenusettings>
18-
</ejs-filemanager>
19-
</div>
20-
</div>
21-
22-
}
23-
24-
@section ActionDescription {
25-
<div id="action-description">
26-
<p>
27-
This sample demonstrates the flat data rendering of the File Manager component. The File Manager uses a flat data object as list of objects for rendering, eliminating the need to define <a href="https://help.syncfusion.com/cr/aspnetcore-js2/Syncfusion.EJ2.FileManager.FileManager.html#Syncfusion_EJ2_FileManager_FileManager_AjaxSettings" target="_blank" aria-label="Navigate to the AjaxSettings property reference for ASP.NET Core File Manager control">AjaxSettings</a> url.
28-
</p>
29-
</div>
30-
}
31-
32-
@section Description {
33-
<div id="description">
34-
<p>The File Manager component is used to manage the files and folders in a file system . It supports all the basic file operations such as create, rename, delete, cut, copy, paste, upload, download, and more.</p>
3510

36-
<p>To load a folder data as list of objects, use the File Manager component <code><a href="https://help.syncfusion.com/cr/aspnetcore-js2/Syncfusion.EJ2.FileManager.FileManager.html#Syncfusion_EJ2_FileManager_FileManager_FileSystemData" target="_blank" aria-label="Navigate to the fileSystemData property reference for ASP.NET Core File Manager control">fileSystemData</a></code> property.</p>
11+
<div class=" control-section">
12+
<div class="sample-container">
13+
<ejs-filemanager id="flatdata" fileSystemData="ViewBag.ResultData">
14+
<e-filemanager-toolbarsettings items="items">
15+
</e-filemanager-toolbarsettings>
16+
<e-filemanager-contextmenusettings file="file" folder="folder" layout="layout">
17+
</e-filemanager-contextmenusettings>
18+
</ejs-filemanager>
3719
</div>
38-
}
20+
</div>
3921

40-
@section Meta {
41-
<meta name="description" content="This example demonstrates how to render the File Manager with flat data in ASP.NET MVC File Manager control." />
42-
}
43-
@section Title {
44-
<title>ASP.NET Core File Manager FlatData Example - Syncfusion Demos </title>
45-
}
46-
@section Header {
47-
<h1 class='sb-sample-text'>Example of FlatData in ASP.NET Core File Manager Control</h1>
48-
}

ej2-asp-core-mvc/code-snippet/file-manager/getting-started/HomeController_core.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@ public HomeController(IWebHostEnvironment hostingEnvironment)
2828
this.operation = new PhysicalFileProvider();
2929
// Assign the mapped path as root folder
3030
this.operation.RootFolder(this.basePath + "\\" + this.root);
31+
// Assign the mapped path as root folder(.NET6 project)
32+
// this.operation.RootFolder(this.basePath + this.root);
3133
}
3234

3335
public object FileOperations([FromBody] FileManagerDirectoryContent args)
Lines changed: 30 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,45 @@
1-
@{
2-
string[] items = new string[] { "NewFolder", "Upload", "Delete", "Download", "Rename", "SortBy", "Refresh", "Selection", "View", "Details", "Custom" };
3-
}
1+
42
<div class="control-section">
53
<div class="sample-container">
64
<!-- Filemanager element declaration -->
7-
@Html.EJS().FileManager("file").AjaxSettings(new Syncfusion.EJ2.FileManager.FileManagerAjaxSettings()
5+
@Html.EJS().FileManager("filemanager").AjaxSettings(new Syncfusion.EJ2.FileManager.FileManagerAjaxSettings()
86
{
97
Url = "/Home/FileOperations",
108
GetImageUrl = "/Home/GetImage",
119
UploadUrl = "/Home/Upload",
1210
DownloadUrl = "/Home/Download"
13-
}).ToolbarSettings(new Syncfusion.EJ2.FileManager.FileManagerToolbarSettings()
14-
{
15-
Items = items
16-
}).ToolbarClick("toolbarClick").ToolbarCreate("onCreate").Render()
11+
}).ToolbarItems(new List<FileManagerToolbarItem> {
12+
new FileManagerToolbarItem { Name= "NewFolder" },
13+
new FileManagerToolbarItem { Name= "Upload" },
14+
new FileManagerToolbarItem { Name= "SortBy" },
15+
new FileManagerToolbarItem { Name= "Refresh" },
16+
new FileManagerToolbarItem { Name= "Cut" },
17+
new FileManagerToolbarItem { Name= "Copy" },
18+
new FileManagerToolbarItem { Name= "Paste" },
19+
new FileManagerToolbarItem { Name= "Delete" },
20+
new FileManagerToolbarItem { Name= "Download" },
21+
new FileManagerToolbarItem { Name= "Rename" },
22+
new FileManagerToolbarItem { Template= "#checkboxTemplate", Name= "Select" },
23+
new FileManagerToolbarItem { Name= "Selection" },
24+
new FileManagerToolbarItem { Name= "View" },
25+
new FileManagerToolbarItem { Name= "Details" }
26+
}).Render()
1727
<!-- end of filemanager element -->
28+
@Html.EJS().CheckBox("checkboxTemplate").Change("onChange").Checked(false).Label("Select All").Render()
1829
</div>
1930
</div>
31+
2032
<script>
21-
// event for custom toolbar item
22-
function toolbarClick(args) {
23-
if (args.item.text === 'Custom') {
24-
alert('You have clicked custom toolbar item')
33+
function onChange(args) {
34+
var filemanagerInstance = document.getElementById("filemanager").ej2_instances[0];
35+
var checkboxInstance = document.getElementById("checkBoxTemplate").ej2_instances[0];
36+
if (args.checked) {
37+
filemanagerInstance.selectAll();
38+
checkboxInstance.label = 'Unselect All';
2539
}
26-
}
27-
function onCreate(args) {
28-
for (var i = 0; i < args.items.length; i++) {
29-
if (args.items[i].id === this.element.id + '_tb_custom') {
30-
args.items[i].prefixIcon = 'e-icons e-fe-tick';
31-
}
40+
else {
41+
filemanagerInstance.clearSelection();
42+
checkboxInstance.label = 'Select All';
3243
}
3344
}
34-
</script>
35-
<style>
36-
.e-fe-tick::before {
37-
content: '\e614';
38-
}
39-
</style>
45+
</script>
Lines changed: 29 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,47 @@
11
@{
2-
string[] items = new string[] { "NewFolder", "Upload", "Delete", "Download", "Rename", "SortBy", "Refresh", "Selection", "View", "Details" , "Custom"};
2+
var checkBoxTemplate = "#checkBox-Template";
33
}
44
<div class=" control-section">
55
<div class="sample-container">
66
<!-- Filemanager element declaration -->
7-
<ejs-filemanager id="file" toolbarClick="toolbarClick" toolbarCreate="onCreate">
7+
<ejs-filemanager id="filemanager">
88
<e-filemanager-ajaxsettings url="/Home/FileOperations"
99
downloadUrl="/Home/Download"
1010
uploadUrl="/Home/Upload"
1111
getImageUrl="/Home/GetImage">
1212
</e-filemanager-ajaxsettings>
13-
<e-filemanager-toolbarsettings items="items">
14-
</e-filemanager-toolbarsettings>
13+
<e-filemanager-toolbaritems>
14+
<e-filemanager-toolbaritem Name="NewFolder" Text="Create folder" PrefixIcon="e-plus" TooltipText="Create folder"></e-filemanager-toolbaritem>
15+
<e-filemanager-toolbaritem Name="SortBy"></e-filemanager-toolbaritem>
16+
<e-filemanager-toolbaritem Name="Refresh"></e-filemanager-toolbaritem>
17+
<e-filemanager-toolbaritem Name="Cut"></e-filemanager-toolbaritem>
18+
<e-filemanager-toolbaritem Name="Copy"></e-filemanager-toolbaritem>
19+
<e-filemanager-toolbaritem Name="Paste"></e-filemanager-toolbaritem>
20+
<e-filemanager-toolbaritem Name="Delete"></e-filemanager-toolbaritem>
21+
<e-filemanager-toolbaritem Name="Download"></e-filemanager-toolbaritem>
22+
<e-filemanager-toolbaritem Name="Rename"></e-filemanager-toolbaritem>
23+
<e-filemanager-toolbaritem Template="@checkBoxTemplate" Name="Select"></e-filemanager-toolbaritem>
24+
<e-filemanager-toolbaritem Name="Selection"></e-filemanager-toolbaritem>
25+
<e-filemanager-toolbaritem Name="View"></e-filemanager-toolbaritem>
26+
<e-filemanager-toolbaritem Name="Details"></e-filemanager-toolbaritem>
27+
</e-filemanager-toolbaritems>
1528
</ejs-filemanager>
1629
<!-- end of filemanager element -->
30+
<ejs-checkbox id="checkBox-Template" label="Select All" checked="false" change="onChange"></ejs-checkbox>
1731
</div>
1832
</div>
33+
1934
<script>
20-
// event for custom toolbar item
21-
function toolbarClick(args) {
22-
if (args.item.text === 'Custom') {
23-
alert('You have clicked custom toolbar item')
35+
function onChange(args) {
36+
var filemanagerInstance = document.getElementById("filemanager").ej2_instances[0];
37+
var checkboxInstance = document.getElementById("checkBox-Template").ej2_instances[0];
38+
if (args.checked) {
39+
filemanagerInstance.selectAll();
40+
checkboxInstance.label = 'Unselect All';
2441
}
25-
}
26-
function onCreate(args) {
27-
for (var i = 0; i < args.items.length; i++) {
28-
if (args.items[i].id === this.element.id + '_tb_custom') {
29-
args.items[i].prefixIcon = 'e-icons e-fe-tick';
30-
}
42+
else {
43+
filemanagerInstance.clearSelection();
44+
checkboxInstance.label = 'Select All';
3145
}
3246
}
33-
34-
</script>
35-
<style>
36-
.e-fe-tick::before {
37-
content: '\e614';
38-
}
39-
</style>
47+
</script>
Lines changed: 24 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,39 @@
1-
1+
@{
2+
string[] items = new string[] { "NewFolder", "Upload", "Delete", "Download", "Rename", "SortBy", "Refresh", "Selection", "View", "Details", "Custom" };
3+
}
24
<div class="control-section">
35
<div class="sample-container">
46
<!-- Filemanager element declaration -->
5-
@Html.EJS().FileManager("filemanager").AjaxSettings(new Syncfusion.EJ2.FileManager.FileManagerAjaxSettings()
7+
@Html.EJS().FileManager("file").AjaxSettings(new Syncfusion.EJ2.FileManager.FileManagerAjaxSettings()
68
{
79
Url = "/Home/FileOperations",
810
GetImageUrl = "/Home/GetImage",
911
UploadUrl = "/Home/Upload",
1012
DownloadUrl = "/Home/Download"
11-
}).ToolbarItems(new List<FileManagerToolbarItem> {
12-
new FileManagerToolbarItem { Name= "NewFolder" },
13-
new FileManagerToolbarItem { Name= "Upload" },
14-
new FileManagerToolbarItem { Name= "SortBy" },
15-
new FileManagerToolbarItem { Name= "Refresh" },
16-
new FileManagerToolbarItem { Name= "Cut" },
17-
new FileManagerToolbarItem { Name= "Copy" },
18-
new FileManagerToolbarItem { Name= "Paste" },
19-
new FileManagerToolbarItem { Name= "Delete" },
20-
new FileManagerToolbarItem { Name= "Download" },
21-
new FileManagerToolbarItem { Name= "Rename" },
22-
new FileManagerToolbarItem { Template= "#checkboxTemplate", Name= "Select" },
23-
new FileManagerToolbarItem { Name= "Selection" },
24-
new FileManagerToolbarItem { Name= "View" },
25-
new FileManagerToolbarItem { Name= "Details" }
26-
}).Render()
13+
}).ToolbarSettings(new Syncfusion.EJ2.FileManager.FileManagerToolbarSettings()
14+
{
15+
Items = items
16+
}).ToolbarClick("toolbarClick").ToolbarCreate("onCreate").Render()
2717
<!-- end of filemanager element -->
28-
@Html.EJS().CheckBox("checkboxTemplate").Change("onChange").Checked(false).Label("Select All").Render()
2918
</div>
3019
</div>
31-
3220
<script>
33-
function onChange(args) {
34-
var filemanagerInstance = document.getElementById("filemanager").ej2_instances[0];
35-
var checkboxInstance = document.getElementById("checkBoxTemplate").ej2_instances[0];
36-
if (args.checked) {
37-
filemanagerInstance.selectAll();
38-
checkboxInstance.label = 'Unselect All';
21+
// event for custom toolbar item
22+
function toolbarClick(args) {
23+
if (args.item.text === 'Custom') {
24+
alert('You have clicked custom toolbar item')
3925
}
40-
else {
41-
filemanagerInstance.clearSelection();
42-
checkboxInstance.label = 'Select All';
26+
}
27+
function onCreate(args) {
28+
for (var i = 0; i < args.items.length; i++) {
29+
if (args.items[i].id === this.element.id + '_tb_custom') {
30+
args.items[i].prefixIcon = 'e-icons e-fe-tick';
31+
}
4332
}
4433
}
45-
</script>
34+
</script>
35+
<style>
36+
.e-fe-tick::before {
37+
content: '\e614';
38+
}
39+
</style>

0 commit comments

Comments
 (0)