I'll do my best to explain the bug that puts the document into safemode, although I think it can be fixed by fixing the widgets not being editable until you click the page tab again. I think normally this doesn't cause a problem when the page is checked in because the text area is uneditable.
Directions- Create a document which has a template with a widget zone
- Enable Check in/check out and publish
- Create a editable text widget. We need to do this because by default Kentico makes this only a Web Part.
We should have something that looks like this screen shot below at this stage when checked in.
Image- Now click checkout and we should have something like this (notice bug1, no widget borders active).
Image- Once we are on this page, naturally our clients think it is safe to start editing the editable regions. Type some text into the region and hit save. We should get this
ImageBelow is also the event log found in sitemanager.
Event ID: 2461
Event type: Error
Event time: 12/17/2012 9:30:52 AM
Source: Content
Event code: DESIGN
User name: luke
IP address: 127.0.0.1
Description: Message: Failed to load viewstate. The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request. For example, when adding controls dynamically, the controls added during a post-back must match the type and position of the controls added during the initial request.
Stack Trace:
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Page.LoadAllState()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
Machine name: LIONELHUTZ
Event URL: /cms/getdoc/ed379f64-4404-4728-b996-378d48bb6a9c/Expertise.aspx?viewmode=3&lang=en-AU&langobjectlifetime=request
URL referrer: http://dev.kentico7.digicon.com.au/cms/getdoc/ed379f64-4404-4728-b996-378d48bb6a9c/Expertise.aspx?viewmode=3&lang=en-AU&langobjectlifetime=request
User agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11