|
|
|
|
@ -43,7 +43,7 @@ final class PlayerRegistration: ModelObject, Storable { |
|
|
|
|
|
|
|
|
|
var clubCode: String? |
|
|
|
|
var sourceName: String? |
|
|
|
|
var isNVEQ: Bool = false |
|
|
|
|
var isNveq: Bool = false |
|
|
|
|
|
|
|
|
|
func localizedSourceLabel() -> String { |
|
|
|
|
switch source { |
|
|
|
|
@ -183,7 +183,7 @@ final class PlayerRegistration: ModelObject, Storable { |
|
|
|
|
isVerified(), |
|
|
|
|
"=\"" + formattedLicense() + "\"", |
|
|
|
|
"\(computedRank)", |
|
|
|
|
isNVEQ ? "NVEQ" : "EQ", |
|
|
|
|
isNveq ? "NVEQ" : "EQ", |
|
|
|
|
] |
|
|
|
|
.joined(separator: exportFormat.separator()) |
|
|
|
|
return values |
|
|
|
|
@ -231,7 +231,15 @@ final class PlayerRegistration: ModelObject, Storable { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func isLicenceOK() -> Bool { |
|
|
|
|
licenceId?.trimmed.strippedLicense != nil |
|
|
|
|
guard let licenceId else { return false } |
|
|
|
|
let licenceIdTrimmed = licenceId.trimmed |
|
|
|
|
guard licenceIdTrimmed.strippedLicense != nil else { return false } |
|
|
|
|
|
|
|
|
|
if licenceIdTrimmed.hasLicenseKey() { |
|
|
|
|
return licenceIdTrimmed.isLicenseNumber |
|
|
|
|
} else { |
|
|
|
|
return true |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func isNameOK() -> Bool { |
|
|
|
|
@ -452,7 +460,7 @@ final class PlayerRegistration: ModelObject, Storable { |
|
|
|
|
case _captain = "captain" |
|
|
|
|
case _clubCode = "clubCode" |
|
|
|
|
case _sourceName = "sourceName" |
|
|
|
|
case _isNVEQ = "isNVEQ" |
|
|
|
|
case _isNveq = "isNveq" |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
init(from decoder: Decoder) throws { |
|
|
|
|
@ -483,7 +491,7 @@ final class PlayerRegistration: ModelObject, Storable { |
|
|
|
|
birthdate = try container.decodeIfPresent(String.self, forKey: ._birthdate) |
|
|
|
|
source = try container.decodeIfPresent(PlayerDataSource.self, forKey: ._source) |
|
|
|
|
clubCode = try container.decodeIfPresent(String.self, forKey: ._clubCode) |
|
|
|
|
isNVEQ = try container.decodeIfPresent(Bool.self, forKey: ._isNVEQ) ?? false |
|
|
|
|
isNveq = try container.decodeIfPresent(Bool.self, forKey: ._isNveq) ?? false |
|
|
|
|
sourceName = try container.decodeIfPresent(String.self, forKey: ._sourceName) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -514,7 +522,7 @@ final class PlayerRegistration: ModelObject, Storable { |
|
|
|
|
try container.encode(coach, forKey: ._coach) |
|
|
|
|
try container.encode(clubCode, forKey: ._clubCode) |
|
|
|
|
try container.encode(sourceName, forKey: ._sourceName) |
|
|
|
|
try container.encode(isNVEQ, forKey: ._isNVEQ) |
|
|
|
|
try container.encode(isNveq, forKey: ._isNveq) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
enum PlayerDataSource: Int, Codable { |
|
|
|
|
|