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); } }
protected void RenderCalendarProperties(CalendarViewBase view) { CalendarAdapterBase calendarAdapter = view.CalendarAdapter; this.RenderValue(this.Output, "sFId", calendarAdapter.IdentityString); this.RenderValue(this.Output, "fHRtL", calendarAdapter.UserCanReadItem); this.RenderValue(this.Output, "Title", SanitizedHtmlString.GetSanitizedStringWithoutEncoding(calendarAdapter.CalendarTitle)); this.RenderValue(this.Output, "sDD", view.FolderDateDescription); this.RenderValue(this.Output, "fCC", calendarAdapter.DataSource.UserCanCreateItem); CalendarAdapter calendarAdapter2 = calendarAdapter as CalendarAdapter; this.RenderValue(this.Output, "iSharedType", (int)calendarAdapter.DataSource.SharedType); if (calendarAdapter2 != null) { if (calendarAdapter2.PromotedFolderId != null) { this.RenderValue(this.Output, "sPromotedFolderId", calendarAdapter2.PromotedFolderId.ToBase64String()); } this.RenderValue(this.Output, "sLegacyDN", calendarAdapter2.LegacyDN); if (calendarAdapter2.DataSource.SharedType == SharedType.InternalFreeBusy) { this.RenderValue(this.Output, "sCalendarOwnerDisplayName", calendarAdapter2.CalendarOwnerDisplayName); } this.RenderValue(this.Output, "iOlderExchangeCalendarType", (int)calendarAdapter2.OlderExchangeSharedCalendarType); this.RenderColor(calendarAdapter2); this.RenderValue(this.Output, "fPublishedOut", calendarAdapter2.IsPublishedOut); if (calendarAdapter2.IsExternalSharedInFolder) { if (calendarAdapter2.LastAttemptTime != ExDateTime.MinValue) { this.RenderValue(this.Output, "dtSyncTime", calendarAdapter2.LastAttemptTime.ToString("g", this.SessionContext.UserCulture)); } if (calendarAdapter2.LastSuccessSyncTime != ExDateTime.MinValue) { this.RenderValue(this.Output, "dtSuccessSyncTime", calendarAdapter2.LastSuccessSyncTime.ToString("g", this.SessionContext.UserCulture)); } } this.RenderValue(this.Output, "fArchive", calendarAdapter2.IsInArchiveMailbox); if (calendarAdapter2.DataSource.SharedType == SharedType.WebCalendar) { this.RenderValue(this.Output, "sWebCalUrl", calendarAdapter2.WebCalendarUrl); return; } } else if (calendarAdapter is PublishedCalendarAdapter) { PublishedCalendarAdapter publishedCalendarAdapter = (PublishedCalendarAdapter)calendarAdapter; this.RenderValue(this.Output, "sPublishRange", SanitizedHtmlString.Format(LocalizedStrings.GetNonEncoded(-1428371010), new object[] { publishedCalendarAdapter.PublishedFromDateTime.ToShortDateString(), publishedCalendarAdapter.PublishedToDateTime.ToShortDateString() })); } }
public void GetViewPayload() { OwaStoreObjectId[] array = (OwaStoreObjectId[])base.GetParameter("fId"); bool flag = base.IsParameterSet("rfrshGSCalFldId") && (bool)base.GetParameter("rfrshGSCalFldId"); if (flag) { foreach (OwaStoreObjectId owaStoreObjectId in array) { if (owaStoreObjectId.IsGSCalendar) { ExchangePrincipal exchangePrincipal; base.UserContext.DelegateSessionManager.TryGetExchangePrincipal(owaStoreObjectId.MailboxOwnerLegacyDN, out exchangePrincipal); if (exchangePrincipal != null) { try { MailboxSession mailboxSession; if (Utilities.TryGetDefaultFolderId(base.UserContext, exchangePrincipal, DefaultFolderType.Calendar, out mailboxSession) == null) { mailboxSession.RefreshDefaultFolder(DefaultFolderType.Calendar); } goto IL_A6; } catch (OwaSharedFromOlderVersionException) { goto IL_A6; } } ExTraceGlobals.CalendarCallTracer.TraceError <string>((long)this.GetHashCode(), "Cannot find exchangePrincipal for {0}", owaStoreObjectId.MailboxOwnerLegacyDN); } IL_A6 :; } } if (base.IsParameterSet("nfId")) { OwaStoreObjectId[] array3 = (OwaStoreObjectId[])base.GetParameter("nfId"); if (array.Length + array3.Length > 5) { throw new OwaInvalidRequestException("Too many folders"); } if (base.UserContext.IsPushNotificationsEnabled) { foreach (OwaStoreObjectId folderId in array3) { CalendarAdapter.KeepMapiNotification(base.UserContext, folderId); } } } this.RenderPayload(array); }
protected void RenderColor(CalendarAdapter calendarAdapter) { int num = -2; if (this.sessionContext.CanActAsOwner) { num = calendarAdapter.CalendarColor; if (!CalendarColorManager.IsColorIndexValid(num)) { num = -2; } } this.RenderValue(this.Output, "iClr", CalendarColorManager.GetClientColorIndex(num)); }
protected void RenderEmptyCalendar(CalendarAdapterBase calendarAdapterBase, int index) { if (index > 0) { this.Output.Write(","); } this.Output.Write("{"); this.RenderValue(this.Output, "sFId", calendarAdapterBase.IdentityString); if (calendarAdapterBase is CalendarAdapter) { CalendarAdapter calendarAdapter = (CalendarAdapter)calendarAdapterBase; this.RenderValue(this.Output, "iOlderExchangeCalendarType", (int)calendarAdapter.OlderExchangeSharedCalendarType); } this.Output.Write("\"fHRtL\": 0}"); }
protected override async void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); switch (IoC.UserInfo.Employee.PrivledgeLevel) { case "Admin": { SetContentView(Resource.Layout.CalendarList_Admin); eventItemAdapter = new EventItemAdapter(this, Resource.Layout.CalendarList_Admin); break; } case "Moderator": { SetContentView(Resource.Layout.CalendarList_Moderator); eventItemAdapter = new EventItemAdapter(this, Resource.Layout.CalendarList_Moderator); break; } default: { SetContentView(Resource.Layout.CalendarList_User); eventItemAdapter = new EventItemAdapter(this, Resource.Layout.CalendarList_User); break; } } await RefreshView(); FindViewById(Resource.Id.loadingPanel).Visibility = ViewStates.Gone; _supporttoolbar = FindViewById<Android.Support.V7.Widget.Toolbar>(Resource.Id.ToolBar); _drawer = FindViewById<DrawerLayout>(Resource.Id.DrawerLayout); _navigationview = FindViewById<NavigationView>(Resource.Id.nav_view); ToolbarCreator toolbarCreator = new ToolbarCreator(); toolbarCreator.setupToolbar(_supporttoolbar, _drawer, _navigationview, Resource.String.event_list, this); myEventList = eventItemAdapter.getEventsByEmployeeID(); DateTime date = IoC.selectedDate; myEventList = filterByDate(date); calendarListView = FindViewById<ListView>(Resource.Id.listCalendar); myCalendarAdapter = new CalendarAdapter(this, myEventList); calendarListView.Adapter = myCalendarAdapter; RegisterForContextMenu(calendarListView); }
private void PopulateCalendar() { DateTime dt = new DateTime(userDateTime.Year, userDateTime.Month, 1); // Thứ trong hệ thống bắt đầu từ Chủ nhật, còn ở Việt Nam là thứ 2 nên phải đưa giá trị về trước (-1) int firstDayOfWeekOfMonth = (int)dt.DayOfWeek - 1; int days = DateTime.DaysInMonth(userDateTime.Year, userDateTime.Month); int userDay = firstDayOfWeekOfMonth + userDateTime.Day - 1; if (monthHadChanged) { monthArr.Clear(); int i = 0; // Các ngày trước của tháng for (; i < firstDayOfWeekOfMonth; i++) { monthArr.Add(new Calendar(dt.AddDays(-firstDayOfWeekOfMonth + i), true)); } // Các ngày trong tháng for (i = 0; i < days; i++) { monthArr.Add(new Calendar(dt.AddDays(i))); } // Các ngày sau của tháng if (monthArr.Count % 7 != 0) { int after = 7 - monthArr.Count % 7; after += i; for (; i < after; i++) { monthArr.Add(new Calendar(dt.AddDays(i), true)); } } monthHadChanged = false; } CalendarAdapter arrayAdapter = new CalendarAdapter((Activity)view.Context, Resource.Layout.grid_calendar_layout, monthArr, userDay); gridView.Adapter = arrayAdapter; gridView.OnItemClickListener = this; ShowInfo(userDay); }
public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { var view = inflater.Inflate(Resource.Layout.CalendarFragment, container, false); InitializeViews(view); timeService = Mvx.Resolve <ITimeService>(); var schedulerProvider = Mvx.Resolve <ISchedulerProvider>(); calendarLayoutManager = new CalendarLayoutManager(); calendarRecyclerView.SetLayoutManager(calendarLayoutManager); var displayMetrics = new DisplayMetrics(); Activity.WindowManager.DefaultDisplay.GetMetrics(displayMetrics); var calendarAdapter = new CalendarAdapter(view.Context, timeService, displayMetrics.WidthPixels); calendarRecyclerView.SetTimeService(timeService); calendarRecyclerView.SetAdapter(calendarAdapter); timeService .CurrentDateTimeObservable .DistinctUntilChanged(offset => offset.Day) .ObserveOn(schedulerProvider.MainScheduler) .Subscribe(configureHeaderDate) .DisposedBy(DisposeBag); ViewModel.HasCalendarsLinked.SelectUnit() .Merge(ViewModel.CalendarItems.CollectionChange.SelectUnit()) .SelectMany(ViewModel.HasCalendarsLinked) .Subscribe(hasCalendarsLinked => { calendarAdapter.UpdateItems(ViewModel.CalendarItems, hasCalendarsLinked); calendarRecyclerView.SetHasTwoColumns(hasCalendarsLinked); }) .DisposedBy(DisposeBag); ViewModel.HasCalendarsLinked .Subscribe(headerCalendarEventsView.Rx().IsVisible()) .DisposedBy(DisposeBag); ViewModel.CalendarItems.CollectionChange .SelectUnit() .StartWith(Unit.Default) .Select(_ => calculateCalendarEventsCount()) .ObserveOn(schedulerProvider.MainScheduler) .Subscribe(updateCalendarEventsCount) .DisposedBy(DisposeBag); ViewModel.TimeTrackedToday .Subscribe(headerTimeEntriesTextView.Rx().TextObserver()) .DisposedBy(DisposeBag); ViewModel.HasCalendarsLinked .Invert() .Subscribe(headerLinkCalendarsButton.Rx().IsVisible()) .DisposedBy(DisposeBag); headerLinkCalendarsButton.Rx().Tap() .Subscribe(ViewModel.LinkCalendars.Inputs) .DisposedBy(DisposeBag); calendarAdapter.CalendarItemTappedObservable .Subscribe(ViewModel.OnItemTapped.Inputs) .DisposedBy(DisposeBag); calendarRecyclerView.EmptySpansTouchedObservable .Where(_ => !calendarAdapter.NeedsToClearItemInEditMode()) .Subscribe(ViewModel.CreateTimeEntryAtOffset.Inputs) .DisposedBy(DisposeBag); ViewModel.ShouldShowOnboarding .Subscribe(onboardingVisibilityChanged) .DisposedBy(DisposeBag); return(view); }
internal CalendarAdapter[] GetAdapters(ExDateTime[] days, bool addOwaConditionAdvisor) { if (days == null) { throw new ArgumentNullException("days"); } if (days.Length == 0) { throw new ArgumentException("Length of days cannot be 0."); } if (this.adapters == null) { List <CalendarAdapter> list = new List <CalendarAdapter>(); List <CalendarAdapter> list2 = new List <CalendarAdapter>(); foreach (OwaStoreObjectId owaStoreObjectId in this.folderIds) { CalendarAdapter calendarAdapter; if (owaStoreObjectId.Equals(this.PropertyFolderId)) { calendarAdapter = new CalendarAdapter(this.userContext, this.propertyFolder); } else { calendarAdapter = new CalendarAdapter(this.userContext, owaStoreObjectId); } try { calendarAdapter.LoadData(CalendarUtilities.QueryProperties, days, addOwaConditionAdvisor, false); } catch (Exception) { calendarAdapter.Dispose(); calendarAdapter = null; list.AddRange(list2); foreach (CalendarAdapter calendarAdapter2 in list) { if (calendarAdapter2 != null) { calendarAdapter2.Dispose(); } } throw; } if (calendarAdapter.DataSource is AvailabilityDataSource) { list2.Add(calendarAdapter); } else { list.Add(calendarAdapter); } } if (list2.Count > 0) { CalendarAdapter[] array2 = list2.ToArray(); FreeBusyQueryResult[] array3 = AvailabilityDataSource.BatchLoadData(this.userContext, array2, CalendarAdapterBase.ConvertDateTimeArrayToDateRangeArray(days)); if (array3 != null) { for (int j = 0; j < array2.Length; j++) { AvailabilityDataSource availabilityDataSource = (AvailabilityDataSource)array2[j].DataSource; availabilityDataSource.LoadFromQueryResult(array3[j]); } } list.AddRange(list2); } this.adapters = list.ToArray(); } foreach (CalendarAdapter calendarAdapter3 in this.adapters) { calendarAdapter3.SaveCalendarTypeFromOlderExchangeAsNeeded(); } return(this.adapters); }
// Token: 0x06002740 RID: 10048 RVA: 0x000DFB70 File Offset: 0x000DDD70 protected override void OnLoad(EventArgs e) { ExTraceGlobals.CalendarCallTracer.TraceDebug(0L, "CalendarView.OnLoad"); this.Infobar = new Infobar(); this.readingPaneMarkupBegin = SanitizedHtmlString.Format("{0}{1}{2}", new object[] { "<iframe allowtransparency id=\"ifCalRP\" frameborder=\"0\" src=\"", base.UserContext.GetBlankPage(), "\"" }); string queryStringParameter = Utilities.GetQueryStringParameter(base.Request, "id", false); OwaStoreObjectId owaStoreObjectId; if (queryStringParameter != null) { owaStoreObjectId = OwaStoreObjectId.CreateFromString(queryStringParameter); } 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"); } string queryStringParameter2 = Utilities.GetQueryStringParameter(base.Request, "d", false); ExDateTime[] days = null; if (queryStringParameter2 != null) { try { days = new ExDateTime[] { DateTimeUtilities.ParseIsoDate(queryStringParameter2, base.UserContext.TimeZone).Date }; } catch (OwaParsingErrorException) { ExTraceGlobals.CalendarTracer.TraceDebug <string>(0L, "Invalid date provided on URL '{0}'", queryStringParameter2); throw new OwaInvalidRequestException("Invalid date on URL"); } } if (base.UserContext.IsWebPartRequest) { string text = Utilities.GetQueryStringParameter(base.Request, "view", false); if (string.IsNullOrEmpty(text)) { text = WebPartUtilities.GetDefaultView("IPF.Appointment"); } if (string.Equals(text, "daily", StringComparison.OrdinalIgnoreCase)) { this.viewType = CalendarViewType.Min; } else if (string.CompareOrdinal(text, "monthly") == 0) { this.viewType = CalendarViewType.Monthly; } else { this.viewType = CalendarViewType.Weekly; } } this.calendarAdapter = new CalendarAdapter(base.UserContext, owaStoreObjectId); this.calendarAdapter.LoadData(CalendarUtilities.QueryProperties, days, true, ref this.viewType, out this.viewWidth, out this.readingPanePosition); if (!this.calendarAdapter.UserCanReadItem) { return; } owaStoreObjectId = this.calendarAdapter.FolderId; using (CalendarAdapter calendarAdapter = new CalendarAdapter(base.UserContext, owaStoreObjectId)) { if (this.viewType == CalendarViewType.Monthly) { this.contentView = new CalendarView.ContentView(new DailyView(base.UserContext, calendarAdapter), new MonthlyView(base.UserContext, this.calendarAdapter), false); } else { this.contentView = new CalendarView.ContentView(new DailyView(base.UserContext, this.calendarAdapter), new MonthlyView(base.UserContext, calendarAdapter), true); } } if (this.viewType != CalendarViewType.Monthly) { string queryStringParameter3 = Utilities.GetQueryStringParameter(base.Request, "srp", false); int num; if (!string.IsNullOrEmpty(queryStringParameter3) && int.TryParse(queryStringParameter3, out num)) { this.readingPanePosition = ((num != 0) ? ReadingPanePosition.Right : ReadingPanePosition.Off); this.requestReadingPanePosition = this.readingPanePosition; } } else { this.readingPanePosition = ReadingPanePosition.Off; } string queryStringParameter4 = Utilities.GetQueryStringParameter(base.Request, "sid", false); if (queryStringParameter4 != null) { OwaStoreObjectId selectedItemId = OwaStoreObjectId.CreateFromString(queryStringParameter4); this.contentView.MainView.SelectedItemId = selectedItemId; } OwaSingleCounters.CalendarViewsLoaded.Increment(); base.OnLoad(e); }
// Token: 0x06000148 RID: 328 RVA: 0x0000A320 File Offset: 0x00008520 public DailyView(UserContext userContext, CalendarAdapter calendarAdapter) : base(userContext, calendarAdapter) { }
// 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); }
public MyCalendarPagerAdapter(CalendarAdapter calendarAdapter, MyCalendarView calendarView) { _calendarView = calendarView; _calendarAdapter = calendarAdapter; }