Example #1
0
        public void GetEventList()
        {
            OwaStoreObjectId folderId = (OwaStoreObjectId)base.GetParameter("fId");

            ExDateTime[]     days     = (ExDateTime[])base.GetParameter("days");
            CalendarViewType viewType = (CalendarViewType)base.GetParameter("vt");
            int  startHour            = (int)base.GetParameter("SH");
            int  endHour        = (int)base.GetParameter("EH");
            bool workingDayOnly = false;

            if (base.IsParameterSet("wo"))
            {
                workingDayOnly = (bool)base.GetParameter("wo");
            }
            using (CalendarAdapter calendarAdapter = new CalendarAdapter(base.UserContext, folderId))
            {
                int num;
                ReadingPanePosition readingPanePosition;
                calendarAdapter.LoadData(CalendarUtilities.PrintQueryProperties, days, false, startHour, endHour, ref viewType, out num, out readingPanePosition);
                if (!calendarAdapter.UserCanReadItem)
                {
                    throw new OwaInvalidRequestException("no read access to the calendar");
                }
                PrintEventList printEventList = new PrintEventList(base.UserContext, calendarAdapter, viewType, workingDayOnly);
                printEventList.RenderView(this.SanitizingWriter);
            }
        }
Example #2
0
        // Token: 0x060029FE RID: 10750 RVA: 0x000EB600 File Offset: 0x000E9800
        protected override void OnLoad(EventArgs e)
        {
            string queryStringParameter = Utilities.GetQueryStringParameter(base.Request, "vt", false);
            int    num = 1;

            if (!string.IsNullOrEmpty(queryStringParameter) && (!int.TryParse(queryStringParameter, out num) || num < 1 || num >= 7))
            {
                throw new OwaInvalidRequestException("View type error");
            }
            this.viewType = (CalendarViewType)num;
            string queryStringParameter2 = Utilities.GetQueryStringParameter(base.Request, "wo", false);

            if (queryStringParameter2 == "1" || this.viewType == CalendarViewType.WorkWeek)
            {
                this.workingDayOnly = true;
            }
            this.days = Utilities.GetQueryStringParameterDateTimeArray(base.Request, "d", base.SessionContext.TimeZone, false, 7);
            if (this.days == null || this.days.Length == 0)
            {
                this.days = new ExDateTime[]
                {
                    ExDateTime.Now.Date
                };
            }
            string queryStringParameter3 = Utilities.GetQueryStringParameter(base.Request, "st", false);
            string queryStringParameter4 = Utilities.GetQueryStringParameter(base.Request, "et", false);

            if (!string.IsNullOrEmpty(queryStringParameter3))
            {
                int.TryParse(queryStringParameter3, out this.startTime);
            }
            if (!string.IsNullOrEmpty(queryStringParameter4))
            {
                int.TryParse(queryStringParameter4, out this.endTime);
            }
            if (this.startTime >= this.endTime || this.startTime < 0 || this.endTime > 24)
            {
                throw new OwaInvalidRequestException("start time and end time must be in range and start time must early than end time");
            }
            if (this.workingDayOnly)
            {
                if (this.viewType == CalendarViewType.Weekly)
                {
                    this.viewType = CalendarViewType.WorkWeek;
                }
                else if (this.viewType == CalendarViewType.WeeklyAgenda)
                {
                    this.viewType = CalendarViewType.WorkWeeklyAgenda;
                }
            }
            if (this.viewType == CalendarViewType.Min)
            {
                string queryStringParameter5 = Utilities.GetQueryStringParameter(base.Request, "rn", false);
                if (queryStringParameter5 == "1")
                {
                    this.renderNotes = true;
                }
            }
            string queryStringParameter6 = Utilities.GetQueryStringParameter(base.Request, "el", false);

            if (!string.IsNullOrEmpty(queryStringParameter6) && queryStringParameter6 == "1")
            {
                this.printEventList = true;
            }
            string queryStringParameter7 = Utilities.GetQueryStringParameter(base.Request, "id", false);

            if (base.SessionContext is AnonymousSessionContext)
            {
                PublishedCalendarAdapter publishedCalendarAdapter = new PublishedCalendarAdapter((AnonymousSessionContext)base.SessionContext);
                publishedCalendarAdapter.LoadData(CalendarUtilities.QueryProperties, this.days, this.startTime, this.endTime, this.viewType);
                this.calendarAdapter = publishedCalendarAdapter;
            }
            else
            {
                OwaStoreObjectId owaStoreObjectId;
                if (queryStringParameter7 != null)
                {
                    owaStoreObjectId = OwaStoreObjectId.CreateFromString(queryStringParameter7);
                }
                else
                {
                    ExTraceGlobals.CalendarTracer.TraceDebug(0L, "folder Id is null, using default folder");
                    owaStoreObjectId = base.UserContext.CalendarFolderOwaId;
                }
                if (owaStoreObjectId == null)
                {
                    throw new OwaInvalidRequestException("Invalid folder id");
                }
                CalendarAdapter calendarAdapter = new CalendarAdapter(base.UserContext, owaStoreObjectId);
                calendarAdapter.LoadData(this.printEventList ? CalendarUtilities.PrintQueryProperties : CalendarUtilities.QueryProperties, this.days, false, this.startTime, this.endTime, ref this.viewType, out this.viewWidth, out this.readingPanePosition);
                this.calendarAdapter = calendarAdapter;
            }
            if (!this.calendarAdapter.UserCanReadItem)
            {
                return;
            }
            base.OnLoad(e);
        }