Exemplo n.º 1
0
        /// <summary>
        ///     Verifying the user license is still active and listing feature based on the
        /// </summary>

        //public void GetFeatureList()
        //{
        //    String jsonData = common.GetJsonDataFromFile("LicenseData.txt");
        //    if (String.IsNullOrEmpty(jsonData)) return;
        //    var licenseDetails = JsonConvert.DeserializeObject<UserLicenseJsonData>(jsonData);
        //    var validLienseList = licenseDetails;
        //    foreach (var ld in licenseDetails.LicenseList)
        //        if (ld.ExpireDate.Date > DateTime.Today.Date)
        //            foreach (var feature in ld.Type.FeatureList)
        //            {
        //                if (!SingletonLicense.Instance.FeatureList.Contains(feature))
        //                    SingletonLicense.Instance.FeatureList.Add(feature);
        //            }
        //        else
        //            //Code is used to remove the Subscription which is expired
        //            validLienseList.LicenseList.Remove(ld);

        //    SingletonLicense.Instance.LicenseData = validLienseList;
        //}

        /// <summary>
        ///    To get the feature list information for login user.
        /// </summary>
        public void GetFeatureList()
        {
            List <UserLicense> userLicense = SingletonLicense.Instance.Context.UserLicense.ToList().FindAll(l => l.UserId == SingletonLicense.Instance.User.UserId);
            LicenseJsonData    data        = new LicenseJsonData();

            foreach (var ld in userLicense)
            {
                if (ld.ExpirationDate.Date > DateTime.Today.Date)
                {
                    foreach (var feature in ld.License.LicenseType.FeatureList)
                    {
                        if (!SingletonLicense.Instance.FeatureList.Contains(feature))
                        {
                            SingletonLicense.Instance.FeatureList.Add(feature);
                        }
                    }
                    LicenseDetails details = new LicenseDetails();
                    details.ActivationDate = ld.ActivationDate;
                    details.ExpireDate     = ld.ExpirationDate;
                    data.LicenseList.Add(details);
                }
            }

            SingletonLicense.Instance.LicenseData = data;
        }
 /// <summary>
 /// Constructor logic
 /// </summary>
 public SingletonLicense()
 {
     FeatureList = new List <Feature>();
     Context     = new LicenseAppDBContext();
     LicenseData = new LicenseJsonData();
 }