diff --git a/src/components/input/PhSubmit.vue b/src/components/input/PhSubmit.vue index 138cd1d5844bc1db470106ddde82195f29ed2c70..d725c889d2e52304d8150acada34c23f168ec4cd 100644 --- a/src/components/input/PhSubmit.vue +++ b/src/components/input/PhSubmit.vue @@ -422,27 +422,65 @@ export default { async addPostMongodb(phaidraId) { var self = this; console.log("phaidraid", phaidraId); + var myJson = {}; if (self.getMetadata().metadata["json-ld"].container) { - var myJson = self.getMetadata().metadata["json-ld"].container; - //console.log("disease", self.getField(myJson, "pharmaWien:disease")); + myJson = self.getMetadata().metadata["json-ld"].container; console.log("myjosn", myJson); + } + var re = new RegExp("^member_d+$"); + var morder = self.getMetadata().metadata.membersorder; + console.log("morder", self.getMetadata().metadata, morder); + var myMembers = []; + var filesnames = []; + var filesdescriptions = []; + var filesextensions = []; + var filestypes = []; - /*if ( - self.getMetadata().metadata["json-ld"].container["dcterms:subject"] - ) { - var pharmaMetada = self.getMetadata().metadata["json-ld"].container[ - "dcterms:subject" - ]; - //filter for all the @type which are relevant - var result = pharmaMetada.filter(obj => { - return obj["@type"] === "pharmaWien:disease"; - }); - console.log("results", result); - }*/ + for (var o = 0; o < morder.length; o++) { + myMembers.push(morder[o].member); + console.log("morder[o]", myMembers); } + for (var p = 0; p < myMembers.length; p++) { + var mprop = myMembers[p]; + if (self.getMetadata().metadata["json-ld"][mprop]["ebucore:filename"]) { + filesnames.push( + self.getMetadata().metadata["json-ld"][mprop]["ebucore:filename"][0] + ); + } + if (self.getMetadata().metadata["json-ld"][mprop]["bf:note"]) { + filesdescriptions.push( + self.getMetadata().metadata["json-ld"][mprop]["bf:note"][0][ + "skos:prefLabel" + ][0]["@value"] + ); + } + if ( + self.getMetadata().metadata["json-ld"][mprop]["ebucore:hasMimeType"] + ) { + filesextensions.push( + self.getMetadata().metadata["json-ld"][mprop][ + "ebucore:hasMimeType" + ][0] + ); + } + if (self.getMetadata().metadata["json-ld"][mprop]["dcterms:type"]) { + filestypes.push( + self.getMetadata().metadata["json-ld"][mprop]["dcterms:type"][0][ + "skos:prefLabel" + ]["eng"] + ); + } - //var httpFormData = new FormData(); - //console.log("lalalal", self.getMetadata(), pharmaMetada); + //myJson[myMembers[p]] + } + console.log( + "m", + self.getMetadata().metadata["json-ld"][mprop], + filesnames, + filesdescriptions, + filesextensions, + filestypes + ); await PostsService.addPost({ phaidraId: phaidraId, @@ -450,8 +488,14 @@ export default { title: myJson["dce:title"], abstract: myJson["bf:note"], project: myJson["frapo:isOutputOf"], + funding: myJson["frapo:hasFundingAgency"], contributors: myJson["role:asn"], - subject: myJson["dcterms:subject"] + subject: myJson["dcterms:subject"], + filenames: filesnames, + filetypes: filestypes, + filedescriptions: filesdescriptions, + fileextensions: filesextensions + //subject: { disease: self.getField(myJson, "pharmaWien:disease") } /*disease: self.getField(myJson, "pharmaWien:disease"), technique: self.getField(myJson, "pharmaWien:technique"),