public CheckFileInfo GetCheckFileInfo(WebDavAccessToken token) { var resource = _webDavManager.GetResource(token.FilePath); var permissions = _webDavAuthorizationService.GetPermissions(WspContext.User, token.FilePath); var readOnly = permissions.HasFlag(WebDavPermissions.Write) == false || permissions.HasFlag(WebDavPermissions.OwaEdit) == false; var cFileInfo = new CheckFileInfo { BaseFileName = resource == null ? token.FilePath.Split('/').Last() : resource.DisplayName.Split(new[] { '/' }, StringSplitOptions.RemoveEmptyEntries).LastOrDefault(), OwnerId = WspContext.User.Login, Size = resource == null ? 0 : resource.ContentLength, Version = DateTime.Now.ToString("s"), SupportsCoauth = true, SupportsCobalt = true, SupportsFolders = true, SupportsLocks = true, SupportsScenarioLinks = false, SupportsSecureStore = false, SupportsUpdate = true, UserCanWrite = !readOnly, ReadOnly = readOnly, RestrictedWebViewOnly = false, CloseButtonClosesWindow = true }; if (resource != null) { cFileInfo.ClientUrl = _webDavManager.GetFileUrl(token.FilePath); } return cFileInfo; }
private static string GenerateWopiUrl(WebDavAccessToken token, string urlPart, string path) { var url = new Uri(HttpContext.Current.Request.Url, urlPart).ToString(); string wopiSrc = HttpUtility.UrlDecode(url); return string.Format("{0}&access_token={1}", wopiSrc, token.AccessToken.ToString("N")); }
public WebDavAccessToken CreateToken(WspPrincipal principal, string filePath) { var token = new WebDavAccessToken(); token.AccessToken = Guid.NewGuid(); token.AccountId = principal.AccountId; token.ItemId = principal.ItemId; token.AuthData = principal.EncryptedPassword; token.ExpirationDate = DateTime.Now.AddHours(3); token.FilePath = filePath; token.Id = WSP.Services.EnterpriseStorage.AddWebDavAccessToken(token); return token; }
public int AddWebDavAccessToken(WebDavAccessToken accessToken) { return EnterpriseStorageController.AddWebDavAccessToken(accessToken); }
public static int AddWebDavAccessToken(WebDavAccessToken accessToken) { return DataProvider.AddWebDavAccessToken(accessToken); }
/// <remarks/> public void AddWebDavAccessTokenAsync(WebDavAccessToken accessToken, object userState) { if ((this.AddWebDavAccessTokenOperationCompleted == null)) { this.AddWebDavAccessTokenOperationCompleted = new System.Threading.SendOrPostCallback(this.OnAddWebDavAccessTokenOperationCompleted); } this.InvokeAsync("AddWebDavAccessToken", new object[] { accessToken}, this.AddWebDavAccessTokenOperationCompleted, userState); }
/// <remarks/> public void AddWebDavAccessTokenAsync(WebDavAccessToken accessToken) { this.AddWebDavAccessTokenAsync(accessToken, null); }
/// <remarks/> public System.IAsyncResult BeginAddWebDavAccessToken(WebDavAccessToken accessToken, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("AddWebDavAccessToken", new object[] { accessToken}, callback, asyncState); }
public int AddWebDavAccessToken(WebDavAccessToken accessToken) { object[] results = this.Invoke("AddWebDavAccessToken", new object[] { accessToken}); return ((int)(results[0])); }
public static String GenerateWopiUrl(this UrlHelper urlHelper, WebDavAccessToken token, string path) { var urlPart = urlHelper.Route(OwaRouteNames.CheckFileInfo, new { accessTokenId = token.Id }); return GenerateWopiUrl(token, urlPart, path); }