From d278b47bd009b0ac25922e3f3949826050631cfd Mon Sep 17 00:00:00 2001 From: saeedrooyekhat Date: Wed, 30 May 2018 18:01:02 +0430 Subject: [PATCH] Improvement - Verified Room --- Cartfile | 2 +- Cartfile.resolved | 6 +-- .../IGNavigationItem.swift | 40 ++++++++++++++++++ .../IGChannelInfoTableViewController.swift | 9 +++- iGap/Model/AppDelegate/AppDelegate.swift | 4 +- iGap/Model/Objects/IGChannelRoom.swift | 3 ++ iGap/Model/Objects/IGRegisteredUser.swift | 4 ++ iGap/SupportingFiles/Info.plist | 6 +-- .../Assets.xcassets/Verified/Contents.json | 6 +++ .../Verified/IG_Verify.imageset/Contents.json | 23 ++++++++++ .../IG_Verify.imageset/Verify_20x20.png | Bin 0 -> 18241 bytes .../IG_Verify.imageset/Verify_40x40.png | Bin 0 -> 18742 bytes .../IG_Verify.imageset/Verify_60x60.png | Bin 0 -> 18756 bytes iGap/VIew/Base.lproj/Main.storyboard | 13 +++--- .../IGChatRoomListTableViewCell.swift | 18 ++++++++ .../IGChatRoomListTableViewCell.xib | 39 +++++++++++------ iGap/VIew/profile.storyboard | 40 +++++++++--------- 17 files changed, 164 insertions(+), 49 deletions(-) create mode 100644 iGap/VIew/Assets.xcassets/Verified/Contents.json create mode 100644 iGap/VIew/Assets.xcassets/Verified/IG_Verify.imageset/Contents.json create mode 100644 iGap/VIew/Assets.xcassets/Verified/IG_Verify.imageset/Verify_20x20.png create mode 100644 iGap/VIew/Assets.xcassets/Verified/IG_Verify.imageset/Verify_40x40.png create mode 100644 iGap/VIew/Assets.xcassets/Verified/IG_Verify.imageset/Verify_60x60.png diff --git a/Cartfile b/Cartfile index 3869dff..d8bf5e6 100644 --- a/Cartfile +++ b/Cartfile @@ -19,4 +19,4 @@ github "RooyeKhat-Media/ALCameraViewController" "3.0.3" github "RooyeKhat-Media/INSPhotoGallery" "1.2.5-a" github "RooyeKhat-Media/Starscream" "3.0.4-a" github "RooyeKhat-Media/DBAttachmentPickerController" "1.1.4-a" -github "RooyeKhat-Media/IGProtoBuffLibrary" "Build78" +github "RooyeKhat-Media/IGProtoBuffLibrary" "Build80" diff --git a/Cartfile.resolved b/Cartfile.resolved index d30e99c..e4b3190 100644 --- a/Cartfile.resolved +++ b/Cartfile.resolved @@ -5,7 +5,7 @@ github "ReactiveX/RxSwift" "4.1.2" github "RooyeKhat-Media/ALCameraViewController" "3.0.3" github "RooyeKhat-Media/DBAttachmentPickerController" "1.1.4-a" github "RooyeKhat-Media/Gifu" "v3.0.0-a" -github "RooyeKhat-Media/IGProtoBuffLibrary" "Build78" +github "RooyeKhat-Media/IGProtoBuffLibrary" "Build80" github "RooyeKhat-Media/INSPhotoGallery" "1.2.5-a" github "RooyeKhat-Media/Starscream" "3.0.4-a" github "RooyeKhat-Media/swift-protobuf" "1.0.3-iGap" @@ -18,5 +18,5 @@ github "evgenyneu/Cosmos" "15.0.0" github "facebook/pop" "1.0.10" github "jdg/MBProgressHUD" "1.1.0" github "krzyzanowskim/CryptoSwift" "0.7.2" -github "ninjaprox/NVActivityIndicatorView" "4.2.0" -github "realm/realm-cocoa" "v3.5.0" +github "ninjaprox/NVActivityIndicatorView" "4.2.1" +github "realm/realm-cocoa" "v3.6.0" diff --git a/iGap/Controller/Custom Master Controllers/NavigationController/IGNavigationItem.swift b/iGap/Controller/Custom Master Controllers/NavigationController/IGNavigationItem.swift index 9d0974a..3b8eb10 100644 --- a/iGap/Controller/Custom Master Controllers/NavigationController/IGNavigationItem.swift +++ b/iGap/Controller/Custom Master Controllers/NavigationController/IGNavigationItem.swift @@ -436,6 +436,10 @@ class IGNavigationItem: UINavigationItem { make.leading.equalTo(self.centerViewContainer!.snp.leading).offset(5) } + let verifiedFrame = CGRect(x: 20, y: 5, width: 25, height: 25) + let imgVerified = UIImageView(frame: verifiedFrame) + imgVerified.image = UIImage(named:"IG_Verify") + if room.mute == .mute { let muteFrame = CGRect(x: 20, y: 5, width: 25, height: 25) let imgMute = UIImageView(frame: muteFrame) @@ -449,6 +453,26 @@ class IGNavigationItem: UINavigationItem { make.top.equalTo(self.centerViewMainLabel!.snp.top).offset(3) make.right.equalTo(self.centerViewMainLabel!.snp.right).offset(20) } + + if isVerified(room: room) { + self.centerViewContainer!.addSubview(imgVerified) + imgVerified.snp.makeConstraints { (make) in + make.width.equalTo(20) + make.height.equalTo(20) + make.top.equalTo(self.centerViewMainLabel!.snp.top).offset(3) + make.right.equalTo(imgMute.snp.right).offset(25) + } + } + } else { + if isVerified(room: room) { + self.centerViewContainer!.addSubview(imgVerified) + imgVerified.snp.makeConstraints { (make) in + make.width.equalTo(20) + make.height.equalTo(20) + make.top.equalTo(self.centerViewMainLabel!.snp.top).offset(3) + make.right.equalTo(self.centerViewMainLabel!.snp.right).offset(25) + } + } } if let peer = room.chatRoom?.peer { @@ -462,6 +486,22 @@ class IGNavigationItem: UINavigationItem { } } + private func isVerified(room: IGRoom) -> Bool { + var verified = false + if room.type == .chat { + if let user = room.chatRoom?.peer { + if user.isVerified { + verified = true + } + } + } else if room.type == .channel { + if (room.channelRoom?.isVerified)! { + verified = true + } + } + return verified + } + private func setLastSeenLabelForUser(_ user: IGRegisteredUser , room : IGRoom) { if isCloud(room: room){ diff --git a/iGap/Controller/View Controllers/Channel and Group Info/IGChannelInfoTableViewController.swift b/iGap/Controller/View Controllers/Channel and Group Info/IGChannelInfoTableViewController.swift index 84d1916..5b32611 100644 --- a/iGap/Controller/View Controllers/Channel and Group Info/IGChannelInfoTableViewController.swift +++ b/iGap/Controller/View Controllers/Channel and Group Info/IGChannelInfoTableViewController.swift @@ -45,7 +45,8 @@ class IGChannelInfoTableViewController: UITableViewController , UIGestureRecogni @IBOutlet weak var allMemberCell: UITableViewCell! @IBOutlet weak var channelLinkCell: UITableViewCell! @IBOutlet weak var adminAndModeratorCell: UITableViewCell! - + @IBOutlet weak var imgVerified: UIImageView! + var selectedChannel : IGChannelRoom? private let disposeBag = DisposeBag() var room : IGRoom? @@ -701,6 +702,12 @@ class IGChannelInfoTableViewController: UITableViewController , UIGestureRecogni return } + if (room?.channelRoom?.isVerified)! { + imgVerified.isHidden = false + } else { + imgVerified.isHidden = true + } + channelNameLabelTitle.text = room?.title channelNameLabel.text = room?.title ChannelDescriptionLabel.text = room?.channelRoom?.roomDescription diff --git a/iGap/Model/AppDelegate/AppDelegate.swift b/iGap/Model/AppDelegate/AppDelegate.swift index 87b1562..85c3f18 100644 --- a/iGap/Model/AppDelegate/AppDelegate.swift +++ b/iGap/Model/AppDelegate/AppDelegate.swift @@ -31,7 +31,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate { // // _ = try! Realm() let config = Realm.Configuration( - schemaVersion: 14, + schemaVersion: 15, // Set the block which will be called automatically when opening a Realm with // a schema version lower than the one set above @@ -67,6 +67,8 @@ class AppDelegate: UIResponder, UIApplicationDelegate { //version 0.4.6 build 461 } else if (oldSchemaVersion < 14) { //version 0.4.7 build 462 + } else if (oldSchemaVersion < 15) { + //version 0.4.8 build 463 } }) Realm.Configuration.defaultConfiguration = config diff --git a/iGap/Model/Objects/IGChannelRoom.swift b/iGap/Model/Objects/IGChannelRoom.swift index dc5a043..87652ab 100644 --- a/iGap/Model/Objects/IGChannelRoom.swift +++ b/iGap/Model/Objects/IGChannelRoom.swift @@ -102,6 +102,7 @@ class IGChannelRoom: Object { @objc dynamic var privateExtra: IGChannelPrivateExtra? @objc dynamic var publicExtra: IGChannelPublicExtra? @objc dynamic var isSignature: Bool = false + @objc dynamic var isVerified: Bool = false //MARK: ignored properties var type: IGType { get { @@ -173,6 +174,8 @@ class IGChannelRoom: Object { if igpChannelRoom.hasIgpPublicExtra{ self.publicExtra = IGChannelPublicExtra(igpPublicExtra: igpChannelRoom.igpPublicExtra, id: id) } + + self.isVerified = igpChannelRoom.igpVerified } diff --git a/iGap/Model/Objects/IGRegisteredUser.swift b/iGap/Model/Objects/IGRegisteredUser.swift index 8daec2c..b6abd84 100644 --- a/iGap/Model/Objects/IGRegisteredUser.swift +++ b/iGap/Model/Objects/IGRegisteredUser.swift @@ -46,7 +46,9 @@ class IGRegisteredUser: Object { @objc dynamic var isMutual: Bool = false //current user have this user in his/her contacts @objc dynamic var isInContacts: Bool = false @objc dynamic var isBlocked: Bool = false + @objc dynamic var isVerified: Bool = false @objc dynamic var lastSeenStatusRaw: IGLastSeenStatus.RawValue = IGLastSeenStatus.longTimeAgo.rawValue + //ignored properties var lastSeenStatus: IGLastSeenStatus { get { @@ -133,6 +135,8 @@ class IGRegisteredUser: Object { if igpUser.hasIgpAvatar{ self.avatar = IGAvatar(igpAvatar: igpUser.igpAvatar)//.detach() } + + self.isVerified = igpUser.igpVerified } //detach from current realm diff --git a/iGap/SupportingFiles/Info.plist b/iGap/SupportingFiles/Info.plist index 0468895..4234424 100644 --- a/iGap/SupportingFiles/Info.plist +++ b/iGap/SupportingFiles/Info.plist @@ -15,13 +15,13 @@ CFBundlePackageType APPL CFBundleShortVersionString - 0.4.6 + 0.4.8 CFBundleVersion - 461 + 463 Fabric APIKey - a8bb9474c4f59357347dbd3fd5707ca541e2a749 + a8bb9474c4f59357347dbd3fd5707ca541e2a740 Kits diff --git a/iGap/VIew/Assets.xcassets/Verified/Contents.json b/iGap/VIew/Assets.xcassets/Verified/Contents.json new file mode 100644 index 0000000..da4a164 --- /dev/null +++ b/iGap/VIew/Assets.xcassets/Verified/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/iGap/VIew/Assets.xcassets/Verified/IG_Verify.imageset/Contents.json b/iGap/VIew/Assets.xcassets/Verified/IG_Verify.imageset/Contents.json new file mode 100644 index 0000000..1ee5007 --- /dev/null +++ b/iGap/VIew/Assets.xcassets/Verified/IG_Verify.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "Verify_20x20.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "Verify_40x40.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "Verify_60x60.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/iGap/VIew/Assets.xcassets/Verified/IG_Verify.imageset/Verify_20x20.png b/iGap/VIew/Assets.xcassets/Verified/IG_Verify.imageset/Verify_20x20.png new file mode 100644 index 0000000000000000000000000000000000000000..cf0edb9bc1fc85b6c701986159aef8ee4a56c700 GIT binary patch literal 18241 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 VlY)mOnin5GH#fF6Dm8RJ^gknqPR#%S literal 0 HcmV?d00001 diff --git a/iGap/VIew/Assets.xcassets/Verified/IG_Verify.imageset/Verify_60x60.png b/iGap/VIew/Assets.xcassets/Verified/IG_Verify.imageset/Verify_60x60.png new file mode 100644 index 0000000000000000000000000000000000000000..d48162c3aa1adc4a66ca5422e7b238100e061db5 GIT binary patch literal 18756 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 kA0?(|E|mmHy?qB{-<&D7*4p!K;bwHJO - + @@ -961,7 +961,7 @@ - + @@ -1021,7 +1021,7 @@ - + @@ -1062,7 +1062,7 @@ - + @@ -1467,9 +1467,8 @@ - - - + + diff --git a/iGap/VIew/ReusableViews/Chat List Cell/IGChatRoomListTableViewCell.swift b/iGap/VIew/ReusableViews/Chat List Cell/IGChatRoomListTableViewCell.swift index 47f5459..e550cdb 100644 --- a/iGap/VIew/ReusableViews/Chat List Cell/IGChatRoomListTableViewCell.swift +++ b/iGap/VIew/ReusableViews/Chat List Cell/IGChatRoomListTableViewCell.swift @@ -39,6 +39,7 @@ class IGChatRoomListTableViewCell: MGSwipeTableCell { @IBOutlet weak var roomTypeIndicatorImageView: UIImageView! @IBOutlet weak var roomTitleLabelLeftConstraint: NSLayoutConstraint! @IBOutlet weak var imgMute: UIImageView! + @IBOutlet weak var imgVerified: UIImageView! let currentLoggedInUserID = IGAppManager.sharedManager.userID() @@ -146,12 +147,29 @@ class IGChatRoomListTableViewCell: MGSwipeTableCell { case .chat: roomTypeIndicatorImageView.image = nil roomTitleLabelLeftConstraint.constant = 16 + + if let user = room.chatRoom?.peer { + if user.isVerified { + imgVerified.isHidden = false + } else { + imgVerified.isHidden = true + } + } + case .group: roomTypeIndicatorImageView.image = UIImage(named: "IG_Chat_List_Type_Group") roomTitleLabelLeftConstraint.constant = 36 + imgVerified.isHidden = true + case .channel: roomTypeIndicatorImageView.image = UIImage(named: "IG_Chat_List_Type_Channel") roomTitleLabelLeftConstraint.constant = 36 + + if (room.channelRoom?.isVerified)! { + imgVerified.isHidden = false + } else { + imgVerified.isHidden = true + } } if room.mute == IGRoom.IGRoomMute.mute { diff --git a/iGap/VIew/ReusableViews/Chat List Cell/IGChatRoomListTableViewCell.xib b/iGap/VIew/ReusableViews/Chat List Cell/IGChatRoomListTableViewCell.xib index e346c6b..2118626 100644 --- a/iGap/VIew/ReusableViews/Chat List Cell/IGChatRoomListTableViewCell.xib +++ b/iGap/VIew/ReusableViews/Chat List Cell/IGChatRoomListTableViewCell.xib @@ -1,11 +1,11 @@ - + - + @@ -27,17 +27,8 @@ - + + + + + + + + + + - + @@ -120,6 +129,7 @@ + @@ -132,4 +142,7 @@ + + + diff --git a/iGap/VIew/profile.storyboard b/iGap/VIew/profile.storyboard index 1743944..68485b1 100644 --- a/iGap/VIew/profile.storyboard +++ b/iGap/VIew/profile.storyboard @@ -1,20 +1,15 @@ - + - + - - - HelveticaNeue - - @@ -380,15 +375,24 @@ - @@ -1490,9 +1495,7 @@ - - - + @@ -1979,12 +1982,8 @@ - - - - - - + + @@ -2977,10 +2976,11 @@ + - +