/// <summary>
        /// Returns the parent item with the specified type.
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="item"></param>
        /// <returns></returns>
        public T Parent <T>(IGlassBase item) where T : class
        {
            if (item == null)
            {
                return(null);
            }

            var scItem = _getItemFromTypedItem(item);

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

            return(_context.Cast <T>(scItem.Parent));
        }
Example #2
0
        public T GetRenderingParameters <T>(NameValueCollection parameters, ID renderParametersTemplateId) where T : class
        {
            var item = Utilities.CreateFakeItem(null, renderParametersTemplateId, SitecoreContext.Database, "renderingParameters");

            using (new SecurityDisabler())
            {
                using (new EventDisabler())
                {
                    using (new VersionCountDisabler())
                    {
                        item.Editing.BeginEdit();

                        foreach (var key in parameters.AllKeys)
                        {
                            item[key] = parameters[key];
                        }

                        T obj = SitecoreContext.Cast <T>(item);

                        item.Editing.EndEdit();
                        item.Delete(); //added for clean up
                        return(obj);
                    }
                }
            }
        }
Example #3
0
        public T GetRenderingParameters <T>(NameValueCollection parameters, ID renderParametersTemplateId) where T : class
        {
            var item = Utilities.CreateFakeItem(null, renderParametersTemplateId, SitecoreContext.Database, "renderingParameters");

            using (new SecurityDisabler())
            {
                using (new EventDisabler())
                {
                    using (new VersionCountDisabler())
                    {
                        if (parameters != null)
                        {
                            item.Editing.BeginEdit();
                            item.RuntimeSettings.Temporary = true;
                            foreach (var key in parameters.AllKeys)
                            {
                                var fld = item.Fields[key];
                                if (fld != null)
                                {
                                    fld.SetValue(parameters[key], true);
                                }
                            }
                        }


                        T obj = SitecoreContext.Cast <T>(item);

                        item.Editing.CancelEdit();
                        item.Delete(); //added for clean up
                        return(obj);
                    }
                }
            }
        }
Example #4
0
        public virtual IEnumerable <T> GetChildren <T>(string parentGuid) where T : class, ICmsEntity
        {
            Assert.ArgumentNotNullOrEmpty(parentGuid, "parentGuid");
            var parentItem    = _sitecoreContext.Database.GetItem(ID.Parse(parentGuid));
            var childrenItems = parentItem.GetChildren();

            if (childrenItems == null || childrenItems.Count == 0)
            {
                return(Enumerable.Empty <T>());
            }
            else
            {
                return(childrenItems.Select(c => _sitecoreContext.Cast <T>(c)));
            }
        }