mirror of
https://github.com/wahyd4/Yep.git
synced 2026-08-09 04:46:35 +10:00
parse UsernamePrefixMatchedUser
This commit is contained in:
@@ -2951,7 +2951,7 @@
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
OTHER_SWIFT_FLAGS = "-D DEBUG -D STAGING_";
|
||||
OTHER_SWIFT_FLAGS = "-D DEBUG -D STAGING";
|
||||
SDKROOT = iphoneos;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||
};
|
||||
|
||||
@@ -3691,14 +3691,41 @@ func foursquareVenuesNearby(coordinate coordinate: CLLocationCoordinate2D, failu
|
||||
|
||||
// MARK: Mention
|
||||
|
||||
func usersMatchWithUsernamePrefix(usernamePrefix: String, failureHandler: ((Reason, String?) -> Void)?, completion: (JSONDictionary) -> Void) {
|
||||
struct UsernamePrefixMatchedUser {
|
||||
let userID: String
|
||||
let username: String
|
||||
let nickname: String
|
||||
let avatarURLString: String
|
||||
}
|
||||
|
||||
func usersMatchWithUsernamePrefix(usernamePrefix: String, failureHandler: ((Reason, String?) -> Void)?, completion: ([UsernamePrefixMatchedUser]) -> Void) {
|
||||
|
||||
let requestParameters = [
|
||||
"q": usernamePrefix,
|
||||
]
|
||||
|
||||
let parse: JSONDictionary -> JSONDictionary? = { data in
|
||||
return data
|
||||
let parse: JSONDictionary -> [UsernamePrefixMatchedUser]? = { data in
|
||||
//println("usersMatchWithUsernamePrefix: \(data)")
|
||||
|
||||
if let usersData = data["users"] as? [JSONDictionary] {
|
||||
let users: [UsernamePrefixMatchedUser] = usersData.map({ userInfo in
|
||||
guard let
|
||||
userID = userInfo["id"] as? String,
|
||||
username = userInfo["username"] as? String,
|
||||
nickname = userInfo["nickname"] as? String,
|
||||
avatarInfo = userInfo["avatar"] as? JSONDictionary,
|
||||
avatarURLString = avatarInfo["thumb_url"] as? String
|
||||
else {
|
||||
return nil
|
||||
}
|
||||
|
||||
return UsernamePrefixMatchedUser(userID: userID, username: username, nickname: nickname, avatarURLString: avatarURLString)
|
||||
}).flatMap({ $0 })
|
||||
|
||||
return users
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
let resource = authJsonResource(path: "/v1/users/typeahead", method: .GET, requestParameters: requestParameters, parse: parse)
|
||||
|
||||
@@ -861,8 +861,8 @@ class ConversationViewController: BaseViewController {
|
||||
// view.addSubview(conversationFPSLabel)
|
||||
#endif
|
||||
|
||||
usersMatchWithUsernamePrefix("a", failureHandler: nil) { data in
|
||||
println("usersMatchWithUsernamePrefix: \(data)")
|
||||
usersMatchWithUsernamePrefix("t", failureHandler: nil) { users in
|
||||
println("usersMatchWithUsernamePrefix: \(users)")
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user