diff --git a/enzevalos_iphone/Badges.swift b/enzevalos_iphone/Badges.swift index 2766e91ddd463aec82457b5b9599272d47835789..2cc44c8fa2b2c91d234bd4606c0cf6e8ed5e1884 100755 --- a/enzevalos_iphone/Badges.swift +++ b/enzevalos_iphone/Badges.swift @@ -35,6 +35,7 @@ enum BadgeType: Int { case onBoarding case inviteAFriend case Ambassador + case friendlyKeyMaster case MailMaster case MailMaster1 @@ -51,6 +52,11 @@ enum BadgeType: Int { case SecureMailMaster100 case SecureMailMaster1000 case None // for SubBadge + + case FriendlyKeyMaster + case FriendlyKeyMaster10 + case FriendlyKeyMaster50 + case FriendlyKeyMaster100 } /** @@ -72,6 +78,10 @@ enum Achievment { case SecureMails1000 case SecureSend case SecureReceived + case FriendlyKeyMaster1 + case FriendlyKeyMaster10 + case FriendlyKeyMaster50 + case FriendlyKeyMaster100 } /** diff --git a/enzevalos_iphone/GamificationData.swift b/enzevalos_iphone/GamificationData.swift index 11c2eb5fb1c4e01a6b59f1da0b85c55a8e054f27..7f2e34f568442f7480be3622dd66fa89fb8460a0 100755 --- a/enzevalos_iphone/GamificationData.swift +++ b/enzevalos_iphone/GamificationData.swift @@ -43,7 +43,8 @@ class GamificationData: NSObject { Badges.init(type: .SecureMailMaster , pictureOff: "verschluesseltOff", pictureOn: "verschluesseltOn", segue: .LinearBadge, displayName: NSLocalizedString("Secure Mailmaster", comment:"Secure Mailmaster badge" )), Badges.init(type: .onBoarding, pictureOff: "onboardingOff", pictureOn: "onboardingOn", segue: .LinearBadge, displayName: NSLocalizedString("Onboarded", comment:"Onboarded" )), Badges.init(type: .inviteAFriend, pictureOff: "invitefriendOff", pictureOn: "invitefriendOn", segue: .inviteFriend, displayName: NSLocalizedString("Invite a friend", comment: "Invite a friend" )), - Badges.init(type: .Ambassador, pictureOff: "ambassadorOff", pictureOn: "ambassadorOn", segue: .inviteFriend, displayName: NSLocalizedString("Ambassador", comment:"Ambassador" )) + Badges.init(type: .Ambassador, pictureOff: "ambassadorOff", pictureOn: "ambassadorOn", segue: .inviteFriend, displayName: NSLocalizedString("Ambassador", comment:"Ambassador" )), + Badges.init(type: .friendlyKeyMaster, pictureOff: "keymasterOff", pictureOn: "keymasterOn", segue: .LinearBadge, displayName: NSLocalizedString("Friendly Key Master", comment: "Friendly Key Master" )) ] @@ -89,6 +90,14 @@ class GamificationData: NSObject { Badges.init(type: .SecureMailMaster100 , pictureOff: "verschluesseltOff", pictureOn: "verschluesseltOn", displayName: NSLocalizedString("100 secure Mails Send/Received", comment:"SecureMailMaster Subbadge" ), achievmentsNeeded: [.SecureMails100]), Badges.init(type: .SecureMailMaster1000 , pictureOff: "verschluesseltOff", pictureOn: "verschluesseltOn", displayName: NSLocalizedString("1000 secure Mails Send/Received", comment:"SecureMailMaster Subbadge" ), achievmentsNeeded: [.SecureMails1000]) ] + + case .friendlyKeyMaster: + return [ + Badges.init(type: .FriendlyKeyMaster , pictureOff: "keymasterOff", pictureOn: "keymasterOn", displayName: NSLocalizedString("One friends public key stored", comment:"FriendlyKeyMaster Subbadge" ), achievmentsNeeded: [.FriendlyKeyMaster1 ]), + Badges.init(type: .FriendlyKeyMaster10 , pictureOff: "keymasterOff", pictureOn: "keymasterOn", displayName: NSLocalizedString("10 friends public keys stored", comment:"FriendlyKeyMaster Subbadge" ), achievmentsNeeded: [.FriendlyKeyMaster10 ]), + Badges.init(type: .FriendlyKeyMaster50 , pictureOff: "keymasterOff", pictureOn: "keymasterOn", displayName: NSLocalizedString("50 friends public keys stored", comment:"FriendlyKeyMaster Subbadge" ), achievmentsNeeded: [.FriendlyKeyMaster50 ]), + Badges.init(type: .FriendlyKeyMaster100 , pictureOff: "keymasterOff", pictureOn: "keymasterOn", displayName: NSLocalizedString("100 friends public keys stored", comment:"FriendlyKeyMaster Subbadge" ), achievmentsNeeded: [.FriendlyKeyMaster100]) + ] default: return [Badges]() @@ -286,6 +295,14 @@ class GamificationData: NSObject { return secureMailsSend > 0 case .SecureReceived: return secureMailsReceived > 0 + case .FriendlyKeyMaster1: + return secureContactsCount > 0 + case .FriendlyKeyMaster10: + return secureContactsCount > 9 + case .FriendlyKeyMaster50: + return secureContactsCount > 49 + case .FriendlyKeyMaster100: + return secureContactsCount > 99 // default: return false } }