PageSourceSearch

https://www.therapiemosaic.com/_nuxt/DmlSWaaA.js

js therapiemosaic.com collected 2026-09-24 11:11:41 UTC 18,909 bytes, 3 lines download raw bytes

1import{d as B,f as c,g as E,i as z,B as n,I as e,c as T,k as p,w as m,H as u,l as x,F as G,C as J,a5 as O,W as Y,R as H,o as a,G as y,_ as K,a0 as $,a1 as i,a3 as q,a2 as r,e as W,a4 as I,$ as k,V as Q}from"./CIAyIBvT.js";import{_ as X}from"./DPnobf-5.js";const Z={class:"p-6"},ee={class:"mb-6 flex justify-between items-start"},te={key:0,class:"flex justify-center items-center py-12"},se={key:1,class:"p-4 bg-red-50 border border-red-200 rounded-lg"},oe={class:"text-red-600"},le={key:2,class:"bg-white rounded-xl shadow-sm border border-gray-200 overflow-hidden"},ie={class:"overflow-x-auto"},re={class:"w-full"},ae={class:"divide-y divide-gray-200"},ne={class:"px-6 py-4"},de={class:"max-w-xl"},ue={class:"text-sm font-medium text-gray-900 line-clamp-2"},pe={class:"text-xs text-gray-500 mt-1"},ce={class:"px-6 py-4"},ge={class:"text-sm text-gray-600"},me={class:"px-6 py-4 text-center"},fe={class:"text-sm text-gray-900 font-medium"},be={class:"px-6 py-4"},xe={class:"flex justify-center"},ye={class:"px-6 py-4"},ve={class:"flex flex-col items-center gap-1"},_e={class:"px-6 py-4 text-right"},we={class:"flex justify-end gap-2"},ke=["onClick"],Ve=["onClick"],Ue={key:0,class:"text-center py-12"},he={key:0,class:"fixed inset-0 z-50 flex items-center justify-center p-4",style:{background:"rgba(0, 0, 0, 0.5)"}},Ce={class:"flex items-center justify-between px-6 py-4 border-b border-gray-200"},je={class:"text-xl font-bold text-indigo-900"},Pe={class:"px-6 py-6 overflow-y-auto flex-1"},Me={class:"border-b border-gray-200 pb-6"},Ee={class:"space-y-4"},Te={class:"grid grid-cols-2 gap-4"},$e={class:"block text-sm font-medium text-gray-700 mb-1"},qe=["required","placeholder"],Ie={key:0,class:"text-xs text-gray-500 mt-1"},Ae=["max"],De={class:"border-b border-gray-200 pb-6"},Le={class:"space-y-4"},Ne={class:"border-b border-gray-200 pb-6"},Se={class:"space-y-4"},Fe={class:"border-b border-gray-200 pb-6"},Re={class:"space-y-3"},Be={class:"flex items-center gap-2"},ze={class:"flex items-center gap-2"},Ge={key:0,class:"border-b border-gray-200 pb-6"},Je={class:"space-y-4"},Oe={class:"grid grid-cols-2 gap-4"},Ye=["required"],He={class:"grid grid-cols-3 gap-4"},Ke={key:1},We={class:"grid grid-cols-2 gap-4"},Qe={class:"flex justify-end gap-3 px-6 py-4 border-t border-gray-200 bg-gray-50"},Xe=B({__name:"publications",setup(Ze){const V=c([]),U=c(!0),_=c(""),f=c(!1),b=c("create"),h=c(!1),C=new Date().getFullYear(),o=c({id:"",authors:"",year:C,title:"",journal_abbreviation:"",journal_full_name:"",volume:"",issue:"",pages:"",doi:"",pmid:"",pmcid:"",issn:"",publication_type:"article",abstract:"",keywords:[],language:"fr",external_url:"",pdf_url:"",is_scientific:!0,is_featured:!1,is_published:!0,display_order:0}),A=()=>{const l=["video","podcast"];o.value.is_scientific=!l.includes(o.value.publication_type)},g=E(()=>o.value.publication_type==="article");E(()=>!["video","podcast"].includes(o.value.publication_type));const v=c(""),j=async()=>{U.value=!0,_.value="";try{const l=await $fetch("/api/admin/publications");V.value=(l.publications||[]).sort((t,d)=>t.year!==d.year?d.year-t.year:t.display_order-d.display_order)}catch(l){_.value=l.data?.message||l.message||"Erreur lors du chargement des publications"}finally{U.value=!1}},D=()=>{b.value="create",S(),f.value=!0},L=l=>{b.value="edit",o.value={id:l.id,authors:l.authors,year:l.year,title:l.title,journal_abbreviation:l.journal_abbreviation,journal_full_name:l.journal_full_name||"",volume:l.volume||"",issue:l.issue||"",pages:l.pages||"",doi:l.doi||"",pmid:l.pmid||"",pmcid:l.pmcid||"",issn:l.issn||"",publication_type:l.publication_type,abstract:l.abstract||"",keywords:l.keywords||[],language:l.language||"fr",external_url:l.external_url||"",pdf_url:l.pdf_url||"",is_scientific:l.is_scientific!==void 0?l.is_scientific:!0,is_featured:l.is_featured,is_published:l.is_published,display_order:l.display_order||0},v.value=(l.keywords||[]).join(", "),f.value=!0},M=async()=>{h.value=!0;try{o.value.keywords=v.value.split(",").map(t=>t.trim()).filter(t=>t.length>0),b.value==="create"?await $fetch("/api/admin/publications",{method:"POST",body:o.value}):await $fetch(`/api/admin/publications/${o.value.id}`,{method:"PUT",body:o.value}),k().add({title:b.value==="create"?"Publication créée":"Publication mise à jour",description:"Les modifications ont été enregistrées avec succès",color:"indigo"}),f.value=!1,await j()}catch(l){k().add({title:"Erreur",description:l.data?.message||"Une erreur est survenue",color:"red"})}finally{h.value=!1}},N=async l=>
1{if(confirm(`Êtes-vous sûr de vouloir supprimer "${l.title}" ?
2
3Cette action est irréversible.`))try{await $fetch(`/api/admin/publications/${l.id}`,{method:"DELETE"}),k().add({title:"Publication supprimée",description:"La publication a été supprimée avec succès",color:"indigo"}),await j()}catch(d){k().add({title:"Erreur",description:d.data?.message||"Erreur lors de la suppression",color:"red"})}},S=()=>{o.value={id:"",authors:"",year:C,title:"",journal_abbreviation:"",journal_full_name:"",volume:"",issue:"",pages:"",doi:"",pmid:"",pmcid:"",issn:"",publication_type:"article",abstract:"",keywords:[],language:"fr",external_url:"",pdf_url:"",is_scientific:!0,is_featured:!1,is_published:!0,display_order:0},v.value=""},F=l=>({article:"Article",review:"Revue",meta_analysis:"Méta-analyse",case_study:"Étude de cas",book_chapter:"Chapitre",conference:"Congrès",video:"Vidéo",podcast:"Podcast"})[l]||l;return z(async()=>{await j()}),(l,t)=>{const d=H,w=K,P=X;return a(),n("div",Z,[e("div",ee,[t[25]||(t[25]=e("div",null,[e("h1",{class:"text-2xl font-bold text-indigo-900"},"Gestion des publications"),e("p",{class:"text-gray-600 mt-1"},"Gérez les publications scientifiques (format Vancouver)")],-1)),p(d,{onClick:D,color:"indigo",icon:"i-heroicons-plus"},{default:m(()=>[...t[24]||(t[24]=[y(" Nouvelle publication ",-1)])]),_:1})]),U.value?(a(),n("div",te,[p(w,{name:"i-heroicons-arrow-path",class:"animate-spin text-3xl text-indigo-600"})])):_.value?(a(),n("div",se,[e("p",oe,u(_.value),1)])):(a(),n("div",le,[e("div",ie,[e("table",re,[t[27]||(t[27]=e("thead",{class:"bg-gray-50 border-b border-gray-200"},[e("tr",null,[e("th",{class:"px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider"}," Publication "),e("th",{class:"px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider"}," Journal "),e("th",{class:"px-6 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider"}," Année "),e("th",{class:"px-6 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider"}," Type "),e("th",{class:"px-6 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider"}," Statut "),e("th",{class:"px-6 py-3 text-right text-xs font-medium text-gray-500 uppercase tracking-wider"}," Actions ")])],-1)),e("tbody",ae,[(a(!0),n(G,null,J(V.value,s=>(a(),n("tr",{key:s.id,class:"hover:bg-gray-50"},[e("td",ne,[e("div",de,[e("p",ue,u(s.title),1),e("p",pe,u(s.authors),1)])]),e("td",ce,[e("p",ge,u(s.journal_abbreviation),1)]),e("td",me,[e("p",fe,u(s.year),1)]),e("td",be,[e("div",xe,[p(P,{color:"gray",variant:"soft",size:"xs"},{default:m(()=>[y(u(F(s.publication_type)),1)]),_:2},1024)])]),e("td",ye,[e("div",ve,[p(P,{color:s.is_published?"green":"gray",variant:"soft",size:"xs"},{default:m(()=>[y(u(s.is_published?"Publié":"Brouillon"),1)]),_:2},1032,["color"]),s.is_featured?(a(),T(P,{key:0,color:"indigo",variant:"soft",size:"xs"},{default:m(()=>[...t[26]||(t[26]=[y(" ⭐ Vedette ",-1)])]),_:1})):x("",!0)])]),e("td",_e,[e("div",we,[e("button",{onClick:R=>L(s),class:"text-indigo-600 hover:text-indigo-700 text-sm font-medium"}," Éditer ",8,ke),e("button",{onClick:R=>N(s),class:"text-red-600 hover:text-red-700 text-sm font-medium"}," Supprimer ",8,Ve)])])]))),128))])]),V.value.length===0?(a(),n("div",Ue,[p(w,{name:"i-heroicons-document-text",class:"text-4xl text-gray-400 mb-2"}),t[28]||(t[28]=e("p",{class:"text-gray-500"},"Aucune publication enregistrée",-1))])):x("",!0)])])),(a(),T(Y,{to:"body"},[p(O,{name:"modal"},{default:m(()=>[f.value?(a(),n("div",he,[e("div",{class:"bg-white rounded-xl shadow-2xl w-full max-w-5xl max-h-[90vh] flex flex-col",onClick:t[23]||(t[23]=$(()=>{},["stop"]))},[e("div",Ce,[e("h3",je,u(b.value==="create"?"Nouvelle publication":"Éditer la publication"),1),e("button",{onClick:t[0]||(t[0]=s=>f.value=!1),class:"text-gray-400 hover:text-gray-600"},[p(w,{name:"i-heroicons-x-mark",class:"w-6 h-6"})])]),e("div",Pe,[e("form",{onSubmit:$(M,["prevent"]),class:"space-y-6",id:"publicationForm"},[e("div",Me,[t[35]||(t[35]=e("h4",{class:"text-md font-semibold text-indigo-900 mb-4"},"Informations de base",-1)),e("div",Ee,[e("div",Te,[e("div",null,[t[30]||(t[30]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"Type de publication *",-1)),i(e("select",{"onUpdate:modelValue":t[1]||(t[1]=s=>
3o.value.publication_type=s),required:"",onChange:A,class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},[...t[29]||(t[29]=[e("optgroup",{label:"Publications scientifiques"},[e("option",{value:"article"},"Article de recherche"),e("option",{value:"review"},"Revue systématique"),e("option",{value:"meta_analysis"},"Méta-analyse"),e("option",{value:"case_study"},"Étude de cas"),e("option",{value:"book_chapter"},"Chapitre de livre"),e("option",{value:"conference"},"Communication de congrès")],-1),e("optgroup",{label:"Médias"},[e("option",{value:"video"},"Vidéo"),e("option",{value:"podcast"},"Podcast")],-1)])],544),[[q,o.value.publication_type]])]),e("div",null,[t[32]||(t[32]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"Langue",-1)),i(e("select",{"onUpdate:modelValue":t[2]||(t[2]=s=>o.value.language=s),class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},[...t[31]||(t[31]=[e("option",{value:"fr"},"Français",-1),e("option",{value:"en"},"Anglais",-1),e("option",{value:"es"},"Espagnol",-1)])],512),[[q,o.value.language]])])]),e("div",null,[t[33]||(t[33]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"Titre *",-1)),i(e("input",{"onUpdate:modelValue":t[3]||(t[3]=s=>o.value.title=s),type:"text",required:"",class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},null,512),[[r,o.value.title]])]),e("div",null,[e("label",$e,"Auteurs"+u(g.value?" *":""),1),i(e("input",{"onUpdate:modelValue":t[4]||(t[4]=s=>o.value.authors=s),type:"text",required:g.value,placeholder:g.value?"Khalfa S, Collet L, Dupont M":"Nom de l'intervenant ou auteur",class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},null,8,qe),[[r,o.value.authors]]),g.value?(a(),n("p",Ie,"Format Vancouver : Nom Initial(es), séparés par des virgules")):x("",!0)]),e("div",null,[t[34]||(t[34]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"Année *",-1)),i(e("input",{"onUpdate:modelValue":t[5]||(t[5]=s=>o.value.year=s),type:"number",required:"",min:"1900",max:W(C),class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},null,8,Ae),[[r,o.value.year,void 0,{number:!0}]])])])]),e("div",De,[t[39]||(t[39]=e("h4",{class:"text-md font-semibold text-indigo-900 mb-4"},"Contenu",-1)),e("div",Le,[e("div",null,[t[36]||(t[36]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"Résumé (Abstract)",-1)),i(e("textarea",{"onUpdate:modelValue":t[6]||(t[6]=s=>o.value.abstract=s),rows:"6",class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},null,512),[[r,o.value.abstract]])]),e("div",null,[t[37]||(t[37]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"Mots-clés",-1)),i(e("input",{"onUpdate:modelValue":t[7]||(t[7]=s=>v.value=s),type:"text",placeholder:"Séparez par des virgules",class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},null,512),[[r,v.value]]),t[38]||(t[38]=e("p",{class:"text-xs text-gray-500 mt-1"},"Ex: neurosciences, psychologie, EMDR",-1))])])]),e("div",Ne,[t[44]||(t[44]=e("h4",{class:"text-md font-semibold text-indigo-900 mb-4"},"Liens et fichiers",-1)),e("div",Se,[e("div",null,[t[40]||(t[40]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"URL externe",-1)),i(e("input",{"onUpdate:modelValue":t[8]||(t[8]=s=>o.value.external_url=s),type:"url",placeholder:"https://...",class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},null,512),[[r,o.value.external_url]]),t[41]||(t[41]=e("p",{class:"text-xs text-gray-500 mt-1"},"Lien vers la publication sur le site de l'éditeur",-1))]),e("div",null,[t[42]||(t[42]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"URL du PDF",-1)),i(e("input",{"onUpdate:modelValue":t[9]||(t[9]=s=>o.value.pdf_url=s),type:"url",placeholder:"https://...",class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},null,512),[[r,o.value.pdf_url]]),t[43]||(t[43]=e("p",{class:"text-xs text-gray-500 mt-1"},"Lien direct vers le fichier PDF",-1))])])]),e("div",Fe,[t[49]||(t[49]=e("h4",{class:"text-md font-semibold text-indigo-900 mb-4"},"Paramètres",-1)),e("div",Re,[e("label",Be,[i(e("input",{"onUpdate:modelValue":t[10]||(t[10]=s=>o.value.is_published=s),type:"checkbox",class:"rounded border-gray-300 text-indigo-600 focus:ring-indigo-500"},null,512),[[I,o.value.is_published]]),t[45]||(t[45]=e("span",{class:"text-sm text-gray-700"},"Publier (visible publiquement)",-1))]),e("label",ze,[i(e("input",{"onUpdate:modelValue":t[11]||(t[11]=s=>o.value.is_featured=s),type:"checkbox",class:"rounded border-gray-300 text-indigo-600 focus:ring-indigo-500"},null,512),[[I,o.value.is_featured]]),t[46]||(t[46]=e("span",{class:"text-sm text-gray-700"},"Mettre en vedette",-1))]),e("div",null,[t[47]||(t[47]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"Ordre d'affichage",-1)),i(e("input",{"onUpdate:modelValue":t[12]||(t[12]=s=>o.value.display_order=s),type:"number",min:"0",class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},null,512),[[r,o.value.display_order,void 0,{number:!0}]]),t[48]||(t[48]=e("p",{class:"text-xs text-gray-500 mt-1"},"Plus le chiffre est petit, plus la publication apparaît en haut (même année)",-1))])])]),g.value?(a(),n("div",Ge,[t[57]||(t[57]=e("h4",{class:"text-md font-semibold text-indigo-900 mb-4"},"Métadonnées bibliographiques (Vancouver)",-1)),e("div",Je,[e("div",Oe,[e("div",null,[t[50]||
3(t[50]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"Abréviation du journal *",-1)),i(e("input",{"onUpdate:modelValue":t[13]||(t[13]=s=>o.value.journal_abbreviation=s),type:"text",required:g.value,placeholder:"Eur J Radiol",class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},null,8,Ye),[[r,o.value.journal_abbreviation]]),t[51]||(t[51]=e("p",{class:"text-xs text-gray-500 mt-1"},"Abréviation Index Medicus",-1))]),e("div",null,[t[52]||(t[52]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"Nom complet du journal",-1)),i(e("input",{"onUpdate:modelValue":t[14]||(t[14]=s=>o.value.journal_full_name=s),type:"text",placeholder:"European Journal of Radiology",class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},null,512),[[r,o.value.journal_full_name]])])]),e("div",He,[e("div",null,[t[53]||(t[53]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"Volume",-1)),i(e("input",{"onUpdate:modelValue":t[15]||(t[15]=s=>o.value.volume=s),type:"text",placeholder:"123",class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},null,512),[[r,o.value.volume]])]),e("div",null,[t[54]||(t[54]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"Numéro",-1)),i(e("input",{"onUpdate:modelValue":t[16]||(t[16]=s=>o.value.issue=s),type:"text",placeholder:"4",class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},null,512),[[r,o.value.issue]])]),e("div",null,[t[55]||(t[55]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"Pages",-1)),i(e("input",{"onUpdate:modelValue":t[17]||(t[17]=s=>o.value.pages=s),type:"text",placeholder:"123-30",class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},null,512),[[r,o.value.pages]]),t[56]||(t[56]=e("p",{class:"text-xs text-gray-500 mt-1"},"Ex: 123-30 ou e12345",-1))])])])])):x("",!0),g.value?(a(),n("div",Ke,[t[62]||(t[62]=e("h4",{class:"text-md font-semibold text-indigo-900 mb-4"},"Identifiants scientifiques",-1)),e("div",We,[e("div",null,[t[58]||(t[58]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"DOI",-1)),i(e("input",{"onUpdate:modelValue":t[18]||(t[18]=s=>o.value.doi=s),type:"text",placeholder:"10.1234/example.2023.123456",class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},null,512),[[r,o.value.doi]])]),e("div",null,[t[59]||(t[59]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"PMID",-1)),i(e("input",{"onUpdate:modelValue":t[19]||(t[19]=s=>o.value.pmid=s),type:"text",placeholder:"12345678",class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},null,512),[[r,o.value.pmid]])]),e("div",null,[t[60]||(t[60]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"PMC ID",-1)),i(e("input",{"onUpdate:modelValue":t[20]||(t[20]=s=>o.value.pmcid=s),type:"text",placeholder:"PMC1234567",class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},null,512),[[r,o.value.pmcid]])]),e("div",null,[t[61]||(t[61]=e("label",{class:"block text-sm font-medium text-gray-700 mb-1"},"ISSN",-1)),i(e("input",{"onUpdate:modelValue":t[21]||(t[21]=s=>o.value.issn=s),type:"text",placeholder:"1234-5678",class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"},null,512),[[r,o.value.issn]])])])])):x("",!0)],32)]),e("div",Qe,[p(d,{color:"white",onClick:t[22]||(t[22]=s=>f.value=!1)},{default:m(()=>[...t[63]||(t[63]=[y(" Annuler ",-1)])]),_:1}),p(d,{color:"indigo",onClick:M,loading:h.value},{default:m(()=>[y(u(b.value==="create"?"Créer":"Enregistrer"),1)]),_:1},8,["loading"])])])])):x("",!0)]),_:1})]))])}}}),st=Q(Xe,[["__scopeId","data-v-ab1ff96f"]]);export{st as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.