I have a client with a multi-lingual site, they currently have a full-time Italian on-board who will be responsible for the Italian translation of the site. The Italian version of the site is a root node and so this individual has their start node set to the root page of the Italian version of the site as below:
¬ Content ¬ Main Site Home (en-GB) ¬ Page 1 ¬ Page 2 ¬ Main Site Home (it-IT) ¬ Page 1 ¬ Page 2 ¬ Main Site Home (es-ES) ¬ Page 1 ¬ Page 2
As expected the Italian user can edit all pages beneath their start node but clicking on the start node itself results in the following exception:
System.ArgumentException: The current user doesn't have access to this application. Please contact the system administrator.
It seems that permissions are applied exclusive of the start node rather than inclusively. Anyone else experienced this or know of a fix without diving into the source?
The client is also having similar issues with pages beneath their start node which at first appears to be random however looking at the stack trace below I think it may actually be related the uComponents MNTP on the documents being denied access to nodes outside of the logged in users start node?
System.Web.HttpUnhandledException (0x80004005): Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> System.ArgumentException: The current user doesn't have access to this application. Please contact the system administrator.
at umbraco.controls.Tree.TreeControl.Initialize()
at umbraco.controls.Tree.TreeControl.OnPreRender(EventArgs e)
at uComponents.Core.Shared.Tree.CustomTreeControl.OnPreRender(EventArgs e)
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.HandleError(Exception e)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest()
at System.Web.UI.Page.ProcessRequest(HttpContext context)
at ASP.umbraco_editcontent_aspx.ProcessRequest(HttpContext context) in c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\56cbf128\a4ef230e\App_Web_editcontent.aspx.5f2dec3.q-oqcxkp.0.cs:line 0
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
Perhaps someone from the uComponents team can chip in on this and comment whether this might be the case?
Thanks for coming back to me Shannon. I've since discovered that the exception was being thrown because the user in question did not have access to the Media section of Umbraco but the document they were trying to edit had a MNTP for Media section on it. It would be good if this handled the exception without stopping the process of loading the editor if that is at all possible?
Users Cannot Edit Their Start Node
I have a client with a multi-lingual site, they currently have a full-time Italian on-board who will be responsible for the Italian translation of the site. The Italian version of the site is a root node and so this individual has their start node set to the root page of the Italian version of the site as below:
¬ Content
¬ Main Site Home (en-GB)
¬ Page 1
¬ Page 2
¬ Main Site Home (it-IT)
¬ Page 1
¬ Page 2
¬ Main Site Home (es-ES)
¬ Page 1
¬ Page 2
As expected the Italian user can edit all pages beneath their start node but clicking on the start node itself results in the following exception:
It seems that permissions are applied exclusive of the start node rather than inclusively. Anyone else experienced this or know of a fix without diving into the source?
The client is also having similar issues with pages beneath their start node which at first appears to be random however looking at the stack trace below I think it may actually be related the uComponents MNTP on the documents being denied access to nodes outside of the logged in users start node?
Perhaps someone from the uComponents team can chip in on this and comment whether this might be the case?
Hi Simon,
I take it that the start node has a MNTP on it? I'd thought that MNTP took the user access/permissions into account, but now not entirely sure.
Best to ask Shannon - he'll have a better idea of what is causing this.
- Lee
Yes the start node does indeed have an MNTP on it and if I'm correct it all starts to make sense however doesn't resolve the situation.
Cheers, Simon
Can you please clarify when this exception occurs and if the exception listed above is the only one you are receiving....
Thanks for coming back to me Shannon. I've since discovered that the exception was being thrown because the user in question did not have access to the Media section of Umbraco but the document they were trying to edit had a MNTP for Media section on it. It would be good if this handled the exception without stopping the process of loading the editor if that is at all possible?
This is the only exception being thrown.
is working on a reply...