protected void Page_Load(object sender, EventArgs e) { // var userAccess = ((FacCred)ParentPortlet).CheckUserAccess(); var userFacade = UserFacade; var userf = UserFacade.FindByUsername("Administrator"); var uf = userf.GetGroupMembership(); // var aar = userf.GetGroupsThatHaveAdminAccess(); var xyz = userf.GetTokenGroups(); //PortalGroupFacade ldap = new PortalGroupFacade(); Jenzabar.Portal.Web.UI.Controls.PrincipalSelector.UserSelector us = new Jenzabar.Portal.Web.UI.Controls.PrincipalSelector.UserSelector(); //string wef = us.SelectedUsers.ToString(); Jenzabar.Portal.Framework.PortalGroup appr1 = new PortalGroup(); //String sss = appr1.DisplayName.ToString(); //WebUtils.ViewStateViewer vsv = new WebUtils.ViewStateViewer(); //GroupAccess ga = new GroupAccess(); //List<Jenzabar.Portal.Framework.PortalGroup> gaList = new List<Jenzabar.Portal.Framework.PortalGroup>(); //List<Jenzabar.Portal.Framework.PortalGroup> groupList = new List<Jenzabar.Portal.Framework.PortalGroup>(); //groupList = UserFacade.FindByUsername("Administator").GetGroupMembership(); //----------- these work ------ //foreach (var item in uf) //{ //} //foreach (var item in xyz) //{ //} //--------------end working ------------- // string vs = this.ViewState["rsShowBaseRoles"].ToString(); //CampusGroup cg = new CampusGroup(); //CampusGroupDefaultRoles cgdr = new CampusGroupDefaultRoles(); // RoleManager rm = new RoleManager; // Roles role = new Roles(this.UserFacade); RoleSelector rs = new RoleSelector(); // var dl = rs.BaseRolesToShow.Length; //rs.AllMyContexts.ToString(); // string rsStr = rs.UniqueID.ToString(); //Object rst = rs.AllMyContexts; }
public List <Student> FindUser(string term) { var portlet = PortletTemplate.FindByName("[CUS] BCProxyLogin"); var stuList = new List <Student>(); int userId; if (Int32.TryParse(term, out userId)) { var puFacade = ObjectFactoryWrapper.GetInstance <IPortalUserFacade>(); var pu = puFacade.FindByHostID(term.PadLeft(11, '0')); if ((portlet.AccessCheck("CanProxyStudent") && pu.IsMemberOf(PortalGroup.Students)) || (portlet.AccessCheck("CanProxyStaff") && pu.IsMemberOf(PortalGroup.Staff)) || (portlet.AccessCheck("CanProxyFaculty") && pu.IsMemberOf(PortalGroup.Faculty)) || (portlet.AccessCheck("CanProxyCandidate") && pu.IsMemberOf(PortalGroup.FindByStatusCode("CAN"))) || (portlet.AccessCheck("CanProxyConstituent") && pu.IsMemberOf(PortalGroup.FindByStatusCode("ALM")))) { stuList.Add(new Student(pu.FirstName, pu.LastName, Convert.ToInt32(pu.HostID), pu.Username)); } } else { var groups = new List <PortalGroup>(); if (portlet.AccessCheck("CanProxyStudent")) { groups.Add(PortalGroup.Students); } if (portlet.AccessCheck("CanProxyStaff")) { groups.Add(PortalGroup.Staff); } if (portlet.AccessCheck("CanProxyFaculty")) { groups.Add(PortalGroup.Faculty); } if (portlet.AccessCheck("CanProxyCandidate")) { groups.Add(PortalGroup.FindByStatusCode("CAN")); } if (portlet.AccessCheck("CanProxyConstituent")) { groups.Add(PortalGroup.FindByStatusCode("ALM")); } if (groups.Count == 0) { return(new List <Student>()); } var userFacade = ObjectFactoryWrapper.GetInstance <IPortalUserFacade>(); stuList.AddRange(userFacade.PartialFind(term, 100, "", groups.Select(x => x.DN).ToArray()).Select(user => new Student(user.FirstName, user.LastName, Convert.ToInt32(user.HostID), user.Username))); } return(stuList); }
private void Navigate(PortalGroup group) { var parameters = new NavigationParameters { { "group", group } }; ApplicationServices.NavigationService.RequestNavigation("WebMapsView", parameters); }
public Check RoleCheck(PortalUser pu, PortletTemplate portletTemplate, PortalUser currentUser = null) { if (currentUser == null) { currentUser = PortalUser.Current; } if (portletTemplate.AccessCheck("DenyAccess", pu)) { return(new Check(false, Globalizer.GetGlobalizedString("CUS_BC_PL_DENIED_PERMS"))); } if (pu.IsMemberOf(PortalGroup.Staff)) { if (!portletTemplate.AccessCheck("CanProxyStaff", currentUser)) { return(new Check(false, Globalizer.GetGlobalizedString("CUS_BC_PL_STAFF_PERMS"))); } } if (pu.IsMemberOf(PortalGroup.Faculty)) { if (!portletTemplate.AccessCheck("CanProxyFaculty", currentUser)) { return(new Check(false, Globalizer.GetGlobalizedString("CUS_BC_PL_FACULTY_PERMS"))); } } if (pu.IsMemberOf(PortalGroup.Students)) { if (!portletTemplate.AccessCheck("CanProxyStudent", currentUser)) { return(new Check(false, Globalizer.GetGlobalizedString("CUS_BC_PL_STUDENT_PERMS"))); } } if (pu.IsMemberOf(PortalGroup.FindByStatusCode("CAN"))) // Candidate { if (!portletTemplate.AccessCheck("CanProxyCandidate", currentUser)) { return(new Check(false, Globalizer.GetGlobalizedString("CUS_BC_PL_CANDIDATE_PERMS"))); } } if (pu.IsMemberOf(PortalGroup.FindByStatusCode("ALM"))) { if (!portletTemplate.AccessCheck("CanProxyConstituent", currentUser)) { return(new Check(false, Globalizer.GetGlobalizedString("CUS_BC_PL_CONSTITUENT_PERMS"))); } } return(pu.IsMemberOf(PortalGroup.Administrators) ? new Check(false, Globalizer.GetGlobalizedString("CUS_BC_PL_SITE_ADMIN_PERMS")) : new Check(true)); }
public void SetGroup(JSPortalGroup grp) { PortalGroup newGroup; if (!grp.PortalGroupId.HasValue) { newGroup = new PortalGroup(); db.PortalGroup.Add(newGroup); } else { newGroup = db.PortalGroup.First(x => x.PortalGroupId == grp.PortalGroupId); } newGroup.Name = grp.Name; db.SaveChanges(); db.PortalGroup2Part.RemoveRange(db.PortalGroup2Part.Where(x => x.PortalGroupId == newGroup.PortalGroupId)); foreach (var p in grp.Parts) { var part = new PortalGroup2Part(); part.PortalGroupId = newGroup.PortalGroupId; part.PortalPartId = p; db.PortalGroup2Part.Add(part); } db.PortalGroup2Right.RemoveRange(db.PortalGroup2Right.Where(x => x.PortalGroupId == newGroup.PortalGroupId)); foreach (var r in grp.Rights) { var rght = new PortalGroup2Right(); rght.PortalGroupId = newGroup.PortalGroupId; rght.UserRightId = r; db.PortalGroup2Right.Add(rght); } db.PortalGroup2Rubric.RemoveRange(db.PortalGroup2Rubric.Where(x => x.PortalGroupId == newGroup.PortalGroupId)); foreach (var r in grp.Rubrics) { var rub = new PortalGroup2Rubric(); rub.PortalGroupId = newGroup.PortalGroupId; rub.RubricId = r; db.PortalGroup2Rubric.Add(rub); } db.SaveChanges(); }
private async Task LoadItemsAsync(PortalGroup group) { var results = await group.Portal.FindItemsAsync(new PortalQueryParameters($@"type:'web map' AND group: {group.GroupId}") { CanSearchPublic = false, // Find only items from used portal Limit = 20, SortField = "relevance" }); foreach (var item in results.Results) { WebMaps.Add(item); // Test var model = new WebMapModel { Item = item }; WebMapModels.Add(model); } }
public void AddPortal(Portal portal) { if (_groups.Query().Any(g => g.portal == portal)) { throw new InvalidOperationException("Cannot add portal " + portal + " to this manager because it has already been added."); } PortalGroup group = new PortalGroup() { portal = portal }; createPortalCamera(portal.renderMask, out group.camera, out group.layers); _groups.Add(group); if (_clearMainMask) { _mainCamera.cullingMask &= ~portal.renderMask; } _needToUpdateMaterials = true; }
// Start is called before the first frame update void Start() { portalGroup = GetComponentInParent <PortalGroup> (); }
/// <summary> /// Determines whether this instance is linked with the specified other. /// </summary> /// <returns> /// <c>true</c> if this instance is linked with the specified other; otherwise, <c>false</c>. /// </returns> /// <param name="other"> /// Another portal. /// </param> public bool IsLinkedWith(PortalGroup other) { if (other == null) { return false; } return this.LinkedAreas.First == other.LinkedAreas.First || this.LinkedAreas.First == other.LinkedAreas.Second || this.LinkedAreas.Second == other.LinkedAreas.First || this.LinkedAreas.Second == other.LinkedAreas.Second; }
public static bool AreContiguous(PortalGroup pg1, PortalGroup pg2) { if (pg1.Horizontal != pg2.Horizontal) { return false; } if (pg1.Horizontal) { if (Math.Abs(pg1.MidPoint.y - pg2.MidPoint.y) > 0.1) { return false; } if (Math.Abs(pg1.Last.x - (pg2.First.x + 1)) < 0.1 || Math.Abs(pg1.First.x - (pg2.Last.x - 1)) < 0.1) { return true; } } else { if (Math.Abs(pg1.MidPoint.x - pg2.MidPoint.x) > 0.1) { return false; } if (Math.Abs(pg1.Last.y - (pg2.First.y + 1)) < 0.1 || Math.Abs(pg1.First.y - (pg2.Last.y - 1)) < 0.1) { return true; } } return false; }
private static bool IsPassable(PortalGroup pg) { //var ps = pg.Portals; //foreach (var p in ps) { // if (!IsPassable(p))return false; //} //return true; return IsPassable(SimpleHOmniscient.MidPortal(pg)); }
/// <summary> /// Set the given state to both side of the given portal group. /// </summary> /// <param name="pg">The given portal group.</param> /// <param name="state">The desired state.</param> private void FullPortalGroupStateUpdate(PortalGroup pg, bool state) { this.portalGroupState[PortalGroupKey(pg, pg.LinkedAreas.First)] = state; this.portalGroupState[PortalGroupKey(pg, pg.LinkedAreas.Second)] = state; }
/// <summary> /// Check if a given PortalGroup is traversable or not. /// </summary> /// <param name="pg">The portal group.</param> /// <returns>true if and only if the portal group is traversable.</returns> private bool IsPassable(PortalGroup pg) { return portalGroupState[PortalGroupKey(pg, pg.LinkedAreas.First)] && portalGroupState[PortalGroupKey(pg, pg.LinkedAreas.Second)]; }
/// <summary> /// The update belief. /// </summary> /// <param name="pg"> /// The pg. /// </param> /// <param name="area"> /// The square area. /// </param> /// <param name="state"> /// The state. /// </param> /// <returns> /// The <see cref="bool"/>. /// </returns> public bool UpdateBelief(PortalGroup pg, int area, bool state) { var changed = false; if (portalGroupState[PortalGroupKey(pg, area)] != state) { var valid = true; //foreach (var p in pg.Portals.Where(p => BDPMap.Instance.IsFree(p[area]) != state)) //{ // valid = false; //} if (valid) { portalGroupState[PortalGroupKey(pg, area)] = state; changed = true; } } portalTimestamp[pg] = StepCounter.Steps; return changed; }
/// <summary> /// Shorthand to get a key tuple for the portalGroupState data structure. /// </summary> /// <param name="pg">The portal group.</param> /// <param name="area">The area.</param> /// <returns>A key for the dictionary portalGroupState</returns> private static Tuple<PortalGroup, int> PortalGroupKey(PortalGroup pg, int area) { return new Tuple<PortalGroup, int>(pg, area); }
/// <summary> /// Return the nearest portal to a given 2D point in the current instance. /// </summary> /// <returns> /// The portal. /// </returns> /// <param name="ms"> /// The ms. /// </param> /// <param name="minDist"> /// Minimum dist. /// </param> public Portal MidPortal(PortalGroup pg) { return pg.Portals.ToList()[Mathf.FloorToInt(pg.Portals.Count() / 2.0f)]; }
/// <summary> /// Return the nearest portal to a given 2D point in the current instance. /// </summary> /// <returns> /// The portal. /// </returns> /// <param name="ms"> /// The ms. /// </param> /// <param name="minDist"> /// Minimum dist. /// </param> public Portal NearestPassablePortal(MapSquare ms, PortalGroup pg) { Portal min = null; var minDist = Mathf.Infinity; foreach (var p in pg.Portals.Where(IsPassable)) { var newDist = Portal.Distance(p, ms); if (!(newDist < minDist)) { continue; } minDist = newDist; min = p; } return min; }
public static double PGBeliefDistance(PortalGroup pg1, PortalGroup pg2) { if (pg1 == pg2) { return 0; } var d = BDPMap.Instance.PortalConnectivity.GetEdgeLabel(pg1, pg2); if (Math.Abs(d) > 0.0001 && BDPMap.Instance.PortalConnectivity.GetVertexLabel(pg1) && BDPMap.Instance.PortalConnectivity.GetVertexLabel(pg2)) { return d; } return Mathf.Infinity; }
public static bool LinkSameArea(PortalGroup pg1, PortalGroup pg2) { return Tuple<int,int>.CommutativeEquals(pg1.LinkedAreas, pg2.LinkedAreas); }
/// <summary> /// Compute the distance between the specified pg1 and a point. /// </summary> /// <param name="pg1"> /// Pg1. /// </param> /// <param name="ms"> /// The ms. /// </param> /// <returns> /// The <see cref="double"/>. /// </returns> public static double Distance(PortalGroup pg1, MapSquare ms) { double minDist = 0; pg1.NearestPortal(ms, out minDist); return minDist; }
/// <summary> /// Compute the distance between the specified pg1 and pg2. /// </summary> /// <param name="pg1"> /// Pg1. /// </param> /// <param name="pg2"> /// Pg2. /// </param> /// <returns> /// The <see cref="double"/>. /// </returns> public static double Distance(PortalGroup pg1, PortalGroup pg2) { // Check if it is a dummy pg if (pg1.IsDummy() && pg2.IsDummy()) { return MapSquare.Distance(pg1.portals[0].LinkedSquares.First, pg2.portals[0].LinkedSquares.First); } if (pg1.IsDummy()) { return PortalGroup.Distance(pg2, pg1.portals[0].LinkedSquares.First); } if (pg2.IsDummy()) { return PortalGroup.Distance(pg1, pg2.portals[0].LinkedSquares.First); } return (pg1.MidPoint - pg2.MidPoint).magnitude; }
/// <summary> /// The common area. /// </summary> /// <param name="pgA"> /// The pg a. /// </param> /// <param name="pgB"> /// The pg b. /// </param> /// <returns> /// The <see cref="int"/>. /// </returns> public static int CommonArea(PortalGroup pgA, PortalGroup pgB) { if (pgA.LinkedAreas.First == pgB.LinkedAreas.First) { return pgA.LinkedAreas.First; } if (pgA.LinkedAreas.First == pgB.LinkedAreas.Second) { return pgA.LinkedAreas.First; } if (pgA.LinkedAreas.Second == pgB.LinkedAreas.First) { return pgA.LinkedAreas.Second; } if (pgA.LinkedAreas.Second == pgB.LinkedAreas.Second) { return pgA.LinkedAreas.Second; } return -1; }