diff --git a/Package.swift b/Package.swift index a89fa08..c7e0776 100644 --- a/Package.swift +++ b/Package.swift @@ -1,4 +1,4 @@ -// swift-tools-version:5.9 +// swift-tools-version:5.10 import PackageDescription let package = Package( diff --git a/Sources/App/Controllers/GlobalFunctions/EncryptionController.swift b/Sources/App/Controllers/GlobalFunctions/EncryptionController.swift index 99a1002..e9fbed5 100644 --- a/Sources/App/Controllers/GlobalFunctions/EncryptionController.swift +++ b/Sources/App/Controllers/GlobalFunctions/EncryptionController.swift @@ -48,5 +48,26 @@ struct CustomCrypto{ } } } +struct Base64{ + public static func Base64Encode(input: String) throws -> String{ + guard let dataToEncode = input.data(using: .utf8) else{ fatalError("Invalid Data")} + let base64EncodedString = dataToEncode.base64EncodedString() + let urlEncodedString = base64EncodedString.addingPercentEncoding(withAllowedCharacters: .urlHostAllowed) + return urlEncodedString! + } + public static func Base64Decode(input: String) throws -> [String: String]{ + var dic: [String: String] = [:] + guard let base64EncodedData = input.data(using: .utf8) else { fatalError("Invalid Data")} + if let data = Data(base64Encoded: base64EncodedData){ + let str = String(data: data, encoding: .utf8) + let strArr = str!.components(separatedBy: ";") + for s in strArr{ + let pcs = s.components(separatedBy: "=") + dic[pcs[0]] = pcs[1] + } + } + return dic + } +} diff --git a/Sources/App/Models/AuthTables/mdlUser.swift b/Sources/App/Models/AuthTables/mdlUser.swift index c51d700..fea679d 100644 --- a/Sources/App/Models/AuthTables/mdlUser.swift +++ b/Sources/App/Models/AuthTables/mdlUser.swift @@ -93,6 +93,19 @@ extension mdlUser{ try await database.schema("user").delete() } } + struct Customer: AsyncMigration { + func prepare(on database: Database) async throws { + try await database.schema("user") + .field("customerId", .int, .references("customer", "id")) + .update() + } + + func revert(on database: Database) async throws { + try await database.schema("user") + .deleteField("customerId") + .update() + } + } struct ReSeed: AsyncMigration{ func prepare(on database: Database) async throws { if let db = database as? SQLDatabase{ diff --git a/Sources/App/Models/BaseTables/mdlCategory.swift b/Sources/App/Models/BaseTables/mdlCategory.swift index 50d7121..c1b528f 100644 --- a/Sources/App/Models/BaseTables/mdlCategory.swift +++ b/Sources/App/Models/BaseTables/mdlCategory.swift @@ -21,6 +21,7 @@ final class mdlCategory: Model, Content { @Children(for: \.$category) var categories: [mdlInspectionCategory] @Children(for: \.$category) var templatecategories: [mdlTemplateCategory] + @Children(for: \.$category) var values: [mdlTblValue] @Timestamp(key: "createDate", on: .create) var createdate: Date? @Field(key: "createUserId") var createuserid: Int? @@ -63,6 +64,7 @@ extension mdlCategory{ let query = mdlCategory.query(on: req.db) .with(\.$categories) .with(\.$templatecategories) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/BaseTables/mdlComparisonType.swift b/Sources/App/Models/BaseTables/mdlComparisonType.swift index 6a5d6fa..7ae9069 100644 --- a/Sources/App/Models/BaseTables/mdlComparisonType.swift +++ b/Sources/App/Models/BaseTables/mdlComparisonType.swift @@ -22,6 +22,7 @@ final class mdlComparisonType: Model, Content { @Field(key: "createUserId") var createuserid: Int? @Timestamp(key: "updateDate", on: .update) var updatedate: Date? @Field(key: "updateUserId") var updateuserid: Int? + @Children(for: \.$comparisontype) var values: [mdlTblValue] init() { } @@ -78,6 +79,7 @@ extension mdlComparisonType{ public static func ObjQuery(req: Request) async throws -> QueryBuilder{ let query = mdlComparisonType.query(on: req.db) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/BaseTables/mdlContactType.swift b/Sources/App/Models/BaseTables/mdlContactType.swift index 412914c..36f77ff 100644 --- a/Sources/App/Models/BaseTables/mdlContactType.swift +++ b/Sources/App/Models/BaseTables/mdlContactType.swift @@ -20,6 +20,7 @@ final class mdlContactType: Model, Content { @Field(key: "isActive") var isactive: Bool? @Children(for: \.$contacttype) var info: [mdlContactInfo] + @Children(for: \.$contacttype) var values: [mdlTblValue] @Timestamp(key: "createDate", on: .create) var createdate: Date? @Field(key: "createUserId") var createuserid: Int? @@ -80,6 +81,8 @@ extension mdlContactType{ public static func ObjQuery(req: Request) async throws -> QueryBuilder{ let query = mdlContactType.query(on: req.db) + .with(\.$info) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/BaseTables/mdlDataType.swift b/Sources/App/Models/BaseTables/mdlDataType.swift index 0e53973..0c3a4d8 100644 --- a/Sources/App/Models/BaseTables/mdlDataType.swift +++ b/Sources/App/Models/BaseTables/mdlDataType.swift @@ -19,6 +19,7 @@ final class mdlDataType: Model, Content { @Field(key: "description") var description: String? @Children(for: \.$datatype) var units: [mdlUnit] + @Children(for: \.$datatype) var values: [mdlTblValue] @Timestamp(key: "createDate", on: .create) var createdate: Date? @Field(key: "createUserId") var createuserid: Int? @@ -80,6 +81,7 @@ extension mdlDataType{ let query = mdlDataType.query(on: req.db) .with(\.$units) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/BaseTables/mdlDivision.swift b/Sources/App/Models/BaseTables/mdlDivision.swift index 1cf659d..3ce0f1c 100644 --- a/Sources/App/Models/BaseTables/mdlDivision.swift +++ b/Sources/App/Models/BaseTables/mdlDivision.swift @@ -20,7 +20,7 @@ final class mdlDivision: Model, Content { @Field(key: "isActive") var isactive: Bool? @Children(for: \.$division) var users: [mdlUser] - + @Children(for: \.$division) var values: [mdlTblValue] @Timestamp(key: "createDate", on: .create) var createdate: Date? @Field(key: "createUserId") var createuserid: Int? @@ -64,6 +64,7 @@ extension mdlDivision{ let query = mdlDivision.query(on: req.db) .with(\.$users) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/BaseTables/mdlEquipmentType.swift b/Sources/App/Models/BaseTables/mdlEquipmentType.swift index d39a1ee..9777d03 100644 --- a/Sources/App/Models/BaseTables/mdlEquipmentType.swift +++ b/Sources/App/Models/BaseTables/mdlEquipmentType.swift @@ -19,6 +19,8 @@ final class mdlEquipmentType: Model, Content { @Field(key: "description") var description: String? @Field(key: "isActive") var isactive: Bool? + @Children(for: \.$equipmenttype) var values: [mdlTblValue] + @Timestamp(key: "createDate", on: .create) var createdate: Date? @Field(key: "createUserId") var createuserid: Int? @Timestamp(key: "updateDate", on: .update) var updatedate: Date? @@ -74,6 +76,7 @@ extension mdlEquipmentType{ public static func ObjQuery(req: Request) async throws -> QueryBuilder{ let query = mdlEquipmentType.query(on: req.db) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/BaseTables/mdlFuel.swift b/Sources/App/Models/BaseTables/mdlFuel.swift index c140f94..c747e72 100644 --- a/Sources/App/Models/BaseTables/mdlFuel.swift +++ b/Sources/App/Models/BaseTables/mdlFuel.swift @@ -21,6 +21,7 @@ final class mdlFuel: Model, Content { @Field(key: "isActive") var isactive: Bool? @Children(for: \.$fuel) var workorders: [mdlWorkOrder] + @Children(for: \.$fuel) var values: [mdlTblValue] @Timestamp(key: "createDate", on: .create) var createdate: Date? @Field(key: "createUserId") var createuserid: Int? @@ -66,6 +67,7 @@ extension mdlFuel{ let query = mdlFuel.query(on: req.db) .with(\.$workorders) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/BaseTables/mdlGate.swift b/Sources/App/Models/BaseTables/mdlGate.swift index 2c4ddfd..6fc3c3f 100644 --- a/Sources/App/Models/BaseTables/mdlGate.swift +++ b/Sources/App/Models/BaseTables/mdlGate.swift @@ -23,6 +23,7 @@ @Parent(key: "locationId") var location: mdlLocation @Children(for: \.$gate) var users: [mdlUser] + @Children(for: \.$gate) var values: [mdlTblValue] @Timestamp(key: "createDate", on: .create) var createdate: Date? @Field(key: "createUserId") var createuserid: Int? @@ -83,6 +84,7 @@ let query = mdlGate.query(on: req.db) .with(\.$users) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/BaseTables/mdlIncompleteReason.swift b/Sources/App/Models/BaseTables/mdlIncompleteReason.swift index 6a83320..9599b90 100644 --- a/Sources/App/Models/BaseTables/mdlIncompleteReason.swift +++ b/Sources/App/Models/BaseTables/mdlIncompleteReason.swift @@ -20,6 +20,7 @@ final class mdlIncompleteReason: Model, Content { @Field(key: "isActive") var isactive: Bool? @Children(for: \.$incompletereason) var workorders: [mdlWorkOrder] + @Children(for: \.$incompletereason) var values: [mdlTblValue] @Timestamp(key: "createDate", on: .create) var createdate: Date? @Field(key: "createUserId") var createuserid: Int? @@ -63,6 +64,7 @@ extension mdlIncompleteReason{ let query = mdlIncompleteReason.query(on: req.db) .with(\.$workorders) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/BaseTables/mdlInputType.swift b/Sources/App/Models/BaseTables/mdlInputType.swift index 46ca491..c0f50e3 100644 --- a/Sources/App/Models/BaseTables/mdlInputType.swift +++ b/Sources/App/Models/BaseTables/mdlInputType.swift @@ -19,6 +19,7 @@ final class mdlInputType: Model, Content { @Field(key: "description") var description: String? @Children(for: \.$inputtype) var inspectionitems: [mdlInspectionItem] + @Children(for: \.$inputtype) var values: [mdlTblValue] @Timestamp(key: "createDate", on: .create) var createdate: Date? @Field(key: "createUserId") var createuserid: Int? @@ -79,6 +80,7 @@ extension mdlInputType{ let query = mdlInputType.query(on: req.db) .with(\.$inspectionitems) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/BaseTables/mdlSysCategory.swift b/Sources/App/Models/BaseTables/mdlSysCategory.swift index 50d7c0e..a8b5aa6 100644 --- a/Sources/App/Models/BaseTables/mdlSysCategory.swift +++ b/Sources/App/Models/BaseTables/mdlSysCategory.swift @@ -18,7 +18,7 @@ final class mdlSysCategory: Model, Content { @Field(key: "name") var name: String? @Field(key: "description") var description: String? - + @Children(for: \.$syscat) var uoms: [mdlSysUOM] @Timestamp(key: "createDate", on: .create) var createdate: Date? @Field(key: "createUserId") var createuserid: Int? @Timestamp(key: "updateDate", on: .update) var updatedate: Date? @@ -65,27 +65,27 @@ extension mdlSysCategory{ description: "Unit of distance.", createuserid: -1, updateuserid: -1), - .init(id: 1, + .init(id: 2, name: "WEIGHT", description: "Unit of force.", createuserid: -1, updateuserid: -1), - .init(id: 1, + .init(id: 3, name: "CAPACITY", description: "Unit of capacity.", createuserid: -1, updateuserid: -1), - .init(id: 1, + .init(id: 4, name: "VOLUME", description: "Unit of volume.", createuserid: -1, updateuserid: -1), - .init(id: 1, + .init(id: 5, name: "AREA", description: "Unit of area.", createuserid: -1, updateuserid: -1), - .init(id: 1, + .init(id: 6, name: "TEMPERATURE", description: "Unit of temperature.", createuserid: -1, diff --git a/Sources/App/Models/BaseTables/mdlSysOfMeasure.swift b/Sources/App/Models/BaseTables/mdlSysOfMeasure.swift index 16cbda8..2ec3165 100644 --- a/Sources/App/Models/BaseTables/mdlSysOfMeasure.swift +++ b/Sources/App/Models/BaseTables/mdlSysOfMeasure.swift @@ -1,8 +1,92 @@ // -// File.swift -// +// mdlSysOfMeasure.swift // -// Created by Michiel Carman on 5/6/24. // +// Created by Michiel Carman on 2/16/24. +// + +import Fluent +import Vapor import Foundation +import FluentKit + +final class mdlSysOfMeasure: Model, Content { + static let schema = "sysOfMeasure" + + @ID(custom: "id", generatedBy: .database) var id: Int? + + @Field(key: "name") var name: String? + @Field(key: "description") var description: String? + + @Children(for: \.$sys) var uoms: [mdlSysUOM] + + @Timestamp(key: "createDate", on: .create) var createdate: Date? + @Field(key: "createUserId") var createuserid: Int? + @Timestamp(key: "updateDate", on: .update) var updatedate: Date? + @Field(key: "updateUserId") var updateuserid: Int? + + init() { } + + init(id: Int? = nil, + name: String? = nil, + description: String? = nil, + createuserid: Int? = nil, + updateuserid: Int? = nil + ) { + self.id = id + self.name = name + self.description = description + self.createuserid = createuserid + self.updateuserid = updateuserid + } +} +extension mdlSysOfMeasure{ + struct Create: AsyncMigration { + func prepare(on database: Database) async throws { + try await database.schema("sysOfMeasure") + .field("id", .int, .identifier(auto: true)) + .field("name", .string) + .field("description", .string) + .field("createDate", .datetime) + .field("createUserId", .int) + .field("updateDate", .datetime) + .field("updateUserId", .int) + .create() + } + + func revert(on database: Database) async throws { + try await database.schema("sysOfMeasure").delete() + } + } + struct Seed: AsyncMigration{ + func prepare(on database: FluentKit.Database) async throws { + let mdls: [mdlSysOfMeasure] = [ + .init(id: 1, + name: "METRIC", + description: "International System of Units", + createuserid: -1, + updateuserid: -1), + .init(id: 2, + name: "IMPERIAL", + description: "British Imperial System", + createuserid: -1, + updateuserid: -1), + .init(id: 3, + name: "US", + description: "US Customary System", + createuserid: -1, + updateuserid: -1) + ] + for mdl in mdls{ + try await mdl.save(on: database) + } + + } + + func revert(on database: Database) async throws { + try await mdlSysOfMeasure.query(on: database).delete() + } + } +} + diff --git a/Sources/App/Models/BaseTables/mdlSysUOM.swift b/Sources/App/Models/BaseTables/mdlSysUOM.swift index 16cbda8..6fb376b 100644 --- a/Sources/App/Models/BaseTables/mdlSysUOM.swift +++ b/Sources/App/Models/BaseTables/mdlSysUOM.swift @@ -1,8 +1,137 @@ // -// File.swift -// +// mdlSysUOM.swift // -// Created by Michiel Carman on 5/6/24. // +// Created by Michiel Carman on 2/16/24. +// + +import Fluent +import Vapor import Foundation +import FluentKit + +final class mdlSysUOM: Model, Content { + static let schema = "sysUOM" + + @ID(custom: "id", generatedBy: .database) var id: Int? + + @Field(key: "name") var name: String? + @Field(key: "description") var description: String? + @Parent(key: "sysOfMeasureId") var sys: mdlSysOfMeasure + @Parent(key: "sysCategoryId") var syscat: mdlSysCategory + + @Timestamp(key: "createDate", on: .create) var createdate: Date? + @Field(key: "createUserId") var createuserid: Int? + @Timestamp(key: "updateDate", on: .update) var updatedate: Date? + @Field(key: "updateUserId") var updateuserid: Int? + + init() { } + + init(id: Int? = nil, + name: String? = nil, + description: String? = nil, + sysid: Int, + syscatid: Int, + createuserid: Int? = nil, + updateuserid: Int? = nil + ) { + self.id = id + self.name = name + self.description = description + self.$sys.$id.value = sysid + self.$syscat.$id.value = syscatid + self.createuserid = createuserid + self.updateuserid = updateuserid + } +} +extension mdlSysUOM{ + struct Create: AsyncMigration { + func prepare(on database: Database) async throws { + try await database.schema("sysUOM") + .field("id", .int, .identifier(auto: true)) + .field("name", .string) + .field("description", .string) + .field("sysOfMeasureId", .int, .references("sysOfMeasure", "id")) + .field("sysCategoryId", .int, .references("sysCategory", "id")) + .field("createDate", .datetime) + .field("createUserId", .int) + .field("updateDate", .datetime) + .field("updateUserId", .int) + .create() + } + + func revert(on database: Database) async throws { + try await database.schema("sysUOM").delete() + } + } + struct Seed: AsyncMigration{ + func prepare(on database: FluentKit.Database) async throws { + let sys = try await mdlSysOfMeasure.query(on: database).all() + let u = try await mdlSysCategory.query(on: database).all() + var mdls: [mdlSysUOM] = [] + for s in sys{ + _ = s.id! + for c in u{ + _ = c.id! + if(c.name == "LENGTH"){ + if(s.id == 1){ + mdls.append( + .init(id: nil, name: "M", description: "Meter", sysid: s.id!, syscatid: c.id!, createuserid: -1, updateuserid: -1 + ) + ) + mdls.append( + .init(id: nil, name: "cm", description: "centiMeter", sysid: s.id!, syscatid: c.id!, createuserid: -1, updateuserid: -1 + ) + ) + mdls.append( + .init(id: nil, name: "mm", description: "Milimeter", sysid: s.id!, syscatid: c.id!, createuserid: -1, updateuserid: -1 + ) + ) + mdls.append( + .init(id: nil, name: "nm", description: "Nanometer", sysid: s.id!, syscatid: c.id!, createuserid: -1, updateuserid: -1 + ) + ) + mdls.append( + .init(id: nil, name: "KM", description: "Kilometer", sysid: s.id!, syscatid: c.id!, createuserid: -1, updateuserid: -1 + ) + ) + } + + } + if(c.name == "WEIGHT"){ + + } + if(c.name == "CAPACITY"){ + + } + if(c.name == "VOLUME"){ + + } + if(c.name == "AREA"){ + + } + if(c.name == "TEMPERATURE"){ + + } + } + } +// let mdls: [mdlSysUOM] = [ +// .init(id: 1, +// name: "Built motor", +// description: "d", +// createuserid: -1, +// updateuserid: -1) +// ] + for mdl in mdls{ + try await mdl.save(on: database) + } + + } + + func revert(on database: Database) async throws { + try await mdlSysUOM.query(on: database).delete() + } + } +} + diff --git a/Sources/App/Models/CompartmentModule/mdlCompartment.swift b/Sources/App/Models/CompartmentModule/mdlCompartment.swift index 7197919..b638252 100644 --- a/Sources/App/Models/CompartmentModule/mdlCompartment.swift +++ b/Sources/App/Models/CompartmentModule/mdlCompartment.swift @@ -20,6 +20,7 @@ final class mdlCompartment: Model, Content { @Field(key: "code") var code: String? @Field(key: "sortOrder") var sortorder: Int? @Field(key: "isActive") var isactive: Bool? + @Children(for: \.$compartment) var values: [mdlTblValue] @Timestamp(key: "createDate", on: .create) var createdate: Date? @Field(key: "createUserId") var createuserid: Int? @@ -65,7 +66,7 @@ extension mdlCompartment{ public static func ObjQuery(req: Request) async throws -> QueryBuilder{ let query = mdlCompartment.query(on: req.db) -// .with(\.$<#parent/children#>) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/CompartmentModule/mdlCompartmentLocation.swift b/Sources/App/Models/CompartmentModule/mdlCompartmentLocation.swift index 2e77a77..6efe3e5 100644 --- a/Sources/App/Models/CompartmentModule/mdlCompartmentLocation.swift +++ b/Sources/App/Models/CompartmentModule/mdlCompartmentLocation.swift @@ -25,6 +25,8 @@ final class mdlCompartmentLocation: Model, Content { @Timestamp(key: "updateDate", on: .update) var updatedate: Date? @Field(key: "updateUserId") var updateuserid: Int? + @Children(for: \.$compartmentlocation) var values: [mdlTblValue] + init() { } init(id: Int? = nil, name: String? = nil, description: String? = nil, code: String? = nil, sortorder: Int?, isactive: Bool?, createuserid: Int? = nil, updateuserid: Int? = nil) { @@ -64,7 +66,7 @@ extension mdlCompartmentLocation{ public static func ObjQuery(req: Request) async throws -> QueryBuilder{ let query = mdlCompartmentLocation.query(on: req.db) -// .with(\.$<#parent/children#>) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/ItemTables/mdlItem.swift b/Sources/App/Models/ItemTables/mdlItem.swift index 7fbb544..d18a3cb 100644 --- a/Sources/App/Models/ItemTables/mdlItem.swift +++ b/Sources/App/Models/ItemTables/mdlItem.swift @@ -24,6 +24,7 @@ final class mdlItem: Model, Content { @Parent(key: "inputTypeId") var inputtype: mdlInputType @Children(for: \.$item) var templateitems: [mdlTemplateItemSpec] + @Children(for: \.$item) var values: [mdlTblValue] @Timestamp(key: "createDate", on: .create) var createdate: Date? @Field(key: "createUserId") var createuserid: Int? @@ -87,6 +88,7 @@ extension mdlItem{ let query = mdlItem.query(on: req.db) .with(\.$templateitems) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/ItemTables/mdlItemResponseType.swift b/Sources/App/Models/ItemTables/mdlItemResponseType.swift index 9405602..4b8ec03 100644 --- a/Sources/App/Models/ItemTables/mdlItemResponseType.swift +++ b/Sources/App/Models/ItemTables/mdlItemResponseType.swift @@ -20,6 +20,8 @@ final class mdlItemResponseType: Model, Content { @Field(key: "sortOrder") var sortrder: Int? @Field(key: "isActive") var isactive: Bool? + @Children(for: \.$itemresponsetype) var values: [mdlTblValue] + @Timestamp(key: "createDate", on: .create) var createdate: Date? @Field(key: "createUserId") var createuserid: Int? @Timestamp(key: "updateDate", on: .update) var updatedate: Date? @@ -77,6 +79,7 @@ extension mdlItemResponseType{ let query = mdlItemResponseType.query(on: req.db) .with(\.$item) .with(\.$responsetype) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/WorkOrderTables/Inspections/mdlInspectionItem.swift b/Sources/App/Models/WorkOrderTables/Inspections/mdlInspectionItem.swift index 84fce71..0ff63f5 100644 --- a/Sources/App/Models/WorkOrderTables/Inspections/mdlInspectionItem.swift +++ b/Sources/App/Models/WorkOrderTables/Inspections/mdlInspectionItem.swift @@ -28,6 +28,7 @@ final class mdlInspectionItem: Model, Content { @Children(for: \.$inspectionitem) var responses: [mdlInspectionItemResponse] @Children(for: \.$inspectionitem) var specs: [mdlInspectionItemSpec] @Children(for: \.$item) var notes: [mdlNote] + @Children(for: \.$inspectionitem) var values: [mdlTblValue] @Timestamp(key: "createDate", on: .create) var createdate: Date? @Field(key: "createUserId") var createuserid: Int? @@ -120,6 +121,7 @@ extension mdlInspectionItem{ .with(\.$responses) .with(\.$specs) .with(\.$notes) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/WorkOrderTables/Inspections/mdlInspectionItemResponse.swift b/Sources/App/Models/WorkOrderTables/Inspections/mdlInspectionItemResponse.swift index 44e87fa..232f380 100644 --- a/Sources/App/Models/WorkOrderTables/Inspections/mdlInspectionItemResponse.swift +++ b/Sources/App/Models/WorkOrderTables/Inspections/mdlInspectionItemResponse.swift @@ -28,6 +28,8 @@ final class mdlInspectionItemResponse: Model, Content { @Timestamp(key: "updateDate", on: .update) var updatedate: Date? @Field(key: "updateUserId") var updateuserid: Int? + @Children(for: \.$inspectionitemresponse) var values: [mdlTblValue] + init() { } init(id: Int? = nil, @@ -75,6 +77,7 @@ extension mdlInspectionItemResponse{ let query = mdlInspectionItemResponse.query(on: req.db) .with(\.$inspectionitem) .with(\.$responsetype) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/WorkOrderTables/Inspections/mdlInspectionLevel.swift b/Sources/App/Models/WorkOrderTables/Inspections/mdlInspectionLevel.swift index df75eb5..7700352 100644 --- a/Sources/App/Models/WorkOrderTables/Inspections/mdlInspectionLevel.swift +++ b/Sources/App/Models/WorkOrderTables/Inspections/mdlInspectionLevel.swift @@ -22,6 +22,7 @@ final class mdlInspectionLevel: Model, Content { @Parent(key: "inspectionTypeId") var inspectiontype: mdlInspectionType @Children(for: \.$level) var inspections: [mdlInspection] @Children(for: \.$level) var templates: [mdlTemplate] + @Children(for: \.$inspectionlevel) var values: [mdlTblValue] @Timestamp(key: "createDate", on: .create) var createdate: Date? @Field(key: "createUserId") var createuserid: Int? @@ -73,6 +74,7 @@ extension mdlInspectionLevel{ .with(\.$inspectiontype) .with(\.$inspections) .with(\.$templates) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/WorkOrderTables/Inspections/mdlInspectionType.swift b/Sources/App/Models/WorkOrderTables/Inspections/mdlInspectionType.swift index 3bcf165..643d904 100644 --- a/Sources/App/Models/WorkOrderTables/Inspections/mdlInspectionType.swift +++ b/Sources/App/Models/WorkOrderTables/Inspections/mdlInspectionType.swift @@ -21,6 +21,7 @@ final class mdlInspectionType: Model, Content { @Field(key: "isActive") var isactive: Bool? @Children(for: \.$inspectiontype) var inspectionlevels: [mdlInspectionLevel] + @Children(for: \.$inspectiontype) var values: [mdlTblValue] @Timestamp(key: "createDate", on: .create) var createdate: Date? @Field(key: "createUserId") var createuserid: Int? @@ -69,6 +70,7 @@ extension mdlInspectionType{ let query = mdlInspectionType.query(on: req.db) .with(\.$inspectionlevels) + .with(\.$values) if let x = req.parameters.get("x"){ let decryptedString = try CustomCrypto.DecryptString(input: x) diff --git a/Sources/App/Models/mdlLocale.swift b/Sources/App/Models/mdlLocale.swift index 744b960..036dfa2 100644 --- a/Sources/App/Models/mdlLocale.swift +++ b/Sources/App/Models/mdlLocale.swift @@ -1,8 +1,1143 @@ // -// File.swift -// +// mdlLocale.swift // -// Created by Michiel Carman on 5/14/24. // +// Created by Michiel Carman on 2/16/24. +// + +import Fluent +import Vapor import Foundation +import FluentKit + +final class mdlLocale: Model, Content { + static let schema = "locale" + + @ID(custom: "id", generatedBy: .database) var id: Int? + + @Field(key: "name") var name: String? + @Field(key: "code") var code: String? + + @Timestamp(key: "createDate", on: .create) var createdate: Date? + @Field(key: "createUserId") var createuserid: Int? + @Timestamp(key: "updateDate", on: .update) var updatedate: Date? + @Field(key: "updateUserId") var updateuserid: Int? + @Children(for: \.$locale) var values: [mdlTblValue] + + init() { } + + init(id: Int? = nil, + name: String? = nil, + code: String? = nil, + createuserid: Int? = nil, + updateuserid: Int? = nil + ) { + self.id = id + self.name = name + self.code = code + self.createuserid = createuserid + self.updateuserid = updateuserid + } +} +extension mdlLocale{ + struct Create: AsyncMigration { + func prepare(on database: Database) async throws { + try await database.schema("locale") + .field("id", .int, .identifier(auto: true)) + .field("name", .string) + .field("code", .string) + .field("createDate", .datetime) + .field("createUserId", .int) + .field("updateDate", .datetime) + .field("updateUserId", .int) + .create() + } + + func revert(on database: Database) async throws { + try await database.schema("locale").delete() + } + } + struct Seed: AsyncMigration{ + func prepare(on database: FluentKit.Database) async throws { + let mdls: [mdlLocale] = [ + .init(id: nil, name: "Arabic", code: "ar", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (United Arab Emirates)", code: "ar_AE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Bahrain)", code: "ar_BH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Djibouti)", code: "ar_DJ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Algeria)", code: "ar_DZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Egypt)", code: "ar_EG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Western Sahara)", code: "ar_EH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Eritrea)", code: "ar_ER", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Israel)", code: "ar_IL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Iraq)", code: "ar_IQ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Iraq)", code: "ar_IQ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Jordan)", code: "ar_JO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Jordan)", code: "ar_JO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Comoros)", code: "ar_KM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Kuwait)", code: "ar_KW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Lebanon)", code: "ar_LB", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Libya)", code: "ar_LY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Morocco)", code: "ar_MA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Mauritania)", code: "ar_MR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Oman)", code: "ar_OM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Palestinian Territories)", code: "ar_PS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Qatar)", code: "ar_QA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Saudi Arabia)", code: "ar_SA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Sudan)", code: "ar_SD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Somalia)", code: "ar_SO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (South Sudan)", code: "ar_SS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Syria)", code: "ar_SY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Chad)", code: "ar_TD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Tunisia)", code: "ar_TN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Yemen)", code: "ar_YE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Assamese", code: "as", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Assamese (India)", code: "as_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Asu", code: "asa", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Asu (Tanzania)", code: "asa_TZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Azerbaijani", code: "az", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Azerbaijani (Cyrillic)", code: "az_Cyrl", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Azerbaijani (Cyrillic, Azerbaijan)", code: "az_Cyrl_AZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Azerbaijani (Latin)", code: "az_Latn", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Azerbaijani (Latin, Azerbaijan)", code: "az_Latn_AZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Basaa", code: "bas", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Basaa (Cameroon)", code: "bas_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Belarusian", code: "be", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Belarusian (Belarus)", code: "be_BY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bemba", code: "bem", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bemba (Zambia)", code: "bem_ZM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bena", code: "bez", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bena (Tanzania)", code: "bez_TZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bulgarian", code: "bg", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bulgarian (Bulgaria)", code: "bg_BG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bambara", code: "bm", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bambara (Mali)", code: "bm_ML", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bangla (bn)", code: "bn", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bengali", code: "bn", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bengali (Bangladesh)", code: "bn_BD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bangla (Bangladesh)", code: "bn_BD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bengali (India)", code: "bn_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bangla (India)", code: "bn_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Tibetan", code: "bo", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Tibetan (China)", code: "bo_CN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Tibetan (India)", code: "bo_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Breton", code: "br", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Breton (France)", code: "br_FR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bodo", code: "brx", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bodo (India)", code: "brx_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bosnian", code: "bs", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bosnian (Cyrillic)", code: "bs_Cyrl", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bosnian (Cyrillic, Bosnia & Herzegovina)", code: "bs_Cyrl_BA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bosnian (Latin)", code: "bs_Latn", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bosnian (Latin, Bosnia & Herzegovina)", code: "bs_Latn_BA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Catalan", code: "ca", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Catalan (Andorra)", code: "ca_AD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Catalan (Spain)", code: "ca_ES", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Catalan (France)", code: "ca_FR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Catalan (Italy)", code: "ca_IT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chechen (ce)", code: "ce", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chechen (Russia)", code: "ce_RU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chiga (cgg)", code: "cgg", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chiga (Uganda)", code: "cgg_UG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Cherokee", code: "chr", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Cherokee (United States)", code: "chr_US", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Czech", code: "cs", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Czech (Czech Republic)", code: "cs_CZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Welsh", code: "cy", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Welsh (United Kingdom)", code: "cy_GB", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Danish", code: "da", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Danish (Denmark)", code: "da_DK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Taita", code: "dav", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Taita (Kenya)", code: "dav_KE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German", code: "de", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German (Austria)", code: "de_AT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German (Belgium)", code: "de_BE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German (Switzerland)", code: "de_CH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German (Germany)", code: "de_DE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German (Italy)", code: "de_IT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German (Liechtenstein)", code: "de_LI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German (Luxembourg)", code: "de_LU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German (Luxembourg)", code: "de_LU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Zarma", code: "dje", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Zarma (Niger)", code: "dje_NE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Lower Sorbian", code: "dsb", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Lower Sorbian (Germany)", code: "dsb_DE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Duala", code: "dua", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Duala (Cameroon)", code: "dua_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Jola-Fonyi", code: "dyo", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Jola-Fonyi (Senegal)", code: "dyo_SN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Dzongkha", code: "dz", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Dzongkha (Bhutan)", code: "dz_BT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Embu", code: "ebu", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Embu (Kenya)", code: "ebu_KE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ewe (ee)", code: "ee", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ewe (Ghana)", code: "ee_GH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ewe (Togo)", code: "ee_TG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Greek", code: "el", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Greek (Cyprus)", code: "el_CY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Greek (Greece)", code: "el_GR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English", code: "en", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Antigua & Barbuda)", code: "en_AG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Anguilla)", code: "en_AI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Anguilla)", code: "en_AI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (American Samoa)", code: "en_AS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Austria)", code: "en_AT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Australia)", code: "en_AU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Australia)", code: "en_AU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Barbados)", code: "en_BB", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Belgium)", code: "en_BE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Burundi)", code: "en_BI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Bermuda)", code: "en_BM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Bahamas)", code: "en_BS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Botswana)", code: "en_BW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Belize)", code: "en_BZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Canada)", code: "en_CA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Canada)", code: "en_CA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Cocos [Keeling] Islands)", code: "en_CC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Switzerland)", code: "en_CH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Cook Islands)", code: "en_CK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Cameroon)", code: "en_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Christmas Island)", code: "en_CX", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Cyprus)", code: "en_CY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Germany)", code: "en_DE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Diego Garcia)", code: "en_DG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Denmark)", code: "en_DK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Dominica)", code: "en_DM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Eritrea)", code: "en_ER", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Finland)", code: "en_FI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Fiji)", code: "en_FJ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Falkland Islands)", code: "en_FK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Micronesia)", code: "en_FM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (United Kingdom)", code: "en_GB", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (United Kingdom)", code: "en_GB", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Grenada)", code: "en_GD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Guernsey)", code: "en_GG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Ghana)", code: "en_GH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Gibraltar)", code: "en_GI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Gambia)", code: "en_GM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Guam)", code: "en_GU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Guyana)", code: "en_GY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Hong Kong SAR China)", code: "en_HK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Ireland)", code: "en_IE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Ireland)", code: "en_IE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Israel)", code: "en_IL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Isle of Man)", code: "en_IM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (India)", code: "en_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (India)", code: "en_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (British Indian Ocean Territory)", code: "en_IO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Jersey)", code: "en_JE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Jamaica)", code: "en_JM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Kenya)", code: "en_KE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Kiribati)", code: "en_KI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (St. Kitts & Nevis)", code: "en_KN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Cayman Islands)", code: "en_KY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (St. Lucia)", code: "en_LC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Liberia)", code: "en_LR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Lesotho)", code: "en_LS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Madagascar)", code: "en_MG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Marshall Islands)", code: "en_MH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Macau SAR China)", code: "en_MO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Northern Mariana Islands)", code: "en_MP", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Montserrat)", code: "en_MS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Malta)", code: "en_MT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Malta)", code: "en_MT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Mauritius)", code: "en_MU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Malawi)", code: "en_MW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Malaysia)", code: "en_MY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Namibia)", code: "en_NA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Norfolk Island)", code: "en_NF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Nigeria)", code: "en_NG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Netherlands)", code: "en_NL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Nauru)", code: "en_NR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Niue)", code: "en_NU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (New Zealand)", code: "en_NZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (New Zealand)", code: "en_NZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Papua New Guinea)", code: "en_PG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Philippines)", code: "en_PH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Philippines)", code: "en_PH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Pakistan)", code: "en_PK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Pitcairn Islands)", code: "en_PN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Puerto Rico)", code: "en_PR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Palau)", code: "en_PW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Rwanda)", code: "en_RW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Solomon Islands)", code: "en_SB", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Seychelles)", code: "en_SC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Sudan)", code: "en_SD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Sweden)", code: "en_SE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Singapore)", code: "en_SG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Singapore)", code: "en_SG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (St. Helena)", code: "en_SH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Slovenia)", code: "en_SI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Sierra Leone)", code: "en_SL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (South Sudan)", code: "en_SS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Sint Maarten)", code: "en_SX", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Swaziland)", code: "en_SZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Turks & Caicos Islands)", code: "en_TC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Tokelau)", code: "en_TK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Tonga)", code: "en_TO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Trinidad & Tobago)", code: "en_TT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Tuvalu)", code: "en_TV", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Tanzania)", code: "en_TZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Uganda)", code: "en_UG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (U.S. Outlying Islands)", code: "en_UM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (United States)", code: "en_US", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (United States)", code: "en_US", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (St. Vincent & Grenadines)", code: "en_VC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (British Virgin Islands)", code: "en_VG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (U.S. Virgin Islands)", code: "en_VI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Vanuatu)", code: "en_VU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Samoa)", code: "en_WS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (South Africa)", code: "en_ZA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (South Africa)", code: "en_ZA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Zambia)", code: "en_ZM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Zimbabwe)", code: "en_ZW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Esperanto", code: "eo", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish", code: "es", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Argentina)", code: "es_AR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Bolivia)", code: "es_BO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Brazil)", code: "es_BR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Belize)", code: "es_BZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Chile)", code: "es_CL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Colombia)", code: "es_CO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Costa Rica)", code: "es_CR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Cuba)", code: "es_CU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Dominican Republic)", code: "es_DO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Ceuta & Melilla", code: "es_EA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Ecuador)", code: "es_EC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Spain)", code: "es_ES", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Equatorial Guinea)", code: "es_GQ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Guatemala)", code: "es_GT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Honduras)", code: "es_HN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Canary Islands)", code: "es_IC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Mexico)", code: "es_MX", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Nicaragua)", code: "es_NI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Panama)", code: "es_PA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Peru)", code: "es_PE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Puerto Rico)", code: "es_PR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Paraguay)", code: "es_PY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (El Salvador)", code: "es_SV", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (United States)", code: "es_US", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Uruguay)", code: "es_UY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Venezuela)", code: "es_VE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Estonian", code: "et", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Estonian (Estonia)", code: "et_EE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Basque (eu)", code: "eu", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Basque (Spain)", code: "eu_ES", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ewondo", code: "ewo", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ewondo (Cameroon)", code: "ewo_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Persian", code: "fa", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Persian (Afghanistan)", code: "fa_AF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Persian (Iran)", code: "fa_IR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Fulah (Cameroon", code: "ff_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Pashto (Afghanistan)", code: "ps_AF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Fulah", code: "ff", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Fulah (Guinea)", code: "ff_GN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Fulah (Mauritania)", code: "ff_MR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Fulah (Senegal)", code: "ff_SN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Finnish", code: "fi", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Finnish (Finland)", code: "fi_FI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Filipino", code: "fil", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Filipino (Philippines)", code: "fil_PH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Faroese", code: "fo", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Faroese (Denmark)", code: "fo_DK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Faroese (Faroe Islands)", code: "fo_FO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French", code: "fr", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Belgium)", code: "fr_BE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Burkina Faso)", code: "fr_BF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Burundi)", code: "fr_BI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Benin)", code: "fr_BJ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (St. Barthélemy)", code: "fr_BL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Canada)", code: "fr_CA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Congo - Kinshasa)", code: "fr_CD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Central African Republic)", code: "fr_CF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Congo - Brazzaville)", code: "fr_CG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Switzerland)", code: "fr_CH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Côte d’Ivoire)", code: "fr_CI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Cameroon)", code: "fr_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Djibouti)", code: "fr_DJ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Algeria)", code: "fr_DZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (France)", code: "fr_FR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Gabon)", code: "fr_GA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (French Guiana)", code: "fr_GF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Guinea)", code: "fr_GN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Guadeloupe)", code: "fr_GP", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Equatorial Guinea)", code: "fr_GQ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Haiti)", code: "fr_HT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Comoros)", code: "fr_KM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Luxembourg)", code: "fr_LU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Morocco)", code: "fr_MA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Monaco)", code: "fr_MC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (St. Martin)", code: "fr_MF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Madagascar)", code: "fr_MG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Mali)", code: "fr_ML", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Martinique)", code: "fr_MQ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Mauritania)", code: "fr_MR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Mauritius)", code: "fr_MU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (New Caledonia)", code: "fr_NC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Niger)", code: "fr_NE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (French Polynesia)", code: "fr_PF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (St. Pierre & Miquelon)", code: "fr_PM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Réunion)", code: "fr_RE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Rwanda)", code: "fr_RW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Seychelles)", code: "fr_SC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Senegal)", code: "fr_SN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Syria)", code: "fr_SY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Chad)", code: "fr_TD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Togo)", code: "fr_TG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Tunisia)", code: "fr_TN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Vanuatu)", code: "fr_VU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Wallis & Futuna)", code: "fr_WF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Mayotte)", code: "fr_YT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Friulian", code: "fur", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Friulian (Italy)", code: "fur_IT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Western Frisian", code: "fy", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Western Frisian (Netherlands)", code: "fy_NL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Irish", code: "ga", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Irish", code: "ga", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Irish (Ireland)", code: "ga_IE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Irish (Ireland)", code: "ga_IE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Scottish Gaelic", code: "gd", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Scottish Gaelic (United Kingdom)", code: "gd_GB", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Galician", code: "gl", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Galician (Spain)", code: "gl_ES", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Swiss German", code: "gsw", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Swiss German (Switzerland)", code: "gsw_CH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Swiss German (France)", code: "gsw_FR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Swiss German (Liechtenstein)", code: "gsw_LI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Gujarati", code: "gu", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Gujarati (India)", code: "gu_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Gusii", code: "guz", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Gusii (Kenya)", code: "guz_KE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Manx", code: "gv", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Manx (Isle of Man)", code: "gv_IM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hausa", code: "ha", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hausa (Ghana)", code: "ha_GH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hausa (Niger)", code: "ha_NE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hausa (Nigeria)", code: "ha_NG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hawaiian", code: "haw", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hawaiian (United States)", code: "haw_US", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hebrew", code: "he", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hebrew (Israel)", code: "he_IL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hindi", code: "hi", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hindi (India)", code: "hi_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Croatian", code: "hr", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Croatian (Bosnia & Herzegovina)", code: "hr_BA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Croatian (Croatia)", code: "hr_HR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Upper Sorbian", code: "hsb", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Upper Sorbian (Germany)", code: "hsb_DE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hungarian", code: "hu", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hungarian (Hungary)", code: "hu_HU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Armenian", code: "hy", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Armenian (Armenia)", code: "hy_AM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Igbo", code: "ig", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Igbo (Nigeria)", code: "ig_NG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Sichuan Yi", code: "ii", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Sichuan Yi (China)", code: "ii_CN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Indonesian", code: "in", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Indonesian (Indonesia)", code: "in_ID", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Icelandic", code: "is", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Icelandic (Iceland)", code: "is_IS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Italian", code: "it", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Italian (Switzerland)", code: "it_CH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Italian (Italy)", code: "it_IT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Italian (San Marino)", code: "it_SM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Italian (Vatican City)", code: "it_VA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hebrew", code: "iw", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hebrew (Israel)", code: "iw_IL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Japanese", code: "ja", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Japanese (Japan)", code: "ja_JP", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ngomba", code: "jgo", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ngomba (Cameroon)", code: "jgo_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Machame", code: "jmc", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Machame (Tanzania)", code: "jmc_TZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Georgian", code: "ka", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Georgian (Georgia)", code: "ka_GE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kabyle", code: "kab", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kabyle (Algeria)", code: "kab_DZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kamba", code: "kam", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kamba (Kenya)", code: "kam_KE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Makonde", code: "kde", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Makonde (Tanzania)", code: "kde_TZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kabuverdianu", code: "kea", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kabuverdianu (Cape Verde)", code: "kea_CV", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Koyra Chiini", code: "khq", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Koyra Chiini (Mali)", code: "khq_ML", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kikuyu", code: "ki", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kikuyu (Kenya)", code: "ki_KE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kazakh", code: "kk", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kazakh (Kazakhstan)", code: "kk_KZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kako", code: "kkj", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kako (Cameroon)", code: "kkj_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kalaallisut", code: "kl", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kalaallisut (Greenland)", code: "kl_GL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kalenjin", code: "kln", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kalenjin (Kenya)", code: "kln_KE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Khmer", code: "km", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Khmer (Cambodia)", code: "km_KH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kannada", code: "kn", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kannada (India)", code: "kn_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Korean", code: "ko", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Korean", code: "ko", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Korean (North Korea)", code: "ko_KP", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Korean (South Korea)", code: "ko_KR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Korean (South Korea)", code: "ko_KR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Konkani", code: "kok", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Konkani (India)", code: "kok_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kashmiri", code: "ks", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kashmiri (India)", code: "ks_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Shambala", code: "ksb", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Shambala (Tanzania)", code: "ksb_TZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bafia", code: "ksf", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bafia (Cameroon)", code: "ksf_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Colognian", code: "ksh", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Colognian (Germany)", code: "ksh_DE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Cornish", code: "kw", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Cornish (United Kingdom)", code: "kw_GB", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kyrgyz", code: "ky", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kyrgyz (Kyrgyzstan)", code: "ky_KG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Langi", code: "lag", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Langi (Tanzania)", code: "lag_TZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Lithuanian", code: "lt", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Lithuanian (Lithuania)", code: "lt_LT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Luxembourgish", code: "lb", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Luxembourgish (Luxembourg)", code: "lb_LU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Latvian", code: "lv", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Latvian (Latvia)", code: "lv_LV", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ganda", code: "lg", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ganda (Uganda)", code: "lg_UG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Macedonian", code: "mk", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Macedonian (Macedonia)", code: "mk_MK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Malay", code: "ms", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Malay (Malaysia)", code: "ms_MY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Maltese", code: "mt", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Maltese (Malta)", code: "mt_MT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Dutch", code: "nl", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Dutch (Belgium)", code: "nl_BE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Dutch (Netherlands)", code: "nl_NL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Norwegian", code: "no", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Norwegian (Norway)", code: "no_NO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Norwegian (Norway Nynorsk)", code: "no_NO_NY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Polish", code: "pl", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Polish (Poland)", code: "pl_PL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese", code: "pt", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Angola)", code: "pt_AO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Brazil)", code: "pt_BR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Switzerland)", code: "pt_CH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Cape Verde)", code: "pt_CV", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Equatorial Guinea)", code: "pt_GQ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Guinea-Bissau)", code: "pt_GW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Luxembourg)", code: "pt_LU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Macau SAR China)", code: "pt_MO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Mozambique)", code: "pt_MZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Portugal)", code: "pt_PT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (São Tomé & Príncipe)", code: "pt_ST", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Timor-Leste)", code: "pt_TL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Romanian", code: "ro", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Romanian (Romania)", code: "ro_RO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Russian", code: "ru", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Russian (Belarus)", code: "ru_BY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Russian (Kyrgyzstan)", code: "ru_KG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Russian (Kazakhstan)", code: "ru_KZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Russian (Moldova)", code: "ru_MD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Russian (Russia)", code: "ru_RU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Russian (Ukraine)", code: "ru_UA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Slovak", code: "sk", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Slovak (Slovakia)", code: "sk_SK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Slovenian", code: "sl", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Dari (Afghanistan)", code: "prs_AF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Slovenian (Slovenia)", code: "sl_SI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Albanian", code: "sq", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Albanian (Albania)", code: "sq_AL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Serbian", code: "sr", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Serbian (Bosnia and Herzegovina)", code: "sr_BA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Serbian (Serbia and Montenegro)", code: "sr_CS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Serbian (Montenegro)", code: "sr_ME", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Serbian (Serbia)", code: "sr_RS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Swedish", code: "sv", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Swedish (Sweden)", code: "sv_SE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Thai", code: "th", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Thai (Thailand)", code: "th_TH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Thai (Thailand)", code: "th_TH_TH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Turkish", code: "tr", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Turkish (Turkey)", code: "tr_TR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ukrainian", code: "uk", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ukrainian (Ukraine)", code: "uk_UA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Vietnamese", code: "vi", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Vietnamese (Vietnam)", code: "vi_VN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Uzbek (Latin)", code: "uz", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Uzbek (Latin) (Uzbekistan)", code: "uz_UZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Uzbek (Cyrillic) (Uzbekistan)", code: "uz_UZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Uzbek (Afghanistan)", code: "uz_AF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese", code: "zh", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Simplified) (zh-Hans)", code: "zh_Hans", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Simplified, Hong Kong SAR China)", code: "zh_Hans_HK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Simplified, Macau SAR China)", code: "zh_Hans_MO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Simplified, Singapore)", code: "zh_Hans_SG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Traditional)", code: "zh_Hant", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Traditional, Hong Kong SAR China)", code: "zh_Hant_HK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Traditional, Macau SAR China)", code: "zh_Hant_MO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Traditional, Taiwan)", code: "zh_Hant_TW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Simplified, China) (zh-Hans-CN)", code: "zh_HK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Zulu", code: "zu", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Zulu (South Africa)", code: "zu_ZA", createuserid: -1, updateuserid: -1),.init(id: nil, name: "Arabic", code: "ar", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (United Arab Emirates)", code: "ar_AE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Bahrain)", code: "ar_BH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Djibouti)", code: "ar_DJ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Algeria)", code: "ar_DZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Egypt)", code: "ar_EG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Western Sahara)", code: "ar_EH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Eritrea)", code: "ar_ER", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Israel)", code: "ar_IL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Iraq)", code: "ar_IQ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Iraq)", code: "ar_IQ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Jordan)", code: "ar_JO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Jordan)", code: "ar_JO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Comoros)", code: "ar_KM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Kuwait)", code: "ar_KW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Lebanon)", code: "ar_LB", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Libya)", code: "ar_LY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Morocco)", code: "ar_MA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Mauritania)", code: "ar_MR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Oman)", code: "ar_OM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Palestinian Territories)", code: "ar_PS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Qatar)", code: "ar_QA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Saudi Arabia)", code: "ar_SA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Sudan)", code: "ar_SD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Somalia)", code: "ar_SO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (South Sudan)", code: "ar_SS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Syria)", code: "ar_SY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Chad)", code: "ar_TD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Tunisia)", code: "ar_TN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Arabic (Yemen)", code: "ar_YE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Assamese", code: "as", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Assamese (India)", code: "as_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Asu", code: "asa", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Asu (Tanzania)", code: "asa_TZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Azerbaijani", code: "az", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Azerbaijani (Cyrillic)", code: "az_Cyrl", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Azerbaijani (Cyrillic, Azerbaijan)", code: "az_Cyrl_AZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Azerbaijani (Latin)", code: "az_Latn", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Azerbaijani (Latin, Azerbaijan)", code: "az_Latn_AZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Basaa", code: "bas", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Basaa (Cameroon)", code: "bas_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Belarusian", code: "be", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Belarusian (Belarus)", code: "be_BY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bemba", code: "bem", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bemba (Zambia)", code: "bem_ZM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bena", code: "bez", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bena (Tanzania)", code: "bez_TZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bulgarian", code: "bg", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bulgarian (Bulgaria)", code: "bg_BG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bambara", code: "bm", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bambara (Mali)", code: "bm_ML", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bangla (bn)", code: "bn", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bengali", code: "bn", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bengali (Bangladesh)", code: "bn_BD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bangla (Bangladesh)", code: "bn_BD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bengali (India)", code: "bn_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bangla (India)", code: "bn_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Tibetan", code: "bo", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Tibetan (China)", code: "bo_CN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Tibetan (India)", code: "bo_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Breton", code: "br", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Breton (France)", code: "br_FR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bodo", code: "brx", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bodo (India)", code: "brx_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bosnian", code: "bs", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bosnian (Cyrillic)", code: "bs_Cyrl", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bosnian (Cyrillic, Bosnia & Herzegovina)", code: "bs_Cyrl_BA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bosnian (Latin)", code: "bs_Latn", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bosnian (Latin, Bosnia & Herzegovina)", code: "bs_Latn_BA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Catalan", code: "ca", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Catalan (Andorra)", code: "ca_AD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Catalan (Spain)", code: "ca_ES", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Catalan (France)", code: "ca_FR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Catalan (Italy)", code: "ca_IT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chechen (ce)", code: "ce", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chechen (Russia)", code: "ce_RU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chiga (cgg)", code: "cgg", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chiga (Uganda)", code: "cgg_UG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Cherokee", code: "chr", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Cherokee (United States)", code: "chr_US", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Czech", code: "cs", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Czech (Czech Republic)", code: "cs_CZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Welsh", code: "cy", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Welsh (United Kingdom)", code: "cy_GB", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Danish", code: "da", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Danish (Denmark)", code: "da_DK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Taita", code: "dav", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Taita (Kenya)", code: "dav_KE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German", code: "de", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German (Austria)", code: "de_AT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German (Belgium)", code: "de_BE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German (Switzerland)", code: "de_CH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German (Germany)", code: "de_DE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German (Italy)", code: "de_IT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German (Liechtenstein)", code: "de_LI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German (Luxembourg)", code: "de_LU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "German (Luxembourg)", code: "de_LU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Zarma", code: "dje", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Zarma (Niger)", code: "dje_NE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Lower Sorbian", code: "dsb", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Lower Sorbian (Germany)", code: "dsb_DE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Duala", code: "dua", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Duala (Cameroon)", code: "dua_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Jola-Fonyi", code: "dyo", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Jola-Fonyi (Senegal)", code: "dyo_SN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Dzongkha", code: "dz", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Dzongkha (Bhutan)", code: "dz_BT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Embu", code: "ebu", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Embu (Kenya)", code: "ebu_KE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ewe (ee)", code: "ee", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ewe (Ghana)", code: "ee_GH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ewe (Togo)", code: "ee_TG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Greek", code: "el", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Greek (Cyprus)", code: "el_CY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Greek (Greece)", code: "el_GR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English", code: "en", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Antigua & Barbuda)", code: "en_AG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Anguilla)", code: "en_AI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Anguilla)", code: "en_AI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (American Samoa)", code: "en_AS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Austria)", code: "en_AT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Australia)", code: "en_AU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Australia)", code: "en_AU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Barbados)", code: "en_BB", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Belgium)", code: "en_BE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Burundi)", code: "en_BI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Bermuda)", code: "en_BM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Bahamas)", code: "en_BS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Botswana)", code: "en_BW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Belize)", code: "en_BZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Canada)", code: "en_CA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Canada)", code: "en_CA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Cocos [Keeling] Islands)", code: "en_CC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Switzerland)", code: "en_CH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Cook Islands)", code: "en_CK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Cameroon)", code: "en_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Christmas Island)", code: "en_CX", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Cyprus)", code: "en_CY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Germany)", code: "en_DE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Diego Garcia)", code: "en_DG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Denmark)", code: "en_DK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Dominica)", code: "en_DM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Eritrea)", code: "en_ER", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Finland)", code: "en_FI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Fiji)", code: "en_FJ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Falkland Islands)", code: "en_FK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Micronesia)", code: "en_FM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (United Kingdom)", code: "en_GB", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (United Kingdom)", code: "en_GB", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Grenada)", code: "en_GD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Guernsey)", code: "en_GG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Ghana)", code: "en_GH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Gibraltar)", code: "en_GI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Gambia)", code: "en_GM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Guam)", code: "en_GU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Guyana)", code: "en_GY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Hong Kong SAR China)", code: "en_HK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Ireland)", code: "en_IE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Ireland)", code: "en_IE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Israel)", code: "en_IL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Isle of Man)", code: "en_IM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (India)", code: "en_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (India)", code: "en_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (British Indian Ocean Territory)", code: "en_IO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Jersey)", code: "en_JE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Jamaica)", code: "en_JM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Kenya)", code: "en_KE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Kiribati)", code: "en_KI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (St. Kitts & Nevis)", code: "en_KN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Cayman Islands)", code: "en_KY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (St. Lucia)", code: "en_LC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Liberia)", code: "en_LR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Lesotho)", code: "en_LS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Madagascar)", code: "en_MG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Marshall Islands)", code: "en_MH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Macau SAR China)", code: "en_MO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Northern Mariana Islands)", code: "en_MP", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Montserrat)", code: "en_MS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Malta)", code: "en_MT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Malta)", code: "en_MT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Mauritius)", code: "en_MU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Malawi)", code: "en_MW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Malaysia)", code: "en_MY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Namibia)", code: "en_NA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Norfolk Island)", code: "en_NF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Nigeria)", code: "en_NG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Netherlands)", code: "en_NL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Nauru)", code: "en_NR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Niue)", code: "en_NU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (New Zealand)", code: "en_NZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (New Zealand)", code: "en_NZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Papua New Guinea)", code: "en_PG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Philippines)", code: "en_PH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Philippines)", code: "en_PH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Pakistan)", code: "en_PK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Pitcairn Islands)", code: "en_PN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Puerto Rico)", code: "en_PR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Palau)", code: "en_PW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Rwanda)", code: "en_RW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Solomon Islands)", code: "en_SB", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Seychelles)", code: "en_SC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Sudan)", code: "en_SD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Sweden)", code: "en_SE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Singapore)", code: "en_SG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Singapore)", code: "en_SG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (St. Helena)", code: "en_SH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Slovenia)", code: "en_SI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Sierra Leone)", code: "en_SL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (South Sudan)", code: "en_SS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Sint Maarten)", code: "en_SX", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Swaziland)", code: "en_SZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Turks & Caicos Islands)", code: "en_TC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Tokelau)", code: "en_TK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Tonga)", code: "en_TO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Trinidad & Tobago)", code: "en_TT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Tuvalu)", code: "en_TV", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Tanzania)", code: "en_TZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Uganda)", code: "en_UG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (U.S. Outlying Islands)", code: "en_UM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (United States)", code: "en_US", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (United States)", code: "en_US", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (St. Vincent & Grenadines)", code: "en_VC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (British Virgin Islands)", code: "en_VG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (U.S. Virgin Islands)", code: "en_VI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Vanuatu)", code: "en_VU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Samoa)", code: "en_WS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (South Africa)", code: "en_ZA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (South Africa)", code: "en_ZA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Zambia)", code: "en_ZM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "English (Zimbabwe)", code: "en_ZW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Esperanto", code: "eo", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish", code: "es", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Argentina)", code: "es_AR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Bolivia)", code: "es_BO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Brazil)", code: "es_BR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Belize)", code: "es_BZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Chile)", code: "es_CL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Colombia)", code: "es_CO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Costa Rica)", code: "es_CR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Cuba)", code: "es_CU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Dominican Republic)", code: "es_DO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Ceuta & Melilla", code: "es_EA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Ecuador)", code: "es_EC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Spain)", code: "es_ES", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Equatorial Guinea)", code: "es_GQ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Guatemala)", code: "es_GT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Honduras)", code: "es_HN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Canary Islands)", code: "es_IC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Mexico)", code: "es_MX", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Nicaragua)", code: "es_NI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Panama)", code: "es_PA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Peru)", code: "es_PE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Puerto Rico)", code: "es_PR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Paraguay)", code: "es_PY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (El Salvador)", code: "es_SV", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (United States)", code: "es_US", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Uruguay)", code: "es_UY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Spanish (Venezuela)", code: "es_VE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Estonian", code: "et", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Estonian (Estonia)", code: "et_EE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Basque (eu)", code: "eu", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Basque (Spain)", code: "eu_ES", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ewondo", code: "ewo", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ewondo (Cameroon)", code: "ewo_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Persian", code: "fa", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Persian (Afghanistan)", code: "fa_AF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Persian (Iran)", code: "fa_IR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Fulah (Cameroon", code: "ff_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Pashto (Afghanistan)", code: "ps_AF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Fulah", code: "ff", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Fulah (Guinea)", code: "ff_GN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Fulah (Mauritania)", code: "ff_MR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Fulah (Senegal)", code: "ff_SN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Finnish", code: "fi", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Finnish (Finland)", code: "fi_FI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Filipino", code: "fil", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Filipino (Philippines)", code: "fil_PH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Faroese", code: "fo", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Faroese (Denmark)", code: "fo_DK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Faroese (Faroe Islands)", code: "fo_FO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French", code: "fr", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Belgium)", code: "fr_BE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Burkina Faso)", code: "fr_BF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Burundi)", code: "fr_BI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Benin)", code: "fr_BJ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (St. Barthélemy)", code: "fr_BL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Canada)", code: "fr_CA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Congo - Kinshasa)", code: "fr_CD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Central African Republic)", code: "fr_CF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Congo - Brazzaville)", code: "fr_CG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Switzerland)", code: "fr_CH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Côte d’Ivoire)", code: "fr_CI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Cameroon)", code: "fr_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Djibouti)", code: "fr_DJ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Algeria)", code: "fr_DZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (France)", code: "fr_FR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Gabon)", code: "fr_GA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (French Guiana)", code: "fr_GF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Guinea)", code: "fr_GN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Guadeloupe)", code: "fr_GP", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Equatorial Guinea)", code: "fr_GQ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Haiti)", code: "fr_HT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Comoros)", code: "fr_KM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Luxembourg)", code: "fr_LU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Morocco)", code: "fr_MA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Monaco)", code: "fr_MC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (St. Martin)", code: "fr_MF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Madagascar)", code: "fr_MG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Mali)", code: "fr_ML", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Martinique)", code: "fr_MQ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Mauritania)", code: "fr_MR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Mauritius)", code: "fr_MU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (New Caledonia)", code: "fr_NC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Niger)", code: "fr_NE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (French Polynesia)", code: "fr_PF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (St. Pierre & Miquelon)", code: "fr_PM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Réunion)", code: "fr_RE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Rwanda)", code: "fr_RW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Seychelles)", code: "fr_SC", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Senegal)", code: "fr_SN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Syria)", code: "fr_SY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Chad)", code: "fr_TD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Togo)", code: "fr_TG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Tunisia)", code: "fr_TN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Vanuatu)", code: "fr_VU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Wallis & Futuna)", code: "fr_WF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "French (Mayotte)", code: "fr_YT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Friulian", code: "fur", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Friulian (Italy)", code: "fur_IT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Western Frisian", code: "fy", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Western Frisian (Netherlands)", code: "fy_NL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Irish", code: "ga", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Irish", code: "ga", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Irish (Ireland)", code: "ga_IE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Irish (Ireland)", code: "ga_IE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Scottish Gaelic", code: "gd", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Scottish Gaelic (United Kingdom)", code: "gd_GB", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Galician", code: "gl", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Galician (Spain)", code: "gl_ES", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Swiss German", code: "gsw", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Swiss German (Switzerland)", code: "gsw_CH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Swiss German (France)", code: "gsw_FR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Swiss German (Liechtenstein)", code: "gsw_LI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Gujarati", code: "gu", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Gujarati (India)", code: "gu_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Gusii", code: "guz", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Gusii (Kenya)", code: "guz_KE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Manx", code: "gv", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Manx (Isle of Man)", code: "gv_IM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hausa", code: "ha", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hausa (Ghana)", code: "ha_GH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hausa (Niger)", code: "ha_NE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hausa (Nigeria)", code: "ha_NG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hawaiian", code: "haw", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hawaiian (United States)", code: "haw_US", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hebrew", code: "he", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hebrew (Israel)", code: "he_IL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hindi", code: "hi", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hindi (India)", code: "hi_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Croatian", code: "hr", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Croatian (Bosnia & Herzegovina)", code: "hr_BA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Croatian (Croatia)", code: "hr_HR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Upper Sorbian", code: "hsb", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Upper Sorbian (Germany)", code: "hsb_DE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hungarian", code: "hu", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hungarian (Hungary)", code: "hu_HU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Armenian", code: "hy", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Armenian (Armenia)", code: "hy_AM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Igbo", code: "ig", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Igbo (Nigeria)", code: "ig_NG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Sichuan Yi", code: "ii", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Sichuan Yi (China)", code: "ii_CN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Indonesian", code: "in", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Indonesian (Indonesia)", code: "in_ID", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Icelandic", code: "is", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Icelandic (Iceland)", code: "is_IS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Italian", code: "it", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Italian (Switzerland)", code: "it_CH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Italian (Italy)", code: "it_IT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Italian (San Marino)", code: "it_SM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Italian (Vatican City)", code: "it_VA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hebrew", code: "iw", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Hebrew (Israel)", code: "iw_IL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Japanese", code: "ja", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Japanese (Japan)", code: "ja_JP", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ngomba", code: "jgo", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ngomba (Cameroon)", code: "jgo_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Machame", code: "jmc", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Machame (Tanzania)", code: "jmc_TZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Georgian", code: "ka", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Georgian (Georgia)", code: "ka_GE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kabyle", code: "kab", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kabyle (Algeria)", code: "kab_DZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kamba", code: "kam", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kamba (Kenya)", code: "kam_KE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Makonde", code: "kde", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Makonde (Tanzania)", code: "kde_TZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kabuverdianu", code: "kea", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kabuverdianu (Cape Verde)", code: "kea_CV", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Koyra Chiini", code: "khq", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Koyra Chiini (Mali)", code: "khq_ML", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kikuyu", code: "ki", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kikuyu (Kenya)", code: "ki_KE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kazakh", code: "kk", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kazakh (Kazakhstan)", code: "kk_KZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kako", code: "kkj", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kako (Cameroon)", code: "kkj_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kalaallisut", code: "kl", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kalaallisut (Greenland)", code: "kl_GL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kalenjin", code: "kln", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kalenjin (Kenya)", code: "kln_KE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Khmer", code: "km", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Khmer (Cambodia)", code: "km_KH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kannada", code: "kn", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kannada (India)", code: "kn_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Korean", code: "ko", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Korean", code: "ko", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Korean (North Korea)", code: "ko_KP", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Korean (South Korea)", code: "ko_KR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Korean (South Korea)", code: "ko_KR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Konkani", code: "kok", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Konkani (India)", code: "kok_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kashmiri", code: "ks", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kashmiri (India)", code: "ks_IN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Shambala", code: "ksb", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Shambala (Tanzania)", code: "ksb_TZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bafia", code: "ksf", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Bafia (Cameroon)", code: "ksf_CM", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Colognian", code: "ksh", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Colognian (Germany)", code: "ksh_DE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Cornish", code: "kw", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Cornish (United Kingdom)", code: "kw_GB", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kyrgyz", code: "ky", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Kyrgyz (Kyrgyzstan)", code: "ky_KG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Langi", code: "lag", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Langi (Tanzania)", code: "lag_TZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Lithuanian", code: "lt", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Lithuanian (Lithuania)", code: "lt_LT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Luxembourgish", code: "lb", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Luxembourgish (Luxembourg)", code: "lb_LU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Latvian", code: "lv", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Latvian (Latvia)", code: "lv_LV", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ganda", code: "lg", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ganda (Uganda)", code: "lg_UG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Macedonian", code: "mk", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Macedonian (Macedonia)", code: "mk_MK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Malay", code: "ms", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Malay (Malaysia)", code: "ms_MY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Maltese", code: "mt", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Maltese (Malta)", code: "mt_MT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Dutch", code: "nl", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Dutch (Belgium)", code: "nl_BE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Dutch (Netherlands)", code: "nl_NL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Norwegian", code: "no", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Norwegian (Norway)", code: "no_NO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Norwegian (Norway Nynorsk)", code: "no_NO_NY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Polish", code: "pl", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Polish (Poland)", code: "pl_PL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese", code: "pt", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Angola)", code: "pt_AO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Brazil)", code: "pt_BR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Switzerland)", code: "pt_CH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Cape Verde)", code: "pt_CV", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Equatorial Guinea)", code: "pt_GQ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Guinea-Bissau)", code: "pt_GW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Luxembourg)", code: "pt_LU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Macau SAR China)", code: "pt_MO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Mozambique)", code: "pt_MZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Portugal)", code: "pt_PT", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (São Tomé & Príncipe)", code: "pt_ST", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Portuguese (Timor-Leste)", code: "pt_TL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Romanian", code: "ro", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Romanian (Romania)", code: "ro_RO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Russian", code: "ru", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Russian (Belarus)", code: "ru_BY", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Russian (Kyrgyzstan)", code: "ru_KG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Russian (Kazakhstan)", code: "ru_KZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Russian (Moldova)", code: "ru_MD", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Russian (Russia)", code: "ru_RU", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Russian (Ukraine)", code: "ru_UA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Slovak", code: "sk", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Slovak (Slovakia)", code: "sk_SK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Slovenian", code: "sl", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Dari (Afghanistan)", code: "prs_AF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Slovenian (Slovenia)", code: "sl_SI", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Albanian", code: "sq", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Albanian (Albania)", code: "sq_AL", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Serbian", code: "sr", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Serbian (Bosnia and Herzegovina)", code: "sr_BA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Serbian (Serbia and Montenegro)", code: "sr_CS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Serbian (Montenegro)", code: "sr_ME", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Serbian (Serbia)", code: "sr_RS", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Swedish", code: "sv", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Swedish (Sweden)", code: "sv_SE", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Thai", code: "th", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Thai (Thailand)", code: "th_TH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Thai (Thailand)", code: "th_TH_TH", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Turkish", code: "tr", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Turkish (Turkey)", code: "tr_TR", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ukrainian", code: "uk", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Ukrainian (Ukraine)", code: "uk_UA", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Vietnamese", code: "vi", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Vietnamese (Vietnam)", code: "vi_VN", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Uzbek (Latin)", code: "uz", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Uzbek (Latin) (Uzbekistan)", code: "uz_UZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Uzbek (Cyrillic) (Uzbekistan)", code: "uz_UZ", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Uzbek (Afghanistan)", code: "uz_AF", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese", code: "zh", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Simplified) (zh-Hans)", code: "zh_Hans", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Simplified, Hong Kong SAR China)", code: "zh_Hans_HK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Simplified, Macau SAR China)", code: "zh_Hans_MO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Simplified, Singapore)", code: "zh_Hans_SG", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Traditional)", code: "zh_Hant", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Traditional, Hong Kong SAR China)", code: "zh_Hant_HK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Traditional, Macau SAR China)", code: "zh_Hant_MO", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Traditional, Taiwan)", code: "zh_Hant_TW", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Chinese (Simplified, China) (zh-Hans-CN)", code: "zh_HK", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Zulu", code: "zu", createuserid: -1, updateuserid: -1), + .init(id: nil, name: "Zulu (South Africa)", code: "zu_ZA", createuserid: -1, updateuserid: -1) + ] + for mdl in mdls{ + try await mdl.save(on: database) + } + + } + + func revert(on database: Database) async throws { + try await mdlLocale.query(on: database).delete() + } + } + public static func ObjQuery(req: Request) async throws -> QueryBuilder{ + + let query = mdlLocale.query(on: req.db) + .with(\.$values) + + if let x = req.parameters.get("x"){ + let decryptedString = try CustomCrypto.DecryptString(input: x) + let array = decryptedString.components(separatedBy: ":") + ///This call is the standard get by id call + if (array.count == 1){ + let id = Int(array[0])! + return query.filter(\.$id == id) + } + ///Optional else if if there are multiple parameters in the call + ///You must include an else for each call that has parameters + ///Need to check the endpoint to get the right filter statements + ///else if(x.count == 2){ + /// let username = x[0] + /// let password = x[1] + /// return query.filter(\.$username == username).filter(\.$password == password) + ///} + else{ + throw Abort(.badRequest) + } + + } + else{ + return query + } + } +} + diff --git a/Sources/App/Models/mdlTblValue.swift b/Sources/App/Models/mdlTblValue.swift index 744b960..79dcc94 100644 --- a/Sources/App/Models/mdlTblValue.swift +++ b/Sources/App/Models/mdlTblValue.swift @@ -1,8 +1,218 @@ // -// File.swift -// +// mdlTblValue.swift // -// Created by Michiel Carman on 5/14/24. // +// Created by Michiel Carman on 2/16/24. +// + +import Fluent +import Vapor import Foundation +import FluentKit + +final class mdlTblValue: Model, Content { + static let schema = "tblValue" + + @ID(custom: "id", generatedBy: .database) var id: Int? + + @Field(key: "field") var field: String? + @Field(key: "value") var value: String? + + @Timestamp(key: "createDate", on: .create) var createdate: Date? + @Field(key: "createUserId") var createuserid: Int? + @Timestamp(key: "updateDate", on: .update) var updatedate: Date? + @Field(key: "updateUserId") var updateuserid: Int? + + @Parent(key: "localeId") var locale: mdlLocale + @OptionalParent(key: "categoryId") var category: mdlCategory? + @OptionalParent(key: "comparisonTypeId") var comparisontype: mdlComparisonType? + @OptionalParent(key: "compartmentId") var compartment: mdlCompartment? + @OptionalParent(key: "compartmentLocationId") var compartmentlocation: mdlCompartmentLocation? + @OptionalParent(key: "contactTypeId") var contacttype: mdlContactType? + @OptionalParent(key: "dataTypeId") var datatype: mdlDataType? + @OptionalParent(key: "divisiontId") var division: mdlDivision? + @OptionalParent(key: "equipmentTypeId") var equipmenttype: mdlEquipmentType? + @OptionalParent(key: "fluidId") var fluid: mdlFluid? + @OptionalParent(key: "fuelId") var fuel: mdlFuel? + @OptionalParent(key: "gateId") var gate: mdlGate? + @OptionalParent(key: "incompleteReasonId") var incompletereason: mdlIncompleteReason? + @OptionalParent(key: "inputTypeId") var inputtype: mdlInputType? + @OptionalParent(key: "inspectionItemId") var inspectionitem: mdlInspectionItem? + @OptionalParent(key: "inspectionItemResponseId") var inspectionitemresponse: mdlInspectionItemResponse? + @OptionalParent(key: "inspectionLevelId") var inspectionlevel: mdlInspectionLevel? + @OptionalParent(key: "inspectionTypeId") var inspectiontype: mdlInspectionType? + @OptionalParent(key: "itemId") var item: mdlItem? + @OptionalParent(key: "itemResponseTypeId") var itemresponsetype: mdlItemResponseType? + + init() { } + + init(id: Int? = nil, + field: String? = nil, + value: String? = nil, + localid: Int, + categoryid: Int? = nil, + comparisontypeid: Int? = nil, + compartmentid: Int? = nil, + compartmentlocationid: Int? = nil, + contacttypeid: Int? = nil, + datatypeid: Int? = nil, + divisionid: Int? = nil, + equipmenttypeid: Int? = nil, + fluidid: Int? = nil, + gateid: Int? = nil, + fuelid: Int? = nil, + incompletereasonid: Int? = nil, + inputtypeid: Int? = nil, + inspectionitemid: Int? = nil, + inspectionitemresponseid: Int? = nil, + inspectionlevelid: Int? = nil, + inspectiontypeid: Int? = nil, + itemid: Int? = nil, + itemresponsetypeid: Int? = nil, + createuserid: Int? = nil, + updateuserid: Int? = nil + ) { + self.id = id + self.field = field + self.value = value + self.$locale.$id.value = localid + self.$category.$id.value = categoryid! + self.$comparisontype.$id.value = comparisontypeid! + self.$compartment.$id.value = compartmentid! + self.$compartmentlocation.$id.value = compartmentlocationid! + self.$contacttype.$id.value = contacttypeid! + self.$datatype.$id.value = datatypeid! + self.$division.$id.value = divisionid! + self.$equipmenttype.$id.value = equipmenttypeid! + self.$fluid.$id.value = fluidid! + self.$fuel.$id.value = fuelid! + self.$gate.$id.value = gateid! + self.$incompletereason.$id.value = incompletereasonid! + self.$inputtype.$id.value = inputtypeid! + self.$inspectionitem.$id.value = inspectionitemid! + self.$inspectionitemresponse.$id.value = inspectionitemresponseid! + self.$inspectionlevel.$id.value = inspectionlevelid! + self.$inspectiontype.$id.value = inspectiontypeid! + self.$item.$id.value = itemid! + self.$itemresponsetype.$id.value = itemresponsetypeid! + self.createuserid = createuserid + self.updateuserid = updateuserid + } +} +extension mdlTblValue{ + struct Create: AsyncMigration { + func prepare(on database: Database) async throws { + try await database.schema("tblValue") + .field("id", .int, .identifier(auto: true)) + .field("field", .string) + .field("value", .string) + .field("localeId", .int, .references("locale", "id")) + .field("categoryId", .int, .references("category", "id")) + .field("comparisonTypeId", .int, .references("comparisonType", "id")) + .field("createDate", .datetime) + .field("createUserId", .int) + .field("updateDate", .datetime) + .field("updateUserId", .int) + .create() + } + + func revert(on database: Database) async throws { + try await database.schema("tblValue").delete() + } + } + struct AddOptionalParents: AsyncMigration { + func prepare(on database: Database) async throws { + try await database.schema("tblValue") + .field("compartmentId", .int, .references("compartment", "id")) + .field("compartmentLocationId", .int, .references("compartmentLocation", "id")) + .field("contactTypeId", .int, .references("contactType", "id")) + .field("dataTypeId", .int, .references("dataType", "id")) + .field("divisionId", .int, .references("division", "id")) + .field("equipmentTypeId", .int, .references("equipmentType", "id")) + .field("fluidId", .int, .references("fluid", "id")) + .field("fuelId", .int, .references("fuel", "id")) + .field("gateId", .int, .references("gate", "id")) + .field("incompleteReasonId", .int, .references("incompleteReason", "id")) + .field("inputTypeId", .int, .references("inputType", "id")) + .field("inspectionItemId", .int, .references("inspectionItemId", "id")) + .field("inspectionItemResponseId", .int, .references("inspectionItemResposne", "id")) + .field("inspectionLevelId", .int, .references("inspectionLevel", "id")) + .field("inspectionTypeId", .int, .references("inspectionType", "id")) + .field("itemId", .int, .references("item", "id")) + .field("itemResponseTypeId", .int, .references("itemResponseType", "id")) + .update() + } + + func revert(on database: Database) async throws { + try await database.schema("tblValue") + .deleteField("compartmentId") + .deleteField("compartmentLocationId") + .deleteField("contactTypeId") + .deleteField("dataTypeId") + .deleteField("divisionId") + .deleteField("equipmentTypeId") + .deleteField("fluidId") + .deleteField("fuelId") + .deleteField("gateId") + .deleteField("incompleteReasonId") + .deleteField("inputTypeId") + .deleteField("inspectionItemId") + .deleteField("inspectionItemResponseId") + .deleteField("inspectionLevelId") + .deleteField("inspectionTypeId") + .deleteField("itemResponseTypeId") + .update() + } + } + public static func ObjQuery(req: Request) async throws -> QueryBuilder{ + + let query = mdlTblValue.query(on: req.db) + .with(\.$locale) + .with(\.$category) + .with(\.$comparisontype) + .with(\.$compartment) + .with(\.$compartmentlocation) + .with(\.$contacttype) + .with(\.$datatype) + .with(\.$division) + .with(\.$equipmenttype) + .with(\.$fluid) + .with(\.$fuel) + .with(\.$gate) + .with(\.$incompletereason) + .with(\.$inputtype) + .with(\.$inspectionitem) + .with(\.$inspectionitemresponse) + .with(\.$inspectionlevel) + .with(\.$inspectiontype) + .with(\.$item) + .with(\.$itemresponsetype) + + if let x = req.parameters.get("x"){ + let decryptedString = try CustomCrypto.DecryptString(input: x) + let array = decryptedString.components(separatedBy: ":") + ///This call is the standard get by id call + if (array.count == 1){ + let id = Int(array[0])! + return query.filter(\.$id == id) + } + ///Optional else if if there are multiple parameters in the call + ///You must include an else for each call that has parameters + ///Need to check the endpoint to get the right filter statements + ///else if(x.count == 2){ + /// let username = x[0] + /// let password = x[1] + /// return query.filter(\.$username == username).filter(\.$password == password) + ///} + else{ + throw Abort(.badRequest) + } + + } + else{ + return query + } + } +} + diff --git a/Sources/App/configure.swift b/Sources/App/configure.swift index d8adaf4..b440cef 100644 --- a/Sources/App/configure.swift +++ b/Sources/App/configure.swift @@ -6,6 +6,14 @@ import Foundation // configures your application public func configure(_ app: Application) async throws { + switch app.environment{ + case .testing: + app.passwords.use(.plaintext) + case .development: + app.passwords.use(.plaintext) + default: + app.passwords.use(.bcrypt) + } // uncomment to serve files from /Public folder app.middleware.use(CORSMiddleware()) let corsConfiguration = CORSMiddleware.Configuration( @@ -31,6 +39,13 @@ public func configure(_ app: Application) async throws { let timeout = HTTPClient.Configuration.Timeout(connect: .seconds(300), read: .seconds(300) ) app.http.client.configuration.timeout = timeout + + app.migrations.add(mdlSysOfMeasure.Create()) + app.migrations.add(mdlSysOfMeasure.Seed()) + app.migrations.add(mdlSysCategory.Create()) + app.migrations.add(mdlSysCategory.Seed()) + app.migrations.add(mdlSysUOM.Create()) + app.migrations.add(mdlSysUOM.Seed()) app.migrations.add(mdlCategory.Create()) app.migrations.add(mdlComparisonType.Create()) @@ -159,6 +174,10 @@ public func configure(_ app: Application) async throws { //app.migrations.add(mdlInspection.Update()) app.migrations.add(mdlInspection.Mod3()) app.migrations.add(mdlInspectionCategory.Mod1()) + app.migrations.add(mdlUser.Customer()) + app.migrations.add(mdlLocale.Create()) + app.migrations.add(mdlLocale.Seed()) + app.migrations.add(mdlTblValue.Create()) app.logger.logLevel = .debug diff --git a/Sources/App/routes.swift b/Sources/App/routes.swift index cd47eb6..cea40f3 100644 --- a/Sources/App/routes.swift +++ b/Sources/App/routes.swift @@ -11,7 +11,7 @@ func routes(_ app: Application) throws { app.routes.caseInsensitive = true app.routes.defaultMaxBodySize = "64mb"; let baseApp = app.grouped("api").grouped("v2.0") - let version = Bundle.main.object(forInfoDictionaryKey: "CFBundleVersion") as? String + _ = Bundle.main.object(forInfoDictionaryKey: "CFBundleVersion") as? String baseApp.get { req async in "Connexion Mobile Services Version 2.0" }