Ejemplo n.º 1
0
        public async Task <bool> SessionWaitingEmail(string emailid, SessionBookingData data, HttpContext context)
        {
            bool   status          = false;
            string strEmailSubject = "Session Booked Successfully.";

            strEmailSubject = _iconfiguration.GetValue <string>("AuthMessageSenderOptions:SessionBooked");
            var homeUrl           = _iconfiguration.GetValue <string>("AuthMessageSenderOptions:StaggingUrl");
            var MemberSessionsUrl = _iconfiguration.GetValue <string>("AuthMessageSenderOptions:MemberSessionsUrl");

            try
            {
                string directory  = $"{Directory.GetCurrentDirectory()}{@"\wwwroot"}";
                var    emailHtml  = System.IO.File.ReadAllText(directory + "/Templates/SessionAddToWaitingEmail.html");
                string logoPath   = context.Request.Scheme + "://" + context.Request.Host + context.Request.PathBase + "//images//sessionsLogoBlack.png";
                string newsletter = context.Request.Scheme + "://" + context.Request.Host + context.Request.PathBase + "//images//newsletter.png";

                emailHtml = emailHtml.Replace("{{HOME}}", homeUrl);
                emailHtml = emailHtml.Replace("{{Cancelbooking}}", homeUrl + "?redirectUrl=" + MemberSessionsUrl + data.SessionGuid);
                emailHtml = emailHtml.Replace("{{logo}}", logoPath);
                emailHtml = emailHtml.Replace("{{BookingDate}}", data.BookingDate.ToString("MM-dd-yyyy"));
                emailHtml = emailHtml.Replace("{{SessionTitle}}", data.SessionTitle);
                emailHtml = emailHtml.Replace("{{SessionTime}}", data.SessionTime.Value.ToShortTimeString());
                emailHtml = emailHtml.Replace("{{SessionType}}", data.SessionType);
                emailHtml = emailHtml.Replace("{{SessionTopic}}", data.SessionTopic);
                await _iEmailSenderService.SendEmailAsync(_iconfiguration.GetValue <string>("AuthMessageSenderOptions:SendGridEmail"), emailid, "Session added in waiting list Successfully.", emailHtml);

                status = true;
                return(status);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public async Task <IActionResult> SessionBookingDetails(Guid guid, int userId)
        {
            JsonResponse <SessionBookingData> objResult = new JsonResponse <SessionBookingData>();

            try
            {
                HttpContext        context = HttpContext;
                SessionBookingData result  = await this.practitionerService.SessionBookingDetails(guid, userId);

                objResult.Data    = result;
                objResult.Status  = StaticResource.SuccessStatusCode;
                objResult.Message = StaticResource.SuccessMessage;
                return(new OkObjectResult(objResult));
            }
            catch (Exception ex)
            {
                var data = new SessionBookingData();
                data.IsBooked = false;
                HttpContext.RiseError(ex);
                objResult.Data    = data;
                objResult.Status  = StaticResource.FailStatusCode;
                objResult.Message = StaticResource.FailMessage;
            }
            return(new OkObjectResult(objResult));
        }
 protected void AssertSessionBooking(SessionBookingData booking, int?studentCapacity, bool isOnlineBookable, int bookingCount = 0)
 {
     Assert.That(booking, Is.Not.Null);
     Assert.That(booking.studentCapacity, Is.EqualTo(studentCapacity));
     Assert.That(booking.isOnlineBookable, Is.EqualTo(isOnlineBookable));
     Assert.That(booking.bookings, Is.Not.Null);
     Assert.That(booking.bookings.Count, Is.EqualTo(bookingCount));
 }
Ejemplo n.º 4
0
        public async Task <string> SessionBookedReminderEmail(string emailid, SessionBookingData data, HttpContext context, string subject, string template)
        {
            string status          = "";
            string strEmailSubject = "Session Reminder.";

            strEmailSubject = _iconfiguration.GetValue <string>("AuthMessageSenderOptions:SessionBooked");
            var homeUrl           = _iconfiguration.GetValue <string>("AuthMessageSenderOptions:StaggingUrl");
            var MemberSessionsUrl = _iconfiguration.GetValue <string>("AuthMessageSenderOptions:MemberSessionsUrl");

            try
            {
                string directory  = $"{Directory.GetCurrentDirectory()}{@"\wwwroot"}";
                var    emailHtml  = template;
                string logoPath   = context.Request.Scheme + "://" + context.Request.Host + context.Request.PathBase + "//images//sessionsLogoBlack.png";
                string newsletter = context.Request.Scheme + "://" + context.Request.Host + context.Request.PathBase + "//images//newsletter.png";

                emailHtml = emailHtml.Replace("{{HOME}}", homeUrl);
                emailHtml = emailHtml.Replace("{{Cancelbooking}}", homeUrl + "?redirectUrl=" + MemberSessionsUrl + data.SessionGuid);
                emailHtml = emailHtml.Replace("{{logo}}", logoPath);
                emailHtml = emailHtml.Replace("{{BookingDate}}", data.BookingDate.ToString("MM-dd-yyyy"));
                emailHtml = emailHtml.Replace("{{SessionTitle}}", data.SessionTitle);
                emailHtml = emailHtml.Replace("{{SessionDate}}", data.SessionDate.Value.ToString("MM-dd-yyyy"));
                emailHtml = emailHtml.Replace("{{SessionTime}}", data.SessionTime.Value.ToShortTimeString());
                emailHtml = emailHtml.Replace("{{SessionType}}", data.SessionType);
                emailHtml = emailHtml.Replace("{{SessionTopic}}", data.SessionTopic);
                emailHtml = emailHtml.Replace("{{Description}}", data.SessionShotDescription);
                emailHtml = emailHtml.Replace("{{PractitionerName}}", data.PractitionerName);

                await _iEmailSenderService.SendEmailAsync(_iconfiguration.GetValue <string>("AuthMessageSenderOptions:SendGridEmail"), emailid, subject, emailHtml);

                status = emailHtml;

                return(status);
            }
            catch (Exception ex)
            {
                throw;
            }
        }