link listResearchers to ResearcherProfile
This commit is contained in:
parent
3f4f6ed49a
commit
a168d41aee
@ -165,7 +165,7 @@ window.addEventListener('hashchange', () => {
|
|||||||
border-color:black;
|
border-color:black;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
position: fixed;
|
position: fixed;
|
||||||
overflow:;
|
overflow: scroll;
|
||||||
transition-duration: .3s;
|
transition-duration: .3s;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3,6 +3,7 @@ import { ref} from "vue";
|
|||||||
import FilterComponent from "@/Apps/ScientificPublications/FilterComponent.vue";
|
import FilterComponent from "@/Apps/ScientificPublications/FilterComponent.vue";
|
||||||
import ArticleComponent from "@/Apps/ScientificPublications/ResearchComponent.vue";
|
import ArticleComponent from "@/Apps/ScientificPublications/ResearchComponent.vue";
|
||||||
import {getFile, fetchAllResearches, addView} from "@/rest/ScientificPublications/ManageResearch.js";
|
import {getFile, fetchAllResearches, addView} from "@/rest/ScientificPublications/ManageResearch.js";
|
||||||
|
import {fetchResearch} from "@/rest/ScientificPublications/ResearcherProfile.js";
|
||||||
const input = ref("")
|
const input = ref("")
|
||||||
const isFilterOpened = ref(false);
|
const isFilterOpened = ref(false);
|
||||||
const isResearchOpened = ref(false);
|
const isResearchOpened = ref(false);
|
||||||
@ -37,9 +38,10 @@ const downloadBibTex = (research) => {
|
|||||||
getFile(research.bibTexLocation)
|
getFile(research.bibTexLocation)
|
||||||
}
|
}
|
||||||
|
|
||||||
const downloadArticle = (research) => {
|
async function downloadArticle (research){
|
||||||
addView(research.pdfLocation)
|
await addView(research.pdfLocation)
|
||||||
getFile(research.pdfLocation)
|
await getFile(research.pdfLocation)
|
||||||
|
articleToDisplay.value = await fetchResearch(articleToDisplay.value.id)
|
||||||
}
|
}
|
||||||
|
|
||||||
function downloadCoAuthors(){
|
function downloadCoAuthors(){
|
||||||
@ -97,12 +99,12 @@ function lDistance(s,t){
|
|||||||
<button id="filterButton" @click="openFilter"> Filters </button>
|
<button id="filterButton" @click="openFilter"> Filters </button>
|
||||||
<button v-if="!isResearcher" id="unToggledResearchButton" @click="isResearcher = !isResearcher"> Toggle Researcher Search</button>
|
<button v-if="!isResearcher" id="unToggledResearchButton" @click="isResearcher = !isResearcher"> Toggle Researcher Search</button>
|
||||||
<button v-if="isResearcher" id="toggledResearchButton" @click="isResearcher = !isResearcher"> UnToggle Researcher Search</button>
|
<button v-if="isResearcher" id="toggledResearchButton" @click="isResearcher = !isResearcher"> UnToggle Researcher Search</button>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<ul id="researchUL">
|
<ul id="researchUL">
|
||||||
<li id="researchLi" v-for="n in searchInList(researchList,input)">
|
<li id="researchLi" v-for="n in searchInList(researchList,input)">
|
||||||
<div class="vl"> {{n.title}}</div>
|
<div class="vl"> {{n.title}}</div>
|
||||||
<div class="vl"> {{ n.researcher.user.firstName +" "+ n.researcher.user.lastName }}</div>
|
<div class="vl"> <a :href="'#/researcher-profile?id=' + n.researcher.id"> {{ n.researcher.user.firstName +" "+ n.researcher.user.lastName }}</a>
|
||||||
|
</div>
|
||||||
<a @click="openResearch(n)"> MoreInfo </a></li>
|
<a @click="openResearch(n)"> MoreInfo </a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
import { ref, reactive } from "vue";
|
import { ref, reactive } from "vue";
|
||||||
import FilterComponent from "@/Apps/ScientificPublications/FilterComponent.vue";
|
import FilterComponent from "@/Apps/ScientificPublications/FilterComponent.vue";
|
||||||
import ArticleComponent from "@/Apps/ScientificPublications/ResearchComponent.vue";
|
import ArticleComponent from "@/Apps/ScientificPublications/ResearchComponent.vue";
|
||||||
import {fetchResearcher, fetchResearches, fetchStats} from "@/rest/ScientificPublications/ResearcherProfile.js";
|
import {fetchResearcher, fetchResearches, fetchStats, fetchResearch} from "@/rest/ScientificPublications/ResearcherProfile.js";
|
||||||
import {getFile, addView} from "@/rest/ScientificPublications/ManageResearch.js";
|
import {getFile, addView} from "@/rest/ScientificPublications/ManageResearch.js";
|
||||||
const input = ref("");
|
const input = ref("");
|
||||||
const statsOf = ref("");
|
const statsOf = ref("");
|
||||||
@ -20,16 +20,18 @@ const articleToDisplay = ref(Object)
|
|||||||
const filters = ref([]);
|
const filters = ref([]);
|
||||||
let chart;
|
let chart;
|
||||||
|
|
||||||
const researchList = ref(await fetchResearches(1));
|
const researcherId = window.location.href.split("=")[1]
|
||||||
//todo changer dynamiquement le 1 ici en fct de sur quel profil on est
|
|
||||||
const researcher = ref(await fetchResearcher(1));
|
|
||||||
const stats = ref(await fetchStats(1))
|
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
researcherId: ref(), //int
|
filters: ref([]),
|
||||||
filters: ref([""]),
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
const researchList = ref(await fetchResearches(researcherId));
|
||||||
|
const researcher = ref(await fetchResearcher(researcherId));
|
||||||
|
const stats = ref(await fetchStats(researcherId))
|
||||||
|
|
||||||
const openFilter = () => {
|
const openFilter = () => {
|
||||||
isFilterOpened.value = true;
|
isFilterOpened.value = true;
|
||||||
};
|
};
|
||||||
@ -52,9 +54,12 @@ const downloadBibTex = (research) => {
|
|||||||
getFile(research.bibTexLocation)
|
getFile(research.bibTexLocation)
|
||||||
}
|
}
|
||||||
|
|
||||||
const downloadArticle = (research) => {
|
async function downloadArticle (research) {
|
||||||
addView(research.pdfLocation)
|
await addView(research.pdfLocation)
|
||||||
getFile(research.pdfLocation)
|
await getFile(research.pdfLocation)
|
||||||
|
articleToDisplay.value = await fetchResearch(articleToDisplay.value.id)
|
||||||
|
stats.value = await fetchStats(researcher.value.id)
|
||||||
|
update()
|
||||||
}
|
}
|
||||||
|
|
||||||
function downloadCoAuthors(){
|
function downloadCoAuthors(){
|
||||||
|
@ -29,8 +29,8 @@ export async function fetchAllResearches(){
|
|||||||
|
|
||||||
export async function getFile(url){
|
export async function getFile(url){
|
||||||
const restURL = import.meta.env.VITE_CLYDE_MODE === 'container' ? "http://localhost:8000": import.meta.env.DEV ? "http://localhost:5173" : "https://clyde.herisson.ovh/api"
|
const restURL = import.meta.env.VITE_CLYDE_MODE === 'container' ? "http://localhost:8000": import.meta.env.DEV ? "http://localhost:5173" : "https://clyde.herisson.ovh/api"
|
||||||
await fetch(restURL + "/"+url, {method: "GET"})
|
await fetch(restURL + "/" + url, {method: "GET"})
|
||||||
}
|
}
|
||||||
export async function addView(url){
|
export async function addView(url){
|
||||||
return restPost("/addview/" +url)
|
return restPost("/addview/" + url)
|
||||||
}
|
}
|
||||||
|
@ -11,3 +11,7 @@ export async function fetchResearches(id){
|
|||||||
export async function fetchStats(id){
|
export async function fetchStats(id){
|
||||||
return restGet("/stats/" +id)
|
return restGet("/stats/" +id)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export async function fetchResearch(id){
|
||||||
|
return restGet("/research/" +id)
|
||||||
|
}
|
@ -14,6 +14,7 @@ import Msg from "@/Apps/Msg.vue"
|
|||||||
import ManageRequests from "@/Apps/Inscription/ManageRequests.vue";
|
import ManageRequests from "@/Apps/Inscription/ManageRequests.vue";
|
||||||
import ManageResearcherProfile from "@/Apps/ScientificPublications/ManageResearcherProfile.vue";
|
import ManageResearcherProfile from "@/Apps/ScientificPublications/ManageResearcherProfile.vue";
|
||||||
import ListResearches from "@/Apps/ScientificPublications/ListResearches.vue";
|
import ListResearches from "@/Apps/ScientificPublications/ListResearches.vue";
|
||||||
|
import ResearcherProfile from "@/Apps/ScientificPublications/ResearcherProfile.vue";
|
||||||
|
|
||||||
const apps = {
|
const apps = {
|
||||||
'/login': LoginPage,
|
'/login': LoginPage,
|
||||||
@ -24,7 +25,8 @@ const apps = {
|
|||||||
'/students-list' : Students,
|
'/students-list' : Students,
|
||||||
'/manage-researcher-profile' : ManageResearcherProfile,
|
'/manage-researcher-profile' : ManageResearcherProfile,
|
||||||
'/msg' : Msg,
|
'/msg' : Msg,
|
||||||
'/researches' : ListResearches
|
'/researches' : ListResearches,
|
||||||
|
'/researcher-profile': ResearcherProfile
|
||||||
}
|
}
|
||||||
|
|
||||||
const appsList = {
|
const appsList = {
|
||||||
@ -44,7 +46,7 @@ const appsList = {
|
|||||||
const currentPath = ref(window.location.hash)
|
const currentPath = ref(window.location.hash)
|
||||||
|
|
||||||
export const currentView = computed(() => {
|
export const currentView = computed(() => {
|
||||||
return apps[currentPath.value.slice(1) || '/']
|
return apps[currentPath.value.split("?")[0].slice(1) || '/']
|
||||||
})
|
})
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user