Ejemplo n.º 1
0
        /// <summary>
        ///     Reorder. Expects a serialized list from scriptaculous
        /// </summary>
        /// <param name="list"></param>
        public static void ReOrder(string list)
        {
            list = Regex.Replace(list, @"Category\-|Link\-|Post\-", string.Empty);
            var items = list.Split(new[] { "&" }, StringSplitOptions.RemoveEmptyEntries);
            int i     = 0;
            NavigationSettings settings = Get();

            foreach (string id in items)
            {
                Guid g = new Guid(id);
                foreach (DynamicNavigationItem item in settings.SafeItems())
                {
                    if (item.Id == g)
                    {
                        item.Order = i;
                        i++;
                        break;
                    }
                }
            }

            settings.SafeItems()
            .Sort(
                delegate(DynamicNavigationItem i1, DynamicNavigationItem i2)
                { return(Comparer <int> .Default.Compare(i1.Order, i2.Order)); }
                );

            settings.Save();
        }
Ejemplo n.º 2
0
        /// <summary>
        ///     Adds the new item to the list
        /// </summary>
        /// <param name="item"></param>
        public static void Add(DynamicNavigationItem item)
        {
            NavigationSettings settings = Get();

            item.Order = Int16.MaxValue;
            settings.SafeItems().Add(item);
            settings.Save();
        }
Ejemplo n.º 3
0
        /// <summary>
        ///     Remove an item by Id
        /// </summary>
        /// <param name="id"></param>
        public static void Remove(Guid id)
        {
            NavigationSettings settings = Get();
            int index = -1;

            for (int i = 0; i < settings.SafeItems().Count; i++)
            {
                if (settings.SafeItems()[i].Id == id)
                {
                    index = i;
                    break;
                }
            }

            if (index > -1)
            {
                settings.SafeItems().RemoveAt(index);
                settings.Save();
            }
        }