string GetFilePath(File file) { using (var folderServices = new FolderServices()) { return(folderServices.GetFullPath(file.IdUser, file.IdFolder) + file.Filename); } }
public void Delete(string securityToken, string password) { try { var session = CheckSession(securityToken); var user = _dao.Read(session.IdUser); if (user.Password != EncryptPassword(password)) { throw new FileSharingException(FileSharingException.INVALID_CREDENTIALS, "The password is invalid"); } using (var groupServices = new GroupServices()) { var groups = groupServices.GetAdministrableGroups(securityToken); if (groups != null && groups.Count > 0) { throw new FileSharingException(FileSharingException.USER_CANNOT_BE_REMOVED, "The user cannot be removed because he is group admin"); } } using (var fileService = new FileServices()) { foreach (var doc in user.Files) { fileService.Delete(securityToken, doc.Id); } } using (var folderServices = new FolderServices()) { foreach (var folder in user.Folders) { folderServices.Delete(securityToken, folder.Id); } } _dao.Delete(user); Audit(user.Id, user.Id.ToString(), typeof(User).Name, ActionDto.Delete, "User deleted: " + user); } catch (Exception e) { throw new FileSharingException(FileSharingException.ERROR_FILESHARING_SERVER, e.Message, e); } }