}
}
var shareCapabilities = ShareCapabilities()
+ var itemMetadata: NKFile?
private(set) var kit: NextcloudKit?
private(set) var itemURL: URL?
Logger.sharesDataSource.error("Failed to get details from FileProviderExt")
return
}
- itemServerRelativePath = serverPath as String
+ let serverPathString = serverPath as String
+ itemServerRelativePath = serverPathString
account = convertedAccount
await sharesTableView?.deselectAll(self)
shareCapabilities = await fetchCapabilities()
uiDelegate?.showError(errorMsg)
return
}
+ itemMetadata = await fetchItemMetadata(itemRelativePath: serverPathString)
+ guard itemMetadata?.permissions.contains("S") == true else {
+ let errorMsg = "This file cannot be shared."
+ Logger.sharesDataSource.warning("\(errorMsg)")
+ uiDelegate?.showError(errorMsg)
+ return
+ }
shares = await fetch(
- itemIdentifier: itemIdentifier, itemRelativePath: serverPath as String
+ itemIdentifier: itemIdentifier, itemRelativePath: serverPathString
)
} catch let error {
Logger.sharesDataSource.error("Could not reload data: \(error, privacy: .public)")