Commit 8c990e28 authored by Jérémie Passerat's avatar Jérémie Passerat

Création et maj en cours ok

parent 134126a8
......@@ -34,7 +34,7 @@ export default {
return converter.makeHtml(this.contenu)
},
actionContenu: function (action) {
this.$emit("actionContenu", {action: action, contenu: this.contenuClique})
this.$emit("actionContenu", {action: action, contenu: this.contenuClique, texte: this.contenu})
},
revenirArriere: function () {
this.$emit("retour_arriere", {panierChoisi: this.contenuCliqueProvenance !== 'banque'})
......
......@@ -7,8 +7,8 @@
</div>
<div class="markdown">
<br>
<button id="validerModif" v-on:click="validerUneModif">modifier </button>
<button> revenir en arrière</button>
<button id="validerModif" v-on:click="action('valider')">modifier </button>
<button v-on:click="action('arriere')"> revenir en arrière</button>
</div>
......@@ -16,32 +16,31 @@
</template>
<script>
import Service from "@/service/Service";
export default {
name: "Modifier_Contenu",
props: ['contenuClique', 'auteur', 'contenuCliqueProvenance'],
props: ['texteDuContenu', 'auteur', 'contenuCliqueProvenance'],
data: function () {
return {
contenu: ''
}
},
methods: {
validerUneModif: function (message) {
action: function (actionChoisie) {
if (actionChoisie === 'valider'){
this.$emit("choixModif", {action: actionChoisie, nouveauTexte: this.contenu})
} else {
this.$emit("choixModif", {action: actionChoisie})
}
// Modification du contenu en cours (au niveau de l'intérieur du fichier)
}
},
watch: {
contenuClique: function () {
let that = this
Service.recupererTexteContenu(JSON.stringify(this.contenuClique._id)).then(
function (response) {
that.contenu = response.data
// alert(response.data)
}
)
texteDuContenu: function () {
this.contenu = this.texteDuContenu
}
},
......
......@@ -54,11 +54,11 @@
<h1>I am</h1> popover <b>component</b> content!
</b-popover>-->
<td :id="JSON.stringify(item._id)" v-on:click="chargerContenu(item, item.provenance)">{{item._id}}</td>
<b-popover class="non" v-on:show="chocolat === item._id" :target="JSON.stringify(item._id)" triggers="hover" placement="bottom">
<p id="beautiful" v-html="whatYouGonnaDoNow(item.versionEnCours.commit)"></p>
<b-popover class="non" v-on:show="rechercherTexte(item._id, item.provenance)" :target="JSON.stringify(item._id)" triggers="hover" placement="bottom">
<p id="beautiful" v-html="texteDuContenu"></p>
</b-popover>
<td>{{item.auteur}}</td>
<td v-if="item.provenance === 'tiers'">{{ item.version }}</td>
<td v-if="item.provenance === 'en-cours'">{{ item.version }}</td>
<td v-else>{{ item.versionEnCours.numero }}</td>
<td>The table body</td>
<td class="prout">with two columns</td>
......@@ -97,7 +97,7 @@
</div>
</div>
<Consulter_Contenu v-bind:auteur="auteur" @actionContenu="actionContenu" @retour_arriere="retourArriere" v-bind:contenuClique = "contenuClique" v-bind:contenuCliqueProvenance = "contenuCliqueProvenance" v-show="modeConsultation && !modeModification"/>
<Modifier_Contenu v-bind:auteur="auteur" v-bind:contenuClique = "contenuClique" v-bind:contenuCliqueProvenance = "contenuCliqueProvenance" v-show="!modeConsultation && modeModification"/>
<Modifier_Contenu v-bind:auteur="auteur" v-bind:texteDuContenu = "texteDuContenu" v-bind:contenuCliqueProvenance = "contenuCliqueProvenance" v-show="!modeConsultation && modeModification" @choixModif="choixModif"/>
<div v-show="panierChoisi && !modeConsultation" class="circle" v-on:click="ajouterContenu" v-bind:style="{'margin-left': '95%'}">
</div>
......@@ -143,6 +143,7 @@ export default {
oui: 0,
checkes: [],
nouveauContenu: false,
texteDuContenu: '',
chocolat: '<h1 id="hellomarkdown">hello, markdown!</h1>',
imgEtoile: "https://previews.123rf.com/images/ylivdesign/ylivdesign1612/ylivdesign161208906/67933171-ic%C3%B4ne-%C3%A9toile-%C3%A0-cinq-branches-jaunes-illustration-de-dessin-anim%C3%A9-d-ic%C3%B4ne-de-vecteur-%C3%A9toile-jaune-%C3%A0-cinq-branches-.jpg",
imgPoubelle: "data:image/png;base64,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"
......@@ -168,12 +169,6 @@ export default {
$('#ensemble').draggable()
},
methods: {
whatYouGonnaDoNow: function (contenu) {
let showdown = require('showdown'),
converter = new showdown.Converter();
return converter.makeHtml(contenu)
/* console.log($(this).children().text())*/
},
contenusDuPanier: function(){
let that = this
// Dès que l'auteur est connu, on charge tous ses contenus
......@@ -283,21 +278,7 @@ export default {
break
case "modifier":
this.modeModification = true
if (this.contenuCliqueProvenance !== 'en-cours'){
let data = {auteur: this.auteur, id_contenu: JSON.stringify(event.contenu._id), version: event.contenu.versionEnCours["numero"]}
// let that = this
Service.creerEnCours(data).then(
function (response) {
alert("Je suis l'id du contenu en cours :" + response.data)
}
)
}
else {
alert("Je suis l'id du contenu en cours :" + event.contenu._id)
}
// Il faudrait que j'arrive à récupérer l'id du contenu en cours (soit qui vient juste d'être créé, soit déja existant
this.texteDuContenu = event.texte
break
case "supprimer":
this.panierChoisi = true
......@@ -363,6 +344,54 @@ export default {
else {
this.checkes.push([idContenu, provenance])
}
},
rechercherTexte: function (id, provenance) {
let that = this
if(provenance === 'en-cours'){
Service.recupererTexteContenuEnCours(JSON.stringify(id)).then(
function (response) {
let showdown = require('showdown'),
converter = new showdown.Converter()
that.texteDuContenu = converter.makeHtml(response.data)
}
)
}
else {
Service.recupererTexteContenu(JSON.stringify(id)).then(
function (response) {
let showdown = require('showdown'),
converter = new showdown.Converter()
that.texteDuContenu = converter.makeHtml(response.data)
}
)
}
},
choixModif: function (event) {
this.modeModification = false
this.panierChoisi = true
let data = {nouveau_texte: event.nouveauTexte}
if(event.action === "valider"){
alert(event.nouveauTexte)
if (this.contenuCliqueProvenance !== 'en-cours'){
let dataDeux = {auteur: this.auteur, id_contenu: JSON.stringify(this.contenuClique._id), version: this.contenuClique.versionEnCours["numero"]}
let that = this
Service.creerEnCours(dataDeux).then(function (reponse) {
that.contenusDuPanier()
alert ("reponse " + reponse.data)
Service.changerTexte(data, reponse.data)
})
}
else {
Service.changerTexte(data, JSON.stringify(this.contenuClique._id))
}
}
}
}
}
......
......@@ -96,10 +96,13 @@ export default {
gererMajTiers(data) {
return axios.patch(urlBase + "gererMajTiers", data)
},
modifierContenuBasique(data) {
return axios.patch(urlBase + "modifierContenuBasique", data)
changerTexte(data, id) {
return axios.patch(urlBase + "changerTexte/" + id, data)
},
recupererTexteContenu(idContenu){
return axios.get(urlBase + "getTexteContenu/" + idContenu)
},
recupererTexteContenuEnCours(idContenu){
return axios.get(urlBase + "getTexteContenuEnCours/" + idContenu)
}
}
\ No newline at end of file
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