|
@@ -28,9 +28,6 @@ class NCDataSource: NSObject {
|
|
|
public var metadatas: [tableMetadata] = []
|
|
|
public var metadataLocalImage: [String:String] = [:]
|
|
|
|
|
|
- private var sort: String = ""
|
|
|
- private var ascending: Bool = true
|
|
|
- private var sorting: Bool = true
|
|
|
private var directoryOnTop: Bool = true
|
|
|
private var filterLivePhoto: Bool = true
|
|
|
|
|
@@ -38,12 +35,9 @@ class NCDataSource: NSObject {
|
|
|
super.init()
|
|
|
}
|
|
|
|
|
|
- init(metadatasSource: [tableMetadata], sort: String, ascending: Bool, sorting: Bool, directoryOnTop: Bool, filterLivePhoto: Bool) {
|
|
|
+ init(metadatasSource: [tableMetadata], directoryOnTop: Bool, filterLivePhoto: Bool) {
|
|
|
super.init()
|
|
|
|
|
|
- self.sort = sort
|
|
|
- self.ascending = ascending
|
|
|
- self.sorting = sorting
|
|
|
self.directoryOnTop = directoryOnTop
|
|
|
self.filterLivePhoto = filterLivePhoto
|
|
|
|
|
@@ -54,54 +48,16 @@ class NCDataSource: NSObject {
|
|
|
|
|
|
private func createMetadatas(metadatasSource: [tableMetadata]) {
|
|
|
|
|
|
- var metadatasSourceSorted: [tableMetadata] = []
|
|
|
var metadatasFavorite: [tableMetadata] = []
|
|
|
var metadatasTemp: [tableMetadata] = []
|
|
|
var numDirectory: Int = 0
|
|
|
var numDirectoryFavorite:Int = 0
|
|
|
|
|
|
- /*
|
|
|
- Metadata order
|
|
|
- */
|
|
|
-
|
|
|
- if sorting {
|
|
|
- metadatasSourceSorted = metadatasSource.sorted { (obj1:tableMetadata, obj2:tableMetadata) -> Bool in
|
|
|
- if sort == "date" {
|
|
|
- if ascending {
|
|
|
- return obj1.date.compare(obj2.date as Date) == ComparisonResult.orderedAscending
|
|
|
- } else {
|
|
|
- return obj1.date.compare(obj2.date as Date) == ComparisonResult.orderedDescending
|
|
|
- }
|
|
|
- } else if sort == "sessionTaskIdentifier" {
|
|
|
- if ascending {
|
|
|
- return obj1.sessionTaskIdentifier > obj2.sessionTaskIdentifier
|
|
|
- } else {
|
|
|
- return obj1.sessionTaskIdentifier < obj2.sessionTaskIdentifier
|
|
|
- }
|
|
|
- } else if sort == "size" {
|
|
|
- if ascending {
|
|
|
- return obj1.size > obj2.size
|
|
|
- } else {
|
|
|
- return obj1.size < obj2.size
|
|
|
- }
|
|
|
- } else {
|
|
|
- let range = Range(NSMakeRange(0, obj1.fileNameView.count), in: obj1.fileNameView)
|
|
|
- if ascending {
|
|
|
- return obj1.fileNameView.compare(obj2.fileNameView, options: .caseInsensitive, range: range, locale: .current) == ComparisonResult.orderedAscending
|
|
|
- } else {
|
|
|
- return obj1.fileNameView.compare(obj2.fileNameView, options: .caseInsensitive, range: range, locale: .current) == ComparisonResult.orderedDescending
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- } else {
|
|
|
- metadatasSourceSorted = metadatasSource
|
|
|
- }
|
|
|
-
|
|
|
/*
|
|
|
Initialize datasource
|
|
|
*/
|
|
|
|
|
|
- for metadata in metadatasSourceSorted {
|
|
|
+ for metadata in metadatasSource {
|
|
|
|
|
|
// skipped livePhoto
|
|
|
if metadata.ext == "mov" && metadata.livePhoto && filterLivePhoto {
|