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

Posted by Community Admin on 05-Aug-2018 15:17

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

All Replies

Posted by Community Admin on 20-May-2011 00:00

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

Posted by Community Admin on 25-May-2011 00:00

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

Posted by Community Admin on 25-May-2011 00:00

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

Posted by Community Admin on 26-May-2011 00:00

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

Posted by Community Admin on 26-May-2011 00:00

@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.

Posted by Community Admin on 01-Jun-2011 00:00

@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

Posted by Community Admin on 16-Jul-2011 00:00

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.

Posted by Community Admin on 16-Jul-2011 00:00

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

Posted by Community Admin on 18-Oct-2011 00:00

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

Posted by Community Admin on 18-Oct-2011 00:00

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

Posted by Community Admin on 20-Oct-2011 00:00

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

Posted by Community Admin on 20-Oct-2011 00:00

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

Posted by Community Admin on 21-Oct-2011 00:00

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

Posted by Community Admin on 21-Oct-2011 00:00

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

Posted by Community Admin on 24-Oct-2011 00:00

I tried droping the same control on a non-AJAXified page, and it worked ok. Looks like I would have to have a switch on the AJAX page to stop the refresh whilst I am editing some control. Many thanks.
Andrei

Posted by Community Admin on 26-Mar-2012 00:00

This setting has changed to "Enable in-line editing." by the way in the latest version, for anyone that's looking.
Andrei

This thread is closed