Commit d345f8d8 authored by Jérémie Passerat's avatar Jérémie Passerat

Correction bugs finale

parent a95add21
......@@ -51,6 +51,7 @@ export default {
// @arg booléen indiquant que la connexion est ok
// @arg nom de l'auteur connecté
if (response.status === 200){
that.errorLogin = false
localStorage.token = response.data.access_token
//console.log(response.data.access_token)
......
......@@ -193,6 +193,11 @@ export default {
// @arg contenu le contenu cliqué
// @arg le texte associé au contenu (sert potentiellement à rien)
if (action === "supprimer"){
this.notePresente = false
this.noteContenu = 0
}
this.$emit("actionContenu", {action: action, contenu: this.contenuClique, texte: this.texteDuContenu})
},
/**
......
......@@ -72,10 +72,10 @@ isActif ? {'margin-left': '1vw', 'margin-right': '1vw'} : {'margin-left': '0.6vw
{{ item._id }}</div></td>
<b-popover style="height: 700px; width: 700px" class="non" v-on:show="rechercherTexte(item._id, item.provenance, item.source, item.descriptif)" :target="JSON.stringify(item._id)"
triggers="hover" placement="bottom">
<p id="beautiful" v-html="texteDuContenu" v-if="!isMoodle && !isAutre"></p>
<p v-if="isAutre">{{ descriptifContenu }}</p>
<Previsualiser_Moodle v-bind:id="item._id" v-bind:provenance="item.provenance" v-bind:source="item.source"
v-if="isMoodle && !isAutre"></Previsualiser_Moodle>
<p id="chameau" v-html="textePrevisualise" v-if="!isMoodle"></p>
<!--<p v-if="!isMoodle && isAutre">{{ descriptifContenu }}</p>-->
<Previsualiser_Moodle v-bind:id="item._id" v-bind:provenance="item.provenance" v-bind:source="item.source" v-else></Previsualiser_Moodle>
</b-popover>
<!-- auteur -->
<td>{{item.auteur}}</td>
......@@ -107,9 +107,10 @@ isActif ? {'margin-left': '1vw', 'margin-right': '1vw'} : {'margin-left': '0.6vw
<tr v-show="!panierChoisi && (!modeModification && !modeConsultation)" v-for="item in contenusBanque" :key="JSON.stringify(item._id)"
v-bind:style="{'background-color': 'white'}" >
<td :id="'a' + JSON.stringify(item._id)" v-on:click="chargerContenu(item, 'banque')">{{ item.titre }}</td>
<b-popover :target="'a' + JSON.stringify(item._id)" v-on:show="rechercherTexte(item._id, 'banque', item.source)" triggers="hover" placement="bottom">
<p v-html="texteDuContenu" v-if="!isMoodle"></p>
<Previsualiser_Moodle v-bind:id="item._id" v-bind:provenance="'banque'" v-bind:source="item.source" v-else></Previsualiser_Moodle>
<b-popover :target="'a' + JSON.stringify(item._id)" v-on:show="rechercherTexte(item._id, 'banque', item.source, item.descriptif)" triggers="hover" placement="bottom">
<p id="chameau" v-html="textePrevisualise" v-if="!isMoodle"></p>
<!--<p v-if="!isMoodle && isAutre">{{ descriptifContenu }}</p>-->
<Previsualiser_Moodle v-bind:id="item._id" v-bind:provenance="item.provenance" v-bind:source="item.source" v-else></Previsualiser_Moodle>
</b-popover>
<td>{{ item.auteur }}</td>
<td>{{item.versionEnCours.numero}}</td>
......@@ -197,6 +198,9 @@ export default {
return {
isActif: true,
panierChoisi: true,
chargerMarkdown: false,
chargerAutre: false,
chargerMoodle: false,
filtre_choisi: "",
variante: false,
contenus: [],
......@@ -215,13 +219,14 @@ export default {
checkes: [],
nouveauContenu: false,
texteDuContenu: '',
textePrevisualise: '',
descriptifContenu: '',
titreContenu: '',
token: '',
razModeVariante: false,
//modeFiltre: false,
isMoodle: false,
isAutre: true,
isAutre: false,
texteBoutonvariante: "changer",
// booléens pour le tri des colonnes du tableau
titreTrie: false,
......@@ -621,7 +626,7 @@ export default {
}
)
} else if (this.contenuCliqueProvenance === "tiers"){
Service.supprimerTiers(this.auteur, JSON.stringify(event.contenu._id)).then(
Service.supprimerTiers(this.auteur, JSON.stringify(event.contenu._id), event.contenu.note_perso).then(
function () {
let contenuSupprime = that.contenus.filter(contenu => contenu._id === event.contenu._id)
that.contenus = that.contenus.filter(contenu => contenu._id !== event.contenu._id)
......@@ -735,22 +740,25 @@ export default {
* Récupération du texte d'un contenu
*/
rechercherTexte: function (id, provenance, source, description) {
if (id === undefined)
return
let that = this
this.isMoodle = false
this.isAutre = false
if (source === "moodle"){
this.isMoodle = true
this.isAutre = false
//this.isAutre = false
// this.chargerMoodle = true
console.log("moodle")
} else if (source === "autre"){
this.isMoodle = false
//this.chargerAutre = true
//this.isMoodle = false
this.isAutre = true
this.descriptifContenu = description
this.textePrevisualise = description
if (provenance !== 'en-cours') {
Service.recupererTexteContenu(JSON.stringify(id)).then(function (reponse) {
that.texteDuContenu = reponse.data
// alert("Je le arrive ici " + that.texteDuContenu)
})
} else{
Service.recupererTexteContenuEnCours(JSON.stringify(id)).then(function (reponse) {
......@@ -758,9 +766,9 @@ export default {
})
}
} else {
this.isMoodle = false
this.isAutre = false
//this.isMoodle = false
// this.isAutre = false
//this.chargerMarkdown = true
if (provenance === 'en-cours') {
Service.recupererTexteContenuEnCours(JSON.stringify(id)).then(
......@@ -769,6 +777,7 @@ export default {
converter = new showdown.Converter()
that.texteDuContenu = converter.makeHtml(response.data)
that.textePrevisualise = that.texteDuContenu
}
)
} else if (provenance === 'banque') {
......@@ -778,6 +787,7 @@ export default {
converter = new showdown.Converter()
that.texteDuContenu = converter.makeHtml(response.data)
that.textePrevisualise = that.texteDuContenu
}
)
} else {
......@@ -786,6 +796,8 @@ export default {
let showdown = require('showdown'),
converter = new showdown.Converter()
that.texteDuContenu = converter.makeHtml(response.data)
that.textePrevisualise = that.texteDuContenu
console.log("texte previsualise : ", that.textePrevisualise)
}
)
// }
......@@ -917,7 +929,6 @@ export default {
}
if (event.filtres.filter(contenu => contenu.type === 'tags libres').length > 0) {
// tags libres
let filtre_tags_libres = (event.filtres.filter(contenu => contenu.type === 'tags libres').map(contenu => contenu.filtre))
// contenusFiltres.forEach(contenu => console.log(contenu.tags_libres.length))
......@@ -932,6 +943,7 @@ export default {
}
if (event.filtres.filter(contenu => contenu.type === 'tags officiels').length > 0) {
// tags officiels
alert('puuu')
let filtre_tags_fixes = (event.filtres.filter(contenu => contenu.type === 'tags officiels').map(contenu => contenu.filtre))
for (let i = 0; i < filtre_tags_fixes.length; i++) {
contenusFiltres = contenusFiltres.filter(contenu => contenu.tags_fixes.includes(filtre_tags_fixes[i]))
......@@ -953,7 +965,7 @@ export default {
for(let filtre in filtre_source){
let filtre_min = parseFloat(filtre_source[filtre].substring(1))
contenusFiltres = contenusFiltres.filter(contenu => this.calculerNote(contenu) > filtre_min)
contenusFiltres = contenusFiltres.filter(contenu => parseFloat(this.calculerNote(contenu)) > filtre_min)
}
}
......@@ -961,7 +973,7 @@ export default {
let filtre_source = (event.filtres.filter(contenu => contenu.type === 'noteMax').map(contenu => contenu.filtre))
for(let filtre in filtre_source){
let filtre_max = parseFloat(filtre_source[filtre].substring(1))
console.log('filtre_max ' + filtre_max + 'type' + typeof filtre_max + "filtre" + filtre)
contenusFiltres = contenusFiltres.filter(contenu => this.calculerNote(contenu) < filtre_max)
//contenusFiltres = contenusFiltres.filter(contenu => contenu.versionEnCours.date <= filtre_max)
......@@ -974,8 +986,8 @@ export default {
let borne_min = parseInt(filtre_source[filtre].substring(0, 1))
let borme_max = parseInt(filtre_source[filtre].substring(filtre_source[filtre].indexOf("-")+1).trim())
contenusFiltres = contenusFiltres.filter(contenu => this.calculerNote(contenu) > borne_min)
contenusFiltres = contenusFiltres.filter(contenu => this.calculerNote(contenu) < borme_max)
contenusFiltres = contenusFiltres.filter(contenu => this.calculerNote(contenu) >= borne_min)
contenusFiltres = contenusFiltres.filter(contenu => this.calculerNote(contenu) <= borme_max)
}
}
......@@ -1098,6 +1110,13 @@ export default {
* Fonction de calcul de la note d'un contenu
*/
calculerNote: function(item) {
console.log("item")
console.log(item)
if (item.moyenne !== undefined){
console.log("Je le ai un item pas undefined")
return item.moyenne
}
if (item.version !== undefined && item.version !== item.versionEnCours.numero){
for (let it in item.historique){
......
......@@ -3,8 +3,8 @@
<div id="selectionnerAuteur">
<span>selectionner un auteur : </span><br><br>
<select id="auteur" name="auteur" size="1" v-model="auteur" v-on:change="choixAuteur()">
<option v-for="item in filteredList" v-bind:key="item.id">{{ item.nom }}</option>
<select id="auteur" name="auteur" size="1" v-model="auteurSelectionne" v-on:change="choixAuteur()">
<option v-for="item in filteredList()" v-bind:key="item.id">{{ item.nom }}</option>
</select>
</div>
......@@ -23,29 +23,26 @@ export default {
*/
choixAuteur: function () {
if (this.auteur !== undefined)
this.$emit("creer_filtre", {filtre: this.auteur, type: 'auteur'})
}
},
props: {
// l'auteur en cours
auteur: {},
// le mode panier est-il activé ou non?
panierChoisi: {}
},
computed: {
this.$emit("creer_filtre", {filtre: this.auteurSelectionne, type: 'auteur'})
},
/**
* @vuese
* Filtrer la liste des auteurs pour virer (ou non) celui de l'auteur actuellement connecté
*/
filteredList: function () {
this.auteurSelectionne = ''
if (!this.panierChoisi){
return this.listeAuteurs.filter(auteur => auteur.nom !== this.auteur)
}
else { return this.listeAuteurs}
}
},
props: {
// l'auteur en cours
auteur: {},
// le mode panier est-il activé ou non?
panierChoisi: {},
},
watch:{
/**
* @vuese
......@@ -60,7 +57,8 @@ export default {
},
data: function () {
return {
listeAuteurs: []
listeAuteurs: [],
auteurSelectionne: '',
}
}
......
This diff is collapsed.
......@@ -5,6 +5,8 @@
<span>selectionner un type</span><br><br>
<select id="type" name="type" size="1" v-model="type" v-on:change="choixType()">
<option>quiz</option>
<option>text/plain</option>
<option>application/pdf</option>
</select>
</div>
......@@ -13,6 +15,7 @@
<select id="source" name="source" size="1" v-model="source" v-on:change="choixSource()">
<option>markdown</option>
<option>moodle</option>
<option>autre</option>
</select>
</div>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment