Skip to content
Snippets Groups Projects
Commit 1d0bf808 authored by cpilaszewicz's avatar cpilaszewicz
Browse files

Introduce new gamification element

parent 12a2936a
Branches
Tags
2 merge requests!58Onboarding screens swift ui merge dev,!56Create badge case screen
......@@ -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
}
/**
......
......@@ -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
}
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment