Esempio n. 1
0
        /// <summary>
        /// Returns a string similar to "x days", "x minutes", "x hours", "x months"
        /// where x is the time till the host's license expires/needs reactivating.
        /// </summary>
        /// <param name="timeTillExpire"></param>
        /// <param name="capAtTenYears">Set to true will return Messages.UNLIMITED for timespans over 3653 days</param>
        /// <returns></returns>
        public static string GetLicenseTimeLeftString(TimeSpan timeTillExpire, bool capAtTenYears)
        {
            if (timeTillExpire.Ticks < 0)
            {
                return("");
            }

            if (capAtTenYears && LicenseStatus.IsInfinite(timeTillExpire))
            {
                return(Messages.UNLIMITED);
            }

            return(timeTillExpire.FuzzyTime());
        }
Esempio n. 2
0
        /// <summary>
        /// The expiry date of a host's license
        /// </summary>
        /// <param name="referenceDate">Should be UTC!</param>
        public static string HostLicenseExpiryString(Host h, bool longFormat, DateTime referenceDate)
        {
            if (h.license_params != null && h.license_params.ContainsKey("expiry"))
            {
                TimeSpan timeDiff = h.LicenseExpiryUTC.Subtract(referenceDate);

                if (!LicenseStatus.IsInfinite(timeDiff))
                {
                    var expiryString = "";
                    Program.Invoke(Program.MainWindow, delegate
                    {
                        expiryString = DateTimeToString(h.LicenseExpiryUTC.ToLocalTime(),
                                                        longFormat ? Messages.DATEFORMAT_DMY_LONG : Messages.DATEFORMAT_DMY, true);
                    });
                    return(expiryString);
                }

                return(Messages.LICENSE_NEVER);
            }

            return(Messages.GENERAL_UNKNOWN);
        }