Пример #1
0
 protected PageViewModel(PageViewModelContext context)
 {
     Site               = context.Site;
     Section            = context.Section;
     PropertiesProvider = context.PropertiesProvider;
     LinkGenerator      = context.LinkGenerator;
 }
Пример #2
0
 protected BaseSiteMapNodeService(IHttpContextAccessor httpContextAccessor,
                                  IBioRepository <T> repository,
                                  LinkGenerator linkGenerator)
 {
     Site          = httpContextAccessor.HttpContext.Features.Get <CurrentSiteFeature>().Site;
     Repository    = repository;
     LinkGenerator = linkGenerator;
 }
Пример #3
0
 public PageViewModelContext(LinkGenerator linkGenerator, PropertiesProvider propertiesProvider,
                             Entities.Site site, Section section = null)
 {
     LinkGenerator      = linkGenerator;
     PropertiesProvider = propertiesProvider;
     Site    = site;
     Section = section;
 }
Пример #4
0
 private void SetNextDigest(Entities.Site S)
 {
     if (!S.NextDigest.HasValue)
     {
         S.NextDigest = NextMonth(DateTime.UtcNow);
     }
     else
     {
         S.NextDigest = NextMonth(S.NextDigest.Value);
     }
 }
Пример #5
0
        public static void SaveSite(int siteId, int clientId, string siteName, string salesForceId)
        {
            using (var dc = new LicenseManagerClassesDataContext())
            {
                Entities.Site s = dc.Sites.SingleOrDefault(x => x.ID == siteId);
                s.SiteName     = siteName;
                s.ClientID     = clientId;
                s.SalesForceId = salesForceId;

                dc.SubmitChanges();
            }
        }
Пример #6
0
        private void SendSiteDigest(Entities.Site S)
        {
            const string nl = "<br />";

            if (S.NextDigest.HasValue && DateTime.UtcNow < S.NextDigest.Value)
            {
                return;
            }

            var subject = string.Format("Monthly Report Digest for {0}", S.Name);

            int month = S.NextDigest.HasValue ? S.NextDigest.Value.AddMonths(-1).Month : DateTime.UtcNow.AddMonths(-1).Month;
            int year  = S.NextDigest.HasValue ? S.NextDigest.Value.AddMonths(-1).Year : DateTime.UtcNow.AddMonths(-1).Year;

            var reportUrl = string.Format("<a href=\"{0}/Reports?from={1}&to={2}&site={3}\">All Reports for {4}</a>",
                                          Settings.Default.HostUrl,
                                          new DateTime(year, month, 1).ToShortDateString(),
                                          new DateTime(year, month, DateTime.DaysInMonth(year, month)).ToShortDateString(),
                                          S.Id,
                                          S.Name);

            var oobUrl = string.Format("<a href=\"{0}/Reports/OutOfBounds?site={1}\">Out of Acceptable Range Report for {2}</a>", Settings.Default.HostUrl, S.Id, S.Name);

            var body = new StringBuilder();

            body.AppendLine(Context.Settings.First().Value);
            body.AppendLine(nl);
            body.AppendLine(nl);
            body.AppendLine(reportUrl);
            body.AppendLine(nl);
            body.AppendLine(oobUrl);
            body.AppendLine(nl);
            body.AppendLine(nl);
            body.AppendLine("{0}");

            var subscribers = new List <Tuple <string, string> >();

            foreach (var subscription in Context.ReportSubscriptions.Where(rs => rs.Site.Id == S.Id).ToList())
            {
                subscription.UnsubscribeAuthToken = KeyGenerator.GetUniqueKey(128);

                var unsubscribeUrl = string.Format("<a href=\"{0}/Reports/Unsubscribe?id={1}&token={2}\">Unsubscribe to this email</a>", Settings.Default.HostUrl, subscription.Id, subscription.UnsubscribeAuthToken);

                subscribers.Add(new Tuple <string, string>(subscription.User.Email, unsubscribeUrl));
            }

            Context.SaveChanges();

            //foreach (var s in subscribers)
            //    Send(s.Item1, string.Empty, string.Empty, subject, string.Format(body.ToString(), s.Item2));
        }
Пример #7
0
        public static int CreateSite(int clientId, string siteName, string salesForceId)
        {
            using (var dc = new LicenseManagerClassesDataContext())
            {
                Entities.Site s = new Entities.Site();
                s.SiteName     = siteName;
                s.ClientID     = clientId;
                s.SalesForceId = salesForceId;

                dc.Sites.InsertOnSubmit(s);
                dc.SubmitChanges();

                return(s.ID);
            }
        }
Пример #8
0
        public async Task Invoke(HttpContext context)
        {
            Entities.Site site = null;
            try
            {
                var repository = context.RequestServices.GetRequiredService <SitesRepository>();
                site = await repository.GetByIdAsync(_options.SiteId);
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, "Error in site middleware: {errorText}", ex.ToString());
            }

            if (site == null)
            {
                throw new Exception("Site is not configured");
            }

            context.Features.Set(new CurrentSiteFeature(site));
            await _next.Invoke(context);
        }
Пример #9
0
        public async Task Handle(AddNewSiteCommand message, IMessageHandlerContext messageContext)
        {
            var siteDto = message.Site;
            SiteFacilityType facitlType = siteDto.SiteFacitlityTypeCode;
            SiteType         siteType   = siteDto.SiteTypeCode;
            var contractDuration        = new DateTimeRange(siteDto.ContractStartDate, siteDto.ContractEndDate);
            var contact = new Contact(new Name(siteDto.ContactFirstName, siteDto.ContactLastName),
                                      siteDto.ContactPhoneNumber, null, siteDto.ContactEmailText);
            var address = new DDD.Domain.Common.ValueObjects.Address(siteDto.AddressLine1, siteDto.AddressLine2,
                                                                     siteDto.City, "DE", siteDto.ZipCode, siteDto.CountyCode);

            var holidays   = siteDto.SiteHolidays.Select(x => new SiteHoliday(x.HolidayDate, x.HolidayName)).ToList();
            var rates      = siteDto.SiteRates.Select(x => new SiteRate(x.MinAge, x.Rate, (x.Rate * 1.5m), DateTime.Now));
            var siteEntity = new Entities.Site(GuidHelper.NewSequentialGuid(), siteDto.SiteNumber, siteDto.SiteName,
                                               SiteStatus.Active, facitlType, siteType,
                                               contractDuration, siteDto.PhoneNumber, contact, address, siteDto.SiteEmailText, siteDto.CountyCode,
                                               siteDto.CountyServed
                                               , LicenceStatus.Licenced, holidays, rates);

            _siteRepository.Add(siteEntity);
            await _siteRepository.SaveAsync();

            await messageContext.Publish(new NewSiteAdded(siteEntity.Id, siteEntity.SiteNumber));
        }
Пример #10
0
        public List <Entities.Content> GetSiteContent(Entities.Site site)
        {
            var store = new ContentStore(Context.FileSystem);

            return(store.GetSiteContent(site).MakeTree().ToList());
        }
Пример #11
0
 public IEnumerable <Entities.Content> GetSiteContent(Entities.Site site)
 {
     return(FindAll(x => x.SiteId == site.Id));
 }
Пример #12
0
 public CurrentSiteFeature(Entities.Site site)
 {
     Site = site;
 }
Пример #13
0
 public IEnumerable <Entities.Page> GetForSite(Entities.Site site)
 {
     return(FindAll(x => x.SiteId == site.Id));
 }