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
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
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
@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
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
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
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
This setting has changed to "Enable in-line editing." by the way in the latest version, for anyone that's looking.
Andrei