More in this section

Forums / Developing with Sitefinity / How to Find Sitefinity DDLs if not exist

How to Find Sitefinity DDLs if not exist

2 posts, 0 answered
  1. Mikey
    Mikey avatar
    3 posts
    Registered:
    17 Jan 2012
    24 Jan 2012
    Link to this post
    Hi to all,
    First of all, I'm newie at asp.net and sitefinity.
    Here is my problem. I'm using Sitefinity 4.0 (which migrated from 3.7) I created a page which clients can use edit/del/add for topics/items on frontend page without using backend page. after user edit the contect i want that edited content publish automatically but it doesnt.(I checked panel its there and unpublished but edited). I need Telerik.Cms.Engine.dll  to publish(as Documentation's says) but in my bin folder i dont have that dll files or dont have any Telerik.Cms.*.dll. So how can I solve my problem or where i can find that dlls or without that dlls how can i publish automatically edited contents

    Here is my Code:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using SitefinityWebApp.MyCodes.Extensions;
    using Telerik.Sitefinity;
    using Telerik.Sitefinity.GenericContent.Model;
    using Telerik.Sitefinity.Modules.Pages;
    using Telerik.Sitefinity.Pages.Model;
    using Telerik.Sitefinity.Web;
    using Telerik.Sitefinity.Workflow;


    namespace SitefinityWebApp.MyControls
    {
        public partial class CustomEditor : System.Web.UI.UserControl
        {
            private string contentPlaceHolder = "";
            public string ContentPlaceHolder
            {
                get
                {
                    return contentPlaceHolder;
                }
                set
                {
                    contentPlaceHolder = value;
                }
            }


            public void Save()
            {
                btnSave_Click(null, EventArgs.Empty);
            }




            protected override void OnLoad(EventArgs e)
            {
                base.OnLoad(e);
                if (!IsPostBack)
                {
                    string pageId = Request["id"];
                    if (string.IsNullOrEmpty(pageId))
                        return;


                    Guid guid;
                    if (Guid.TryParse(pageId, out guid))
                    {
                        PageManager pageManager = PageManager.GetManager();
                        PageNode editNode = pageManager.GetPageNode(guid);


                        if (editNode == null) return;


                        //if child node
                        if (editNode.Nodes.Count == 0) 
                            Response.Redirect(VirtualPathUtility.ToAbsolute("~/Items/edit?id=" + editNode.Id.ToString()));
                        else
                        {
                            //Parent node, get sitemap title.
                            Session["editNodeTitle"] = editNode.Title.ToString();
                            radContentEditor.Content = editNode.Title;
                        }
                    }
                }
            }
            protected void btnSave_Click(object sender, EventArgs e)
            {
                string id = Request["id"];
                if(string.IsNullOrEmpty(id))
                    return;




                Guid guid;
                if(Guid.TryParse(id, out guid))
                {
                    string editNodeTitle = (string)Session["editNodeTitle"];
                    SiteMapNode currentNode = null;
                    foreach(SiteMapNode childNode in SiteMapBase.GetCurrentProvider().CurrentNode.ChildNodes)
                    {
                        if(childNode.Title == editNodeTitle)
                        {
                            currentNode = childNode;
                            break;
                        }
                    } 
                    if (currentNode == null) return;


                    PageSiteNode node = (PageSiteNode)currentNode;
                    node.Title = radContentEditor.Content.ToString();
                    //Save this PageSiteNode
                    
                }
            }  
        }
    }
  2. Stanislav Velikov
    Stanislav Velikov avatar
    1113 posts
    Registered:
    18 Sep 2017
    25 Jan 2012
    Link to this post
    Hello,

     Sitefinity 4 doesn`t include Telerik.Cms.Engine.dll, it is an assmebly form Sitefinity3.x. I have attached the assembly in case you want to test. 
    During migration the custom widgets created in Sitefinity 3 will not be migrated since the API in 4.x is different and Sitefinity 3.x API is no longer working.

    To programatically publish pages in Sitefinity 4 use the new pages API.

    Regards,
    Stanislav Velikov
    the Telerik team
    Do you want to have your say in the Sitefinity development roadmap? Do you want to know when a feature you requested is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
2 posts, 0 answered