1
0
forked from PGL/Clyde
Clyde/frontend/src/Apps/ResearcherProfile.vue

213 lines
4.8 KiB
Vue
Raw Normal View History

2024-03-29 15:32:08 +01:00
<script setup>
function inputKeyUp() {
let input, filter, ul, li, a, i, txtValue;
input = document.getElementById('search-input');
filter = input.value.toUpperCase();
ul = document.getElementById("myUL");
li = ul.getElementsByTagName('li');
// Loop through all list items, and hide those who don't match the search query
for (i = 0; i < li.length; i++) {
a = li[i].getElementsByTagName("a")[0];
txtValue = a.textContent || a.innerText;
if (txtValue.toUpperCase().indexOf(filter) > -1) {
li[i].style.display = "";
} else {
li[i].style.display = "none";
}
}
2024-03-30 13:10:11 +01:00
}
2024-03-30 12:23:56 +01:00
const mydata = {
data() {
return {
options: {
theme: "light2",
animationEnabled: true,
title:{
text: "Visitors By Channel"
},
data: [{
type: "pie",
indexLabel: "{label} (#percent%)",
yValueFormatString: "#,##0",
toolTipContent: "<span style='\"'color: {color};'\"'>{label}</span> {y}(#percent%)",
dataPoints: [
{ label: "Organic Traffic", y: 130631 },
{ label: "Direct", y: 28874 },
{ label: "Referral", y: 15467 },
{ label: "Social", y: 10543 },
{ label: "Email", y: 5613 },
{ label: "Others", y: 8492 }
]
}]
},
styleOptions: {
width: "100%",
height: "360px"
}
}
}
}
2024-03-30 12:23:56 +01:00
2024-03-29 15:32:08 +01:00
</script>
<template>
<div id="main">
<div id="profilePicture">
<img src="/Clyde.png">
</div>
<div id="researcherInfos">
<div class="surrounded" >
John Doe
</div>
<div class="surrounded" >
Orcid :
12144-2144-12336-B
</div>
<div class="surrounded" >
Email : John.Doe@umons.ac.be
</div>
<div class="surrounded" >
site :
<a href="http://localhost:5173" style="color: #007aff">here</a>
</div>
<div class="surrounded" >
Domain : physics, IT
</div>
<div id="coAuthorList" class="surrounded">
Co-authors list : D
</div>
</div>
<div id="stats">
<div class="surrounded">
Stat type : <select name="stats" id="stats-select">
<option value="views">Views</option>
<option value="co-authors">Co-authors</option>
<option value="articles">Articles</option>
<option value="language">Languages</option>
</select>
</div>
<div class="surrounded">
Class by: <select name="classedBy" id="classed-select">
<option value="years">Years</option>
<option value="months">Months</option>
<option value="topics">Topics</option>
</select>
2024-03-30 13:10:11 +01:00
</div>
<div id="statsPie">
<!-- <CanvasJSChart :options="mydata" @chart-ref="chartRef"/> !-->
2024-03-30 12:23:56 +01:00
2024-03-29 15:32:08 +01:00
</div>
</div>
<div id="articles">
<input type="text" id="search-input" @onkeyup="inputKeyUp" placeholder="search articles">
<ul id="myUL">
<li><a href="#">Adele</a></li>
<li><a href="#">Agnes</a></li>
<li><a href="#">Billy</a></li>
<li><a href="#">Bob</a></li>
<li><a href="#">Calvin</a></li>
<li><a href="#">Christina</a></li>
<li><a href="#">Cindy</a></li>
</ul>
2024-03-29 15:32:08 +01:00
</div>
</div>
</template>
<style scoped>
#main {
display: grid;
grid-template-columns: 22% auto;
grid-template-rows: 26% auto;
height: 100%;
width: 100%;
}
#profilePicture {
display: flex;
justify-content: center;
}
#profilePicture img{
align-self: center;
justify-self: center;
width:60%;
}
#researcherInfos {
display: grid;
grid-template-columns: auto auto auto;
column-gap: 5px;
grid-template-rows: auto auto ;
}
.surrounded {
border:2px solid black;
color:white;
font-size: x-large;
align-self: center;
text-align: center;
background-color: rgba(255, 255, 255, 0.09);
border-radius:20px;margin-bottom:10px;
}
2024-03-30 12:23:56 +01:00
.surrounded select {
margin-top: 2px;
margin-bottom: 2px;
border: 1px solid black;
color: white;
background-color: rgb(255,255,255,0.1);
font-size: large;
align-self: center;
text-align: center;
}
2024-03-29 15:32:08 +01:00
#stats {
2024-03-30 12:23:56 +01:00
2024-03-29 15:32:08 +01:00
}
#articles {
background-color: orange;
}
#search-input{
width: 60%;
font-size: 16px;
padding: 12px 20px 12px 40px;
border: 1px solid #ddd;
margin-bottom: 12px;
}
#myUL{
list-style-type: none;
padding: 0;
margin: 0;
}
#myUL li a {
border: 1px solid #ddd; /* Add a border to all links */
margin-top: -1px; /* Prevent double borders */
background-color: #f6f6f6; /* Grey background color */
padding: 12px; /* Add some padding */
text-decoration: none; /* Remove default text underline */
font-size: 18px; /* Increase the font-size */
color: black; /* Add a black text color */
display: block; /* Make it into a block element to fill the whole list */
}
#myUL li a:hover:not(.header) {
background-color: #eee;
}
2024-03-29 15:32:08 +01:00
</style>