|
@@ -203,6 +203,13 @@ class NCPlayer: NSObject {
|
|
}))
|
|
}))
|
|
alertController.addAction(UIAlertAction(title: NSLocalizedString("_no_", value: "No", comment: ""), style: .default, handler: { _ in }))
|
|
alertController.addAction(UIAlertAction(title: NSLocalizedString("_no_", value: "No", comment: ""), style: .default, handler: { _ in }))
|
|
self.viewController?.present(alertController, animated: true)
|
|
self.viewController?.present(alertController, animated: true)
|
|
|
|
+ } else if NCUtility.shared.isFolderEncrypted(metadata: self.metadata) {
|
|
|
|
+ let alertController = UIAlertController(title: NSLocalizedString("_info_", value: "Info", comment: ""), message: NSLocalizedString("_video_not_streamed_", comment: ""), preferredStyle: .alert)
|
|
|
|
+ alertController.addAction(UIAlertAction(title: NSLocalizedString("_yes_", value: "Yes", comment: ""), style: .default, handler: { _ in
|
|
|
|
+ self.downloadVideo(isEncrypted: true)
|
|
|
|
+ }))
|
|
|
|
+ alertController.addAction(UIAlertAction(title: NSLocalizedString("_no_", value: "No", comment: ""), style: .default, handler: { _ in }))
|
|
|
|
+ self.viewController?.present(alertController, animated: true)
|
|
} else {
|
|
} else {
|
|
#if MFFFLIB
|
|
#if MFFFLIB
|
|
if error?.code == AVError.Code.fileFormatNotRecognized.rawValue {
|
|
if error?.code == AVError.Code.fileFormatNotRecognized.rawValue {
|
|
@@ -416,11 +423,11 @@ class NCPlayer: NSObject {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- internal func downloadVideo(requiredConvert: Bool = false) {
|
|
|
|
|
|
+ internal func downloadVideo(isEncrypted: Bool = false, requiredConvert: Bool = false) {
|
|
|
|
|
|
guard let view = appDelegate.window?.rootViewController?.view else { return }
|
|
guard let view = appDelegate.window?.rootViewController?.view else { return }
|
|
let serverUrlFileName = metadata.serverUrl + "/" + metadata.fileName
|
|
let serverUrlFileName = metadata.serverUrl + "/" + metadata.fileName
|
|
- let fileNameLocalPath = CCUtility.getDirectoryProviderStorageOcId(metadata.ocId, fileNameView: metadata.fileNameView)!
|
|
|
|
|
|
+ let fileNameLocalPath = CCUtility.getDirectoryProviderStorageOcId(metadata.ocId, fileNameView: metadata.fileName)!
|
|
let hud = JGProgressHUD()
|
|
let hud = JGProgressHUD()
|
|
var downloadRequest: DownloadRequest?
|
|
var downloadRequest: DownloadRequest?
|
|
|
|
|
|
@@ -444,6 +451,11 @@ class NCPlayer: NSObject {
|
|
} completionHandler: { _, _, _, _, _, afError, error in
|
|
} completionHandler: { _, _, _, _, _, afError, error in
|
|
if afError == nil {
|
|
if afError == nil {
|
|
NCManageDatabase.shared.addLocalFile(metadata: self.metadata)
|
|
NCManageDatabase.shared.addLocalFile(metadata: self.metadata)
|
|
|
|
+ if isEncrypted {
|
|
|
|
+ if let result = NCManageDatabase.shared.getE2eEncryption(predicate: NSPredicate(format: "fileNameIdentifier == %@ AND serverUrl == %@", self.metadata.fileName, self.metadata.serverUrl)) {
|
|
|
|
+ NCEndToEndEncryption.sharedManager()?.decryptFileName(self.metadata.fileName, fileNameView: self.metadata.fileNameView, ocId: self.metadata.ocId, key: result.key, initializationVector: result.initializationVector, authenticationTag: result.authenticationTag)
|
|
|
|
+ }
|
|
|
|
+ }
|
|
let urlVideo = NCKTVHTTPCache.shared.getVideoURL(metadata: self.metadata)
|
|
let urlVideo = NCKTVHTTPCache.shared.getVideoURL(metadata: self.metadata)
|
|
if let url = urlVideo.url {
|
|
if let url = urlVideo.url {
|
|
self.url = url
|
|
self.url = url
|