Join us!
Want to join the team?

We would love to get to know you

Are you looking for an employer who cares about you as a person and where you feel involved in everything that concerns you? Welcome to JellyHive!
Who are we? We are a successful IT consultant company and our philosophy is that the company is our employees.
Who are you? You are a system developer (fullstack, frontend, backend), and/or maybe also a scrum master, test lead, devops etc.
What we offer you Participation in developing the company with generous benefits.


Upload your cv Supported filetypes are: .pdf, .doc and .docx
Hide

Rensa upp i redaktörsträdet

I vissa situationer kan det bli väldigt stökigt i sidträdet för redaktörerna, det kan bero på att man har olika sidträd för olika språk, kanske för att varje gren är en landsspecifik site. Detta är ett vanligt sätt att slippa skaffa sig en enterpriselicens. 

I fallet att varje språkträd är som ovan, en landssite, som har sina egna redaktörer, vill man att dessa redaktörer bara skall se sina egna sidor som de har rättigheter till eller bara se de sidorna som finns på valt språk. Det finns givetvis flera olika situationer som gör att man vill att redaktören bara kan se de sidor som är intressanta för henne/honom.

Lösningen hittade jag här, och med några små ändringar kan man skräddarsy funktionaliteten efter sina egna behov. Man kan använda samma HttpModul för att rensa upp i sidväljarfönstret också. Här kan ni se ett exempel hur en HttpModul kan se ut:

public class PageExcluder : IHttpModule { public void Dispose() { } public void Init(HttpApplication context) {
DataFactory.Instance.FinishedLoadingChildren += new EPiServer.ChildrenEventHandler(Instance_FinishedLoadingChildren);
}
void Instance_FinishedLoadingChildren(object sender, ChildrenEventArgs e) {
// make sure to only do this when we are rendering the edit tree if
(HttpContext.Current != null && (HttpContext.Current.Request.Url.AbsolutePath.EndsWith(“EditTree.aspx”) || HttpContext.Current.Request.Url.AbsolutePath.Contains(“edit/pagebrowser.aspx”))) { for (int i = 0; i < e.Children.Count; i++) {
// Hide pages that is not in the selected language
// hideEditTreePagesNotSelectedLanguage can be configured in web.config
if (hideEditTreePagesNotSelectedLanguage) {
string selectedEditLang;
if (HttpContext.Current.Request.Cookies[“editlanguagebranch”] != null)
selectedEditLang = HttpContext.Current.Request.Cookies[“editlanguagebranch”].Value;
else selectedEditLang = CultureInfo.CurrentUICulture.TwoLetterISOLanguageName;
if (e.Children[i].LanguageID != selectedEditLang) { e.Children.RemoveAt(i); i; continue; }
}
}
}
}
}

Comments