webdav portal fixes
This commit is contained in:
parent
682e4ac18a
commit
c78570eb11
15 changed files with 177 additions and 14 deletions
|
@ -297,7 +297,7 @@ namespace WebsitePanel.Providers.EnterpriseStorage
|
||||||
searchPaths = searchPaths.Where(x => !string.IsNullOrEmpty(x)).ToArray();
|
searchPaths = searchPaths.Where(x => !string.IsNullOrEmpty(x)).ToArray();
|
||||||
}
|
}
|
||||||
|
|
||||||
using (new WindowsIdentity(userPrincipalName).Impersonate())
|
//using (new WindowsIdentity(userPrincipalName).Impersonate())
|
||||||
{
|
{
|
||||||
using (var conn = new OleDbConnection("Provider=Search.CollatorDSO;Extended Properties='Application=Windows';"))
|
using (var conn = new OleDbConnection("Provider=Search.CollatorDSO;Extended Properties='Application=Windows';"))
|
||||||
{
|
{
|
||||||
|
@ -342,7 +342,6 @@ namespace WebsitePanel.Providers.EnterpriseStorage
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
result.Add(file);
|
result.Add(file);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,38 @@
|
||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using WebsitePanel.WebDav.Core.Config.WebConfigSections;
|
||||||
|
using WebsitePanel.WebDavPortal.WebConfigSections;
|
||||||
|
|
||||||
|
namespace WebsitePanel.WebDav.Core.Config.Entities
|
||||||
|
{
|
||||||
|
public class OpenerCollection : AbstractConfigCollection, IReadOnlyCollection<OpenerElement>
|
||||||
|
{
|
||||||
|
private readonly IList<OpenerElement> _targetBlankMimeTypeExtensions;
|
||||||
|
|
||||||
|
public OpenerCollection()
|
||||||
|
{
|
||||||
|
_targetBlankMimeTypeExtensions = ConfigSection.TypeOpener.Cast<OpenerElement>().ToList();
|
||||||
|
}
|
||||||
|
|
||||||
|
public IEnumerator<OpenerElement> GetEnumerator()
|
||||||
|
{
|
||||||
|
return _targetBlankMimeTypeExtensions.GetEnumerator();
|
||||||
|
}
|
||||||
|
|
||||||
|
IEnumerator IEnumerable.GetEnumerator()
|
||||||
|
{
|
||||||
|
return GetEnumerator();
|
||||||
|
}
|
||||||
|
|
||||||
|
public int Count
|
||||||
|
{
|
||||||
|
get { return _targetBlankMimeTypeExtensions.Count; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool Contains(string extension)
|
||||||
|
{
|
||||||
|
return _targetBlankMimeTypeExtensions.Any(x => x.Extension == extension);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -14,5 +14,6 @@ namespace WebsitePanel.WebDav.Core.Config
|
||||||
OfficeOnlineCollection OfficeOnline { get; }
|
OfficeOnlineCollection OfficeOnline { get; }
|
||||||
OwaSupportedBrowsersCollection OwaSupportedBrowsers { get; }
|
OwaSupportedBrowsersCollection OwaSupportedBrowsers { get; }
|
||||||
FilesToIgnoreCollection FilesToIgnore { get; }
|
FilesToIgnoreCollection FilesToIgnore { get; }
|
||||||
|
OpenerCollection FileOpener { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -0,0 +1,33 @@
|
||||||
|
using System;
|
||||||
|
using System.Configuration;
|
||||||
|
|
||||||
|
namespace WebsitePanel.WebDav.Core.Config.WebConfigSections
|
||||||
|
{
|
||||||
|
public class OpenerElement : ConfigurationElement
|
||||||
|
{
|
||||||
|
private const string ExtensionKey = "extension";
|
||||||
|
private const string MemeTypeKey = "mimeType";
|
||||||
|
private const string TargetBlankKey = "isTargetBlank";
|
||||||
|
|
||||||
|
[ConfigurationProperty(ExtensionKey, IsKey = true, IsRequired = true)]
|
||||||
|
public string Extension
|
||||||
|
{
|
||||||
|
get { return this[ExtensionKey].ToString(); }
|
||||||
|
set { this[ExtensionKey] = value; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[ConfigurationProperty(MemeTypeKey, IsKey = true, IsRequired = true)]
|
||||||
|
public string MimeType
|
||||||
|
{
|
||||||
|
get { return this[MemeTypeKey].ToString(); }
|
||||||
|
set { this[MemeTypeKey] = value; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[ConfigurationProperty(TargetBlankKey, IsKey = true, IsRequired = true)]
|
||||||
|
public bool IstargetBlank
|
||||||
|
{
|
||||||
|
get { return Convert.ToBoolean(this[TargetBlankKey]); }
|
||||||
|
set { this[TargetBlankKey] = value; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,19 @@
|
||||||
|
using System;
|
||||||
|
using System.Configuration;
|
||||||
|
|
||||||
|
namespace WebsitePanel.WebDav.Core.Config.WebConfigSections
|
||||||
|
{
|
||||||
|
[ConfigurationCollection(typeof(OpenerElement))]
|
||||||
|
public class OpenerElementCollection : ConfigurationElementCollection
|
||||||
|
{
|
||||||
|
protected override ConfigurationElement CreateNewElement()
|
||||||
|
{
|
||||||
|
return new OpenerElement();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override object GetElementKey(ConfigurationElement element)
|
||||||
|
{
|
||||||
|
return ((OpenerElement)element).Extension;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -19,6 +19,7 @@ namespace WebsitePanel.WebDavPortal.WebConfigSections
|
||||||
private const string OwaSupportedBrowsersKey = "owaSupportedBrowsers";
|
private const string OwaSupportedBrowsersKey = "owaSupportedBrowsers";
|
||||||
private const string OfficeOnlineKey = "officeOnline";
|
private const string OfficeOnlineKey = "officeOnline";
|
||||||
private const string FilesToIgnoreKey = "filesToIgnore";
|
private const string FilesToIgnoreKey = "filesToIgnore";
|
||||||
|
private const string TypeOpenerKey = "typeOpener";
|
||||||
|
|
||||||
public const string SectionName = "webDavExplorerConfigurationSettings";
|
public const string SectionName = "webDavExplorerConfigurationSettings";
|
||||||
|
|
||||||
|
@ -99,6 +100,13 @@ namespace WebsitePanel.WebDavPortal.WebConfigSections
|
||||||
set { this[OfficeOnlineKey] = value; }
|
set { this[OfficeOnlineKey] = value; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[ConfigurationProperty(TypeOpenerKey, IsDefaultCollection = false)]
|
||||||
|
public OpenerElementCollection TypeOpener
|
||||||
|
{
|
||||||
|
get { return (OpenerElementCollection)this[TypeOpenerKey]; }
|
||||||
|
set { this[TypeOpenerKey] = value; }
|
||||||
|
}
|
||||||
|
|
||||||
[ConfigurationProperty(FilesToIgnoreKey, IsDefaultCollection = false)]
|
[ConfigurationProperty(FilesToIgnoreKey, IsDefaultCollection = false)]
|
||||||
public FilesToIgnoreElementCollection FilesToIgnore
|
public FilesToIgnoreElementCollection FilesToIgnore
|
||||||
{
|
{
|
||||||
|
|
|
@ -20,6 +20,7 @@ namespace WebsitePanel.WebDav.Core.Config
|
||||||
OfficeOnline = new OfficeOnlineCollection();
|
OfficeOnline = new OfficeOnlineCollection();
|
||||||
OwaSupportedBrowsers = new OwaSupportedBrowsersCollection();
|
OwaSupportedBrowsers = new OwaSupportedBrowsersCollection();
|
||||||
FilesToIgnore = new FilesToIgnoreCollection();
|
FilesToIgnore = new FilesToIgnoreCollection();
|
||||||
|
FileOpener = new OpenerCollection();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static WebDavAppConfigManager Instance
|
public static WebDavAppConfigManager Instance
|
||||||
|
@ -60,5 +61,6 @@ namespace WebsitePanel.WebDav.Core.Config
|
||||||
public OfficeOnlineCollection OfficeOnline { get; private set; }
|
public OfficeOnlineCollection OfficeOnline { get; private set; }
|
||||||
public OwaSupportedBrowsersCollection OwaSupportedBrowsers { get; private set; }
|
public OwaSupportedBrowsersCollection OwaSupportedBrowsers { get; private set; }
|
||||||
public FilesToIgnoreCollection FilesToIgnore { get; private set; }
|
public FilesToIgnoreCollection FilesToIgnore { get; private set; }
|
||||||
|
public OpenerCollection FileOpener { get; private set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -83,7 +83,6 @@ namespace WebsitePanel.WebDav.Core
|
||||||
{
|
{
|
||||||
{
|
{
|
||||||
var property = _properties.FirstOrDefault(x => x.Name.Name == "getcontenttype");
|
var property = _properties.FirstOrDefault(x => x.Name.Name == "getcontenttype");
|
||||||
|
|
||||||
return property == null ? MediaTypeNames.Application.Octet : property.StringValue;
|
return property == null ? MediaTypeNames.Application.Octet : property.StringValue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -107,6 +107,7 @@
|
||||||
<Compile Include="Config\Entities\OfficeOnlineCollection.cs" />
|
<Compile Include="Config\Entities\OfficeOnlineCollection.cs" />
|
||||||
<Compile Include="Config\Entities\OwaSupportedBrowsersCollection.cs" />
|
<Compile Include="Config\Entities\OwaSupportedBrowsersCollection.cs" />
|
||||||
<Compile Include="Config\Entities\SessionKeysCollection.cs" />
|
<Compile Include="Config\Entities\SessionKeysCollection.cs" />
|
||||||
|
<Compile Include="Config\Entities\OpenerCollection.cs" />
|
||||||
<Compile Include="Config\Entities\WebsitePanelConstantUserParameters.cs" />
|
<Compile Include="Config\Entities\WebsitePanelConstantUserParameters.cs" />
|
||||||
<Compile Include="Config\IWebDavAppConfig.cs" />
|
<Compile Include="Config\IWebDavAppConfig.cs" />
|
||||||
<Compile Include="Config\WebConfigSections\ApplicationNameElement.cs" />
|
<Compile Include="Config\WebConfigSections\ApplicationNameElement.cs" />
|
||||||
|
@ -119,10 +120,12 @@
|
||||||
<Compile Include="Config\WebConfigSections\FilesToIgnoreElementCollection.cs" />
|
<Compile Include="Config\WebConfigSections\FilesToIgnoreElementCollection.cs" />
|
||||||
<Compile Include="Config\WebConfigSections\OfficeOnlineElement.cs" />
|
<Compile Include="Config\WebConfigSections\OfficeOnlineElement.cs" />
|
||||||
<Compile Include="Config\WebConfigSections\OfficeOnlineElementCollection.cs" />
|
<Compile Include="Config\WebConfigSections\OfficeOnlineElementCollection.cs" />
|
||||||
|
<Compile Include="Config\WebConfigSections\OpenerElementCollection.cs" />
|
||||||
<Compile Include="Config\WebConfigSections\OwaSupportedBrowsersElement.cs" />
|
<Compile Include="Config\WebConfigSections\OwaSupportedBrowsersElement.cs" />
|
||||||
<Compile Include="Config\WebConfigSections\OwaSupportedBrowsersElementCollection.cs" />
|
<Compile Include="Config\WebConfigSections\OwaSupportedBrowsersElementCollection.cs" />
|
||||||
<Compile Include="Config\WebConfigSections\SessionKeysElement.cs" />
|
<Compile Include="Config\WebConfigSections\SessionKeysElement.cs" />
|
||||||
<Compile Include="Config\WebConfigSections\SessionKeysElementCollection.cs" />
|
<Compile Include="Config\WebConfigSections\SessionKeysElementCollection.cs" />
|
||||||
|
<Compile Include="Config\WebConfigSections\OpenerElement.cs" />
|
||||||
<Compile Include="Config\WebConfigSections\UserDomainElement.cs" />
|
<Compile Include="Config\WebConfigSections\UserDomainElement.cs" />
|
||||||
<Compile Include="Config\WebConfigSections\WebDavExplorerConfigurationSettingsSection.cs" />
|
<Compile Include="Config\WebConfigSections\WebDavExplorerConfigurationSettingsSection.cs" />
|
||||||
<Compile Include="Config\WebConfigSections\WebdavRootElement.cs" />
|
<Compile Include="Config\WebConfigSections\WebdavRootElement.cs" />
|
||||||
|
|
|
@ -84,7 +84,9 @@ namespace WebsitePanel.WebDavPortal.Controllers
|
||||||
{
|
{
|
||||||
var resource = _webdavManager.GetResource(pathPart);
|
var resource = _webdavManager.GetResource(pathPart);
|
||||||
|
|
||||||
return new FileStreamResult(resource.GetReadStream(), resource.ContentType);
|
var mimeType = _openerManager.GetMimeType(Path.GetExtension(pathPart));
|
||||||
|
|
||||||
|
return new FileStreamResult(resource.GetReadStream(), mimeType);
|
||||||
}
|
}
|
||||||
|
|
||||||
try
|
try
|
||||||
|
@ -347,6 +349,11 @@ namespace WebsitePanel.WebDavPortal.Controllers
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (Request.Browser.IsMobileDevice)
|
||||||
|
{
|
||||||
|
item.IsTargetBlank = false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Net;
|
using System.Net;
|
||||||
|
using System.Net.Mime;
|
||||||
using System.Web;
|
using System.Web;
|
||||||
using System.Web.Mvc;
|
using System.Web.Mvc;
|
||||||
using WebsitePanel.WebDav.Core;
|
using WebsitePanel.WebDav.Core;
|
||||||
|
@ -14,12 +15,21 @@ namespace WebsitePanel.WebDavPortal.FileOperations
|
||||||
{
|
{
|
||||||
public class FileOpenerManager
|
public class FileOpenerManager
|
||||||
{
|
{
|
||||||
|
private readonly IDictionary<string, FileOpenerType> _officeOperationTypes = new Dictionary<string, FileOpenerType>();
|
||||||
private readonly IDictionary<string, FileOpenerType> _operationTypes = new Dictionary<string, FileOpenerType>();
|
private readonly IDictionary<string, FileOpenerType> _operationTypes = new Dictionary<string, FileOpenerType>();
|
||||||
|
|
||||||
public FileOpenerManager()
|
public FileOpenerManager()
|
||||||
{
|
{
|
||||||
if (WebDavAppConfigManager.Instance.OfficeOnline.IsEnabled)
|
if (WebDavAppConfigManager.Instance.OfficeOnline.IsEnabled)
|
||||||
_operationTypes.AddRange(WebDavAppConfigManager.Instance.OfficeOnline.ToDictionary(x => x.Extension, y => FileOpenerType.OfficeOnline));
|
{
|
||||||
|
_officeOperationTypes.AddRange(
|
||||||
|
WebDavAppConfigManager.Instance.OfficeOnline.ToDictionary(x => x.Extension,
|
||||||
|
y => FileOpenerType.OfficeOnline));
|
||||||
|
}
|
||||||
|
|
||||||
|
_operationTypes.AddRange(
|
||||||
|
WebDavAppConfigManager.Instance.FileOpener.ToDictionary(x => x.Extension,
|
||||||
|
y => FileOpenerType.Open));
|
||||||
}
|
}
|
||||||
|
|
||||||
public string GetUrl(IHierarchyItem item, UrlHelper urlHelper)
|
public string GetUrl(IHierarchyItem item, UrlHelper urlHelper)
|
||||||
|
@ -48,14 +58,35 @@ namespace WebsitePanel.WebDavPortal.FileOperations
|
||||||
public bool GetIsTargetBlank(IHierarchyItem item)
|
public bool GetIsTargetBlank(IHierarchyItem item)
|
||||||
{
|
{
|
||||||
var opener = this[Path.GetExtension(item.DisplayName)];
|
var opener = this[Path.GetExtension(item.DisplayName)];
|
||||||
|
var result = false;
|
||||||
|
|
||||||
switch (opener)
|
switch (opener)
|
||||||
{
|
{
|
||||||
case FileOpenerType.OfficeOnline:
|
case FileOpenerType.OfficeOnline:
|
||||||
return true;
|
{
|
||||||
default:
|
result = true;
|
||||||
return false;
|
break;
|
||||||
}
|
}
|
||||||
|
case FileOpenerType.Open:
|
||||||
|
{
|
||||||
|
result = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
public string GetMimeType(string extension)
|
||||||
|
{
|
||||||
|
var opener = WebDavAppConfigManager.Instance.FileOpener.FirstOrDefault(x => x.Extension.ToLowerInvariant() == extension.ToLowerInvariant());
|
||||||
|
|
||||||
|
if (opener == null)
|
||||||
|
{
|
||||||
|
return MediaTypeNames.Application.Octet;
|
||||||
|
}
|
||||||
|
|
||||||
|
return opener.MimeType;
|
||||||
}
|
}
|
||||||
|
|
||||||
public FileOpenerType this[string fileExtension]
|
public FileOpenerType this[string fileExtension]
|
||||||
|
@ -63,8 +94,16 @@ namespace WebsitePanel.WebDavPortal.FileOperations
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
FileOpenerType result;
|
FileOpenerType result;
|
||||||
if (_operationTypes.TryGetValue(fileExtension, out result) && CheckBrowserSupport())
|
if (_officeOperationTypes.TryGetValue(fileExtension, out result) && CheckBrowserSupport())
|
||||||
|
{
|
||||||
return result;
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (_operationTypes.TryGetValue(fileExtension, out result))
|
||||||
|
{
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
return FileOpenerType.Download;
|
return FileOpenerType.Download;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,6 +2,6 @@
|
||||||
{
|
{
|
||||||
public enum FileOpenerType
|
public enum FileOpenerType
|
||||||
{
|
{
|
||||||
Download, OfficeOnline
|
Download, OfficeOnline, Open
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -43,8 +43,7 @@ namespace WebsitePanel.WebDavPortal.Mapping.Profiles.Webdav
|
||||||
.ForMember(ti => ti.IconHref, x => x.MapFrom(hi => hi.ItemType == ItemType.Folder ? WebDavAppConfigManager.Instance.FileIcons.FolderPath.Trim('~') : WebDavAppConfigManager.Instance.FileIcons[Path.GetExtension(hi.DisplayName.Trim('/'))].Trim('~')))
|
.ForMember(ti => ti.IconHref, x => x.MapFrom(hi => hi.ItemType == ItemType.Folder ? WebDavAppConfigManager.Instance.FileIcons.FolderPath.Trim('~') : WebDavAppConfigManager.Instance.FileIcons[Path.GetExtension(hi.DisplayName.Trim('/'))].Trim('~')))
|
||||||
.ForMember(ti => ti.IsTargetBlank, x => x.MapFrom(hi => openerManager.GetIsTargetBlank(hi)))
|
.ForMember(ti => ti.IsTargetBlank, x => x.MapFrom(hi => openerManager.GetIsTargetBlank(hi)))
|
||||||
.ForMember(ti => ti.LastModified, x => x.MapFrom(hi => hi.LastModified))
|
.ForMember(ti => ti.LastModified, x => x.MapFrom(hi => hi.LastModified))
|
||||||
.ForMember(ti => ti.LastModifiedFormated,
|
.ForMember(ti => ti.LastModifiedFormated, x => x.MapFrom(hi => hi.LastModified == DateTime.MinValue ? "--" : (new WebDavResource(null, hi)).LastModified.ToString("dd/MM/yyyy hh:mm tt")))
|
||||||
x => x.MapFrom(hi => hi.LastModified == DateTime.MinValue ? "--" : (new WebDavResource(null, hi)).LastModified.ToString("dd/MM/yyyy hh:mm tt")))
|
|
||||||
|
|
||||||
.ForMember(ti => ti.Size, x => x.MapFrom(hi => hi.ContentLength))
|
.ForMember(ti => ti.Size, x => x.MapFrom(hi => hi.ContentLength))
|
||||||
.ForMember(ti => ti.IsFolder, x => x.MapFrom(hi => hi.ItemType == ItemType.Folder));
|
.ForMember(ti => ti.IsFolder, x => x.MapFrom(hi => hi.ItemType == ItemType.Folder));
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
@using WebsitePanel.WebDav.Core
|
@using System.Net.Mime
|
||||||
|
@using WebsitePanel.WebDav.Core
|
||||||
@using WebsitePanel.WebDav.Core.Client
|
@using WebsitePanel.WebDav.Core.Client
|
||||||
@using WebsitePanel.WebDav.Core.Config
|
@using WebsitePanel.WebDav.Core.Config
|
||||||
@using WebsitePanel.WebDavPortal.FileOperations
|
@using WebsitePanel.WebDavPortal.FileOperations
|
||||||
|
@ -11,7 +12,8 @@
|
||||||
@{
|
@{
|
||||||
string actualPath = Model.ItemType == ItemType.Folder ? "~/Content/Images/folder_100x100.png" : WebDavAppConfigManager.Instance.FileIcons[Path.GetExtension(Model.DisplayName.Trim('/'))];
|
string actualPath = Model.ItemType == ItemType.Folder ? "~/Content/Images/folder_100x100.png" : WebDavAppConfigManager.Instance.FileIcons[Path.GetExtension(Model.DisplayName.Trim('/'))];
|
||||||
string name = Model.DisplayName.Trim('/');
|
string name = Model.DisplayName.Trim('/');
|
||||||
var opener = new FileOpenerManager()[Path.GetExtension(Model.DisplayName)];
|
var _opener = new FileOpenerManager();
|
||||||
|
var opener = _opener[Path.GetExtension(Model.DisplayName)];
|
||||||
bool isTargetBlank;
|
bool isTargetBlank;
|
||||||
string href = "/";
|
string href = "/";
|
||||||
switch (opener)
|
switch (opener)
|
||||||
|
@ -31,6 +33,13 @@
|
||||||
|
|
||||||
bool showStatistic = Model.ItemType == ItemType.Folder && Model.IsRootItem && resource != null;
|
bool showStatistic = Model.ItemType == ItemType.Folder && Model.IsRootItem && resource != null;
|
||||||
|
|
||||||
|
var contentTypeProperty = Model.Properties.FirstOrDefault(x => x.Name.Name == "getcontenttype");
|
||||||
|
|
||||||
|
if (isTargetBlank == false && Model.ItemType != ItemType.Folder)
|
||||||
|
{
|
||||||
|
isTargetBlank = _opener.GetIsTargetBlank(Model) && !Request.Browser.IsMobileDevice;
|
||||||
|
}
|
||||||
|
|
||||||
int percent = 0;
|
int percent = 0;
|
||||||
|
|
||||||
if (showStatistic)
|
if (showStatistic)
|
||||||
|
|
|
@ -92,6 +92,13 @@
|
||||||
<add extension=".ppt" OwaView="p/PowerPointFrame.aspx?" OwaEditor="p/PowerPointFrame.aspx?" OwaMobileView="p/mPPT.aspx?wdMobileHost=3&"/>
|
<add extension=".ppt" OwaView="p/PowerPointFrame.aspx?" OwaEditor="p/PowerPointFrame.aspx?" OwaMobileView="p/mPPT.aspx?wdMobileHost=3&"/>
|
||||||
<add extension=".pptx" OwaView="p/PowerPointFrame.aspx?" OwaEditor="p/PowerPointFrame.aspx?PowerPointView=EditView&" OwaMobileView="p/mPPT.aspx?wdMobileHost=3&"/>
|
<add extension=".pptx" OwaView="p/PowerPointFrame.aspx?" OwaEditor="p/PowerPointFrame.aspx?PowerPointView=EditView&" OwaMobileView="p/mPPT.aspx?wdMobileHost=3&"/>
|
||||||
</officeOnline>
|
</officeOnline>
|
||||||
|
<typeOpener>
|
||||||
|
<add extension=".jpg" mimeType="image/jpeg" isTargetBlank="true" />
|
||||||
|
<add extension=".jpeg" mimeType="image/jpeg" isTargetBlank="true" />
|
||||||
|
<add extension=".gif" mimeType="image/gif" isTargetBlank="true" />
|
||||||
|
<add extension=".txt" mimeType="text/plain" isTargetBlank="true" />
|
||||||
|
<add extension=".pdf" mimeType="application/pdf" isTargetBlank="true" />
|
||||||
|
</typeOpener>
|
||||||
</webDavExplorerConfigurationSettings>
|
</webDavExplorerConfigurationSettings>
|
||||||
<!--
|
<!--
|
||||||
For a description of web.config changes see http://go.microsoft.com/fwlink/?LinkId=235367.
|
For a description of web.config changes see http://go.microsoft.com/fwlink/?LinkId=235367.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue