Example #1
0
        /// <summary>
        /// Computes the previous zman time.
        /// </summary>
        /// <param name="previousTime">The previous time.</param>
        /// <returns></returns>
        private DateTime?ComputePreviousZmanTime(DateTime?previousTime)
        {
            if (!previousTime.HasValue)
            {
                return(null);
            }

            var zmanTime = Location.GetZman(previousTime.Value, ExecuteOnZman);

            if (zmanTime > previousTime)
            {
                zmanTime = Location.GetZman(previousTime.Value.AddDays(-1), ExecuteOnZman);
            }

            return(zmanTime);
        }
Example #2
0
        /// <summary>
        /// Computes the next zman time.
        /// </summary>
        /// <param name="nextTime">The next time.</param>
        /// <returns></returns>
        private DateTime?ComputeNextZmanTime(DateTime?nextTime)
        {
            if (!nextTime.HasValue)
            {
                return(null);
            }

            var zmanTime = Location.GetZman(nextTime.Value, ExecuteOnZman);

            if (zmanTime < nextTime)
            {
                zmanTime = Location.GetZman(nextTime.Value.AddDays(1), ExecuteOnZman);
            }

            return(zmanTime);
        }