private void HandleGroupRequest(HttpContext context) { string requestPath = context.Request.Path; string groupID = GetGroupID(context.Request.Path); string loginUrl = WebSupport.GetLoginUrl(context); string loginRootID = TBLoginInfo.GetLoginIDFromLoginURL(loginUrl); string loginGroupID = TBRLoginGroupRoot.GetLoginGroupID(groupID, loginRootID); TBRLoginGroupRoot loginGroupRoot = TBRLoginGroupRoot.RetrieveFromDefaultLocation(loginGroupID); if (loginGroupRoot == null) { // TODO: Polite invitation request throw new SecurityException("No access to requested group: TODO - Polite landing page for the group"); return; } InformationContext.Current.CurrentGroupRole = loginGroupRoot.Role; string contentPath = requestPath.Substring(AuthGroupPrefixLen + GuidIDLen + 1); HandleOwnerRequest(loginGroupRoot, context, contentPath, loginGroupRoot.Role); }