|
|
|
@ -20,29 +20,6 @@ class NetworkManager { |
|
|
|
return queue |
|
|
|
}() |
|
|
|
|
|
|
|
func loadRoots() -> AnyObject { |
|
|
|
var itemsArray = []; |
|
|
|
|
|
|
|
Alamofire.request(.GET, baseurl + "/service/roots") |
|
|
|
.responseString { |
|
|
|
(_, _, result) in |
|
|
|
let string = result.value! |
|
|
|
let f = string.componentsSeparatedByString("\r\n") |
|
|
|
print(string) |
|
|
|
print(f) |
|
|
|
} |
|
|
|
|
|
|
|
// .response { (request, response, data, error) in |
|
|
|
// println(request) |
|
|
|
// println(response) |
|
|
|
// |
|
|
|
// var r = (response as NSString).componentsSeparatedByString("\r\n") |
|
|
|
// |
|
|
|
// println(error) |
|
|
|
// } |
|
|
|
|
|
|
|
return itemsArray; |
|
|
|
} |
|
|
|
|
|
|
|
public typealias Weiter = ([MediaItem]) -> Void |
|
|
|
|
|
|
|
@ -126,6 +103,7 @@ class NetworkManager { |
|
|
|
|
|
|
|
let i = MediaItem(name: folderName, path: fpath, root: root, type: ItemType.PICS) |
|
|
|
i.thumbUrl = "\(s)?preview=true" |
|
|
|
i.loaded = true |
|
|
|
if !name.hasPrefix(".") { |
|
|
|
if let picfolder = items[path] { |
|
|
|
picfolder.children.append(i) |
|
|
|
@ -201,8 +179,42 @@ class NetworkManager { |
|
|
|
|
|
|
|
print(st) |
|
|
|
|
|
|
|
if (st.endsWith("/")) { |
|
|
|
let i = MediaItem(name: st, path: st, root: root, type: ItemType.FOLDER) |
|
|
|
res.append(i) |
|
|
|
} else { |
|
|
|
if s.lowercaseString.hasSuffix(".jpg") { |
|
|
|
let l = s.length |
|
|
|
let name = (s as NSString).lastPathComponent |
|
|
|
var pathlen = l - len - name.length |
|
|
|
|
|
|
|
// if (pathlen > 1000) { |
|
|
|
print(pathlen) |
|
|
|
print(name) |
|
|
|
print(s) |
|
|
|
// } |
|
|
|
if (pathlen > 2) { |
|
|
|
let path = (s as NSString).substringWithRange(NSMakeRange(len, pathlen - 1)) |
|
|
|
|
|
|
|
let folderName = NSURL(fileURLWithPath: path).lastPathComponent! |
|
|
|
let fl = path.length |
|
|
|
let pfl = fl - folderName.length |
|
|
|
|
|
|
|
print("\(folderName) \(pfl)") |
|
|
|
let fpath = (path as NSString).substringWithRange(NSMakeRange(0, pfl)) |
|
|
|
|
|
|
|
let i = MediaItem(name: folderName, path: fpath, root: root, type: ItemType.PICS) |
|
|
|
i.thumbUrl = "\(s)?preview=true" |
|
|
|
res.append(i) |
|
|
|
} else { |
|
|
|
print(st) |
|
|
|
} |
|
|
|
} else { |
|
|
|
let i = MediaItem(name: st, path: "", root: root, type: ItemType.PICS) |
|
|
|
res.append(i) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
completionHandler(res, leaf) |
|
|
|
@ -212,7 +224,7 @@ class NetworkManager { |
|
|
|
|
|
|
|
func playerURL(item: MediaItem) -> String { |
|
|
|
let enc = item.name.stringByReplacingOccurrencesOfString(" ", withString: "%20") |
|
|
|
return baseurl + "/service/stream" + item.rootSlash + item.path + "/" + enc |
|
|
|
return baseurl + "/service/stream" + item.rootSlash + item.pathSlash + enc |
|
|
|
} |
|
|
|
|
|
|
|
func loadItems(item: MediaItem) { |
|
|
|
@ -320,13 +332,14 @@ class NetworkManager { |
|
|
|
Alamofire.request(.GET, url).responseJSON { |
|
|
|
(_, _, response) in |
|
|
|
|
|
|
|
if let json = response.value { |
|
|
|
var hashes = Set<String>() |
|
|
|
|
|
|
|
if let json = response.value { |
|
|
|
for b in json as! [String] { |
|
|
|
hashes.insert(b) |
|
|
|
print(b) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
for c in item.children { |
|
|
|
if let t = c.time { |
|
|
|
@ -341,23 +354,16 @@ class NetworkManager { |
|
|
|
let op = UploadOperation(baseUrl: self.baseurl + "/service/upload", data: imageData, path: p) |
|
|
|
self.operationQueue.addOperation(op) |
|
|
|
|
|
|
|
let thumb = c.image!.scaleToSize(15 * 16, height: 15 * 9) |
|
|
|
let imageDataT = UIImageJPEGRepresentation(thumb, 1.0); |
|
|
|
let thumb = id.scaleToSize(15 * 16, height: 15 * 9) |
|
|
|
if let imageDataT = UIImageJPEGRepresentation(thumb, 1.0) { |
|
|
|
c.image = thumb |
|
|
|
let opT = UploadOperation(baseUrl: self.baseurl + "/service/upload", data: imageDataT!, path: pt) |
|
|
|
let opT = UploadOperation(baseUrl: self.baseurl + "/service/upload", data: imageDataT, path: pt) |
|
|
|
self.operationQueue.addOperation(opT) |
|
|
|
} |
|
|
|
|
|
|
|
c.loaded = true |
|
|
|
} |
|
|
|
} |
|
|
|
hashes.remove(p) |
|
|
|
hashes.remove(pt) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
for o in hashes { |
|
|
|
print("To delete \(o)") |
|
|
|
// todo Alamofire.request(.GET, self.baseurl + "/service/deletethumb\(o)") |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|