Example #1
0
        public void ProcessDbMigrations(ScContext context)
        {
            var pendingMigrations = context.Database.GetPendingMigrations().ToList();

            if (pendingMigrations.Count <= 0)
            {
                return;
            }

            var dbFile = ConnectionString.Split(';').Select(s => s.Split('=')).First(s => s[0].Equals("Data Source"))[1];

            File.Copy(dbFile, dbFile.Replace(".sqlite", $"_backup_{DateTime.UtcNow:yyyy.MM.ddTHH.mm.ss}.sqlite"));
            context.Database.Migrate();

            if (pendingMigrations.Contains("20171211080845_NewPaymentSystem"))
            {
                // Migrate data
                var payments = context.WeekUserLinks.ToList()
                               .GroupBy(l => l.UserId)
                               .Select(g => new Payment
                {
                    UserId = g.Key,
                    Amount = g.Sum(l => (decimal)l.Paid),
                })
                               .ToList();

                context.Payments.AddRange(payments);
                context.SaveChanges();
            }
        }
Example #2
0
        public List <URLDetails> GetBreadCrumb(Item CurrentItem)
        {
            List <URLDetails> BreadCrumb     = new List <URLDetails>();
            IBreadCrumb       BreadCrumbItem = ScContext.Cast <IBreadCrumb>(Sitecore.Context.Database.GetItem(Constants.RenderingItemIDs.BreadcrumbId));
            var BreadCrumbRestriction        = BreadCrumbItem.SitecoreID.Split(',');

            if (CurrentItem != null)
            {
                URLDetails UrlObj = new URLDetails();
                UrlObj.LinkName = ScContext.Cast <IBreadCrumbInfo>(CurrentItem).BreadCrumbTitle;
                UrlObj.LinkURL  = Sitecore.Links.LinkManager.GetItemUrl(CurrentItem);
                BreadCrumb.Add(UrlObj);


                Item Parent = CurrentItem.Parent;

                while (!BreadCrumbRestriction.Contains(Parent.TemplateID.ToString()))
                {
                    var TempItem = Parent;
                    UrlObj          = new URLDetails();
                    UrlObj.LinkName = ScContext.Cast <IBreadCrumbInfo>(TempItem).BreadCrumbTitle;
                    UrlObj.LinkURL  = Sitecore.Links.LinkManager.GetItemUrl(TempItem);
                    BreadCrumb.Add(UrlObj);
                    Parent = TempItem.Parent;
                }
                BreadCrumb.Reverse();
            }
            return(BreadCrumb);
        }
Example #3
0
        public Guid?FindAncestorPage(IEnumerable <IGlassBase> items, Func <IGlassBase, Guid?> targetResolver)
        {
            if (items.Any())
            {
                // Take the links and use the targetResolver to get a collection of items than can then
                // be sorted by path length, longest first.
                var targetItems = items.Select(targetResolver)
                                  .Where(guid => guid.HasValue && guid != Guid.Empty)
                                  .Select(id => ScContext.GetItem <IGlassBase>(id.Value))
                                  .Where(item => item != null)
                                  .OrderByDescending(item => item.Path.Length);

                var currentContextPath = StringUtil.EnsurePostfix('/', RenderingContext.Current.PageContext.Item.Paths.FullPath);

                foreach (var item in targetItems)
                {
                    if (currentContextPath.StartsWith(StringUtil.EnsurePostfix('/', item.Path), StringComparison.InvariantCultureIgnoreCase))
                    {
                        return(item.Id);
                    }
                }
            }

            return(null);
        }
Example #4
0
        public IPackList GetPackItems(Item item)
        {
            var  model     = ScContext.Cast <IPackList>(item);
            Item i         = ScContext.GetItem <Item>(model.packList.First().Path).Parent;
            var  packModel = ScContext.Cast <IPackInfo>(i);

            model.packIcon  = packModel.packIcon;
            model.packTitle = packModel.packTitle;
            return(model);
        }
Example #5
0
        /// <summary>
        /// Get thumbnail items based on year
        /// </summary>
        /// <param name="current">Current Item</param>
        /// <param name="year">Year</param>
        /// <returns></returns>
        public IFinancialResultsYear GetAccordionThumbnailItems(Item current, float year)
        {
            //String ResultsFolderId = "{00F7639F-ED67-46B1-B338-F2EE71E25EF2}";
            //Sitecore.Data.Database DB = Sitecore.Context.Database;
            //Item ResultsItem= DB.GetItem(CurrentItem);
            IFinancialResultsYear FinancialResults = ScContext.Cast <IFinancialResultsYear>(current.GetChildren().Where(x => x.Name.Equals(year.ToString())).First());

            FinancialResults.QuaterFinancialRelease = FinancialResults.QuaterFinancialRelease.OrderBy(x => x.Quater).Reverse();
            FinancialResults.ListOfYears            = current.GetChildren().Select(x => x.Name);
            return(FinancialResults);
        }
Example #6
0
        /// <summary>
        /// Intialize Accordion item
        /// </summary>
        public AccordionRepository()
        {
            Item dynamicAccordion = RenderingContext.Current.Rendering.Item;

            if (dynamicAccordion == null)
            {
                throw new ArgumentNullException(nameof(dynamicAccordion));
            }

            this.Item = dynamicAccordion;
            this.Id   = $"accordion-{Guid.NewGuid().ToString("N")}";

            IAccordion accordiontems = ScContext.Cast <IAccordion>(dynamicAccordion);

            this.AccordionHeading = accordiontems.Title;
        }
Example #7
0
 public IDataPassport GetDataPassportItems(Item item)
 {
     return(ScContext.Cast <IDataPassport>(item));
 }
Example #8
0
 public ICountryDetails GetCountryDetails(Item item)
 {
     return(ScContext.Cast <ICountryDetails>(item));
 }
Example #9
0
 public ICountryList GetCountryList(Item item)
 {
     return(ScContext.Cast <ICountryList>(item));
 }
Example #10
0
 public IFormButton GetFormButtonData(Item item)
 {
     return(ScContext.Cast <IFormButton>(item));
 }
Example #11
0
 public IBannerWithoutCTA GetTopBannerWithoutCTA(Item item)
 {
     return(ScContext.Cast <IBannerWithoutCTA>(item));
 }
Example #12
0
 public ICarousal GetCarousalItems(Item item)
 {
     return(ScContext.Cast <ICarousal>(item));
 }
Example #13
0
 public IImageContent GetImageContent(Item item)
 {
     return(ScContext.Cast <IImageContent>(item));
 }
Example #14
0
 public IListOptionsFormField GetListOptionsFormFieldData(Item item)
 {
     return(ScContext.Cast <IListOptionsFormField>(item));
 }
Example #15
0
 public InvestorContentPage GetReportByDates(Item item)
 {
     return(ScContext.Cast <InvestorContentPage>(item));
 }
Example #16
0
 public IFormUIElements GetFormUIElementsData(Item item)
 {
     return(ScContext.Cast <IFormUIElements>(item));
 }
Example #17
0
 public IFormValidationBase GetFormValidationBaseData(Item item)
 {
     return(ScContext.Cast <IFormValidationBase>(item));
 }
Example #18
0
 public IFormModel GetFormModelData(Item item)
 {
     return(ScContext.Cast <IFormModel>(item));
 }
Example #19
0
 public IFormFieldGroup GetFormFieldGroupData(Item item)
 {
     return(ScContext.Cast <IFormFieldGroup>(item));
 }
Example #20
0
 public IFormEvent GetFormEventData(Item item)
 {
     return(ScContext.Cast <IFormEvent>(item));
 }
Example #21
0
 public IFormValidationBase GetUIElement(Item item)
 {
     return(ScContext.Cast <IFormValidationBase>(item));
 }
Example #22
0
 public IFieldData GetFieldData(Item item)
 {
     return(ScContext.Cast <IFieldData>(item));
 }
Example #23
0
 /// <summary>
 /// Get FAQ Items
 /// </summary>
 /// <param name="item">Current Item</param>
 /// <returns>IFAQGroup model</returns>
 public IFAQGroup GetFAQItems(Item item)
 {
     return(ScContext.Cast <IFAQGroup>(item));
 }
Example #24
0
 public IPageBanner GetPageBannerItems(Item item)
 {
     return(ScContext.Cast <IPageBanner>(item));
 }
Example #25
0
 public IDeviceCarousal GetDeviceCarousalItems(Item item)
 {
     return(ScContext.Cast <IDeviceCarousal>(item));
 }
Example #26
0
 public HeroBannerWithLinks GetTopBannerWithLinks(Item item)
 {
     return(ScContext.Cast <HeroBannerWithLinks>(item));
 }
Example #27
0
 public RegexFieldValidation GetRegexFieldData(Item item)
 {
     return(ScContext.Cast <RegexFieldValidation>(item));
 }
Example #28
0
 public IForms GetFormData(Item item)
 {
     return(ScContext.Cast <IForms>(item));
 }
Example #29
0
 public IImagePromoInfo GetImagePromoItems(Item item)
 {
     return(ScContext.Cast <IImagePromoInfo>(item));
 }
Example #30
0
 public IBannerModel GetBannerItems(Item item)
 {
     return(ScContext.Cast <IBannerModel>(item));
 }