Example #1
0
        public DateTime GetLocalUserDate(DateTime utcDateTime)
        {
            IPrincipal   currentUser  = this.currentUserProvider.GetCurrentUser();
            TimeZoneInfo userTimeZone = currentUser.GetTimeZone();

            return(utcDateTime.ToLocalUserDate(userTimeZone));
        }
Example #2
0
        public TimeFrame GetLocalUserTimeFrame(TimeFrame utcTimeFrame)
        {
            IPrincipal   currentUser  = this.currentUserProvider.GetCurrentUser();
            TimeZoneInfo userTimeZone = currentUser.GetTimeZone();

            TimeSpan  utcOffset      = userTimeZone.BaseUtcOffset;
            TimeFrame localUserFrame = new TimeFrame
            {
                DayOfWeek = utcTimeFrame.DayOfWeek,
                BeginHour = utcTimeFrame.BeginHour + utcOffset.Hours,
                EndHour   = utcTimeFrame.EndHour + utcOffset.Hours
            };

            if (localUserFrame.BeginHour >= 24)
            {
                localUserFrame.DayOfWeek  = (DayOfWeek)(((int)localUserFrame.DayOfWeek + 1) % CONST_DaysInWeek);
                localUserFrame.BeginHour -= 24;
                localUserFrame.EndHour   -= 24;
            }

            if (localUserFrame.EndHour >= 24)
            {
                localUserFrame.EndHour -= 24;
            }

            return(localUserFrame);
        }
Example #3
0
        public DateTime GetUtcDate(DateTime localDateTime)
        {
            IPrincipal   currentUser  = this.currentUserProvider.GetCurrentUser();
            TimeZoneInfo timeZoneInfo = currentUser.GetTimeZone();

            return(localDateTime.ToUtcDate(timeZoneInfo));
        }