public bool UpdateDefaultControlPermission(OCL.User TargetUser,OCL.User AccessingUser,bool CanSee,bool CanAdd, bool CanEdit, bool CanDelete,bool IsUsable,bool CanEditPermissions,bool CanSeePermissions, bool PropogatePermissions) { if(!this.CanEditControlPermissions(AccessingUser) && !AccessingUser.mvarIsSuperUser) { return false; } OCL.Functions F = new OCL.Functions(); OCL.User DU = (OCL.User)F.GetUnassignedObject(OCL.OysterUnassignedObjects.User); OCL.Control DS = (OCL.Control)F.GetUnassignedObject(OCL.OysterUnassignedObjects.Control); if(PropogatePermissions) { return F.PropagatePermissionsOfObjectType(this,TargetUser,OCL.OysterObjectType.Control,CanSee,CanAdd,CanEdit,CanDelete, IsUsable,CanEditPermissions,CanSeePermissions, false,false,false, false,false,false,AccessingUser.ID); } else { return F.UpdatePermission(this,TargetUser,OCL.OysterObjectType.Control,DS.ID,CanSee,CanAdd,CanEdit,CanDelete, IsUsable,CanEditPermissions,CanSeePermissions, false,false,false, false,false,false,AccessingUser.ID); } }
public bool UpdateDefaultAttachmentPermission(OCL.User TargetUser,OCL.User AccessingUser,bool CanSee,bool CanAdd, bool CanEdit, bool CanDelete,bool CanEditPermissions, bool CanSeePermissions,bool PropogatePermissions) { if(!this.CanEditAttachmentPermissions(AccessingUser) && !AccessingUser.mvarIsSuperUser) { return false; } OCL.Functions F = new OCL.Functions(); //OCL.User DU = (OCL.User)F.GetUnassignedObject(OCL.OysterUnassignedObjects.User); OCL.Attachment A = (OCL.Attachment)F.GetUnassignedObject(OCL.OysterUnassignedObjects.Attachment); if(PropogatePermissions) { return F.PropagatePermissionsOfObjectType(this,TargetUser,OCL.OysterObjectType.Attachment,CanSee,CanAdd,CanEdit,CanDelete, false,CanEditPermissions,CanSeePermissions, false,false,false, false,false,false, AccessingUser.ID); } else { return F.UpdatePermission(this,TargetUser,OCL.OysterObjectType.Attachment,A.mvarID,CanSee,CanAdd,CanEdit,CanDelete, false,CanEditPermissions,CanSeePermissions, false,false,false, false,false,false, AccessingUser.ID); } }
/// <summary> /// Update recordings permission within a given group /// </summary> /// <param name="AccessingUser"></param> /// <param name="QueryGroup"></param> /// <param name="CanSee"></param> /// <param name="CanAdd"></param> /// <param name="CanEdit"></param> /// <param name="CanDelete"></param> /// <param name="CanWatch"></param> /// <returns></returns> public bool UpdateGroupPermission(OCL.User AccessingUser,OCL.Group QueryGroup,bool CanSee,bool CanAdd, bool CanEdit, bool CanDelete, bool CanWatch, bool CanEditPermissions, bool CanSeePermissions) { OCL.Functions F = new OCL.Functions(); if(!F.CheckGroupObjectPermission(AccessingUser,QueryGroup,Convert.ToInt32(OCL.OysterObjectType.Recording), this.ID,OCL.OysterPermissions.CanEdit)) { return false; } OCL.User DU = (OCL.User)F.GetUnassignedObject(OCL.OysterUnassignedObjects.User); return F.UpdatePermission(QueryGroup,DU,OCL.OysterObjectType.Recording,this.ID,CanSee,CanAdd,CanEdit,CanDelete, CanWatch,CanEditPermissions,CanSeePermissions, false,false,false, false,false,false, AccessingUser.ID); }
public bool UpdateDefaultRecordingSessionPermission(OCL.User TargetUser,OCL.User AccessingUser,bool CanSee,bool CanAdd, bool CanEdit, bool CanDelete, bool IsUsable,bool CanEditPermissions, bool CanSeePermissions, bool CanAddNotes, bool CanEditNotes, bool CanRemoveNotes, bool PropogatePermissions) { if(!this.CanEditRecordingSessionPermissions(AccessingUser) && !AccessingUser.mvarIsSuperUser) { return false; } OCL.Functions F = new OCL.Functions(); //OCL.User DU = (OCL.User)F.GetUnassignedObject(OCL.OysterUnassignedObjects.User); OCL.RecordingSession DRS = (OCL.RecordingSession)F.GetUnassignedObject(OCL.OysterUnassignedObjects.RecordingSession); if(PropogatePermissions) { return F.PropagatePermissionsOfObjectType(this,TargetUser,OCL.OysterObjectType.RecordingSession,CanSee,CanAdd,CanEdit,CanDelete, IsUsable,CanEditPermissions,CanSeePermissions, CanAddNotes,CanEditNotes,CanRemoveNotes, false,false,false, AccessingUser.ID); } else { return F.UpdatePermission(this,TargetUser,OCL.OysterObjectType.RecordingSession,DRS.mvarID,CanSee,CanAdd,CanEdit,CanDelete, IsUsable,CanEditPermissions,CanSeePermissions, CanAddNotes,CanEditNotes,CanRemoveNotes, false,false,false,AccessingUser.ID); } }
public bool Update(OCL.User AccessingUser, bool IsVisible, bool CanAdd, bool CanEdit, bool CanDelete, bool IsUsable,bool CanEditPermissions, bool CanSeePermissions, bool CanAddObjectA,bool CanEditObjectA, bool CanDeleteObjectA, bool CanAddObjectB,bool CanEditObjectB, bool CanDeleteObjectB) { OCL.Functions F = new OCL.Functions(); /// Check to see if AccessingUser has priviledges in this group to be changing permissions on /// this object type. OCL.Permission P = F.GetPermission(mvarCurrentGroup,AccessingUser,mvarObjectType,mvarObjectId); if(!P.CanEdit) { return false; } return F.UpdatePermission(mvarCurrentGroup,mvarCurrentUser,mvarObjectType,mvarObjectId,IsVisible, CanAdd,CanEdit,CanDelete,IsUsable,CanEditPermissions,CanSeePermissions, CanAddObjectA,CanEditObjectA,CanDeleteObjectA, CanAddObjectB,CanEditObjectB,CanDeleteObjectB, mvarAddedByUserId); }