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

Persos, tiers, encours migrés en maj locale

parent b1dbf237
...@@ -36,7 +36,7 @@ export default { ...@@ -36,7 +36,7 @@ export default {
auteur: "", auteur: "",
isRecu: false, isRecu: false,
isPropose: false, isPropose: false,
contenuAjoute: false, contenuAjoute: "",
recalculerNotif: false recalculerNotif: false
} }
}, },
...@@ -70,8 +70,8 @@ export default { ...@@ -70,8 +70,8 @@ export default {
newContenu: function () { newContenu: function () {
this.etat = "newContenu" this.etat = "newContenu"
}, },
ajouterUnContenu:function () { ajouterUnContenu:function (event) {
this.contenuAjoute = true this.contenuAjoute = event.contenu
}, },
retourArriere: function () { retourArriere: function () {
this.etat= "Contenu" this.etat= "Contenu"
......
...@@ -44,8 +44,13 @@ export default { ...@@ -44,8 +44,13 @@ export default {
let data = {auteur: this.auteur, contenu_a_ecrire: this.contenuSaisi} let data = {auteur: this.auteur, contenu_a_ecrire: this.contenuSaisi}
let that = this let that = this
Service.creerContenuPerso(data).then( Service.creerContenuPerso(data).then(
function () { function (reponse) {
that.$emit("contenuAjoute") console.log(reponse.data)
let nouveauContenu = reponse.data
nouveauContenu.provenance = "perso"
console.log(nouveauContenu)
that.$emit("contenuAjoute", {contenu: nouveauContenu})
that.contenuSaisi = ''
that.retourArriere() that.retourArriere()
} }
) )
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<div> <div>
<p v-show="filtre_choisi.length === 0">Ajoutez des filtres pour restreindre la recherche, ou effectuez une recherche libre (bouton en haut à droite)</p> <p v-show="filtre_choisi.length === 0">Ajoutez des filtres pour restreindre la recherche, ou effectuez une recherche libre (bouton en haut à droite)</p>
<Filtre_Tag v-show="filtre_choisi === 'tags officiels' || filtre_choisi === 'tags libres' " v-bind:filtreChoisi="filtre_choisi" @creer_filtre="creer_filtre"/> <Filtre_Tag v-show="filtre_choisi === 'tags officiels' || filtre_choisi === 'tags libres' " v-bind:filtreChoisi="filtre_choisi" @creer_filtre="creer_filtre"/>
<Filtre_Auteur v-show="filtre_choisi === 'auteur'" @creer_filtre="creer_filtre"/> <Filtre_Auteur v-bind:panierChoisi="panierChoisi" v-show="filtre_choisi === 'auteur'" v-bind:auteur="auteur" @creer_filtre="creer_filtre"/>
<Filtre_Date v-show="filtre_choisi === 'date' " @creer_filtre="creer_filtre"/> <Filtre_Date v-show="filtre_choisi === 'date' " @creer_filtre="creer_filtre"/>
<Filtre_Note_Popularite v-show="filtre_choisi === 'note / popularité' " @creer_filtre="creer_filtre"/> <Filtre_Note_Popularite v-show="filtre_choisi === 'note / popularité' " @creer_filtre="creer_filtre"/>
<Filtre_Type_Source v-show="filtre_choisi === 'type / source'" @creer_filtre="creer_filtre"/> <Filtre_Type_Source v-show="filtre_choisi === 'type / source'" @creer_filtre="creer_filtre"/>
...@@ -29,7 +29,7 @@ export default { ...@@ -29,7 +29,7 @@ export default {
Filtre_Note_Popularite, Filtre_Note_Popularite,
Filtre_Type_Source Filtre_Type_Source
}, },
props: ['filtre_choisi'], props: ['filtre_choisi', 'auteur', 'panierChoisi'],
methods: { methods: {
creer_filtre: function (event) { creer_filtre: function (event) {
this.$emit("creer_filtre", {filtre: event}) this.$emit("creer_filtre", {filtre: event})
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
<button id="boutonVolet" v-on:click="desactiverVolet" v-bind:style="panierChoisi ? {'margin-top': '0%'} : {'margin-top': '20px'}"></button> <button id="boutonVolet" v-on:click="desactiverVolet" v-bind:style="panierChoisi ? {'margin-top': '0%'} : {'margin-top': '20px'}"></button>
<div class="full" id="volet" v-show="isActif"> <div class="full" id="volet" v-show="isActif">
<Volet_Menu v-bind:panierChoisi = "panierChoisi" @filtre_choisi="passerFiltre"/> <Volet_Menu v-bind:panierChoisi = "panierChoisi" @filtre_choisi="passerFiltre"/>
<Volet_Contenu @mode_choisi="ajusterMode" v-bind:filtre_choisi="filtre_choisi" v-bind:variante="variante" @filtresChoisis="filtresChoisis"/> <Volet_Contenu @mode_choisi="ajusterMode" v-bind:filtre_choisi="filtre_choisi" v-bind:variante="variante" v-bind:auteur="auteur" @filtresChoisis="filtresChoisis"/>
</div> </div>
</div> </div>
...@@ -66,8 +66,7 @@ ...@@ -66,8 +66,7 @@
<td v-if="item.provenance !== 'en-cours'" v-b-popover.hover.bottom="item.tags_banque_libres.toString()">with two columns</td> <td v-if="item.provenance !== 'en-cours'" v-b-popover.hover.bottom="item.tags_banque_libres.toString()">with two columns</td>
<td v-else v-b-popover.hover.bottom="'tags non disponibles'">with two columns</td> <td v-else v-b-popover.hover.bottom="'tags non disponibles'">with two columns</td>
<td class="boutonSupprimer" v-if="item.provenance !== 'en-cours'"> <input type="checkbox" v-on:change="ajouterCoche(item._id, item.provenance)" class="horns" name="horns"/></td> <td class="boutonSupprimer"> <input type="checkbox" v-on:change="ajouterCoche(item._id, item.provenance)" class="horns" name="horns"/></td>
<td class="boutonSupprimer" v-else> <input type="checkbox" v-on:change="ajouterCoche(item.reference, item.provenance)" class="horns" name="horns"/></td>
</tr> </tr>
...@@ -163,7 +162,8 @@ export default { ...@@ -163,7 +162,8 @@ export default {
}, },
contenuAjoute: function(){ contenuAjoute: function(){
this.contenusDuPanier() console.log(this.contenuAjoute)
this.contenus.push(this.contenuAjoute)
} }
}, },
mounted() { mounted() {
...@@ -205,37 +205,48 @@ export default { ...@@ -205,37 +205,48 @@ export default {
supprimerContenus: function () { supprimerContenus: function () {
let that = this let that = this
// dans ce cas -> mode suppression de contenu du panier
if (this.panierChoisi){ if (this.panierChoisi){
for(let i = 0; i < this.checkes.length; i++) { for(let i = 0; i < this.checkes.length; i++) {
let id = this.checkes[i][0]
if(this.checkes[i][1] === "perso"){ if(this.checkes[i][1] === "perso"){
Service.supprimerContenu(JSON.stringify(this.checkes[i][0])).then( Service.supprimerContenu(JSON.stringify(id)).then(
function () { function () {
that.contenusDuPanier() that.contenus = that.contenus.filter(contenu => contenu._id !== id)
} }
) )
} else if (this.checkes[i][1] === "tiers"){ } else if (this.checkes[i][1] === "tiers"){
Service.supprimerTiers(this.auteur, JSON.stringify(this.checkes[i][0])).then( Service.supprimerTiers(this.auteur, JSON.stringify(id)).then(
function () { function (response) {
that.contenusDuPanier() let contenuSupprime = that.contenus.filter(contenu => contenu._id === id)
console.log(contenuSupprime[0].auteur)
that.contenus = that.contenus.filter(contenu => contenu._id !== id)
if (response.data !== 0)
that.contenusbanque.push(contenuSupprime[0])
} }
) )
} else { } else {
Service.supprimerEnCours(JSON.stringify(this.checkes[i][0])).then( Service.supprimerEnCoursParLid(JSON.stringify(id)).then(
function () { function () {
that.contenusDuPanier() that.contenus = that.contenus.filter(contenu => contenu._id !== id)
} }
) )
} }
} }
} }
// dans ce cas -> mode appropriation de contenu banque
else { else {
for(let i = 0; i < this.checkes.length; i++) { for(let i = 0; i < this.checkes.length; i++) {
let data = {auteur: this.auteur, id_tiers:JSON.stringify(this.checkes[i][0]) , version: this.checkes[i][1]["numero"]} let id = this.checkes[i][0]
let data = {auteur: this.auteur, id_tiers:JSON.stringify(id) , version: this.checkes[i][1]["numero"]}
Service.creerContenuTiers(data).then( Service.creerContenuTiers(data).then(
function () { function (response) {
that.contenusDuPanier() let nouveauTiers = response.data
that.contenusDeLaBanque() nouveauTiers.provenance = "tiers"
that.contenus.push(nouveauTiers)
that.contenusbanque = that.contenusbanque.filter(contenu => contenu._id !== id)
} }
) )
} }
...@@ -267,8 +278,11 @@ export default { ...@@ -267,8 +278,11 @@ export default {
data = {auteur: this.auteur, id_tiers:JSON.stringify(event.contenu._id) , version: event.contenu.versionEnCours["numero"]} data = {auteur: this.auteur, id_tiers:JSON.stringify(event.contenu._id) , version: event.contenu.versionEnCours["numero"]}
Service.creerContenuTiers(data).then( Service.creerContenuTiers(data).then(
function () { function (response) {
that.contenusDuPanier() let nouveauTiers = response.data
nouveauTiers.provenance = "tiers"
that.contenus.push(nouveauTiers)
that.contenusbanque = that.contenusbanque.filter(contenu => contenu._id !== event.contenu._id)
} }
) )
this.panierChoisi = false this.panierChoisi = false
...@@ -283,19 +297,21 @@ export default { ...@@ -283,19 +297,21 @@ export default {
if(this.contenuCliqueProvenance === "perso"){ if(this.contenuCliqueProvenance === "perso"){
Service.supprimerContenu(JSON.stringify(event.contenu._id)).then( Service.supprimerContenu(JSON.stringify(event.contenu._id)).then(
function () { function () {
that.contenusDuPanier() that.contenus = that.contenus.filter(contenu => contenu._id !== event.contenu._id)
} }
) )
} else if (this.contenuCliqueProvenance === "tiers"){ } else if (this.contenuCliqueProvenance === "tiers"){
Service.supprimerTiers(this.auteur, JSON.stringify(event.contenu._id)).then( Service.supprimerTiers(this.auteur, JSON.stringify(event.contenu._id)).then(
function () { function () {
that.contenusDuPanier() let contenuSupprime = that.contenus.filter(contenu => contenu._id === event.contenu._id)
that.contenus = that.contenus.filter(contenu => contenu._id !== event.contenu._id)
that.contenusbanque.push(contenuSupprime[0])
} }
) )
} else { } else {
Service.supprimerEnCoursParLid(JSON.stringify(event.contenu._id)).then( Service.supprimerEnCoursParLid(JSON.stringify(event.contenu._id)).then(
function () { function () {
that.contenusDuPanier() that.contenus = that.contenus.filter(contenu => contenu._id !== event.contenu._id)
} }
) )
} }
...@@ -383,8 +399,11 @@ export default { ...@@ -383,8 +399,11 @@ export default {
let dataDeux = {auteur: this.auteur, id_contenu: JSON.stringify(this.contenuClique._id), version: this.contenuClique.versionEnCours["numero"], provenance: this.contenuCliqueProvenance} let dataDeux = {auteur: this.auteur, id_contenu: JSON.stringify(this.contenuClique._id), version: this.contenuClique.versionEnCours["numero"], provenance: this.contenuCliqueProvenance}
let that = this let that = this
Service.creerEnCours(dataDeux).then(function (reponse) { Service.creerEnCours(dataDeux).then(function (reponse) {
that.contenusDuPanier() //console.log(reponse.data)
Service.changerTexte(data, reponse.data) let contenuEC = reponse.data
contenuEC.provenance = "en-cours"
that.contenus.push(contenuEC)
Service.changerTexte(data, JSON.stringify(reponse.data._id))
}) })
} }
else { else {
......
...@@ -6,10 +6,9 @@ ...@@ -6,10 +6,9 @@
<Detail_Filtre v-bind:nouveau_filtre="nouveau_filtre" @filtresChoisis="filtresChoisis"/> <Detail_Filtre v-bind:nouveau_filtre="nouveau_filtre" @filtresChoisis="filtresChoisis"/>
</div> </div>
<div id = "detailContenu"> <div id = "detailContenu">
<Detail_Contenu v-bind:filtre_choisi="filtre_choisi" @creer_filtre="creer_filtre"/> <Detail_Contenu v-bind:panierChoisi="panierChoisi" v-bind:filtre_choisi="filtre_choisi" v-bind:auteur="auteur" @creer_filtre="creer_filtre"/>
</div> </div>
<Choix_Mode v-show="!variante" @mode_choisi="ajusterMode" /> <Choix_Mode v-show="!variante" @mode_choisi="ajusterMode" />
</div> </div>
</template> </template>
...@@ -25,10 +24,10 @@ export default { ...@@ -25,10 +24,10 @@ export default {
Detail_Filtre, Detail_Filtre,
Detail_Contenu, Detail_Contenu,
}, },
props: ['filtre_choisi', 'variante'], props: ['filtre_choisi', 'variante', 'auteur'],
methods: { methods: {
ajusterMode: function (event) { ajusterMode: function (event) {
this.panierChoisi = event.mode
this.$emit("mode_choisi", {mode: event.mode}) this.$emit("mode_choisi", {mode: event.mode})
}, },
creer_filtre: function (event) { creer_filtre: function (event) {
...@@ -45,6 +44,7 @@ export default { ...@@ -45,6 +44,7 @@ export default {
data: function () { data: function () {
return { return {
nouveau_filtre: "", nouveau_filtre: "",
panierChoisi: true
} }
} }
} }
......
...@@ -3,8 +3,8 @@ ...@@ -3,8 +3,8 @@
<div id="selectionnerAuteur"> <div id="selectionnerAuteur">
<span>selectionner un auteur : </span><br><br> <span>selectionner un auteur : </span><br><br>
<select id="auteur" name="auteur" size="1" v-model="auteur" v-on:change="choixAuteur()"> <select id="auteur" name="auteur" size="1" v-model="auteurChoisi" v-on:change="choixAuteur()">
<option v-for="item in listeAuteurs" v-bind:key="item.id">{{ item.nom }}</option> <option v-for="item in filteredList" v-bind:key="item.id">{{ item.nom }}</option>
</select> </select>
</div> </div>
...@@ -19,10 +19,21 @@ export default { ...@@ -19,10 +19,21 @@ export default {
methods: { methods: {
choixAuteur: function () { choixAuteur: function () {
// alert(this.auteur) // alert(this.auteur)
this.$emit("creer_filtre", {filtre: this.auteur, type: 'auteur'}) this.$emit("creer_filtre", {filtre: this.auteurChoisi, type: 'auteur'})
} }
}, },
props: ['auteur', 'panierChoisi'],
computed: {
filteredList: function () {
// `this` pointe sur l'instance vm
// alert (this.$auteurConnecte)
if (!this.panierChoisi){
return this.listeAuteurs.filter(auteur => auteur.nom !== this.auteur)
}
else { return this.listeAuteurs}
}
},
mounted() { mounted() {
let that = this let that = this
Service.recupererAuteursExistants().then(function (reponse) { Service.recupererAuteursExistants().then(function (reponse) {
...@@ -31,7 +42,7 @@ export default { ...@@ -31,7 +42,7 @@ export default {
}, },
data: function () { data: function () {
return { return {
auteur: "", auteurChoisi: "",
listeAuteurs: [] listeAuteurs: []
} }
} }
......
...@@ -13,7 +13,6 @@ Vue.config.productionTip = false ...@@ -13,7 +13,6 @@ Vue.config.productionTip = false
Vue.use(VPopover, { tooltip: true }) Vue.use(VPopover, { tooltip: true })
Vue.use(mavonEditor) Vue.use(mavonEditor)
Vue.use(BootstrapVue) Vue.use(BootstrapVue)
Vue.prototype.$appName = 'Yumede'
new Vue({ new Vue({
render: h => h(Index), render: h => h(Index),
......
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