namespace Comal.Classes { #if LICENCEENABLED public class LicenseKey : GlobalConfigurationSettings { public String Data { get; set; } public void Encode(String machineid, DateTime renewed, DateTime expiry) { Dictionary data = new Dictionary(); data["machineid"] = machineid; data["renewed"] = renewed.ToString("o"); data["expiry"] = expiry.ToString("o"); Data = Encryption.Encrypt(Serialization.Serialize(data), "(!Th3@Qu1ck#Br0wn$F0xJump5%0v3r^th3&L4zy*d0g)"); } public bool Decode(out string machineid, out DateTime renewed, out DateTime expiry) { try { String json = Encryption.Decrypt(Data, "(!Th3@Qu1ck#Br0wn$F0xJump5%0v3r^th3&L4zy*d0g)"); var data = Serialization.Deserialize>(json); machineid = data["machineid"]; renewed = data.ContainsKey("renewed") ? DateTime.Parse(data["renewed"]) : DateTime.MinValue; expiry = DateTime.Parse(data["expiry"]); return true; } catch { machineid = ""; renewed = DateTime.MinValue; expiry = DateTime.MinValue; } return false; } } #endif }