74 lines
1.6 KiB
Swift
74 lines
1.6 KiB
Swift
//
|
|
// Lang.swift
|
|
// Befund
|
|
//
|
|
// Created by Irakli Abetschkhrischwili on 26.05.22.
|
|
// Copyright © 2022 MVZ Dr. Stein und Kollegen. All rights reserved.
|
|
|
|
import Foundation
|
|
|
|
extension Core
|
|
{
|
|
public class Lang
|
|
{
|
|
/**
|
|
* Available languages for UI
|
|
*/
|
|
public enum Languages: Int
|
|
{
|
|
case DE
|
|
case EN
|
|
}
|
|
|
|
/**
|
|
* Default language parameter (German is default)
|
|
*/
|
|
private static var _locale: String = "de_DE"
|
|
private static var _dict: NSMutableDictionary? = nil
|
|
|
|
/**
|
|
* Sets the languahe
|
|
*/
|
|
public static func SetLanguage(lang: Core.Lang.Languages)
|
|
{
|
|
switch(lang)
|
|
{
|
|
case .DE:
|
|
_dict = Core.Lang.DE.GetDict()
|
|
_locale = "de_DE"
|
|
break
|
|
|
|
case .EN:
|
|
_dict = Core.Lang.EN.GetDict()
|
|
_locale = "en_GB"
|
|
break
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Returns a translated text for a key
|
|
*/
|
|
public static func Get(key: String) -> String
|
|
{
|
|
var result: String = key
|
|
|
|
if(_dict != nil)
|
|
{
|
|
let value = _dict!.value(forKey: key) as? String
|
|
|
|
if(value != nil)
|
|
{
|
|
result = value!
|
|
}
|
|
}
|
|
|
|
return result
|
|
}
|
|
|
|
public static func GetLocale() -> String
|
|
{
|
|
return _locale
|
|
}
|
|
}
|
|
}
|