webdav portal owa support check added
This commit is contained in:
parent
5795ffb0bc
commit
010c258502
16 changed files with 246 additions and 20 deletions
|
@ -0,0 +1,57 @@
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using WebsitePanel.WebDav.Core.Config.WebConfigSections;
|
||||
|
||||
namespace WebsitePanel.WebDav.Core.Config.Entities
|
||||
{
|
||||
public class OwaSupportedBrowsersCollection : AbstractConfigCollection, IReadOnlyDictionary<string, int>
|
||||
{
|
||||
private readonly IDictionary<string, int> _browsers;
|
||||
|
||||
public OwaSupportedBrowsersCollection()
|
||||
{
|
||||
_browsers = ConfigSection.OwaSupportedBrowsers.Cast<OwaSupportedBrowsersElement>().ToDictionary(x => x.Browser, y => y.Version);
|
||||
}
|
||||
|
||||
public IEnumerator<KeyValuePair<string, int>> GetEnumerator()
|
||||
{
|
||||
return _browsers.GetEnumerator();
|
||||
}
|
||||
|
||||
IEnumerator IEnumerable.GetEnumerator()
|
||||
{
|
||||
return GetEnumerator();
|
||||
}
|
||||
|
||||
public int Count
|
||||
{
|
||||
get { return _browsers.Count; }
|
||||
}
|
||||
|
||||
public bool ContainsKey(string browser)
|
||||
{
|
||||
return _browsers.ContainsKey(browser);
|
||||
}
|
||||
|
||||
public bool TryGetValue(string browser, out int version)
|
||||
{
|
||||
return _browsers.TryGetValue(browser, out version);
|
||||
}
|
||||
|
||||
public int this[string browser]
|
||||
{
|
||||
get { return ContainsKey(browser) ? _browsers[browser] : 0; }
|
||||
}
|
||||
|
||||
public IEnumerable<string> Keys
|
||||
{
|
||||
get { return _browsers.Keys; }
|
||||
}
|
||||
|
||||
public IEnumerable<int> Values
|
||||
{
|
||||
get { return _browsers.Values; }
|
||||
}
|
||||
}
|
||||
}
|
|
@ -12,5 +12,6 @@ namespace WebsitePanel.WebDav.Core.Config
|
|||
FileIconsDictionary FileIcons { get; }
|
||||
HttpErrorsCollection HttpErrors { get; }
|
||||
OfficeOnlineCollection OfficeOnline { get; }
|
||||
OwaSupportedBrowsersCollection OwaSupportedBrowsers { get; }
|
||||
}
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
using System.Configuration;
|
||||
|
||||
namespace WebsitePanel.WebDav.Core.Config.WebConfigSections
|
||||
{
|
||||
public class OwaSupportedBrowsersElement : ConfigurationElement
|
||||
{
|
||||
private const string BrowserKey = "browser";
|
||||
private const string VersionKey = "version";
|
||||
|
||||
[ConfigurationProperty(BrowserKey, IsKey = true, IsRequired = true)]
|
||||
public string Browser
|
||||
{
|
||||
get { return (string)this[BrowserKey]; }
|
||||
set { this[BrowserKey] = value; }
|
||||
}
|
||||
|
||||
[ConfigurationProperty(VersionKey, IsKey = true, IsRequired = true)]
|
||||
public int Version
|
||||
{
|
||||
get { return (int)this[VersionKey]; }
|
||||
set { this[VersionKey] = value; }
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
using System.Configuration;
|
||||
|
||||
namespace WebsitePanel.WebDav.Core.Config.WebConfigSections
|
||||
{
|
||||
[ConfigurationCollection(typeof(OwaSupportedBrowsersElement))]
|
||||
public class OwaSupportedBrowsersElementCollection : ConfigurationElementCollection
|
||||
{
|
||||
protected override ConfigurationElement CreateNewElement()
|
||||
{
|
||||
return new OwaSupportedBrowsersElement();
|
||||
}
|
||||
|
||||
protected override object GetElementKey(ConfigurationElement element)
|
||||
{
|
||||
return ((OwaSupportedBrowsersElement)element).Browser;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -15,6 +15,7 @@ namespace WebsitePanel.WebDavPortal.WebConfigSections
|
|||
private const string ConnectionStringsKey = "appConnectionStrings";
|
||||
private const string SessionKeysKey = "sessionKeys";
|
||||
private const string FileIconsKey = "fileIcons";
|
||||
private const string OwaSupportedBrowsersKey = "owaSupportedBrowsers";
|
||||
private const string OfficeOnlineKey = "officeOnline";
|
||||
|
||||
public const string SectionName = "webDavExplorerConfigurationSettings";
|
||||
|
@ -75,6 +76,13 @@ namespace WebsitePanel.WebDavPortal.WebConfigSections
|
|||
set { this[FileIconsKey] = value; }
|
||||
}
|
||||
|
||||
[ConfigurationProperty(OwaSupportedBrowsersKey, IsDefaultCollection = false)]
|
||||
public OwaSupportedBrowsersElementCollection OwaSupportedBrowsers
|
||||
{
|
||||
get { return (OwaSupportedBrowsersElementCollection)this[OwaSupportedBrowsersKey]; }
|
||||
set { this[OwaSupportedBrowsersKey] = value; }
|
||||
}
|
||||
|
||||
[ConfigurationProperty(OfficeOnlineKey, IsDefaultCollection = false)]
|
||||
public OfficeOnlineElementCollection OfficeOnline
|
||||
{
|
||||
|
|
|
@ -18,6 +18,7 @@ namespace WebsitePanel.WebDav.Core.Config
|
|||
FileIcons = new FileIconsDictionary();
|
||||
HttpErrors = new HttpErrorsCollection();
|
||||
OfficeOnline = new OfficeOnlineCollection();
|
||||
OwaSupportedBrowsers = new OwaSupportedBrowsersCollection();
|
||||
}
|
||||
|
||||
public static WebDavAppConfigManager Instance
|
||||
|
@ -51,5 +52,6 @@ namespace WebsitePanel.WebDav.Core.Config
|
|||
public FileIconsDictionary FileIcons { get; private set; }
|
||||
public HttpErrorsCollection HttpErrors { get; private set; }
|
||||
public OfficeOnlineCollection OfficeOnline { get; private set; }
|
||||
public OwaSupportedBrowsersCollection OwaSupportedBrowsers { get; private set; }
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue