Disable in-page editing (globaly) so make front faster. - Ideas & Feature Requests - Ideas & Feature Requests - Progress Community
 Ideas & Feature Requests

Disable in-page editing (globaly) so make front faster.

  • Disable in-page editing (globaly) so make front faster.
  • Would a possibility to disable in-page editing by any change help make SF front end faster.

    I am not talking about just not having no user with rights to make changes but kind of disable it for a site.

    Less checking front end
    Less JS code transmitted

    Wild idea - but I don't like the in-page editing to much and if by any change such an option would make SF front just 10 % faster would be a great gain.

    I know its not possible now. Just throw in the idea.

    I wish this forum would have a poll function. Would be interested how many really need the in-page editing. I assume as soon as you have workflow turned on it changes the whole in-page editing anyhow.

    Markus
  • 273425_DisableBrowseEdit.png
    Hello Markus,

    To disable the Browse and edit globally go to Adminstration--> Settings --> Advanced --> Pages then scroll down as shown in screenshot at put False to EnableBrowseAndEdit field.

    Hope this information was helpful.

    Best wishes,
    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
  • Dear Stanislav

    Thanks for the quick answer.

    a) does this have any influence on speed kb/transfered for sites when users are not logged in (simple front end)
    b) could it make sense to have this settings in basic.
    c) there is an option to combine style sheets - will this combine simply the css from global in themes or is there a way to combine own css from other sources ~/css for example as well?

    Markus
  • Hi Markus,

    a) BrowseAndEdit is not loaded for site visitors only for users who have page editing rights in case the BrowseAndEdit is enabled
    b) The feature is enabled by default because it allows backend user to edit pages faster ( in terms of not going back in the backend and republish ).
    c) It will combine all stylesheets. This is done to improve website performance. If the css files are under the App_Themes folder they will get combined.

    All the best,
    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
  • @Markus,
      This has been a big wishlist item for US in 3.x...we have too many admins, and we want just about none of them to ever see the backend of sitefinity :)

    So they get a page with some pre-defined content areas...they can edit those, and only those.

  • @Steve

    I see understand that this is on your wishlist. I was not talking about removing it. Just asking if you set the BrowseAndEdit to false in the backend if this would reduce some code. Like SF would not have to check Authentication for editing if turned off.

    Also at the moment in page editing has still some problems for me - for example it seems contentplaceholder content from templates can also be change. And this is surely one thing you don't want.

    Markus
  • For what it's worth, I just disabled in-page editing for the site we're currently developing and we saw an immediate and significant improvement in page loading speed.

    I feel the advantage of giving the small number of site editors a little more convenience editing content is far outweighed by the large number of site visitors seeing much better performance browsing the site.

    I am thankful for this thread.
  • Well there's a lot of "Perceived" load with the inline editing and I've been pushing them to fix it...still not fixed.

    Once the page finishes rendering, the scripts go to work and hide all the browse\edit elements, so that adds a second or two to the "lag" on page load.

    If that doesn't have to happen then the page is available to the user just that much faster...as there's nothing extra running on the postback....it's just a bit of extra html\css for the browse and edit tab (and markup on the controls).

    Steve
  • Just messing about with the BrowseAndEdit feature. The small Edit link appears on most pages but not on this one page. The page that it does not appear on is a page which has some special permissions assined to the page and the controls on the page. However, I am browsing with the Administrator logged in who has full control over the page and its controls. Wondering why for this particular page I do not see the Edit link against every control. I must admit that the page is within an iFrame, which might be the cause. I tried it in IE9 and FF. I guess its the iFrame.

    Thanks,
    Andrei
  • Nope, I am accessing it directly and still no luck. But I have a theory, the controls that I am looking at were developed by me as custom controls and so maybe I did not added teh required code. That is the cause for sure.

    Sorry and thanks,
    Andrei
  • Hi Andrei,

    Not every widget have BrowseAndEdit implemented and the edit link is showing for only some of the widgets. For example content block have a designer that can be accessed trough browse and edit, but tags widget don`t have a designer (just properties editor) and don`t use browse and edit.

    To add BrowseAndEdit to custom controls that have designer you wish to show in the frontend  please refer to this blog post where it is explained how to achieve this.

    Kind 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
  • Stanislav,

    Many thanks for your responce. I was trying to use the BrowseAndEdit option with a Content block control, which by default have the BrowseAndEdit functionality. However, I have a custom made Content block User Control. I know that there is a way to add inheritance to enable a Custom Control for BrowseAndEdit functionality, but can you enable a User Control for BrowseAndEdit functionality?

    Many thanks,
    Andrei
  • Hello Andrei,

    I have updated my post to include information on how to enable BrowseAndEdit to user controls. Here you can find it. If you have any troubles implementing this, write back.

    All the best,
    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
  • Stanislav,

    I have a User Control that has a designer as well (see image for a better understanding).
    So to count the steps:
    Step - 1: Add the below code to BasicEditorWB.ascx

    <sf:BrowseAndEditToolbar ID="bet" runat="server" Mode="Edit" ></sf:BrowseAndEditToolbar>


    Step - 2: Amend the class declaration as below

    [ControlDesigner(typeof(Controls.BasicEditorWBDesigner)), PropertyEditorTitle("Basic Editor WB")]
    public partial class BasicEditorWB : System.Web.UI.UserControl, IBrowseAndEditable


    Step - 3: Add the below code to BasicEditorWB.ascx.cs

    protected override void CreateChildControls()
        if (SystemManager.IsBrowseAndEditMode)
        
            this.SetDefaultBrowseAndEditCommands();
            // add Visable = true because you can no longer call B&E on Initialize_Controls
            this.BrowseAndEditToolbar.Visible = true;
            this.BrowseAndEditToolbar.Commands.AddRange(this.commands);
            var bem = BrowseAndEditManager.GetCurrent(this.Page);
            if (bem != null)
            
                bem.Add(this.BrowseAndEditToolbar);
            
        
        base.CreateChildControls();
     
    private BrowseAndEditToolbar browseAndEditToolbar;
    private List<BrowseAndEditCommand> commands = new List<BrowseAndEditCommand>();
     
    public void AddCommands(IList<BrowseAndEditCommand> commands)
        this.commands.AddRange(commands);
     
    public BrowseAndEditToolbar BrowseAndEditToolbar
        get
        
            // here we change the id of B&E toolbar to "bet" in order to add it to Control.designer.cs file
            return this.bet;
        
     
    BrowseAndEditToolbar IBrowseAndEditable.BrowseAndEditToolbar
        get
        
            return this.BrowseAndEditToolbar;
        
     
    [PersistenceMode(PersistenceMode.InnerProperty)]
    public BrowseAndEditableInfo BrowseAndEditableInfo
        get;
        set;


    Step - 4: Change the class declaration for BasicEditorWBDesigner.cs as below

    public class BasicEditorWBDesigner : ControlDesignerBase, IBrowseAndEditable


    Step - 5: Add the below code to the BasicEditorWBDesigner.cs

            //Adds browse and edit commands to be executed by the toolbar
            public void AddCommands(IList<BrowseAndEditCommand> commands)
            
                this.commands.AddRange(commands);
            
      
            // Represents the browse and edit toolbar for the control
            public BrowseAndEditToolbar BrowseAndEditToolbar
            
                get
                
                    if (this.browseAndEditToolbar == null)
                    
                        this.browseAndEditToolbar = this.Container.GetControl<BrowseAndEditToolbar>("browseAndEditToolbar", true);
                    
                    return this.browseAndEditToolbar;
                
            
            BrowseAndEditToolbar IBrowseAndEditable.BrowseAndEditToolbar
            
                get
                
                    return this.BrowseAndEditToolbar;
                
            
            //Gets the information needed to configure this instance.
            [PersistenceMode(PersistenceMode.InnerProperty)]
            public BrowseAndEditableInfo BrowseAndEditableInfo
            
                get;
                set;
            
    private BrowseAndEditToolbar browseAndEditToolbar;
    private List<BrowseAndEditCommand> commands = new List<BrowseAndEditCommand>();


    Step - 6: Edit the InitializeControls Sub inside BasicEditorWBDesigner.cs by adding the below code inside

        this.SetDefaultBrowseAndEditCommands();
     
        this.BrowseAndEditToolbar.Commands.AddRange(this.commands);
        var bem = BrowseAndEditManager.GetCurrent(this.Page);
        if (bem != null)
        
            bem.Add(this.BrowseAndEditToolbar);
        


    Once I have done that, I start it and I see teh button, which brings up the editor ok, but when i click Save, I got an error (see second image). It might be some bad coding from me somewhere. I must say, that is on a n AJAX page that refreshes every 3 seconds, which might be might problem.

    Many thanks,
    Andrei