Beispiel #1
0
        private Item createAuthorCardItem(AuthorCard globalAuthCardItem)
        {
            //card gets made first, then added to flex menu
            var cardsFolder = _db.GetItem("/sitecore/content/Data/Global/Global Content/Author Cards");
            //duplicate cardFromMike
            var newCard = copyAuthCardSample(cardsFolder, globalAuthCardItem.Name);
            //update card fields
            //Link card to self
            var cardZonePointer = _db.GetItem(newCard.Paths.Path + "/drop-zone-single_1_7657_4082_1492");

            updateField(newCard.Paths.Path + "/drop-zone-single_1_7657_4082_1492", "Linked Component", cardZonePointer.ID.ToString());

            //sitecore/content/Data/Global/Global Content/Author Cards/drop-zone-single_5112/drop-zone-single_1_7657_4082_1492/a-heading-rich_1 "Rich Text"
            updateField(newCard.Paths.Path + "/drop-zone-single_1_7657_4082_1492/a-heading-rich_1", "Rich Text", $"<h2>{globalAuthCardItem.Name}</h2>");
            //sitecore/content/Data/Global/Global Content/Author Cards/drop-zone-single_5112/drop-zone-single_1_7657_4082_1492/a-image_1 "Image"
            updateImageField(newCard.Paths.Path + "/drop-zone-single_1_7657_4082_1492/a-image_1", "Image", globalAuthCardItem.ProfileImage);
            updateField(newCard.Paths.Path + "/drop-zone-single_1_7657_4082_1492/a-image_1", "Classes", $"fu-aspect-ratio-1/1 f-rounded-full f-shadow-none f--mt-6 f-mb-0.75 f-mx-0 mob:f--mt-3 tab:f--mt-5 lap:f--mt-3 f-p-0/0 f-px-1/5 f-w-1/1");

            //sitecore/content/Data/Global/Global Content/Author Cards/drop-zone-single_5112/drop-zone-single_1_7657_4082_1492/a-rich-text_4 "Rich text"
            //updateField(newCard.Paths.Path + "/drop-zone-single_1_7657_4082_1492/a-rich-text_4", "Rich Text", globalAuthCardItem.Bio);
            stripImagesFromBio(newCard.Paths.Path + "/drop-zone-single_1_7657_4082_1492/a-rich-text_4", "Rich Text", globalAuthCardItem.Bio);
            //sitecore/content/Data/Global/Global Content/Author Cards/drop-zone-single_5112/drop-zone-single_1_7657_4082_1492/a-text-single-line_2 "Single-Line Text"
            updateField(newCard.Paths.Path + "/drop-zone-single_1_7657_4082_1492/a-text-single-line_2", "Single-Line Text", globalAuthCardItem.Title);

            updateField(newCard.Paths.Path, "Editor name", "Author Card");

            //var flexAuthCard4Menu = _db.GetItem("/sitecore/content/Data/Flex Elements Menu/Global Content/Author Cards");
            //copy existing flex menu item to new
            var newCardMenuItem = copyAuthNavToNew(newCard);

            //update nav card fields
            updateAuthCardNavItem(newCardMenuItem, newCard);


            //update card field "Linked Menu Item" after menu item is created
            updateField(newCard.Paths.Path, "Linked Component", newCard.ID.ToString());

            //Update Flex menu

            ///sitecore/content/Data/Global/Global Content/Author Cards/drop-zone-single_aaron_bickle_author
            ////sitecore/content/Data/Flex Elements Menu/Global Content/Author Cards/Aaron Bickle

            var flexMenuItem = _db.GetItem($"/sitecore/content/Data/Flex Elements Menu/Global Content/Author Cards/{newCard.DisplayName.Replace(".","")}");

            updateField(newCard.Paths.Path, "Linked Menu Item", flexMenuItem.ID.ToString());


            return(newCard);
        }
Beispiel #2
0
        private AuthorCard getAuthorCard(Item authorSrc)
        {
            //getAuthor from old source
            var authorCard = new AuthorCard();

            if (authorSrc != null)
            {
                authorCard.Bio          = authorSrc["Bio"];
                authorCard.Email        = authorSrc["Email Address"];
                authorCard.Location     = authorSrc["Location"];
                authorCard.Name         = authorSrc["Full Name"];
                authorCard.Title        = authorSrc["Title"];
                authorCard.ProfileImage = authorSrc.Fields["Profile Image"];

                return(authorCard);
            }

            return(null);
        }