From 0bdaa88082091da4b0e86164ea93f1cd97fa5057 Mon Sep 17 00:00:00 2001 From: Heinrichs <Heinrichs@itc.rwth-aachen.de> Date: Thu, 25 Feb 2021 16:14:15 +0100 Subject: [PATCH] Fix Search --- src/Project/Controllers/ProjectController.cs | 3 +-- src/Project/Controllers/SearchController.cs | 17 ++++++++--------- 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/src/Project/Controllers/ProjectController.cs b/src/Project/Controllers/ProjectController.cs index 071556c..2c330b2 100644 --- a/src/Project/Controllers/ProjectController.cs +++ b/src/Project/Controllers/ProjectController.cs @@ -543,8 +543,7 @@ namespace Coscine.Api.Project.Controllers var project = _projectModel.StoreFromObject(projectObject, user, isRWTHMember); - if (projectObject.ParentId != null - && projectObject.ParentId != new Guid() + if (projectObject.ParentId != new Guid() // for now, only an owner can add subprojects to projects && _projectModel.HasAccess(user, _projectModel.GetById(projectObject.ParentId), UserRoles.Owner)) { diff --git a/src/Project/Controllers/SearchController.cs b/src/Project/Controllers/SearchController.cs index c8fd290..a14435e 100644 --- a/src/Project/Controllers/SearchController.cs +++ b/src/Project/Controllers/SearchController.cs @@ -3,7 +3,6 @@ using System.Collections.Generic; using System.Linq; using System.Web; using Coscine.ApiCommons; -using LinqToDB.Tools; using Microsoft.AspNetCore.Mvc; using Newtonsoft.Json; using Newtonsoft.Json.Linq; @@ -203,11 +202,11 @@ namespace Coscine.Api.Project.Controllers from jpi in joinedPi.DefaultIfEmpty() where p.Deleted == false && - ((!showSubProjects && p.Id.NotIn(allSubProjectsList)) || - (showSubProjects && p.Id.In(allSubProjectsList))) && - (jpr.UserId.Equals(userId) || jv.DisplayName.Equals("Public")) && - (projectId.Equals("") || p.Id.In(listOfSubprojects)) && - (searchQuery.Equals("") || + ((!showSubProjects && !allSubProjectsList.Contains(p.Id)) || + (showSubProjects && allSubProjectsList.Contains(p.Id))) && + (jpr.UserId == userId || jv.DisplayName == "Public") && + (projectId == "" || listOfSubprojects.Contains(p.Id)) && + (searchQuery == "" || p.ProjectName.Contains(searchQuery) || p.Description.Contains(searchQuery) || p.Keywords.Contains(searchQuery) || @@ -256,9 +255,9 @@ namespace Coscine.Api.Project.Controllers from jrt in joinedRt.DefaultIfEmpty() where jp.Deleted == false && - (jpr.UserId.Equals(userId) || jv.DisplayName.Equals("Public")) && - (projectId.Equals("") || jp.Id.In(listOfSubprojects)) && - (searchQuery.Equals("") || + (jpr.UserId == userId || jv.DisplayName == "Public") && + (projectId == "" || listOfSubprojects.Contains(jd.Id)) && + (searchQuery == "" || r.ResourceName.Contains(searchQuery) || r.DisplayName.Contains(searchQuery) || r.ResourceName.Contains(searchQuery) || -- GitLab