private async Task AddEventToCalendar()
        {
            if (!await CalendarService.RequestPermissions())
            {
                await Shell.Current.DisplayAlert(LN.AddingToCalendarTitle, LN.InsufficientRights, LN.Ok);

                return;
            }

            var calendar = await CalendarService.GetCalendar();

            if (calendar == null)
            {
                // User didn't choose calendar
                return;
            }

            var  calendarEvent = CalendarService.GenerateCalendarEvent(Event, EventNumber, EventsCount);
            bool isAdded       = await CalendarService.AddOrUpdateEvent(calendar, calendarEvent);

            if (!isAdded)
            {
                await Shell.Current.CurrentPage.DisplayAlert(LN.AddingToCalendarTitle, LN.AddingEventToCalendarFail, LN.Ok);

                return;
            }

            // Displaying toast and closing popup at the same time
            await Task.WhenAll(
                Shell.Current.CurrentPage.DisplayToastAsync(LN.AddingEventToCalendarSuccess),
                ClosePopup()
                );
        }