예제 #1
0
        /// <summary>
        /// Deletes a BlogRoll
        /// </summary>
        /// <param name="blogRoll">Must be a valid BlogRoll object.</param>
        public override void DeleteBlogRollItem(BlogRollItem blogRollItem)
        {
            List <BlogRollItem> blogRoll = BlogRollItem.BlogRolls;

            blogRoll.Remove(blogRollItem);
            writeBlogRollFile(blogRoll);
        }
예제 #2
0
        /// <summary>
        /// Adds a blog to the item collection and start retrieving the blogs.
        /// </summary>
        /// <param name="br">
        /// The blogroll item.
        /// </param>
        private static void AddBlog(BlogRollItem br)
        {
            var affected = Items.FirstOrDefault(r => r.RollItem.Equals(br));

            if (affected != null)
            {
                return;
            }

            var req = (HttpWebRequest)WebRequest.Create(br.FeedUrl);

            req.Credentials = CredentialCache.DefaultNetworkCredentials;

            var blogRequest = new BlogRequest(br, req);

            Items.Add(blogRequest);

            GetRequestData data = new GetRequestData()
            {
                BlogInstanceId = Blog.CurrentInstance.Id,
                BlogRequest    = blogRequest
            };

            req.BeginGetResponse(ProcessResponse, data);
        }
예제 #3
0
        /// <summary>
        /// Updates a BlogRoll
        /// </summary>
        /// <param name="blogRollItem">
        /// The blog Roll Item.
        /// </param>
        public override void UpdateBlogRollItem(BlogRollItem blogRollItem)
        {
            var blogRolls = FillBlogRoll();

            if (blogRolls == null || blogRolls.Count < 1)
            {
                blogRolls = new List <BlogRollItem>();
                blogRolls.Add(blogRollItem);
            }
            else
            {
                foreach (var br in blogRolls)
                {
                    if (br.Id == blogRollItem.Id)
                    {
                        br.Title       = blogRollItem.Title;
                        br.BlogUrl     = blogRollItem.BlogUrl;
                        br.Description = blogRollItem.Description;
                        br.FeedUrl     = blogRollItem.FeedUrl;
                        br.SortIndex   = blogRollItem.SortIndex;
                        br.Xfn         = blogRollItem.Xfn;
                        break;
                    }
                }
            }
            WriteBlogRollFile(blogRolls);
        }
    public HttpResponseMessage Update([FromBody] BlogRollRowItem item)
    {
        try
        {
            var br = BlogRollItem.GetBlogRollItem(item.Id);
            if (br == null)
            {
                return(Request.CreateResponse(HttpStatusCode.NotFound));
            }

            br.Title       = item.Title;
            br.Description = item.Description;
            br.BlogUrl     = new Uri(item.BlogUrl);
            br.FeedUrl     = new Uri(item.FeedUrl);
            br.Xfn         = item.Xfn.TrimEnd();
            br.Save();

            Resort();
            return(Request.CreateResponse(HttpStatusCode.OK));
        }
        catch (UnauthorizedAccessException)
        {
            return(Request.CreateResponse(HttpStatusCode.Unauthorized));
        }
        catch (Exception)
        {
            return(Request.CreateResponse(HttpStatusCode.InternalServerError));
        }
    }
예제 #5
0
    private void AddBlog()
    {
        BlogRollItem br = new BlogRollItem();

        br.Title       = txtTitle.Text.Replace(@"\", "'");
        br.Description = txtDescription.Text;
        br.BlogUrl     = new Uri(getUrl(txtWebUrl.Text));
        br.FeedUrl     = new Uri(getUrl(txtFeedUrl.Text));
        br.Xfn         = string.Empty;

        foreach (ListItem item in cblXfn.Items)
        {
            if (item.Selected)
            {
                br.Xfn += item.Text + " ";
            }
        }
        if (br.Xfn.Length > 0)
        {
            br.Xfn = br.Xfn.Substring(0, br.Xfn.Length - 1);
        }

        int largestSortIndex = -1;

        foreach (BlogRollItem brExisting in BlogRollItem.BlogRolls)
        {
            if (brExisting.SortIndex > largestSortIndex)
            {
                largestSortIndex = brExisting.SortIndex;
            }
        }

        br.SortIndex = largestSortIndex + 1;
        br.Save();
    }
    public HttpResponseMessage Get(string id)
    {
        try
        {
            var item = BlogRollItem.GetBlogRollItem(Guid.Parse(id));
            if (item == null)
            {
                return(Request.CreateResponse(HttpStatusCode.NotFound));
            }

            var result = new BlogRollRowItem
            {
                IsChecked   = false,
                Id          = item.Id,
                Title       = item.Title,
                Description = item.Description,
                BlogUrl     = item.BlogUrl.ToString(),
                FeedUrl     = item.FeedUrl.ToString(),
                Xfn         = item.Xfn
            };

            return(Request.CreateResponse(HttpStatusCode.OK, result));
        }
        catch (UnauthorizedAccessException)
        {
            return(Request.CreateResponse(HttpStatusCode.Unauthorized));
        }
        catch (Exception)
        {
            return(Request.CreateResponse(HttpStatusCode.InternalServerError));
        }
    }
예제 #7
0
        /// <summary>
        /// Deletes a BlogRoll
        /// </summary>
        /// <param name="blogRollItem">
        /// The blog Roll Item.
        /// </param>
        public override void DeleteBlogRollItem(BlogRollItem blogRollItem)
        {
            var blogRoll = BlogRollItem.BlogRolls;

            blogRoll.Remove(blogRollItem);
            this.WriteBlogRollFile(blogRoll);
        }
예제 #8
0
        /// <summary>
        /// Deletes a BlogRoll from the database
        /// </summary>
        /// <param name="blogRoll">BlogRoll to be removed</param>
        public override void DeleteBlogRollItem(BlogRollItem blogRollItem)
        {
            List<BlogRollItem> blogRolls = BlogRollItem.BlogRolls;
            blogRolls.Remove(blogRollItem);
            blogRolls.Add(blogRollItem);

            string connString = ConfigurationManager.ConnectionStrings[connStringName].ConnectionString;
            string providerName = ConfigurationManager.ConnectionStrings[connStringName].ProviderName;
            DbProviderFactory provider = DbProviderFactories.GetFactory(providerName);

            using (DbConnection conn = provider.CreateConnection())
            {
                conn.ConnectionString = connString;
                conn.Open();
                using (DbCommand cmd = conn.CreateCommand())
                {
                    string sqlQuery = "DELETE FROM " + tablePrefix + "BlogRollItems " +
                                      "WHERE BlogRollId = " + parmPrefix + "BlogRollId";
                    cmd.CommandText = sqlQuery;
                    cmd.CommandType = CommandType.Text;

                    DbParameter dpID = provider.CreateParameter();
                    dpID.ParameterName = parmPrefix + "BlogRollId";
                    dpID.Value = blogRollItem.Id.ToString();
                    cmd.Parameters.Add(dpID);

                    cmd.ExecuteNonQuery();
                }
            }
        }
    public HttpResponseMessage ProcessChecked([FromBody] List <BlogRollRowItem> items)
    {
        try
        {
            if (items == null || items.Count == 0)
            {
                throw new HttpResponseException(HttpStatusCode.ExpectationFailed);
            }

            foreach (var item in items)
            {
                if (item.IsChecked)
                {
                    BlogRollItem br = BlogRollItem.GetBlogRollItem(item.Id);
                    br.Delete();
                    br.Save();
                }
            }
            Resort();
            return(Request.CreateResponse(HttpStatusCode.OK));
        }
        catch (UnauthorizedAccessException)
        {
            return(Request.CreateResponse(HttpStatusCode.Unauthorized));
        }
        catch (Exception)
        {
            return(Request.CreateResponse(HttpStatusCode.InternalServerError));
        }
    }
예제 #10
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BlogRequest"/> class.
 /// </summary>
 /// <param name="rollItem">
 /// The roll item.
 /// </param>
 /// <param name="request">
 /// The request.
 /// </param>
 internal BlogRequest(BlogRollItem rollItem, HttpWebRequest request)
 {
     this.ItemTitles = new List <string>();
     this.ItemLinks  = new List <string>();
     this.RollItem   = rollItem;
     this.Request    = request;
 }
예제 #11
0
        /// <summary>
        /// Inserts a BlogRoll
        /// </summary>
        /// <param name="blogRollItem">
        /// The blog Roll Item.
        /// </param>
        public override void InsertBlogRollItem(BlogRollItem blogRollItem)
        {
            var blogRolls = BlogRollItem.BlogRolls;

            blogRolls.Add(blogRollItem);

            this.WriteBlogRollFile(blogRolls);
        }
예제 #12
0
        /// <summary>
        /// Updates a BlogRoll
        /// </summary>
        /// <param name="blogRollItem">
        /// The blog Roll Item.
        /// </param>
        public override void UpdateBlogRollItem(BlogRollItem blogRollItem)
        {
            var blogRolls = BlogRollItem.BlogRolls;

            blogRolls.Remove(blogRollItem);
            blogRolls.Add(blogRollItem);
            this.WriteBlogRollFile(blogRolls);
        }
예제 #13
0
        /// <summary>
        /// Updates a BlogRoll
        /// </summary>
        /// <param name="blogRoll">Must be a valid BlogRoll object.</param>
        public override void UpdateBlogRollItem(BlogRollItem blogRollItem)
        {
            List <BlogRollItem> blogRolls = BlogRollItem.BlogRolls;

            blogRolls.Remove(blogRollItem);
            blogRolls.Add(blogRollItem);
            writeBlogRollFile(blogRolls);
        }
예제 #14
0
        /// <summary>
        /// Inserts a BlogRoll
        /// </summary>
        /// <param name="blogRoll">Must be a valid BlogRoll object.</param>
        public override void InsertBlogRollItem(BlogRollItem blogRollItem)
        {
            List <BlogRollItem> blogRolls = BlogRollItem.BlogRolls;

            blogRolls.Add(blogRollItem);

            writeBlogRollFile(blogRolls);
        }
    public HttpResponseMessage Update([FromBody] BlogRollItem item)
    {
        if (!Security.IsAdministrator)
        {
            return(Request.CreateResponse(HttpStatusCode.Unauthorized, item));
        }

        BlogEngine.Core.Providers.BlogService.UpdateBlogRoll(item);
        return(Request.CreateResponse(HttpStatusCode.OK));
    }
예제 #16
0
        //public XfnList Xfn { get; set; }
        public void Add(NameValueCollection form)
        {
            var br = new BlogRollItem();

            br.Title       = form["txtTitle"];
            br.Description = form["txtDesc"];
            br.BlogUrl     = new Uri(form["txtWebsite"]);
            br.FeedUrl     = new Uri(form["txtUrl"]);
            br.Xfn         = GetXfn(form);
            Providers.BlogService.InsertBlogRoll(br);
        }
예제 #17
0
        /// <summary>
        /// Inserts a BlogRoll
        /// </summary>
        /// <param name="blogRollItem">
        /// The blog Roll Item.
        /// </param>
        public override void InsertBlogRollItem(BlogRollItem blogRollItem)
        {
            var blogRolls = FillBlogRoll();
            if(blogRolls == null)
            {
                blogRolls = new List<BlogRollItem>();
            }

            blogRolls.Add(blogRollItem);
            WriteBlogRollFile(blogRolls);
        }
예제 #18
0
        /// <summary>
        /// Fills an unsorted list of BlogRolls.
        /// </summary>
        /// <returns>A List&lt;BlogRoll&gt; of all BlogRolls</returns>
        public override List <BlogRollItem> FillBlogRoll()
        {
            string fileName = _Folder + "blogroll.xml";

            if (!File.Exists(fileName))
            {
                return(null);
            }

            XmlDocument doc = new XmlDocument();

            doc.Load(fileName);
            List <BlogRollItem> blogRoll = new List <BlogRollItem>();

            int         largestSortIndex = -1;
            bool        isLegacyFormat   = false;
            XmlNodeList nodes            = doc.SelectNodes("blogRoll/item");

            if (nodes.Count == 0)
            {
                // legacy file format.
                nodes          = doc.SelectNodes("opml/body/outline");
                isLegacyFormat = true;
            }
            foreach (XmlNode node in nodes)
            {
                BlogRollItem br = new BlogRollItem()
                {
                    Id                                     = node.Attributes["id"] == null?Guid.NewGuid() : new Guid(node.Attributes["id"].InnerText),
                                               Title       = node.Attributes["title"] == null ? null : node.Attributes["title"].InnerText,
                                               Description = node.Attributes["description"] == null ? null : node.Attributes["description"].InnerText,
                                               BlogUrl     = node.Attributes["htmlUrl"] == null ? null : new Uri(node.Attributes["htmlUrl"].InnerText),
                                               FeedUrl     = node.Attributes["xmlUrl"] == null ? null : new Uri(node.Attributes["xmlUrl"].InnerText),
                                               Xfn         = node.Attributes["xfn"] == null ? null : node.Attributes["xfn"].InnerText,
                                               SortIndex   = node.Attributes["sortIndex"] == null ? (blogRoll.Count == 0 ? 0 : largestSortIndex + 1) : int.Parse(node.Attributes["sortIndex"].InnerText)
                };

                if (br.SortIndex > largestSortIndex)
                {
                    largestSortIndex = br.SortIndex;
                }

                blogRoll.Add(br);
                br.MarkOld();
            }

            if (isLegacyFormat && blogRoll.Count > 0)
            {
                // if we're upgrading from a legacy format, re-write the file to conform to the new format.
                writeBlogRollFile(blogRoll);
            }

            return(blogRoll);
        }
예제 #19
0
        /// <summary>
        /// Gets a BlogRoll based on a Guid.
        /// </summary>
        /// <param name="id">The BlogRoll's Guid.</param>
        /// <returns>A matching BlogRoll</returns>
        public override BlogRollItem SelectBlogRollItem(Guid id)
        {
            BlogRollItem blogRoll = BlogRollItem.BlogRolls.Find(br => br.Id == id);

            if (blogRoll == null)
            {
                blogRoll = new BlogRollItem();
            }
            blogRoll.MarkOld();
            return(blogRoll);
        }
예제 #20
0
        /// <summary>
        /// Inserts a BlogRoll
        /// </summary>
        /// <param name="blogRollItem">
        /// The blog Roll Item.
        /// </param>
        public override void InsertBlogRollItem(BlogRollItem blogRollItem)
        {
            var blogRolls = FillBlogRoll();

            if (blogRolls == null)
            {
                blogRolls = new List <BlogRollItem>();
            }

            blogRolls.Add(blogRollItem);
            WriteBlogRollFile(blogRolls);
        }
예제 #21
0
    protected void grid_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        // Don't want to handle Edit and Delete commands.
        if (!(e.CommandName.Equals("moveUp", StringComparison.OrdinalIgnoreCase) ||
              e.CommandName.Equals("moveDown", StringComparison.OrdinalIgnoreCase)))
        {
            return;
        }

        // If only one item in grid, there's nothing to adjust.
        if (grid.Rows.Count < 2)
        {
            return;
        }

        bool moveUp = e.CommandName.Equals("moveUp", StringComparison.OrdinalIgnoreCase);

        int rowIndex = Convert.ToInt32(e.CommandArgument);

        // If already at the top, can't move any higher.
        if (moveUp && rowIndex == 0)
        {
            return;
        }

        // If already at the bottom, can't move any lower.
        if (!moveUp && rowIndex == (grid.Rows.Count - 1))
        {
            return;
        }

        Guid         id       = (Guid)grid.DataKeys[rowIndex].Value;
        BlogRollItem brToMove = BlogRollItem.GetBlogRollItem(id);

        Guid         swapPositionWithId   = (Guid)grid.DataKeys[rowIndex + (moveUp ? -1 : 1)].Value;
        BlogRollItem brToSwapPositionWith = BlogRollItem.GetBlogRollItem(swapPositionWithId);

        if (brToMove != null && brToSwapPositionWith != null)
        {
            int newSortIndex = brToSwapPositionWith.SortIndex;
            brToSwapPositionWith.SortIndex = brToMove.SortIndex;
            brToMove.SortIndex             = newSortIndex;

            brToSwapPositionWith.Save();
            brToMove.Save();

            BlogRollItem.BlogRolls.Sort();
            Response.Redirect(Request.RawUrl);
        }
    }
예제 #22
0
        /// <summary>
        /// Add blogroll
        /// </summary>
        /// <param name="form">submitted form</param>
        public void Add(NameValueCollection form)
        {
            if (!Security.IsAdministrator)
                throw new UnauthorizedAccessException();

            var br = new BlogRollItem();
            br.Title = form["txtTitle"];
            br.Description = form["txtDesc"];
            br.BlogUrl = new Uri(form["txtWebsite"]);
            br.FeedUrl = new Uri(form["txtUrl"]);
            br.Xfn = GetXfn(form);

            if (string.IsNullOrEmpty(br.Xfn))
                br.Xfn = "contact";

            Providers.BlogService.InsertBlogRoll(br);
        }
예제 #23
0
        /// <summary>
        /// Adds a blog to the item collection and start retrieving the blogs.
        /// </summary>
        /// <param name="br">
        /// The blogroll item.
        /// </param>
        private static void AddBlog(BlogRollItem br)
        {
            var affected = items.FirstOrDefault(r => r.RollItem.Equals(br));

            if (affected != null)
            {
                return;
            }

            var req = (HttpWebRequest)WebRequest.Create(br.FeedUrl);

            req.Credentials = CredentialCache.DefaultNetworkCredentials;

            var blogRequest = new BlogRequest(br, req);

            items.Add(blogRequest);
            req.BeginGetResponse(ProcessResponse, blogRequest);
        }
예제 #24
0
    public HttpResponseMessage Update([FromBody] BlogRollRowItem item)
    {
        var br = BlogRollItem.GetBlogRollItem(item.Id);

        if (br == null)
        {
            return(Request.CreateResponse(HttpStatusCode.NotFound));
        }

        br.Title       = item.Title;
        br.Description = item.Description;
        br.BlogUrl     = new Uri(item.BlogUrl);
        br.FeedUrl     = new Uri(item.FeedUrl);
        br.Xfn         = item.Xfn.TrimEnd();
        br.Save();

        Resort();
        return(Request.CreateResponse(HttpStatusCode.OK));
    }
예제 #25
0
    protected void grid_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        Guid         id = (Guid)grid.DataKeys[e.RowIndex].Value;
        BlogRollItem br = BlogRollItem.GetBlogRollItem(id);

        br.Delete();
        br.Save();

        int sortIndex = -1;

        // Re-sort remaining items starting from zero to eliminate any possible gaps.
        // Need to cast BlogRollItem.BlogRolls to an array to
        // prevent errors with modifying a collection while enumerating it.
        foreach (BlogRollItem brItem in BlogRollItem.BlogRolls.ToArray())
        {
            brItem.SortIndex = ++sortIndex;
            brItem.Save();
        }

        Response.Redirect(Request.RawUrl);
    }
        /// <summary>
        /// Deletes a BlogRoll from the database
        /// </summary>
        /// <param name="blogRollItem">
        /// The blog Roll Item.
        /// </param>
        public override void DeleteBlogRollItem(BlogRollItem blogRollItem)
        {
            var blogRolls = BlogRollItem.BlogRolls;
            blogRolls.Remove(blogRollItem);
            blogRolls.Add(blogRollItem);

            using (var conn = this.CreateConnection())
            {
                if (conn.HasConnection)
                {
                    var sqlQuery = string.Format("DELETE FROM {0}BlogRollItems WHERE BlogRollId = {1}BlogRollId", this.tablePrefix, this.parmPrefix);

                    using (var cmd = conn.CreateTextCommand(sqlQuery))
                    {
                        cmd.Parameters.Add(conn.CreateParameter(FormatParamName("BlogRollId"), blogRollItem.Id.ToString()));

                        cmd.ExecuteNonQuery();
                    }
                }
            }
        }
예제 #27
0
        /// <summary>
        /// Add blogroll
        /// </summary>
        /// <param name="form">submitted form</param>
        public void Add(NameValueCollection form)
        {
            if (!Security.IsAdministrator)
            {
                throw new UnauthorizedAccessException();
            }

            var br = new BlogRollItem();

            br.Title       = form["txtTitle"];
            br.Description = form["txtDesc"];
            br.BlogUrl     = new Uri(form["txtWebsite"]);
            br.FeedUrl     = new Uri(form["txtUrl"]);
            br.Xfn         = GetXfn(form);

            if (string.IsNullOrEmpty(br.Xfn))
            {
                br.Xfn = "contact";
            }

            Providers.BlogService.InsertBlogRoll(br);
        }
예제 #28
0
    public HttpResponseMessage Get(string id)
    {
        var item = BlogRollItem.GetBlogRollItem(Guid.Parse(id));

        if (item == null)
        {
            return(Request.CreateResponse(HttpStatusCode.NotFound));
        }

        var result = new BlogRollRowItem
        {
            IsChecked   = false,
            Id          = item.Id,
            Title       = item.Title,
            Description = item.Description,
            BlogUrl     = item.BlogUrl.ToString(),
            FeedUrl     = item.FeedUrl.ToString(),
            Xfn         = item.Xfn
        };

        return(Request.CreateResponse(HttpStatusCode.OK, result));
    }
    public HttpResponseMessage Post(BlogRollRowItem item)
    {
        try
        {
            BlogRollItem br = new BlogRollItem();
            br.Title       = item.Title.Replace(@"\", "'");
            br.Description = item.Description;
            br.BlogUrl     = new Uri(getUrl(item.BlogUrl));
            br.FeedUrl     = new Uri(getUrl(item.FeedUrl));
            br.Xfn         = item.Xfn.TrimEnd();

            int largestSortIndex = -1;
            foreach (BlogRollItem brExisting in BlogRollItem.BlogRolls)
            {
                if (brExisting.SortIndex > largestSortIndex)
                {
                    largestSortIndex = brExisting.SortIndex;
                }
            }
            br.SortIndex = largestSortIndex + 1;
            br.Save();

            if (br == null)
            {
                return(Request.CreateResponse(HttpStatusCode.NotFound));
            }

            return(Request.CreateResponse(HttpStatusCode.Created, br));
        }
        catch (UnauthorizedAccessException)
        {
            return(Request.CreateResponse(HttpStatusCode.Unauthorized, Resources.labels.notAuthorized));
        }
        catch (Exception ex)
        {
            return(Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message));
        }
    }
        /// <summary>
        /// Deletes a BlogRoll from the database
        /// </summary>
        /// <param name="blogRollItem">
        /// The blog Roll Item.
        /// </param>
        public override void DeleteBlogRollItem(BlogRollItem blogRollItem)
        {
            var blogRolls = BlogRollItem.BlogRolls;
            blogRolls.Remove(blogRollItem);
            blogRolls.Add(blogRollItem);

            var connString = ConfigurationManager.ConnectionStrings[this.connStringName].ConnectionString;
            var providerName = ConfigurationManager.ConnectionStrings[this.connStringName].ProviderName;
            var provider = DbProviderFactories.GetFactory(providerName);

            using (var conn = provider.CreateConnection())
            {
                if (conn == null)
                {
                    return;
                }

                conn.ConnectionString = connString;
                conn.Open();
                using (var cmd = conn.CreateCommand())
                {
                    var sqlQuery = string.Format("DELETE FROM {0}BlogRollItems WHERE BlogRollId = {1}BlogRollId", this.tablePrefix, this.parmPrefix);
                    cmd.CommandText = sqlQuery;
                    cmd.CommandType = CommandType.Text;

                    var parameter = provider.CreateParameter();
                    if (parameter != null)
                    {
                        parameter.ParameterName = string.Format("{0}BlogRollId", this.parmPrefix);
                        parameter.Value = blogRollItem.Id.ToString();
                        cmd.Parameters.Add(parameter);
                    }

                    cmd.ExecuteNonQuery();
                }
            }
        }
예제 #31
0
    public HttpResponseMessage Post(BlogRollRowItem item)
    {
        BlogRollItem br = new BlogRollItem();

        br.Title       = item.Title.Replace(@"\", "'");
        br.Description = item.Description;
        br.BlogUrl     = new Uri(getUrl(item.BlogUrl));
        br.FeedUrl     = new Uri(getUrl(item.FeedUrl));
        br.Xfn         = item.Xfn.TrimEnd();

        int largestSortIndex = -1;

        foreach (BlogRollItem brExisting in BlogRollItem.BlogRolls)
        {
            if (brExisting.SortIndex > largestSortIndex)
            {
                largestSortIndex = brExisting.SortIndex;
            }
        }
        br.SortIndex = largestSortIndex + 1;
        br.Save();

        return(Request.CreateResponse(HttpStatusCode.Created, br));
    }
        /// <summary>
        /// The add blog roll parameters to command.
        /// </summary>
        /// <param name="blogRollItem">
        /// The blog roll item.
        /// </param>
        /// <param name="conn">
        /// The connection.
        /// </param>
        /// <param name="cmd">
        /// The command.
        /// </param>
        private void AddBlogRollParametersToCommand(
            BlogRollItem blogRollItem, DbConnectionHelper conn, DbCommand cmd)
        {

            var parms = cmd.Parameters;
            parms.Add(conn.CreateParameter(FormatParamName("BlogId"), Blog.CurrentInstance.Id.ToString()));
            parms.Add(conn.CreateParameter(FormatParamName("BlogRollId"), blogRollItem.Id.ToString()));
            parms.Add(conn.CreateParameter(FormatParamName("Title"), blogRollItem.Title));
            parms.Add(conn.CreateParameter(FormatParamName("Description"), blogRollItem.Description));
            parms.Add(conn.CreateParameter(FormatParamName("BlogUrl"), (blogRollItem.BlogUrl != null ? (object)blogRollItem.BlogUrl.ToString() : DBNull.Value)));
            parms.Add(conn.CreateParameter(FormatParamName("FeedUrl"), (blogRollItem.FeedUrl != null ? (object)blogRollItem.FeedUrl.ToString() : DBNull.Value)));
            parms.Add(conn.CreateParameter(FormatParamName("Xfn"), blogRollItem.Xfn));
            parms.Add(conn.CreateParameter(FormatParamName("SortIndex"), blogRollItem.SortIndex));
        }
        /// <summary>
        /// Gets all BlogRolls in database
        /// </summary>
        /// <returns>
        /// List of BlogRolls
        /// </returns>
        public override List<BlogRollItem> FillBlogRoll()
        {
            var blogRoll = new List<BlogRollItem>();

            using (var conn = this.CreateConnection())
            {
                if (conn.HasConnection)
                {
                    using (var cmd = conn.CreateTextCommand(string.Format("SELECT BlogRollId, Title, Description, BlogUrl, FeedUrl, Xfn, SortIndex FROM {0}BlogRollItems WHERE BlogId = {1}blogid ", this.tablePrefix, this.parmPrefix)))
                    {
                        cmd.Parameters.Add(conn.CreateParameter(FormatParamName("blogid"), Blog.CurrentInstance.Id.ToString()));

                        using (var rdr = cmd.ExecuteReader())
                        {
                            while (rdr.Read())
                            {
                                var br = new BlogRollItem
                                    {
                                        Id = rdr.GetGuid(0),
                                        Title = rdr.GetString(1),
                                        Description = rdr.IsDBNull(2) ? string.Empty : rdr.GetString(2),
                                        BlogUrl = rdr.IsDBNull(3) ? null : new Uri(rdr.GetString(3)),
                                        FeedUrl = rdr.IsDBNull(4) ? null : new Uri(rdr.GetString(4)),
                                        Xfn = rdr.IsDBNull(5) ? string.Empty : rdr.GetString(5),
                                        SortIndex = rdr.GetInt32(6)
                                    };

                                blogRoll.Add(br);
                                br.MarkOld();
                            }
                        }
                    }
                }
            }

            return blogRoll;
        }
예제 #34
0
 /// <summary>
 /// Deletes a BlogRoll
 /// </summary>
 /// <param name="blogRollItem">
 /// The blog Roll Item.
 /// </param>
 public override void DeleteBlogRollItem(BlogRollItem blogRollItem)
 {
     var blogRolls = FillBlogRoll().Where(r => r.Id != blogRollItem.Id).ToList();
     WriteBlogRollFile(blogRolls);
 }
        /// <summary>
        /// Adds a new BlogRoll to the database.
        /// </summary>
        /// <param name="blogRollItem">
        /// The blog Roll Item.
        /// </param>
        public override void InsertBlogRollItem(BlogRollItem blogRollItem)
        {
            var blogRolls = BlogRollItem.BlogRolls;
            blogRolls.Add(blogRollItem);

            var connString = ConfigurationManager.ConnectionStrings[this.connStringName].ConnectionString;
            var providerName = ConfigurationManager.ConnectionStrings[this.connStringName].ProviderName;
            var provider = DbProviderFactories.GetFactory(providerName);

            using (var conn = provider.CreateConnection())
            {
                if (conn == null)
                {
                    return;
                }

                conn.ConnectionString = connString;
                conn.Open();
                using (var cmd = conn.CreateCommand())
                {
                    var sqlQuery = string.Format("INSERT INTO {0}BlogRollItems (BlogRollId, Title, Description, BlogUrl, FeedUrl, Xfn, SortIndex) VALUES (@BlogRollId, @Title, @Description, @BlogUrl, @FeedUrl, @Xfn, @SortIndex)", this.tablePrefix);
                    if (this.parmPrefix != "@")
                    {
                        sqlQuery = sqlQuery.Replace("@", this.parmPrefix);
                    }

                    cmd.CommandText = sqlQuery;
                    cmd.CommandType = CommandType.Text;

                    this.AddBlogRollParametersToCommand(blogRollItem, provider, cmd);

                    cmd.ExecuteNonQuery();
                }
            }
        }
예제 #36
0
 /// <summary>
 /// Gets a BlogRoll based on a Guid.
 /// </summary>
 /// <param name="id">The BlogRoll's Guid.</param>
 /// <returns>A matching BlogRoll</returns>
 public override BlogRollItem SelectBlogRollItem(Guid id)
 {
     BlogRollItem blogRoll = BlogRollItem.BlogRolls.Find(br => br.Id == id);
     if (blogRoll == null)
     {
         blogRoll = new BlogRollItem();
     }
     blogRoll.MarkOld();
     return blogRoll;
 }
예제 #37
0
        private void addBlogRollParametersToCommand(BlogRollItem blogRollItem, DbProviderFactory provider, DbCommand cmd)
        {
            DbParameter dpID = provider.CreateParameter();
            dpID.ParameterName = parmPrefix + "BlogRollId";
            dpID.Value = blogRollItem.Id.ToString();
            cmd.Parameters.Add(dpID);

            DbParameter dpTitle = provider.CreateParameter();
            dpTitle.ParameterName = parmPrefix + "Title";
            dpTitle.Value = blogRollItem.Title;
            cmd.Parameters.Add(dpTitle);

            DbParameter dpDesc = provider.CreateParameter();
            dpDesc.ParameterName = parmPrefix + "Description";
            dpDesc.Value = blogRollItem.Description;
            cmd.Parameters.Add(dpDesc);

            DbParameter dpBlogUrl = provider.CreateParameter();
            dpBlogUrl.ParameterName = "BlogUrl";
            dpBlogUrl.Value = blogRollItem.BlogUrl != null ? (object)blogRollItem.BlogUrl.ToString() : DBNull.Value;
            cmd.Parameters.Add(dpBlogUrl);

            DbParameter dpFeedUrl = provider.CreateParameter();
            dpFeedUrl.ParameterName = "FeedUrl";
            dpFeedUrl.Value = blogRollItem.FeedUrl != null ? (object)blogRollItem.FeedUrl.ToString() : DBNull.Value;
            cmd.Parameters.Add(dpFeedUrl);

            DbParameter dpXfn = provider.CreateParameter();
            dpXfn.ParameterName = "Xfn";
            dpXfn.Value = blogRollItem.Xfn;
            cmd.Parameters.Add(dpXfn);

            DbParameter dpSortIndex = provider.CreateParameter();
            dpSortIndex.ParameterName = "SortIndex";
            dpSortIndex.Value = blogRollItem.SortIndex;
            cmd.Parameters.Add(dpSortIndex);
        }
예제 #38
0
 /// <summary>
 /// Deletes a BlogRoll
 /// </summary>
 /// <param name="blogRollItem">
 /// The blog Roll Item.
 /// </param>
 public override void DeleteBlogRollItem(BlogRollItem blogRollItem)
 {
     var blogRoll = BlogRollItem.BlogRolls;
     blogRoll.Remove(blogRollItem);
     this.WriteBlogRollFile(blogRoll);
 }
예제 #39
0
        // Post
        #region Public Methods

        /// <summary>
        /// Deletes a BlogRoll from the data store specified by the provider.
        /// </summary>
        /// <param name="blogRollItem">
        /// The blog Roll Item to delete.
        /// </param>
        public abstract void DeleteBlogRollItem(BlogRollItem blogRollItem);
 /// <summary>
 /// Persists a new BlogRoll in the current provider.
 /// </summary>
 /// <param name="blogRoll">
 /// The blog Roll.
 /// </param>
 public static void InsertBlogRoll(BlogRollItem blogRoll)
 {
     Provider.InsertBlogRollItem(blogRoll);
 }
        /// <summary>
        /// Adds a new BlogRoll to the database.
        /// </summary>
        /// <param name="blogRollItem">
        /// The blog Roll Item.
        /// </param>
        public override void InsertBlogRollItem(BlogRollItem blogRollItem)
        {
            var blogRolls = BlogRollItem.BlogRolls;
            blogRolls.Add(blogRollItem);

            using (var conn = this.CreateConnection())
            {
                if (conn.HasConnection)
                {

                    var sqlQuery = string.Format("INSERT INTO {0}BlogRollItems (BlogId, BlogRollId, Title, Description, BlogUrl, FeedUrl, Xfn, SortIndex) VALUES ({1}BlogId, {1}BlogRollId, {1}Title, {1}Description, {1}BlogUrl, {1}FeedUrl, {1}Xfn, {1}SortIndex)", this.tablePrefix, this.parmPrefix);

                    using (var cmd = conn.CreateTextCommand(sqlQuery))
                    {
                        this.AddBlogRollParametersToCommand(blogRollItem, conn, cmd);
                        cmd.ExecuteNonQuery();
                    }
                }
            }
        }
예제 #42
0
 /// <summary>
 /// Updates an existing BlogRoll in the data store specified by the provider.
 /// </summary>
 /// <param name="blogRollItem">
 /// The blog Roll Item to update.
 /// </param>
 public abstract void UpdateBlogRollItem(BlogRollItem blogRollItem);
예제 #43
0
 /// <summary>
 /// Deletes a BlogRoll from the data store specified by the provider.
 /// </summary>
 /// <param name="blogRollItem">
 /// The blog Roll Item to delete.
 /// </param>
 public abstract void DeleteBlogRollItem(BlogRollItem blogRollItem);
예제 #44
0
 /// <summary>
 /// Inserts a new BlogRoll into the data store specified by the provider.
 /// </summary>
 /// <param name="blogRollItem">
 /// The blog Roll Item.
 /// </param>
 public abstract void InsertBlogRollItem(BlogRollItem blogRollItem);
예제 #45
0
        /// <summary>
        /// Inserts a BlogRoll
        /// </summary>
        /// <param name="blogRollItem">
        /// The blog Roll Item.
        /// </param>
        public override void InsertBlogRollItem(BlogRollItem blogRollItem)
        {
            var blogRolls = BlogRollItem.BlogRolls;
            blogRolls.Add(blogRollItem);

            this.WriteBlogRollFile(blogRolls);
        }
예제 #46
0
 /// <summary>
 /// Updates a BlogRoll
 /// </summary>
 /// <param name="blogRollItem">
 /// The blog Roll Item.
 /// </param>
 public override void UpdateBlogRollItem(BlogRollItem blogRollItem)
 {
     var blogRolls = BlogRollItem.BlogRolls;
     blogRolls.Remove(blogRollItem);
     blogRolls.Add(blogRollItem);
     this.WriteBlogRollFile(blogRolls);
 }
 /// <summary>
 /// Updates an exsiting BlogRoll.
 /// </summary>
 /// <param name="blogRoll">
 /// The blog Roll.
 /// </param>
 public static void UpdateBlogRoll(BlogRollItem blogRoll)
 {
     Provider.UpdateBlogRollItem(blogRoll);
 }
예제 #48
0
 public HttpResponseMessage Update([FromBody] BlogRollItem item)
 {
     BlogEngine.Core.Providers.BlogService.UpdateBlogRoll(item);
     return(Request.CreateResponse(HttpStatusCode.OK));
 }
예제 #49
0
 /// <summary>
 /// Persists a new BlogRoll in the current provider.
 /// </summary>
 /// <param name="blogRoll">
 /// The blog Roll.
 /// </param>
 public static void InsertBlogRoll(BlogRollItem blogRoll)
 {
     LoadProviders();
     provider.InsertBlogRollItem(blogRoll);
 }
 /// <summary>
 /// Deletes the specified BlogRoll from the current provider.
 /// </summary>
 /// <param name="blogRoll">
 /// The blog Roll.
 /// </param>
 public static void DeleteBlogRoll(BlogRollItem blogRoll)
 {
     Provider.DeleteBlogRollItem(blogRoll);
 }
예제 #51
0
 /// <summary>
 /// Inserts a new BlogRoll into the data store specified by the provider.
 /// </summary>
 /// <param name="blogRollItem">
 /// The blog Roll Item.
 /// </param>
 public abstract void InsertBlogRollItem(BlogRollItem blogRollItem);
예제 #52
0
 /// <summary>
 /// Deletes the specified BlogRoll from the current provider.
 /// </summary>
 /// <param name="blogRoll">
 /// The blog Roll.
 /// </param>
 public static void DeleteBlogRoll(BlogRollItem blogRoll)
 {
     LoadProviders();
     provider.DeleteBlogRollItem(blogRoll);
 }
예제 #53
0
 /// <summary>
 /// Updates an existing BlogRollItem in the data store specified by the provider.
 /// </summary>
 /// <param name="blogRollItem">
 /// The blogroll item to update.
 /// </param>
 public abstract void UpdateBlogRollItem(BlogRollItem blogRollItem);
        /// <summary>
        /// Gets all BlogRolls in database
        /// </summary>
        /// <returns>
        /// List of BlogRolls
        /// </returns>
        public override List<BlogRollItem> FillBlogRoll()
        {
            var blogRoll = new List<BlogRollItem>();

            var connString = ConfigurationManager.ConnectionStrings[this.connStringName].ConnectionString;
            var providerName = ConfigurationManager.ConnectionStrings[this.connStringName].ProviderName;
            var provider = DbProviderFactories.GetFactory(providerName);

            using (var conn = provider.CreateConnection())
            {
                if (conn != null)
                {
                    conn.ConnectionString = connString;
                    conn.Open();
                    using (var cmd = conn.CreateCommand())
                    {
                        var sqlQuery = string.Format("SELECT BlogRollId, Title, Description, BlogUrl, FeedUrl, Xfn, SortIndex FROM {0}BlogRollItems ", this.tablePrefix);
                        cmd.CommandText = sqlQuery;
                        cmd.CommandType = CommandType.Text;

                        using (var rdr = cmd.ExecuteReader())
                        {
                            if (rdr.HasRows)
                            {
                                while (rdr.Read())
                                {
                                    var br = new BlogRollItem
                                        {
                                            Id = rdr.GetGuid(0),
                                            Title = rdr.GetString(1),
                                            Description = rdr.IsDBNull(2) ? string.Empty : rdr.GetString(2),
                                            BlogUrl = rdr.IsDBNull(3) ? null : new Uri(rdr.GetString(3)),
                                            FeedUrl = rdr.IsDBNull(4) ? null : new Uri(rdr.GetString(4)),
                                            Xfn = rdr.IsDBNull(5) ? string.Empty : rdr.GetString(5),
                                            SortIndex = rdr.GetInt32(6)
                                        };

                                    blogRoll.Add(br);
                                    br.MarkOld();
                                }
                            }
                        }
                    }
                }
            }

            return blogRoll;
        }
예제 #55
0
        /// <summary>
        /// Saves an existing BlogRoll to the database
        /// </summary>
        /// <param name="blogRollItem">BlogRoll to be saved</param>
        public override void UpdateBlogRollItem(BlogRollItem blogRollItem)
        {
            List<BlogRollItem> blogRolls = BlogRollItem.BlogRolls;
            blogRolls.Remove(blogRollItem);
            blogRolls.Add(blogRollItem);

            string connString = ConfigurationManager.ConnectionStrings[connStringName].ConnectionString;
            string providerName = ConfigurationManager.ConnectionStrings[connStringName].ProviderName;
            DbProviderFactory provider = DbProviderFactories.GetFactory(providerName);

            using (DbConnection conn = provider.CreateConnection())
            {
                conn.ConnectionString = connString;
                conn.Open();
                using (DbCommand cmd = conn.CreateCommand())
                {
                    string sqlQuery = "UPDATE " + tablePrefix + "BlogRollItems " +
                                      "SET Title = @Title, " +
                                      "Description = @Description, BlogUrl = @BlogUrl, " +
                                      "FeedUrl = @FeedUrl, Xfn = @Xfn, SortIndex = @SortIndex " +
                                      "WHERE BlogRollId = @BlogRollId";
                    if (parmPrefix != "@")
                        sqlQuery = sqlQuery.Replace("@", parmPrefix);
                    cmd.CommandText = sqlQuery;
                    cmd.CommandType = CommandType.Text;

                    addBlogRollParametersToCommand(blogRollItem, provider, cmd);

                    cmd.ExecuteNonQuery();
                }
            }
        }
예제 #56
0
 /// <summary>
 /// Updates an exsiting BlogRoll.
 /// </summary>
 /// <param name="blogRoll">
 /// The blog Roll.
 /// </param>
 public static void UpdateBlogRoll(BlogRollItem blogRoll)
 {
     LoadProviders();
     provider.UpdateBlogRollItem(blogRoll);
 }
예제 #57
0
        /// <summary>
        /// Gets all BlogRolls in database
        /// </summary>
        /// <returns>List of BlogRolls</returns>
        public override List<BlogRollItem> FillBlogRoll()
        {
            List<BlogRollItem> blogRoll = new List<BlogRollItem>();

            string connString = ConfigurationManager.ConnectionStrings[connStringName].ConnectionString;
            string providerName = ConfigurationManager.ConnectionStrings[connStringName].ProviderName;
            DbProviderFactory provider = DbProviderFactories.GetFactory(providerName);

            using (DbConnection conn = provider.CreateConnection())
            {
                conn.ConnectionString = connString;
                conn.Open();
                using (DbCommand cmd = conn.CreateCommand())
                {
                    string sqlQuery = "SELECT BlogRollId, Title, Description, BlogUrl, FeedUrl, Xfn, SortIndex " +
                        "FROM " + tablePrefix + "BlogRollItems ";
                    cmd.CommandText = sqlQuery;
                    cmd.CommandType = CommandType.Text;

                    using (DbDataReader rdr = cmd.ExecuteReader())
                    {
                        if (rdr.HasRows)
                        {
                            while (rdr.Read())
                            {
                                BlogRollItem br = new BlogRollItem()
                                {
                                    Id = rdr.GetGuid(0),
                                    Title = rdr.GetString(1),
                                    Description = rdr.IsDBNull(2) ? string.Empty : rdr.GetString(2),
                                    BlogUrl = rdr.IsDBNull(3) ? null : new Uri(rdr.GetString(3)),
                                    FeedUrl = rdr.IsDBNull(4) ? null : new Uri(rdr.GetString(4)),
                                    Xfn = rdr.IsDBNull(5) ? string.Empty : rdr.GetString(5),
                                    SortIndex = rdr.GetInt32(6)
                                };

                                blogRoll.Add(br);
                                br.MarkOld();
                            }
                        }
                    }
                }
            }

            return blogRoll;
        }
        /// <summary>
        /// Saves an existing BlogRoll to the database
        /// </summary>
        /// <param name="blogRollItem">
        /// BlogRoll to be saved
        /// </param>
        public override void UpdateBlogRollItem(BlogRollItem blogRollItem)
        {
            var blogRolls = BlogRollItem.BlogRolls;
            blogRolls.Remove(blogRollItem);
            blogRolls.Add(blogRollItem);

            using (var conn = this.CreateConnection())
            {
                if (conn.HasConnection)
                {
                    var sqlQuery = string.Format("UPDATE {0}BlogRollItems SET Title = {1}Title, Description = {1}Description, BlogUrl = {1}BlogUrl, FeedUrl = {1}FeedUrl, Xfn = {1}Xfn, SortIndex = {1}SortIndex WHERE BlogId = {1}BlogId AND BlogRollId = {1}BlogRollId", this.tablePrefix, this.parmPrefix);

                    using (var cmd = conn.CreateTextCommand(sqlQuery))
                    {
                        this.AddBlogRollParametersToCommand(blogRollItem, conn, cmd);
                        cmd.ExecuteNonQuery();
                    }
                }
            }
        }
예제 #59
0
        /// <summary>
        /// Adds a new BlogRoll to the database.
        /// </summary>
        /// <param name="blogRoll">BlogRoll to add.</param>
        public override void InsertBlogRollItem(BlogRollItem blogRollItem)
        {
            List<BlogRollItem> blogRolls = BlogRollItem.BlogRolls;
            blogRolls.Add(blogRollItem);

            string connString = ConfigurationManager.ConnectionStrings[connStringName].ConnectionString;
            string providerName = ConfigurationManager.ConnectionStrings[connStringName].ProviderName;
            DbProviderFactory provider = DbProviderFactories.GetFactory(providerName);

            using (DbConnection conn = provider.CreateConnection())
            {
                conn.ConnectionString = connString;
                conn.Open();
                using (DbCommand cmd = conn.CreateCommand())
                {
                    string sqlQuery = "INSERT INTO " + tablePrefix + "BlogRollItems (BlogRollId, Title, Description, BlogUrl, FeedUrl, Xfn, SortIndex) " +
                                        "VALUES (@BlogRollId, @Title, @Description, @BlogUrl, @FeedUrl, @Xfn, @SortIndex)";
                    if (parmPrefix != "@")
                        sqlQuery = sqlQuery.Replace("@", parmPrefix);
                    cmd.CommandText = sqlQuery;
                    cmd.CommandType = CommandType.Text;

                    addBlogRollParametersToCommand(blogRollItem, provider, cmd);

                    cmd.ExecuteNonQuery();
                }
            }
        }
예제 #60
0
    private void Process_DoFolderUpdate()
    {
        bool bInheritanceIsDif;
        bInheritanceIsDif = false;
        int isub = 0;
        string init_xmlconfig = Request.Form["init_xmlconfig"];
        string init_frm_xmlinheritance = Request.Form["init_frm_xmlinheritance"];
        Ektron.Cms.Content.EkXmlIndexing XmlInd;
        FolderData folder_data = null;
        Ektron.Cms.Content.EkContent m_refContent;
        SubscriptionPropertiesData sub_prop_data = new SubscriptionPropertiesData();
        Collection page_subscription_data = new Collection();
        Collection page_sub_temp = new Collection();
        Array arrSubscriptions;
        int i = 0;
        BlogRollItem[] abriRoll;
        string sCatTemp = "";
        List<string> siteAliasList = new List<string>();
        string[] arSiteAliasList;

        Ektron.Cms.SiteAliasApi _refSiteAliasApi;
        bool subscriptionRestore = false;

        m_refContent = _ContentApi.EkContentRef;
        if (_FolderId == -1)
        {
            _FolderId = _Id; //i.e Request.Form(folder_id.UniqueID)
        }
        _FolderData = _ContentApi.GetFolderById(_Id, true, true);
        _FolderType = _FolderData.FolderType;

        if (Convert.ToString(_FolderId) != "")
        {

            if (_FolderType != (int)Ektron.Cms.Common.EkEnumeration.FolderType.Catalog)
            {
                if (!string.IsNullOrEmpty(Request.Form["web_alert_inherit_checkbox"]))
                {
                    sub_prop_data.BreakInheritance = false;
                    subscriptionRestore = true;
                }
                else
                {
                    sub_prop_data.BreakInheritance = true;
                    if (!string.IsNullOrEmpty(Request.Form["web_alert_restore_inherit_checkbox"]))
                    {
                        subscriptionRestore = true;
                    }
                }

                if (Request.Form["notify_option"] == ("Always"))
                {
                    sub_prop_data.NotificationType = Ektron.Cms.Common.EkEnumeration.SubscriptionPropertyNotificationTypes.Always;
                }
                else if (Request.Form["notify_option"] == ("Initial"))
                {
                    sub_prop_data.NotificationType = Ektron.Cms.Common.EkEnumeration.SubscriptionPropertyNotificationTypes.Initial;
                }
                else if (Request.Form["notify_option"] == ("Never"))
                {
                    sub_prop_data.NotificationType = Ektron.Cms.Common.EkEnumeration.SubscriptionPropertyNotificationTypes.Never;
                }

                sub_prop_data.SuspendNextNotification = false;
                sub_prop_data.SendNextNotification = false;

                sub_prop_data.OptOutID = Convert.ToInt64(Request.Form["notify_optoutid"]);
                if (!string.IsNullOrEmpty((Request.Form["use_message_button"])))
                {
                    sub_prop_data.DefaultMessageID = Convert.ToInt64(Request.Form["notify_messageid"]);
                }
                else
                {
                    sub_prop_data.DefaultMessageID = 0;
                }
                if (!string.IsNullOrEmpty(Request.Form["use_summary_button"]))
                {
                    sub_prop_data.SummaryID = 1;
                }
                else
                {
                    sub_prop_data.SummaryID = 0;
                }
                if (!string.IsNullOrEmpty(Request.Form["use_content_button"]))
                {
                    sub_prop_data.ContentID = Convert.ToInt64(Request.Form["frm_content_id"]);
                }
                else
                {
                    sub_prop_data.ContentID = 0;
                }
                sub_prop_data.UnsubscribeID = Convert.ToInt64(Request.Form["notify_unsubscribeid"]);

                if (!string.IsNullOrEmpty(Request.Form["notify_url"]))
                {
                    sub_prop_data.URL = Request.Form["notify_url"];
                }
                else
                {
                    sub_prop_data.URL = Request.ServerVariables["HTTP_HOST"];
                }

                if (!string.IsNullOrEmpty(Request.Form["notify_weblocation"]))
                {
                    sub_prop_data.FileLocation = Server.MapPath(_ContentApi.AppPath + "subscriptions");
                }
                else
                {
                    sub_prop_data.FileLocation = Server.MapPath(_ContentApi.AppPath + "subscriptions");
                }
                if (!string.IsNullOrEmpty(Request.Form["notify_weblocation"]))
                {
                    sub_prop_data.WebLocation = Request.Form["notify_weblocation"];
                }
                else
                {
                    sub_prop_data.WebLocation = "subscriptions";
                }

                if (!string.IsNullOrEmpty(Request.Form["notify_subject"]))
                {
                    sub_prop_data.Subject = Request.Form["notify_subject"];
                }
                else
                {
                    sub_prop_data.Subject = "";
                }
                if (!string.IsNullOrEmpty(Request.Form["notify_emailfrom"]))
                {
                    sub_prop_data.EmailFrom = Request.Form["notify_emailfrom"];
                }
                else
                {
                    sub_prop_data.EmailFrom = "";
                }

                sub_prop_data.UseContentTitle = "";

                if (!string.IsNullOrEmpty(Request.Form["use_contentlink_button"]))
                {
                    sub_prop_data.UseContentLink = 1;
                }
                else
                {
                    sub_prop_data.UseContentLink = 0;
                }

                if (!string.IsNullOrEmpty(Request.Form["content_sub_assignments"]))
                {
                    arrSubscriptions = Strings.Split(Strings.Trim(Request.Form["content_sub_assignments"]), " ", -1, 0);
                    if (arrSubscriptions.Length > 0)
                    {
                        for (isub = 0; isub <= (arrSubscriptions.Length - 1); isub++)
                        {
                            if (arrSubscriptions.GetValue(isub).ToString() != ",") // ignore empty value when web alerts are inherited
                            {
                                page_sub_temp = new Collection();
                                page_sub_temp.Add(long.Parse(Strings.Mid(arrSubscriptions.GetValue(isub).ToString(), 10)), "ID", null, null);
                                page_subscription_data.Add(page_sub_temp, null, null, null);
                            }
                        }
                    }
                }
                else
                {
                    page_subscription_data = null;
                }
                page_sub_temp = null;
            }

            _PageData = new Collection();
            _PageData.Add(Request.Form["foldername"].Trim(".".ToCharArray()), "FolderName", null, null);
            if (!string.IsNullOrEmpty(Request.Form["isblog"]))
            {
                _PageData.Add(Request.Form[tagline.UniqueID], "FolderDescription", null, null);
            }
            else
            {
                _PageData.Add(Request.Form[folderdescription.UniqueID], "FolderDescription", null, null);
            }
            _PageData.Add(Request.Form[folder_id.UniqueID], "FolderID", null, null);
            if (string.IsNullOrEmpty(Request.Form["TemplateTypeBreak"]))
            {
                _PageData.Add(Request.Form["templatefilename"], "TemplateFileName", null, null);
                //Defect # 54021 - Add failed. Duplicate key value supplied.
                //string templateName = (string)(Request.Form["templatefilename"].Split("(".ToCharArray())[0].TrimEnd());
                //TemplateData[] template_data;
                //template_data = _ContentApi.GetAllTemplates("TemplateFileName");
                //int j = 0;
                //for (j = 0; j <= template_data.Length - 1; j++)
                //{
                //    if (!(Request.Form["tinput_" + template_data[j].Id] == null) && template_data[j].FileName == templateName)
                //    {
                //        _PageData.Add(template_data[i].SubType, "TemplateSubType", null, null);
                //    }
                //}

                // Defect # 56113
                // Also added new hidden field to ascx + changes to TemplateConfigSave() in content.aspx
                if (!String.IsNullOrEmpty(Request.Form["defaultTemplateID"]))
                {
                    TemplateModel templateModel = new TemplateModel();
                    TemplateData template_data = templateModel.FindByID(long.Parse(Request.Form["defaultTemplateID"].ToString()));
                    _PageData.Add(template_data.SubType, "TemplateSubType", null, null);
                }
            }
            else
            {
                _PageData.Add("", "TemplateFileName", null, null);
            }
            //_PageData.Add(Request.Form("templatefilename"), "TemplateFileName")
            _PageData.Add(Request.Form["stylesheet"], "StyleSheet", null, null);
            if (_FolderType != (int)Ektron.Cms.Common.EkEnumeration.FolderType.Calendar)
            {
                if (Strings.LCase(Request.Form["TypeBreak"]) == "on")
                {
                    if (init_frm_xmlinheritance == "0")
                    {
                        bInheritanceIsDif = true;
                    }
                    _PageData.Add(true, "XmlInherited", null, null);
                }
                else
                {
                    if (init_frm_xmlinheritance == "1")
                    {
                        bInheritanceIsDif = true;
                    }
                    _PageData.Add(false, "XmlInherited", null, null);
                }
                _PageData.Add(Request.Form["xmlconfig"], "XmlConfiguration", null, null);
            }
            else
            {
                bInheritanceIsDif = false;
                _PageData.Add(false, "XmlInherited", null, null);
                _PageData.Add(Ektron.Cms.Content.Calendar.WebCalendar.WebEventSmartformId.ToString(), "XmlConfiguration", null, null);
            }

            // handle multitemplates if there are any
            i = 1;
            Collection altinfo = new Collection();
            //While (Request.Form("namealt" + CStr(i)) <> "")
            //    Dim namealt As String = Request.Form("namealt" + CStr(i))
            //    Dim xmlconfigalt As String = Request.Form("xmlconfigalt" + CStr(i))
            //    If (xmlconfigalt = "ignore") Then xmlconfigalt = -1
            //    Dim templatealt As String = Request.Form("templatealt" + CStr(i))
            //    If (templatealt = "ignore") Then templatealt = -1
            //    If ((xmlconfigalt > -1) Or (templatealt > -1)) Then
            //        ' add this multitemplate only if a template or config is selected
            //        Dim multitemplate As New Collection
            //        multitemplate.Add(m_intFolderId, "FolderID")
            //        multitemplate.Add(xmlconfigalt, "CollectionID")
            //        multitemplate.Add(templatealt, "TemplateFileID")
            //        multitemplate.Add("", "CSSFile")
            //        multitemplate.Add(namealt, "Name")
            //        altinfo.Add(multitemplate)
            //    End If
            //    i = i + 1
            //End While
            //m_refContentApi.UpdateFolderContentTemplates(m_intFolderId, altinfo)

            bool isPublishedAsPdf = System.Convert.ToBoolean((Request.Form["publishAsPdf"] == "on") ? true : false);
            _PageData.Add(isPublishedAsPdf, "PublishPdfActive", null, null);

            // handle dynamic replication properties
            if (folder_data == null)
            {
                folder_data = _ContentApi.GetFolderById(_FolderId, true, true);
            }
            if (!string.IsNullOrEmpty(Request.Form["EnableReplication"]) || folder_data.IsCommunityFolder)
            {
                _PageData.Add(1, "EnableReplication", null, null);
            }
            else
            {
                _PageData.Add(0, "EnableReplication", null, null);
            }

            // add domain properties if they're there
            if ((!string.IsNullOrEmpty(Request.Form["IsDomainFolder"])) && (!string.IsNullOrEmpty(Request.Form["DomainProduction"])))
            {
                _PageData.Add(true, "IsDomainFolder", null, null);
                string staging = Request.Form["DomainStaging"];
                string production = Request.Form["DomainProduction"];
                if (staging == null)
                {
                    staging = "";
                }
                if (production == null)
                {
                    production = "";
                }
                if (staging.EndsWith("/"))
                {
                    staging = staging.Substring(0, staging.Length - 1);
                }
                if (production.EndsWith("/"))
                {
                    production = production.Substring(0, production.Length - 1);
                }
                if (staging == "")
                {
                    staging = production;
                }
                _PageData.Add(staging, "DomainStaging", null, null);
                _PageData.Add(production, "DomainProduction", null, null);
            }
            else
            {
                _PageData.Add(false, "IsDomainFolder", null, null);
            }
            if (!string.IsNullOrEmpty(Request.Form["isblog"])) //isblog
            {
                _PageData.Add(true, "isblog", null, null);
                _PageData.Add(Request.Form["blog_visibility"], "blog_visibility", null, null);
                _PageData.Add(Request.Form["blogtitle"], "blogtitle", null, null);
                if (!string.IsNullOrEmpty(Request.Form["postsvisible"]))
                {
                    _PageData.Add(Request.Form["postsvisible"], "postsvisible", null, null);
                }
                else
                {
                    _PageData.Add(-1, "postsvisible", null, null);
                }
                if (!string.IsNullOrEmpty(Request.Form["enable_comments"]))
                {
                    _PageData.Add(true, "enablecomments", null, null);
                }
                else
                {
                    _PageData.Add(false, "enablecomments", null, null);
                }
                if (!string.IsNullOrEmpty(Request.Form["moderate_comments"]))
                {
                    _PageData.Add(true, "moderatecomments", null, null);
                }
                else
                {
                    _PageData.Add(false, "moderatecomments", null, null);
                }
                if (!string.IsNullOrEmpty(Request.Form["require_authentication"]))
                {
                    _PageData.Add(true, "requireauthentication", null, null);
                }
                else
                {
                    _PageData.Add(false, "requireauthentication", null, null);
                }
                _PageData.Add(Request.Form["notify_url"], "notifyurl", null, null);
                if (!string.IsNullOrEmpty(Request.Form["categorylength"]))
                {
                    for (i = 0; i <= (Convert.ToInt64(Request.Form["categorylength"]) - 1); i++)
                    {
                        if (Request.Form["category" + i.ToString()] != "")
                        {
                            if (i == (Convert.ToInt64(Request.Form["categorylength"]) - 1))
                            {
                                sCatTemp += Strings.Replace(Request.Form["category" + i.ToString()], ";", "~@~@~", 1, -1, 0);
                            }
                            else
                            {
                                sCatTemp += (string)(Strings.Replace(Request.Form["category" + i.ToString()], ";", "~@~@~", 1, -1, 0) + ";");
                            }
                        }
                    }
                }
                _PageData.Add(sCatTemp, "blogcategories", null, null);

                if (!string.IsNullOrEmpty(Request.Form["rolllength"]))
                {
                    abriRoll = new BlogRollItem[1];
                    for (i = 0; i <= (Convert.ToInt64(Request.Form["rolllength"]) - 1); i++)
                    {
                        Array.Resize(ref abriRoll, i + 1);
                        if (!string.IsNullOrEmpty(Request.Form["editfolder_linkname" + i.ToString()]) && !string.IsNullOrEmpty(Request.Form["editfolder_url" + i.ToString()]))
                        {
                            //add only if we have something with a name/url
                            abriRoll[i] = new BlogRollItem();
                            abriRoll[i].LinkName = Request.Form["editfolder_linkname" + i.ToString()];
                            abriRoll[i].URL = Request.Form["editfolder_url" + i.ToString()];
                            if (!string.IsNullOrEmpty(Request.Form["editfolder_short" + i.ToString()]))
                            {
                                abriRoll[i].ShortDescription = Request.Form["editfolder_short" + i.ToString()];
                            }
                            else
                            {
                                abriRoll[i].ShortDescription = "";
                            }
                            if (!string.IsNullOrEmpty(Request.Form["editfolder_rel" + i.ToString()]))
                            {
                                abriRoll[i].Relationship = Request.Form["editfolder_rel" + i.ToString()];
                            }
                            else
                            {
                                abriRoll[i].Relationship = "";
                            }
                        }
                        else
                        {
                            abriRoll[i] = null;
                        }
                    }
                    _PageData.Add(abriRoll, "blogroll", null, null);
                }
                else
                {
                    _PageData.Add(null, "blogroll", null, null);
                }
            }
            if ((!string.IsNullOrEmpty(Request.Form["hdnInheritSitemap"])) && (Request.Form["hdnInheritSitemap"].ToString().ToLower() == "true"))
            {
                _PageData.Add(true, "SitemapPathInherit", null, null);
            }
            else
            {
                _PageData.Add(false, "SitemapPathInherit", null, null);
            }

            _PageData.Add(Utilities.DeserializeSitemapPath(Request.Form, this._ContentLanguage), "SitemapPath", null, null);
            if ((!string.IsNullOrEmpty(Request.Form["break_inherit_button"])) && Request.Form["break_inherit_button"].ToString().ToLower() == "on")
            {
                _PageData.Add(1, "InheritMetadata", null, null); //break inherit button is check.
            }
            else
            {
                _PageData.Add(0, "InheritMetadata", null, null);
            }
            _PageData.Add(Request.Form["inherit_meta_from"], "InheritMetadataFrom", null, null);

            if ((!string.IsNullOrEmpty(Request.Form["TaxonomyTypeBreak"])) && Request.Form["TaxonomyTypeBreak"].ToString().ToLower() == "on")
            {
                _PageData.Add(1, "InheritTaxonomy", null, null);
                if ((!string.IsNullOrEmpty(Request.Form["CategoryRequired"])) && Request.Form["CategoryRequired"].ToString().ToLower() == "on")
                {
                    _PageData.Add(1, "CategoryRequired", null, null);
                }
                else
                {
                    _PageData.Add(Request.Form[parent_category_required.UniqueID], "CategoryRequired", null, null);
                }
            }
            else
            {
                _PageData.Add(0, "InheritTaxonomy", null, null);
                if ((!string.IsNullOrEmpty(Request.Form["CategoryRequired"])) && Request.Form["CategoryRequired"].ToString().ToLower() == "on")
                {
                    _PageData.Add(1, "CategoryRequired", null, null);
                }
                else
                {
                    _PageData.Add(0, "CategoryRequired", null, null);
                }
            }
            string IdRequests = "";
            if ((Request.Form["taxlist"] != null) && Request.Form["taxlist"] != "")
            {
                IdRequests = Request.Form["taxlist"];
            }
            _PageData.Add(IdRequests, "TaxonomyList", null, null);
            _PageData.Add(Request.Form[inherit_taxonomy_from.UniqueID], "InheritTaxonomyFrom", null, null);
            //--------------------IscontentSearchable-----------------------------
            if (Request.Form["chkInheritIscontentSearchable"] != null && Request.Form["chkInheritIscontentSearchable"].ToString().ToLower() == "on")
            {
                _PageData.Add(1, "IsContentSearchableInherited", null, null);
                if (Request.Form["chkIscontentSearchable"] != null && Request.Form["chkIscontentSearchable"].ToString().ToLower() == "on")
                {
                    _PageData.Add(1, "IscontentSearchable", null, null);
                }
                else
                {
                    _PageData.Add(Request.Form[current_IscontentSearchable.UniqueID], "IscontentSearchable", null, null);
                }
            }
            else
            {
                _PageData.Add(0, "IsContentSearchableInherited", null, null);
                if (Request.Form["chkIscontentSearchable"] != null && Request.Form["chkIscontentSearchable"].ToString().ToLower() == "on")
                {
                    _PageData.Add(1, "IscontentSearchable", null, null);
                }
                else
                {
                    _PageData.Add(0, "IscontentSearchable", null, null);
                }
            }
            _PageData.Add(Request.Form[inherit_IscontentSearchable_from.UniqueID], "IsContentSearchableInheritedFrom", null, null);
            //--------------------IsContentSearchable End -------------------------
            //-------------------DisplaySettings--------------------
            int totalTabs = 0;
            if (Request.Form["chkInheritIsDisplaySettings"] != null && Request.Form["chkInheritIsDisplaySettings"].ToString().ToLower() == "on")
            {
                _PageData.Add(1, "IsDisplaySettingsInherited", null, null);

                if ((Request.Form["chkIsDisplaySettingsAllTabs"] != null && Request.Form["chkIsDisplaySettingsAllTabs"].ToString().ToLower() == "on") || (Request.Form["chkIsDisplaySettingsSummary"] != null && Request.Form["chkIsDisplaySettingsSummary"].ToString().ToLower() == "on") || (Request.Form["chkIsDisplaySettingsMetaData"] != null && Request.Form["chkIsDisplaySettingsMetaData"].ToString().ToLower() == "on") || (Request.Form["chkIsDisplaySettingsAliasing"] != null && Request.Form["chkIsDisplaySettingsAliasing"].ToString().ToLower() == "on") || (Request.Form["chkIsDisplaySettingsSchedule"] != null && Request.Form["chkIsDisplaySettingsSchedule"].ToString().ToLower() == "on") || (Request.Form["chkIsDisplaySettingsComment"] != null && Request.Form["chkIsDisplaySettingsComment"].ToString().ToLower() == "on") || (Request.Form["chkIsDisplaySettingsTemplates"] != null && Request.Form["chkIsDisplaySettingsTemplates"].ToString().ToLower() == "on") || (Request.Form["chkIsDisplaySettingsTaxonomy"] != null && Request.Form["chkIsDisplaySettingsTaxonomy"].ToString().ToLower() == "on"))
                {
                    if (Request.Form["chkIsDisplaySettingsSummary"] != null && Request.Form["chkIsDisplaySettingsSummary"].ToString().ToLower() == "on")
                    {
                        totalTabs += (int)EkEnumeration.FolderTabDisplaySettings.Summary;
                    }
                    if (Request.Form["chkIsDisplaySettingsMetaData"] != null && Request.Form["chkIsDisplaySettingsMetaData"].ToString().ToLower() == "on")
                    {
                        totalTabs += (int)EkEnumeration.FolderTabDisplaySettings.MetaData;
                    }
                    if (Request.Form["chkIsDisplaySettingsAliasing"] != null && Request.Form["chkIsDisplaySettingsAliasing"].ToString().ToLower() == "on")
                    {
                        totalTabs += (int)EkEnumeration.FolderTabDisplaySettings.Aliasing;
                    }
                    if (Request.Form["chkIsDisplaySettingsSchedule"] != null && Request.Form["chkIsDisplaySettingsSchedule"].ToString().ToLower() == "on")
                    {
                        totalTabs += (int)EkEnumeration.FolderTabDisplaySettings.Schedule;
                    }
                    if (Request.Form["chkIsDisplaySettingsComment"] != null && Request.Form["chkIsDisplaySettingsComment"].ToString().ToLower() == "on")
                    {
                        totalTabs += (int)EkEnumeration.FolderTabDisplaySettings.Comment;
                    }
                    if (Request.Form["chkIsDisplaySettingsTemplates"] != null && Request.Form["chkIsDisplaySettingsTemplates"].ToString().ToLower() == "on")
                    {
                        totalTabs += (int)EkEnumeration.FolderTabDisplaySettings.Templates;
                    }
                    if (Request.Form["chkIsDisplaySettingsTaxonomy"] != null && Request.Form["chkIsDisplaySettingsTaxonomy"].ToString().ToLower() == "on")
                    {
                        totalTabs += (int)EkEnumeration.FolderTabDisplaySettings.Taxonomy;
                    }
                    _PageData.Add(totalTabs, "DisplaySettings", null, null);
                }
                else
                {
                    _PageData.Add(Request.Form[current_IsDisplaySettings.UniqueID], "DisplaySettings", null, null);
                }
            }
            else
            {
                _PageData.Add(0, "IsDisplaySettingsInherited", null, null);
                if ((Request.Form["chkIsDisplaySettingsAllTabs"] != null && Request.Form["chkIsDisplaySettingsAllTabs"].ToString().ToLower() == "on") || (Request.Form["chkIsDisplaySettingsSummary"] != null && Request.Form["chkIsDisplaySettingsSummary"].ToString().ToLower() == "on") || (Request.Form["chkIsDisplaySettingsMetaData"] != null && Request.Form["chkIsDisplaySettingsMetaData"].ToString().ToLower() == "on") || (Request.Form["chkIsDisplaySettingsAliasing"] != null && Request.Form["chkIsDisplaySettingsAliasing"].ToString().ToLower() == "on") || (Request.Form["chkIsDisplaySettingsSchedule"] != null && Request.Form["chkIsDisplaySettingsSchedule"].ToString().ToLower() == "on") || (Request.Form["chkIsDisplaySettingsComment"] != null && Request.Form["chkIsDisplaySettingsComment"].ToString().ToLower() == "on") || (Request.Form["chkIsDisplaySettingsTemplates"] != null && Request.Form["chkIsDisplaySettingsTemplates"].ToString().ToLower() == "on") || (Request.Form["chkIsDisplaySettingsTaxonomy"] != null && Request.Form["chkIsDisplaySettingsTaxonomy"].ToString().ToLower() == "on"))
                {
                    if (Request.Form["chkIsDisplaySettingsSummary"] != null && Request.Form["chkIsDisplaySettingsSummary"].ToString().ToLower() == "on")
                    {
                        totalTabs += (int)EkEnumeration.FolderTabDisplaySettings.Summary;
                    }
                    if (Request.Form["chkIsDisplaySettingsMetaData"] != null && Request.Form["chkIsDisplaySettingsMetaData"].ToString().ToLower() == "on")
                    {
                        totalTabs += (int)EkEnumeration.FolderTabDisplaySettings.MetaData;
                    }
                    if (Request.Form["chkIsDisplaySettingsAliasing"] != null && Request.Form["chkIsDisplaySettingsAliasing"].ToString().ToLower() == "on")
                    {
                        totalTabs += (int)EkEnumeration.FolderTabDisplaySettings.Aliasing;
                    }
                    if (Request.Form["chkIsDisplaySettingsSchedule"] != null && Request.Form["chkIsDisplaySettingsSchedule"].ToString().ToLower() == "on")
                    {
                        totalTabs += (int)EkEnumeration.FolderTabDisplaySettings.Schedule;
                    }
                    if (Request.Form["chkIsDisplaySettingsComment"] != null && Request.Form["chkIsDisplaySettingsComment"].ToString().ToLower() == "on")
                    {
                        totalTabs += (int)EkEnumeration.FolderTabDisplaySettings.Comment;
                    }
                    if (Request.Form["chkIsDisplaySettingsTemplates"] != null && Request.Form["chkIsDisplaySettingsTemplates"].ToString().ToLower() == "on")
                    {
                        totalTabs += (int)EkEnumeration.FolderTabDisplaySettings.Templates;
                    }
                    if (Request.Form["chkIsDisplaySettingsTaxonomy"] != null && Request.Form["chkIsDisplaySettingsTaxonomy"].ToString().ToLower() == "on")
                    {
                        totalTabs += (int)EkEnumeration.FolderTabDisplaySettings.Taxonomy;
                    }
                    _PageData.Add(totalTabs, "DisplaySettings", null, null);
                }
                else
                {
                    _PageData.Add(1, "DisplaySettings", null, null);
                }
            }
            _PageData.Add(Request.Form[inherit_IsDisplaySettings_from.UniqueID], "DisplaySettingsInheritedFrom", null, null);
            //-------------------DisplaySettingsEnd------------------

            if (Request.Form["chkInheritAliases"] != null && Request.Form["chkInheritAliases"].ToString().ToLower() == "on")
            {
                _PageData.Add(1, "InheritAlias", null, null);
                if (Request.Form["chkForceAliasing"] != null && Request.Form["chkForceAliasing"].ToString().ToLower() == "on")
                {
                    _PageData.Add(1, "AliasRequired", null, null);
                }
                else
                {
                    _PageData.Add(Request.Form[current_alias_required.UniqueID], "AliasRequired", null, null);
                }
            }
            else
            {
                _PageData.Add(0, "InheritAlias", null, null);
                if (Request.Form["chkForceAliasing"] != null && Request.Form["chkForceAliasing"].ToString().ToLower() == "on")
                {
                    _PageData.Add(1, "AliasRequired", null, null);
                }
                else
                {
                    _PageData.Add(0, "AliasRequired", null, null);
                }
            }
            _PageData.Add(Request.Form[inherit_alias_from.UniqueID], "InheritAliasFrom", null, null);
            // Update - add flagging items:
            ProcessFlaggingPostBack(_PageData);

            m_refContent.UpdateFolderPropertiesv2_0(_PageData);
            if (folder_data.FolderType == 2) //OrElse folder_data.Id = 0 Avoiding root to be site aliased
            {
                arSiteAliasList = Request.Form["savedSiteAlias"].TrimStart(" ".ToCharArray()).TrimStart(",".ToCharArray()).Split(",".ToCharArray());
                foreach (string aliasStr in arSiteAliasList)
                {
                    if (aliasStr != string.Empty)
                    {
                        siteAliasList.Add(aliasStr);
                    }
                }
                _refSiteAliasApi = new Ektron.Cms.SiteAliasApi();
                _refSiteAliasApi.Save(folder_data.Id, siteAliasList);
            }
            if ((string.IsNullOrEmpty(Request.Form["suppress_notification"])) && (_FolderType != (int)Ektron.Cms.Common.EkEnumeration.FolderType.Catalog))
            {
                m_refContent.UpdateSubscriptionPropertiesForFolder(_FolderId, sub_prop_data);
                m_refContent.UpdateSubscriptionsForFolder(_FolderId, page_subscription_data);
            }
            if (subscriptionRestore)
            {
                m_refContent.DeleteSubscriptionsForContentinFolder(_FolderId);
            }

            if ((init_xmlconfig != Request.Form["xmlconfig"] || bInheritanceIsDif) && _FolderType != (int)Ektron.Cms.Common.EkEnumeration.FolderType.Calendar)
            {
                XmlInd = _ContentApi.EkXmlIndexingRef;
                if (Request.Form["xmlconfig"] != "0" && Request.Form["xmlconfig"] != "")
                {
                    XmlInd.ReIndexAllDoc(Convert.ToInt64(Request.Form["xmlconfig"]));
                }
                else // inheritance has been turned on
                {
                    if (Strings.LCase(Request.Form["frm_xmlinheritance"]) == "on")
                    {
                        folder_data = _ContentApi.GetFolderById(_FolderId, false, true);
                        if (!(folder_data.XmlConfiguration == null))
                        {
                            for (int x = 0; x <= (folder_data.XmlConfiguration.Length - 1); x++)
                            {
                                XmlInd.ReIndexAllDoc(folder_data.XmlConfiguration[x].Id);
                            }
                            //reverting 27535 - do not udpate xml_index table with new xml index search
                        }
                        else
                        {
                            XmlInd.RemoveAllIndexDoc(_FolderId);
                        }
                        //reverting 27535 - do not udpate xml_index table with new xml index search
                    }
                    else
                    {
                        XmlInd.RemoveAllIndexDoc(_FolderId);
                    }
                }

            }

            if (string.IsNullOrEmpty(Request.Form["break_inherit_button"]))
            {
                _CustomFieldsApi.ProcessCustomFields(_FolderId);
            }
            else if ((Request.Form["break_inherit_button"] != null) && Request.Form["break_inherit_button"].ToString().ToLower() == "on")
            {
                if (folder_data.MetaInherited == 0)
                {
                    _CustomFieldsApi.ProcessCustomFields(_FolderId);
                }
            }

            //If (Request.Form("break_inherit_button") IsNot Nothing AndAlso Request.Form("break_inherit_button").ToString().ToLower() = "on") Then
            //    'break inherit button is checked.
            //    _CustomFieldsApi.ProcessCustomFields(_FolderId)
            //ElseIf folder_data.MetaInherited = 0 Then
            //    _CustomFieldsApi.ProcessCustomFields(_FolderId)
            //ElseIf Request.Form("break_inherit_button") Is Nothing Then
            //    _CustomFieldsApi.ProcessCustomFields(_FolderId)
            //End If
        }
        if (Request.Form["oldfoldername"] == Request.Form["foldername"])
        {
            Response.Redirect((string)("content.aspx?LangType=" + _ContentLanguage + "&action=ViewFolder&id=" + Request.Form[folder_id.UniqueID]), false);
        }
        else
        {
            Response.Redirect("content.aspx?TreeUpdated=1&LangType=" + _ContentLanguage + "&action=ViewFolder&id=" + Request.Form[folder_id.UniqueID] + "&reloadtrees=Forms,Content,Library", false);
        }
        if (folder_data.FolderType == (int)Ektron.Cms.Common.EkEnumeration.FolderType.Catalog)
        {
            ProcessProductTemplatesPostBack();
        }
        else
        {
            ProcessContentTemplatesPostBack();
        }
    }