Exemplo n.º 1
0
        private void createItem(string data, int increment)
        {
            string[] dataArray = data.Split(';');

            Item parentItem = ScConstants.SitecoreDatabases.MasterDb.GetItem(Templates.DoctorList.ID); //Set the parent item

            using (new SecurityDisabler())
            {
                string itemName  = dataArray[0]; //or set appropriate item name
                Item   addedItem = parentItem.Add(itemName, new TemplateID(Templates.Doctor.IDPageType));
                addedItem.Editing.BeginEdit();
                addedItem[Templates.Person.Fields.Name]  = dataArray[1];
                addedItem[Templates.Person.Fields.Title] = dataArray[2];

                Sitecore.Data.Items.MediaItem image = ScConstants.SitecoreDatabases.MasterDb.GetItem("/sitecore/media library/Cemedi/FotoMedici/" + (dataArray[4].Split('.'))[0]);
                if (image != null)
                {
                    Sitecore.Data.Fields.ImageField imagefield = addedItem.Fields[Templates.Person.Fields.Picture];
                    imagefield.Alt     = image.Alt;
                    imagefield.MediaID = image.ID;
                }
                addedItem[Templates.Person.Fields.Summary]    = dataArray[5];
                addedItem[Templates.Person.Fields.Surname]    = dataArray[0];
                addedItem[Templates.Doctor.Fields.Specialist] = dataArray[3];
                addedItem[Templates.Doctor.Fields.Activities] = dataArray[6];
                addedItem[Templates.Doctor.Fields.Hospital]   = dataArray[7];

                addedItem.Editing.EndEdit();
            }
        }
Exemplo n.º 2
0
        public List <PatternMatch> LoadPatterns()
        {
            List <PatternMatch> patternMatches = new List <PatternMatch>();

            if (Tracker.IsActive)
            {
                if (SiteConfiguration.GetSiteSettingsItem() != null)
                {
                    MultilistField profiles = SiteConfiguration.GetSiteSettingsItem().Fields["Visible Profiles"];
                    foreach (Item visibleProfile in profiles.GetItems())
                    {
                        Item visibleProfileItem = Sitecore.Context.Database.GetItem(visibleProfile.ID);
                        if (visibleProfileItem != null)
                        {
                            // show the pattern match if there is one.
                            var userPattern = Tracker.Current.Interaction.Profiles[visibleProfileItem.Name];
                            if (userPattern != null)
                            {
                                // load the details about the matching pattern
                                Item matchingPattern = Sitecore.Context.Database.GetItem(userPattern.PatternId.ToId());
                                if (matchingPattern != null)
                                {
                                    Sitecore.Data.Items.MediaItem image = new Sitecore.Data.Items.MediaItem(((ImageField)matchingPattern.Fields["Image"]).MediaItem);
                                    string src = Sitecore.StringUtil.EnsurePrefix('/', Sitecore.Resources.Media.MediaManager.GetMediaUrl(image));
                                    patternMatches.Add(new PatternMatch(visibleProfileItem["Name"], matchingPattern.Name, src));
                                }
                            }
                        }
                    }
                }
            }
            return(patternMatches);
        }
        protected void setupNormalView()
        {
            if (myDataSourceItem == null)
            {
                return;
            }
            foreach (Item img in myDataSourceItem.Children)
            {
                if (img.TemplateName == "GalleryImage")
                {
                    Sitecore.Data.Fields.ImageField imgFld = (Sitecore.Data.Fields.ImageField)img.Fields["image"];
                    if (imgFld != null && imgFld.MediaItem != null)
                    {
                        Sitecore.Data.Items.MediaItem image = new Sitecore.Data.Items.MediaItem(imgFld.MediaItem);

                        string title = "";
                        if (!string.IsNullOrEmpty(img["title"]))
                        {
                            title = img["title"].ToString();
                        }
                        imageObjects.Text += "<li><a class='photo-grid-item' data-toggle='lightbox' data-gallery='gallery' data-parent='.photo-grid' data-title= '" + title + "' title='" + title + "'href='" + Sitecore.StringUtil.EnsurePrefix('/', Sitecore.Resources.Media.MediaManager.GetMediaUrl(image)) + "'>"
                                             + title + "</a></li>";
                    }
                }
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            // old code
            //xmlpath = Request.QueryString["xmlpath"];
            //Phoenix7 obj;
            //XmlSerializer xmlSerializer = new XmlSerializer(typeof(Phoenix7));
            //Stream xmltream = new Sitecore.Data.Items.MediaItem(Sitecore.Configuration.Factory.GetDatabase("master").GetItem(xmlpath)).GetMediaStream();
            //properties = typeof(PlanEvent).GetProperties();
            //obj = (Phoenix7)xmlSerializer.Deserialize(xmltream);

            //planlist = obj.listOfPlans;

            plandic = new Dictionary <string, List <PlanEvent> >();
            xmllist = new List <string>();
            xmlpath = Request.QueryString["xmlpath"];
            Phoenix7      obj;
            XmlSerializer xmlSerializer = new XmlSerializer(typeof(Phoenix7));
            var           xmlfolderitem = Sitecore.Configuration.Factory.GetDatabase("master").GetItem(xmlpath);

            foreach (Item child in xmlfolderitem.Children)
            {
                Stream xmltream = new Sitecore.Data.Items.MediaItem(child).GetMediaStream();
                properties = typeof(PlanEvent).GetProperties();
                obj        = (Phoenix7)xmlSerializer.Deserialize(xmltream);

                planlist = obj.listOfPlans;
                plandic.Add(child.Name, planlist);
                xmllist.Add(child.Name);
            }
        }
Exemplo n.º 5
0
        /// <summary>
        /// Retrieves a URL for the specified media item
        /// </summary>
        /// <param name="itemId">The the media item to retrieve</param>
        /// <returns>A URL, or an empty string if it could not be found</returns>
        public static String GetMediaUrl(Sitecore.Data.Items.Item item)
        {
            if (null != item)
            {
                var media = new Sitecore.Data.Items.MediaItem(item);
                return(MediaManager.GetMediaUrl(media, MediaUrlOptions));
            }

            return(String.Empty);
        }
Exemplo n.º 6
0
        public string GetXmlDataInJSON()
        {
            var           querystringpair = Request.GetQueryNameValuePairs().First(x => x.Key.Equals("filepath"));
            var           filepath        = querystringpair.Value;
            var           xmlitem         = Sitecore.Configuration.Factory.GetDatabase("master").GetItem(filepath);
            Phoenix7      obj;
            XmlSerializer xmlSerializer = new XmlSerializer(typeof(Phoenix7));
            Stream        xmltream      = new Sitecore.Data.Items.MediaItem(xmlitem).GetMediaStream();

            PropertyInfo[] properties = typeof(PlanEvent).GetProperties();
            obj = (Phoenix7)xmlSerializer.Deserialize(xmltream);

            obj.listOfPlans.ForEach(x => GetThumbnailPath(x));
            string json = JsonConvert.SerializeObject(obj.listOfPlans);

            return(json);
        }
Exemplo n.º 7
0
        /// <summary>
        /// Creates an entire image tag for the specified ImageField, or returns an empty String if no image was found.  This is a substitute for
        /// sc:Image; unlike that control, this one will not plug in hard width and height values, which cause problems in responsive designs.
        /// </summary>
        /// <param name="imageField">The ImageField to use</param>
        /// <param name="cssClass">An optional cssClass.  If specified, this will override any class already attached to the ImageField</param>
        /// <returns></returns>
        public static String GetImageTagForImageField(ImageField imageField, String cssClass = "")
        {
            if (null != imageField && null != imageField.MediaItem)
            {
                var    image = new Sitecore.Data.Items.MediaItem(imageField.MediaItem);
                String src   = MediaManager.GetMediaUrl(image, new MediaUrlOptions());
                String alt   = imageField.Alt;
                String css   = (String.IsNullOrEmpty(cssClass) ? imageField.Class : cssClass);

                return(String.Format("<img src=\"{0}\" alt=\"{1}\" {2}>",
                                     src,
                                     alt,
                                     String.IsNullOrEmpty(css) ? String.Empty : String.Format("class=\"{0}\"", css)));
            }

            return(String.Empty);
        }
Exemplo n.º 8
0
        protected void Page_Load(object sender, EventArgs e)
        {
            //Item tt = Sitecore.Context.Item["Title"];
            Sitecore.Data.Items.Item titletext = master.GetItem(Sitecore.Context.Item["Title"]);
            if (titletext != null)
            {
                SignupTitle.InnerHtml = titletext.Fields["Text"].Value;
            }
            Sitecore.Data.Items.Item PrizeTexttext = master.GetItem(Sitecore.Context.Item["PrizeText"]);
            if (PrizeTexttext != null)
            {
                PrizeText.InnerHtml = PrizeTexttext.Fields["Text"].Value;
            }
            Sitecore.Data.Items.Item Subtitletext = master.GetItem(Sitecore.Context.Item["Subtitle"]);
            if (Subtitletext != null)
            {
                Subtitle.InnerHtml = Subtitletext.Fields["Text"].Value;
            }
            Sitecore.Data.Fields.ImageField imageField = Sitecore.Context.Item.Fields["PrizeImage"];
            if (imageField != null && imageField.MediaItem != null)
            {
                Sitecore.Data.Items.MediaItem image = new Sitecore.Data.Items.MediaItem(imageField.MediaItem);
                PrizeImage.ImageUrl = Sitecore.StringUtil.EnsurePrefix('/', Sitecore.Resources.Media.MediaManager.GetMediaUrl(image));
            }
            else
            {
                PrizeImage.Visible = false;
            }

            ChildList childList = Sitecore.Context.Database.GetItem("/sitecore/system/Dictionary/Lookups/Countries").GetChildren();
            ListItemCollection listItemCollection = new ListItemCollection();

            foreach (Item child in childList)
            {
                //Use any field name, like Value, for ListItem Text and or Value properties.
                ListItem li = new ListItem();
                li.Text = child["Phrase"].ToString(); //Field name is Phrase
                li.Value = child["Key"].ToString(); //Item ID Property, could be field name though
                listItemCollection.Add(li);
            }

            Country.DataSource = listItemCollection;
            Country.DataBind();

            SetCurrentUser();
        }
Exemplo n.º 9
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                Sitecore.Data.Fields.ImageField imageField = Sitecore.Context.Item.Fields["PrizeImage"];
                if (imageField != null && imageField.MediaItem != null)
                {
                    Sitecore.Data.Items.MediaItem image = new Sitecore.Data.Items.MediaItem(imageField.MediaItem);
                    PrizeImage.ImageUrl = Sitecore.StringUtil.EnsurePrefix('/', Sitecore.Resources.Media.MediaManager.GetMediaUrl(image));

                }
                else
                {
                    PrizeImage.Visible = false;
                }
            }
        }
        public static UploadFileInfo RetrieveFile(string fileId, Sitecore.Data.Database database)
        {
            var item = database.GetItem(new ID(fileId));

            if (item != null)
            {
                var mediaItem = new Sitecore.Data.Items.MediaItem(item);

                return(new UploadFileInfo
                {
                    Id = fileId,
                    Name = mediaItem.InnerItem.Name + "." + mediaItem.Extension,
                    Bytes = mediaItem.GetMediaStream().ToBytes(mediaItem.Size)
                });
            }

            return(null);
        }
        public override void Execute(CommandContext context)
        {
            if (context.Items.Length >= 1)
            {
                Item item = context.Items[0];
                if (item.TemplateID.ToString().Equals("{C59DE718-504E-4480-9D4C-9804465D4CE1}"))
                {
                    string xmlfolderpath = item.Fields["XML"].Value;
                    string parentpath    = "/sitecore/content/EPG/Sections/PlanBuckets/UKPlan";

                    Database  db            = Sitecore.Configuration.Factory.GetDatabase("master");
                    Item      xmlfolderitem = db.GetItem(xmlfolderpath);
                    ChildList list          = xmlfolderitem.GetChildren();
                    // IndexCustodian.PauseIndexing();
                    foreach (Item xmlitem in list)
                    {
                        if (xmlitem.Name.ToLower().Contains("asia"))
                        {
                            parentpath = "/sitecore/content/EPG/Sections/PlanBuckets/AsiaPlan";
                        }
                        else if (xmlitem.Name.ToLower().Contains("uk"))
                        {
                            parentpath = "/sitecore/content/EPG/Sections/PlanBuckets/UKPlan";
                        }
                        Phoenix7      obj;
                        XmlSerializer xmlSerializer = new XmlSerializer(typeof(Phoenix7));
                        Stream        xmltream      = new Sitecore.Data.Items.MediaItem(xmlitem).GetMediaStream();
                        obj = (Phoenix7)xmlSerializer.Deserialize(xmltream);
                        var tmplist = obj.listOfPlans;
                        var tmppath = parentpath;
                        new Thread(() => CreatePlanItems(db, tmplist, tmppath)).Start();
                        //      Task t = Task.Run(() => CreatePlanItems(db, new List<PlanEvent>(obj.listOfPlans), new String(parentpath.ToCharArray())));
                        //      ThreadPool.QueueUserWorkItem(CreatePlanItems, params[]{db, new List<PlanEvent>(obj.listOfPlans), new String(parentpath.ToCharArray()));
                    }
                    //    IndexCustodian.ResumeIndexing();
                }
                //ProgressBox.Execute("ItemCreation", "Creating items", Refresh, "Test");
                SheerResponse.Alert(" Please wait while items are being created in buckets.", false);
            }
        }
        public void OnItemSaved(object sender, EventArgs args)
        {
            var item        = Event.ExtractParameter(args, 0) as Item;
            var itemChanges = Event.ExtractParameter(args, 1) as ItemChanges;

            if (item == null ||
                item.Paths.FullPath.StartsWith("/sitecore/templates") ||
                !item.TemplateID.Equals(Settings.PersonFaceTemplateId) ||
                itemChanges == null)
            {
                return;
            }

            using (new Sitecore.Data.Events.EventDisabler())
            {
                var imageField = (ImageField)item.Fields[Settings.FaceImageFieldId];
                var groupId    = item.Parent.Parent.Fields[Settings.FaceEntityIdFieldId]?.Value ?? string.Empty;
                var personId   = item.Parent.Fields[Settings.FaceEntityIdFieldId]?.Value ?? string.Empty;
                if (string.IsNullOrWhiteSpace(imageField?.Value) ||
                    string.IsNullOrWhiteSpace(groupId) ||
                    string.IsNullOrWhiteSpace(personId))
                {
                    return;
                }

                var oldImageValue = itemChanges.FieldChanges[Settings.FaceImageFieldId]?.OriginalValue;
                var faceId        = item.Fields[Settings.FacePersistedFaceIdFieldId]?.Value;

                //if they modified the image remove the face object
                if (!string.IsNullOrWhiteSpace(faceId) && oldImageValue != imageField.Value)
                {
                    PersonGroupService.DeletePersonFace(groupId, new Guid(personId), new Guid(faceId));
                }

                Sitecore.Data.Items.MediaItem m = imageField.MediaItem;
                PersonGroupService.CreatePersonFace(item, groupId, new Guid(personId), m.GetMediaStream());
            }
        }
Exemplo n.º 13
0
        public ActionResult Footer()
        {
            if (Sitecore.Context.Item == null)
            {
                return(null);
            }

            var dataSourceId = RenderingContext.CurrentOrNull.Rendering.DataSource;

            Assert.IsNotNullOrEmpty(dataSourceId, "dataSourceId is null or empty");
            var item = Sitecore.Context.Database.GetItem(dataSourceId);

            if (item == null)
            {
                return(null);
            }

            Footer footer = new Footer();
            //Image Field
            ImageField logo = item.Fields[Templates.Header.Fields.Logo];

            if (logo != null && logo.MediaItem != null)
            {
                Sitecore.Data.Items.MediaItem image = new Sitecore.Data.Items.MediaItem(logo.MediaItem);
                footer.ImageUrl = Sitecore.StringUtil.EnsurePrefix('/', Sitecore.Resources.Media.MediaManager.GetMediaUrl(image));
                footer.ImageAlt = image.Alt;
            }

            //Home Link - Droplink Field
            ReferenceField homeLink = item.Fields[Templates.Header.Fields.HomeLink];

            footer.HomeLinkUrl = homeLink != null

        ? Sitecore.Links.LinkManager.GetItemUrl(homeLink.TargetItem)
        : string.Empty;

            //Left Text
            footer.FooterTextLeft = item.Fields[Templates.Footer.Fields.FooterTextLeft].Value;

            //Left link - General Link with Search Field
            LinkField leftLink = item.Fields[Templates.Footer.Fields.FooterLinkLeft];

            footer.FooterLinkUrlLeft = leftLink != null && leftLink.TargetItem != null
        ? string.Format("{0}#{1}", Sitecore.Links.LinkManager.GetItemUrl(leftLink.TargetItem), leftLink.Anchor)
        : string.Empty;

            footer.FooterLinkTargetLeft = leftLink.Target;
            footer.FooterLinkTextLeft   = item.Fields[Templates.Footer.Fields.FooterLinkTextLeft].Value;

            //Right Text
            footer.FooterTextRight = item.Fields[Templates.Footer.Fields.FooterTextRight].Value;

            //Right Link - General Link Field
            LinkField rightLink = item.Fields[Templates.Footer.Fields.FooterLinkRight];

            footer.FooterLinkUrlRight = rightLink != null && rightLink.TargetItem != null
          ? Sitecore.Links.LinkManager.GetItemUrl(rightLink.TargetItem)
          : rightLink.Url;

            footer.FooterLinkTargetRight = rightLink.Target;
            footer.FooterLinkTextRight   = item.Fields[Templates.Footer.Fields.FooterLinkTextRight].Value;

            return(View(footer));
        }
Exemplo n.º 14
0
        public ActionResult Header()
        {
            if (Sitecore.Context.Item == null)
            {
                return(null);
            }

            var dataSourceId = RenderingContext.CurrentOrNull.Rendering.DataSource;

            Assert.IsNotNullOrEmpty(dataSourceId, "dataSourceId is null or empty");
            var item = Sitecore.Context.Database.GetItem(dataSourceId);

            if (item == null)
            {
                return(null);
            }

            Header header = new Header();

            //Image Field
            ImageField logo = item.Fields[Templates.Header.Fields.Logo];

            if (logo != null && logo.MediaItem != null)
            {
                Sitecore.Data.Items.MediaItem image = new Sitecore.Data.Items.MediaItem(logo.MediaItem);
                header.ImageUrl = Sitecore.StringUtil.EnsurePrefix('/', Sitecore.Resources.Media.MediaManager.GetMediaUrl(image));
                header.ImageAlt = image.Alt;
            }

            //Home Link - Droplink Field
            ReferenceField homeLink = item.Fields[Templates.Header.Fields.HomeLink];

            header.HomeLinkUrl = homeLink != null
        ? Sitecore.Links.LinkManager.GetItemUrl(homeLink.TargetItem)
        : string.Empty;

            //Event Links - DropTree Field with Child Items
            ReferenceField eventsRoot = item.Fields[Templates.Header.Fields.EventsRoot];

            header.Events = new List <NavigationItem>();
            foreach (Item i in eventsRoot.TargetItem.Children)
            {
                var navigationItem = new NavigationItem();
                navigationItem.Item    = i;
                navigationItem.ItemUrl = i != null
          ? Sitecore.Links.LinkManager.GetItemUrl(i)
          : string.Empty;

                header.Events.Add(navigationItem);
            }

            //Schedule Link - General Link with Anchor Tag
            LinkField scheduleLink = item.Fields[Templates.Header.Fields.ScheduleLink];

            header.ScheduleLinkUrl = scheduleLink != null
        ? string.Format("{0}#{1}", Sitecore.Links.LinkManager.GetItemUrl(scheduleLink.TargetItem), scheduleLink.Anchor)
        : string.Empty;

            //Setting IsExperienceEditor
            header.IsExperienceEditor = Sitecore.Context.PageMode.IsExperienceEditor;

            return(View(header));
        }
        protected void setupNormalView()
        {
            if (myDataSourceItem == null)
            {
                return;
            }

            string carID = myDataSourceItem["htmlID"];

            carouselID.Text  = carID;
            carouselID2.Text = carID;
            carouselID3.Text = carID;

            TransitionTime.Text = myDataSourceItem["transitionTime"];

            PauseOnHover.Text = "";
            if (myDataSourceItem["PauseOnHover"] != null && myDataSourceItem["PauseOnHover"] == "1")
            {
                PauseOnHover.Text = "hover";
            }

            int i = 0;

            foreach (Item img in myDataSourceItem.Children)
            {
                if (img.TemplateName == "BootstrapImage")
                {
                    string active  = "";
                    string active2 = "";
                    if (i == 0)
                    {
                        active  = " class=\"active\"";
                        active2 = " active";
                    }

                    Sitecore.Data.Fields.ImageField imgFld = (Sitecore.Data.Fields.ImageField)img.Fields["image"];
                    if (imgFld != null && imgFld.MediaItem != null)
                    {
                        Sitecore.Data.Items.MediaItem image = new Sitecore.Data.Items.MediaItem(imgFld.MediaItem);
                        string imageURL = Sitecore.StringUtil.EnsurePrefix('/', Sitecore.Resources.Media.MediaManager.GetMediaUrl(image));

                        listIndicators.Text += "<li data-target=\"#" + carID + "\" data-slide-to=\"" + i + "\"" + active + "></li>";
                        imageObjects.Text   += "<div class=\"item" + active2 + "\">";

                        if (!string.IsNullOrEmpty(img["link"]))
                        {
                            imageObjects.Text += "<a href='" + img["link"] + "'>";
                        }

                        imageObjects.Text += "<img src=\"" + imageURL + "\" alt=\"" + img["title"] + "\">";

                        if (!string.IsNullOrEmpty(img["link"]))
                        {
                            imageObjects.Text += "</a>";
                        }

                        imageObjects.Text += "<div class=\"carousel-caption\">";
                        if (!string.IsNullOrEmpty(img["title"]))
                        {
                            imageObjects.Text += "<h3>" + img["title"] + "<h3>";
                        }
                        if (!string.IsNullOrEmpty(img["description"]))
                        {
                            imageObjects.Text += "<p>" + img["description"] + "</p>";
                        }

                        imageObjects.Text += "</div></div>";
                        i++;
                    }
                }
            }
        }
Exemplo n.º 16
0
        /// <summary>
        /// Creates an entire image tag for the specified ImageField, or returns an empty String if no image was found.  This is a substitute for
        /// sc:Image; unlike that control, this one will not plug in hard width and height values, which cause problems in responsive designs.
        /// </summary>
        /// <param name="imageField">The ImageField to use</param>
        /// <param name="cssClass">An optional cssClass.  If specified, this will override any class already attached to the ImageField</param>
        /// <returns></returns>
        public static String GetImageTagForImageField(ImageField imageField, String cssClass = "")
        {
            if (null != imageField && null != imageField.MediaItem)
            {
                var image = new Sitecore.Data.Items.MediaItem(imageField.MediaItem);
                String src = MediaManager.GetMediaUrl(image, new MediaUrlOptions());
                String alt = imageField.Alt;
                String css = (String.IsNullOrEmpty(cssClass) ? imageField.Class : cssClass);

                return String.Format("<img src=\"{0}\" alt=\"{1}\" {2}>",
                    src,
                    alt,
                    String.IsNullOrEmpty(css) ? String.Empty : String.Format("class=\"{0}\"", css));
            }

            return String.Empty;
        }
Exemplo n.º 17
0
        protected void FireRowCommand(object sender, GridViewCommandEventArgs e)
        {
            string command = e.CommandName;

            if (command == "FireRowCommand")
            {
                string autoId = e.CommandArgument.ToString();

                if (FileUploadControl.HasFile)
                {
                    try
                    {
                        Item mediaItem = Helper.GetDatabase().GetItem(autoId);


                        string fileNameWithExtension = Path.GetFileName(FileUploadControl.FileName);
                        string extention             = Path.GetExtension(FileUploadControl.FileName);
                        string filename = fileNameWithExtension.Replace(extention, "");

                        MemoryStream memStream = new MemoryStream(FileUploadControl.FileBytes);

                        var options = new MediaCreatorOptions();
                        options.FileBased = false;
                        options.IncludeExtensionInItemName = false;
                        options.KeepExisting = true;
                        options.Versioned    = false;
                        options.Destination  = mediaItem.Parent.Paths.FullPath + "/" + filename;
                        options.Database     = Helper.GetDatabase();


                        var creator = new MediaCreator();

                        //Create a new item
                        var newItem = creator.CreateFromStream(memStream, fileNameWithExtension, options);
                        newItem.Editing.BeginEdit();
                        newItem.Fields["Title"].Value = filename;
                        newItem.Fields["Alt"].Value   = mediaItem.Fields["Alt"].Value;
                        newItem.Editing.EndEdit();

                        Item[] referrers = Helper.GetReferrersAsItems(ref mediaItem);

                        if (referrers != null)
                        {
                            Sitecore.Data.Items.MediaItem newMediaItem = new Sitecore.Data.Items.MediaItem(newItem);

                            foreach (Item referr in referrers)
                            {
                                var Fields = referr.Fields.Where(x => x.Value.Contains(mediaItem.ID.ToString()));
                                if (Fields != null && Fields.Count() > 0)
                                {
                                    referr.Editing.BeginEdit();

                                    foreach (var field in Fields)
                                    {
                                        if (field.Type == "Image")
                                        {
                                            Sitecore.Data.Fields.ImageField imageField = referr.Fields[field.Name];

                                            var alt    = imageField.Alt;
                                            var sclass = imageField.Class;
                                            imageField.Clear();
                                            imageField.MediaID = newMediaItem.ID;
                                            imageField.Alt     = alt;
                                            imageField.Class   = sclass;
                                        }
                                        else
                                        {
                                            referr.Fields[field.Name].Value = referr.Fields[field.Name].Value.Replace(mediaItem.ID.ToString(), newItem.ID.ToString());
                                        }
                                    }

                                    referr.Editing.EndEdit();
                                }
                            }
                        }


                        pnSuccessUpdate.Visible = true;
                    }
                    catch (Exception ex)
                    {
                        pnFailureUpdate.Visible = true;
                    }
                }
                else
                {
                    pnFailureUpdate.Visible = true;
                }
            }
        }
 public override void SaveVideoContent()
 {
     _mediaItem = StorageExecutor.Save(UploadFileInfo) as Sitecore.Data.Items.MediaItem;
 }
Exemplo n.º 19
0
        /// <summary>
        /// Retrieves a URL for the specified media item
        /// </summary>
        /// <param name="itemId">The the media item to retrieve</param>
        /// <returns>A URL, or an empty string if it could not be found</returns> 
        public static String GetMediaUrl(Sitecore.Data.Items.Item item)
        {
            if (null != item)
            {
                var media = new Sitecore.Data.Items.MediaItem(item);
                return MediaManager.GetMediaUrl(media, MediaUrlOptions);
            }

            return String.Empty;
        }
        public List<PatternMatch> LoadPatterns()
        {
            List<PatternMatch> patternMatches = new List<PatternMatch>();

               if (Tracker.IsActive)
               {
            if (SiteConfiguration.GetSiteSettingsItem() != null)
            {
             MultilistField profiles = SiteConfiguration.GetSiteSettingsItem().Fields["Visible Profiles"];
             foreach (Item visibleProfile in profiles.GetItems())
             {
              Item visibleProfileItem = Sitecore.Context.Database.GetItem(visibleProfile.ID);
              if (visibleProfileItem != null)
              {
               // show the pattern match if there is one.
               var userPattern = Tracker.Current.Interaction.Profiles[visibleProfileItem.Name];
               if (userPattern != null)
               {
            // load the details about the matching pattern
            Item matchingPattern = Sitecore.Context.Database.GetItem(userPattern.PatternId.ToId());
            if (matchingPattern != null)
            {
             Sitecore.Data.Items.MediaItem image = new Sitecore.Data.Items.MediaItem(((ImageField) matchingPattern.Fields["Image"]).MediaItem);
             string src = Sitecore.StringUtil.EnsurePrefix('/', Sitecore.Resources.Media.MediaManager.GetMediaUrl(image));
             patternMatches.Add(new PatternMatch(visibleProfileItem["Name"], matchingPattern.Name, src));
            }
               }
              }
             }
            }
               }
               return patternMatches;
        }