public async Task <bool> SaveStripeConnect(Guid eventId, string auth_Code, bool isStripeConnect) { try { var session = await _sessionProvider.Get(); StripeConnectAccountCommandResult EventData = await _commandSender.Send <StripeConnectAccountCommand, StripeConnectAccountCommandResult>(new StripeConnectAccountCommand { AuthorizationCode = auth_Code, ExtraCommisionPercentage = 25, ExtraCommisionFlat = 0, channels = Channels.Feel, EventId = eventId, IsStripeConnect = isStripeConnect, ModifiedBy = session.User != null ? session.User.AltId : Guid.Parse("7390283B-4A32-4860-BA3D-B57F1E5F2DAC") }); if (EventData.Success) { return(true); } else { return(false); } } catch (Exception e) { return(false); } }
public async Task <ApproveModaratePlaceResponseViewModel> ApprovePlace(Guid placeAltID, bool isDeactivate, long eventId, FIL.Contracts.Enums.EventStatus eventStatus) { try { string _host = _httpContextAccessor.HttpContext.Request.Host.Host; var session = await _sessionProvider.Get(); ApproveModeratePlaceCommandResult placeCalendarResult = await _commandSender.Send <ApproveModeratePlaceCommand, ApproveModeratePlaceCommandResult>(new ApproveModeratePlaceCommand { PlaceAltId = placeAltID, IsDeactivateFeels = isDeactivate, EventStatus = eventStatus, EventId = eventId, UpdateAlgolia = (_host.Contains("dev") || _host.Contains("localhost")) ? false : true }); if (placeCalendarResult.MasterEventTypeId == Contracts.Enums.MasterEventType.Online && !isDeactivate && eventStatus == 0) { var url = _siteUrlsProvider.GetSiteUrl(_siteIdProvider.GetSiteId()); Email email = new Email(); email.To = placeCalendarResult.Email; email.From = "FeelitLIVE <*****@*****.**>"; email.TemplateName = "creatoreventapprove"; email.Variables = new Dictionary <string, object> { ["eventimage"] = "<img width='100%' alt='Event banner' src='https://s3-us-west-2.amazonaws.com/feelaplace-cdn/images/places/about/" + placeAltID.ToString().ToUpper() + "-about.jpg' />", ["eventlink"] = !placeCalendarResult.IsTokanize ? $"{url}/place/{placeCalendarResult.ParentCategorySlug}/{placeCalendarResult.Slug}/{placeCalendarResult.SubCategorySlug}" : $"{url}/event/{placeCalendarResult.Slug}/{placeCalendarResult.PlaceAltId.ToString().ToLower()}" }; await _accountEmailSender.Send(email); } if (placeCalendarResult.MasterEventTypeId == Contracts.Enums.MasterEventType.Online && eventStatus == EventStatus.WaitingForApproval && placeCalendarResult.Success && !FIL.Contracts.Utils.Constant.TestEmail.TestEmails.Contains(session.User.Email) && !_host.Contains("localhost") && !_host.Contains("dev") ) { StripeConnectAccountCommandResult EventData = await _commandSender.Send <StripeConnectAccountCommand, StripeConnectAccountCommandResult>(new StripeConnectAccountCommand { AuthorizationCode = "", ExtraCommisionPercentage = 25, ExtraCommisionFlat = 0, channels = Channels.Feel, EventId = placeCalendarResult.PlaceAltId, IsStripeConnect = false, ModifiedBy = session.User != null ? session.User.AltId : Guid.Parse("7390283B-4A32-4860-BA3D-B57F1E5F2DAC") }); List <EmailTemplate> emailTemplates = new List <EmailTemplate>(); emailTemplates.Add(new EmailTemplate { TemplateName = "fapcreateevent", To = EventData.Email }); emailTemplates.Add(new EmailTemplate { TemplateName = "FILSubmitEventForApprovalAlertToCorp", To = "*****@*****.**" }); foreach (var emailTemplate in emailTemplates) { StringBuilder ticketCategories = new StringBuilder(); foreach (var eventTicketDetail in EventData.EventTicketDetail) { var eventTicketAttribute = EventData.EventTicketAttribute.Where(s => s.EventTicketDetailId == eventTicketDetail.Id).FirstOrDefault(); var ticketCategory = EventData.TicketCategories.Where(s => s.Id == eventTicketDetail.TicketCategoryId).FirstOrDefault(); ticketCategories.Append("<tr>"); ticketCategories.Append($"<td style='font-family: Verdana, Geneva, Tahoma, sans-serif; font-size: 14px; line-height: 26px; color: #333;' width='200'>{ticketCategory.Name}: </td> <td style='font-family: Verdana, Geneva, Tahoma, sans-serif; font-size: 14px; line-height: 26px; color: #333;'>{EventData.CurrencyType.Code} {eventTicketAttribute.Price}</td> "); ticketCategories.Append("</tr>"); } Email email = new Email(); email.To = emailTemplate.To; email.From = "FeelitLIVE <*****@*****.**>"; email.TemplateName = emailTemplate.TemplateName; email.Variables = new Dictionary <string, object> { ["eventimage"] = "<img width='100%' alt='Event banner' src='https://s3-us-west-2.amazonaws.com/feelaplace-cdn/images/places/about/" + EventData.Event.AltId.ToString().ToUpper() + "-about.jpg' />", ["eventname"] = EventData.Event.Name, ["eventdatetime"] = $"{EventData.EventDetail.StartDateTime.ToString("MMM dd, yyyy").ToUpper()} {EventData.DayTimeMappings.StartTime}", ["ticketcategories"] = ticketCategories.ToString(), }; await _accountEmailSender.Send(email); } } return(new ApproveModaratePlaceResponseViewModel { Success = true }); } catch (Exception e) { return(new ApproveModaratePlaceResponseViewModel { Success = false }); } }