32 lines
No EOL
1.5 KiB
Text
32 lines
No EOL
1.5 KiB
Text
@using WebsitePanel.WebDav.Core.Client
|
|
@using WebsitePanel.WebDavPortal.Config
|
|
@using WebsitePanel.WebDavPortal.FileOperations
|
|
@using Ninject;
|
|
@model IHierarchyItem
|
|
|
|
@{
|
|
string actualPath = Model.ItemType == ItemType.Folder ? "~/Content/Images/folder_100x100.png" : WebDavAppConfigManager.Instance.FileIcons[Path.GetExtension(Model.DisplayName.Trim('/'))];
|
|
string name = Model.ItemType == ItemType.Folder ? Model.DisplayName.Trim('/') : Path.GetFileNameWithoutExtension(Model.DisplayName);
|
|
var opener = new FileOpenerManager()[Path.GetExtension(Model.DisplayName)];
|
|
bool isTargetBlank;
|
|
string href = "/";
|
|
switch (opener)
|
|
{
|
|
case FileOpenerType.OfficeOnline:
|
|
isTargetBlank = true;
|
|
href = string.Concat(Url.Action("ShowOfficeDocument", "FileSystem"), Model.DisplayName);
|
|
break;
|
|
default:
|
|
isTargetBlank = false;
|
|
IKernel _kernel = new StandardKernel(new WebsitePanel.WebDavPortal.DependencyInjection.WebDavExplorerAppModule());
|
|
var webDavManager = _kernel.Get<WebsitePanel.WebDavPortal.Models.IWebDavManager>();
|
|
href = Model.Href.AbsolutePath;
|
|
break;
|
|
}
|
|
}
|
|
<div class="col-sm-2 element-container">
|
|
<a href="@href" @Html.Raw(isTargetBlank ? "target=\"_blank\"" : string.Empty) title="@Model.DisplayName.Trim('/')">
|
|
<img class="icon-size" src="@Url.Content(actualPath)" />
|
|
<p style="word-wrap: break-word;">@name</p>
|
|
</a>
|
|
</div> |