public bool FileAllowedForUser(IUserID user, string file) { WatchingUsers users = new WatchingUsers(); string[] filegroups = AllowedUserList(file); // тут группы у файла string[] usergroups = users.ReturnUserFileRights(user.GetValue); // // если в группах файла есть какаянить группа из групп пользователя - вернуть что "можно" for (int i = 0; i < filegroups.Length; i++) { for (int j = 0; j < usergroups.Length; j++) { if (filegroups[i].Equals(usergroups[j])) { return(true); } } } return(false); }
public override IObjects Get(IObjects request) { GetUser tmp = (GetUser)request; UserList basa = ReadUsers(); // получили базу пользователей. первая часть с атрибутами. вторая с залогиненными в сети пользователями с их id шниками // с индекса i начинаются пользователи сейчас залогиненные // дальше начинается блок // найдем пользователя, создадим ему id и вернем. а id запишем в базу // тока уникальный WatchingUsers t = new WatchingUsers(); int answer = t.AddPresence(tmp.log, tmp.pass); if (answer == -1) { return(null); } else { tmp.SetReqestedUser(new UserID(answer)); } return(tmp); }
public override IObjects Get(IObjects request) { LogOff tmp = (LogOff)request; WatchingUsers t = new WatchingUsers(); t.RemoveUser(tmp.deleted.GetValue); return(null); }
public IObjects SEND(ref IObjects obj) { IObjects answer = null; // определимся ваще есть ли такой пользователь WatchingUsers t = new WatchingUsers(); bool open = false; if ((obj.User == null) && ((obj.ID.ToString().Equals("GetUser") || (obj.ID.ToString().Equals("LogOff"))))) { open = true; } if (obj.User != null) { if (t.RetunUserRights(obj.User.GetValue) != null) { open = true; } } if (open) { bool found = false; int n = 0; while (n < HandlerList.count && !found) { if (HandlerList.GetList[n].RelatedRequest.Equals(obj.ID.ToString())) { found = true; answer = HandlerList.GetList[n].Get(obj); } n++; } } return(answer); }
public override IObjects Get(IObjects request) { UserRequest a; a = (UserRequest)request; UserList list = ReadUsers(); list.changed = 0; WatchingUsers s = new WatchingUsers(); string[] tmp = s.RetunUserRights(request.User.GetValue); if (!tmp[0].Equals("yes")) { list = null; } a.execute(ref list); if (list != null) { if (list.changed == 1) { WrightUsers(list); // записали пользователей // надо обновить страничку presence WatchingUsers t = new WatchingUsers(); t.UpdatePresenceAfterUpdatingUsersTable(list); } } return(request); }