| 123456789101112131415161718192021222324252627282930313233343536373839404142 | namespace Comal.Classes{#if LICENCEENABLED    public class LicenseKey : GlobalConfigurationSettings    {        public String Data { get; set; }                public void Encode(String machineid, DateTime renewed, DateTime expiry)        {            Dictionary<String, String> data = new Dictionary<string, string>();            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<Dictionary<String, String>>(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}
 |