У меня есть макрос, который определяет, приходит ли посетитель из Facebook, и если этот посетитель является администратором этой страницы facebook.Перенаправлено для входа в Umbraco только при использовании Internet Explorer
Когда я обнаруживаю администратора, я запускаю код ниже, чтобы регистрировать посетителя в качестве предопределенного администратора (бэкэнд пользователя Umbraco) и перенаправлять его в режим редактирования в реальном времени. Это отлично работает в Chrome, но не работает в Internet Explorer. В Internet Explorer посетитель перенаправляется на верхний уровень (за пределами iframe) на страницу входа в Umbraco, а не вошел в систему. Любая идея, почему?
var id = umbraco.BusinessLogic.User.getUserId("exampleadminuser"); // LoginName of an administrator
var u = umbraco.BusinessLogic.User.GetUser(id);
umbraco.BasePages.BasePage.doLogin(u);
// Check if the user should be redirected to live editing
if (u.DefaultToLiveEditing)
{
int startNode = u.StartNodeId;
// If the startnode is -1 (access to all content), we'll redirect to the top root node
if (startNode == -1)
{
if (umbraco.cms.businesslogic.web.Document.GetRootDocuments().Length > 0)
{
startNode = umbraco.cms.businesslogic.web.Document.GetRootDocuments()[0].Id;
}
else
{
throw new Exception("There's currently no content to edit. Please contact your system administrator");
}
}
string redir = String.Format("{0}/canvas.aspx?redir=/{1}.aspx", GlobalSettings.Path, startNode);
Response.Redirect(redir, true);
}
Вот что я в итоге сделал, ответ обозначен как правильный – Sindre