diff --git a/backend/src/main/java/ovh/herisson/Clyde/EndPoints/ApplicationsController.java b/backend/src/main/java/ovh/herisson/Clyde/EndPoints/ApplicationsController.java
index 5b49c66..d95a7ff 100644
--- a/backend/src/main/java/ovh/herisson/Clyde/EndPoints/ApplicationsController.java
+++ b/backend/src/main/java/ovh/herisson/Clyde/EndPoints/ApplicationsController.java
@@ -52,6 +52,7 @@ public class ApplicationsController {
//if unAuthed
authorizedApps.add(Applications.Login);
+ authorizedApps.add(Applications.ListResearches);
User user = authServ.getUserFromToken(token);
if(user == null)
diff --git a/backend/src/main/java/ovh/herisson/Clyde/Tables/Applications.java b/backend/src/main/java/ovh/herisson/Clyde/Tables/Applications.java
index a47997f..0b4514e 100644
--- a/backend/src/main/java/ovh/herisson/Clyde/Tables/Applications.java
+++ b/backend/src/main/java/ovh/herisson/Clyde/Tables/Applications.java
@@ -21,5 +21,7 @@ public enum Applications {
// profile of a researcher
ResearcherProfile,
ManageResearcherProfile,
- StudentsList
+
+ //the list of all researches (filterable)
+ ListResearches, StudentsList
}
diff --git a/frontend/public/i18n/EN.txt b/frontend/public/i18n/EN.txt
index 0600571..c316597 100644
--- a/frontend/public/i18n/EN.txt
+++ b/frontend/public/i18n/EN.txt
@@ -29,7 +29,7 @@ app.manage.profile=Manage profile
app.studentList=Students List
app.users=Users
app.manage.researcherProfile=Manage researcher profile
-app.list.researches = List researches
+app.list.researches=List researches
request.moreInfos=More Infos
request.accept=Accept
request.refuse=Refuse
diff --git a/frontend/public/i18n/FR.txt b/frontend/public/i18n/FR.txt
index a057080..e86b19b 100644
--- a/frontend/public/i18n/FR.txt
+++ b/frontend/public/i18n/FR.txt
@@ -29,7 +29,7 @@ app.manage.profile=Gérer le profil
app.studentList=Liste des étudiants
app.users=Utilisateurs
app.manage.researcherProfile= gérer son profil de chercheur
-app.list.researches = lister les recherches
+app.list.researches=Lister les recherches
request.moreInfos=Plus d'Infos
request.accept=Accepter
request.refuse=Refuser
diff --git a/frontend/src/Apps/ScientificPublications/ListResearches.vue b/frontend/src/Apps/ScientificPublications/ListResearches.vue
index 1ce1df9..64e048b 100644
--- a/frontend/src/Apps/ScientificPublications/ListResearches.vue
+++ b/frontend/src/Apps/ScientificPublications/ListResearches.vue
@@ -2,13 +2,14 @@
import { ref} from "vue";
import FilterComponent from "@/Apps/ScientificPublications/FilterComponent.vue";
import ArticleComponent from "@/Apps/ScientificPublications/ResearchComponent.vue";
-import {getFile, fetchResearches, addView} from "@/rest/ScientificPublications/ManageResearch.js";
+import {getFile, fetchAllResearches, addView} from "@/rest/ScientificPublications/ManageResearch.js";
const input = ref("")
const isFilterOpened = ref(false);
const isResearchOpened = ref(false);
const articleToDisplay = ref(Object)
-const researchList = ref(await fetchResearches(1));
+const researchList = ref(await fetchAllResearches());
+const isResearcher = ref(false)
const props = defineProps({
filters: ref([""]),
@@ -52,7 +53,11 @@ function downloadCoAuthors(){
function searchInList(list, searchInput) {
let retList = []
for (let i = 0; i < list.length; i++) {
- if (lDistance(list[i].title, searchInput) < 10 || list[i].title.toUpperCase().indexOf(searchInput.toUpperCase()) > -1){
+ let researcher = list[i].researcher.user.firstName + " " +list[i].researcher.user.lastName
+ if (isResearcher.value && (lDistance(researcher, searchInput) < 5 || researcher.toUpperCase().indexOf(searchInput.toUpperCase()) > -1)){
+ retList.push(list[i])
+ }
+ if (!isResearcher.value && (lDistance(list[i].title, searchInput) < 10 || list[i].title.toUpperCase().indexOf(searchInput.toUpperCase()) > -1)){
retList.push(list[i])
}
}
@@ -87,8 +92,12 @@ function lDistance(s,t){