Pa={rgpd:{language:JSON.parse('[{"id":1,"name":"Francais","code":"fr","pivot":{"site_id":59,"language_id":1}}]').code,changeLanguage:(code)=>{let res=!0;if(window.PAcookies){res=res&&window.PAcookies.frontModule.changeLanguage(code)}
if(window.PAconsent){res=res&&window.PAconsent.changeLanguage(code);window.PAconsent.setConsentLink()}
if(res){Pa.rgpd.language=code;return"Language changed"}else return"Language wasn't changed (code langue invalid or interne problem)"},},};window.Pa=Pa;var PAconsent=function(){var base=this;var xhr=null;var initflag=!1;this.options={sitekey:"2e676d7b446f6d76",logs:!1,domain:'https://legal.press-agrum.com/',domainApi:'https://legal.press-agrum.com/api/',version:'v1',languages:JSON.parse('[{"id":1,"name":"Francais","code":"fr","pivot":{"site_id":59,"language_id":1}}]'),language:JSON.parse('[{"id":1,"name":"Francais","code":"fr","pivot":{"site_id":59,"language_id":1}}]')[0].code,};this.texts={'fr':{accept:"J'accepte",endgoal:"Finalité du traitement des données",consentlink:'Détails du consentement',requiredField:'Ce champ est obligatoire',},'en':{accept:"I agree",endgoal:"Purpose of data processing",consentlink:'Consent details',requiredField:'This field is required',},'de':{accept:"Ich stimme zu",endgoal:"Zweck der Datenverarbeitung",consentlink:'Details zur Zustimmung',requiredField:'Dieses Feld ist erforderlich',}};this.binds=[];var init=function(observer){var enableWatcher=observer||!1;if(initflag)
return;frontModule.loadAssets();if(enableWatcher)requestModule.watchXhr();initflag=!0};var frontModule={loadAssets:function(){helper.log('Loading assets');var head=document.getElementsByTagName('head')[0];var link=document.createElement('link');link.id='PAconsent_css';link.rel='stylesheet';link.type='text/css';link.href=base.options.domain+'modules/cache/css/'+base.options.sitekey+'/pa.consent.css';link.media='all';head.appendChild(link)},changeLanguage:function(code){if(['fr','en','de'].includes(code)){base.options.language=code;let textsAccepts=document.getElementsByClassName("texts_accept");let textsEndgoals=document.getElementsByClassName("texts_endgoal");let textsConsentlinks=document.getElementsByClassName("texts_consentlink");Array.from(textsAccepts).forEach(textsAccepts=>textsAccepts.innerHTML=texts[code].accept);Array.from(textsEndgoals).forEach(textsEndgoal=>textsEndgoal.innerHTML=texts[code].endgoal);Array.from(textsConsentlinks).forEach(textsConsentlink=>textsConsentlink.innerHTML=texts[code].consentlink);document.querySelectorAll('[data-code-language]').forEach(form=>{if(form.dataset.codeLanguage!=code){form.style.display="none"
form.parentElement.classList.remove("PAconsent_container")}else{form.style.display="block"
form.parentElement.classList.add("PAconsent_container")}})
let textErrors=document.getElementsByClassName('PAconsent_errorbox');Array.from(textErrors).forEach(textError=>textError.innerHTML=texts[code].requiredField);return!0}else return!1}};var requestModule={do:function(protocol,request,datas,returnJson){helper.log('Do request');var returnJson=returnJson||!0;var datas=datas||null;return requestModule.buildXhr(protocol,request,returnJson,datas)},buildUrl:function(){return base.options.domainApi+base.options.version},buildXhr:function(protocol,request,returnJson,datas){var returnJson=returnJson||!0;return new Promise(function(resolve,reject){let xhr=new XMLHttpRequest();xhr.open(protocol,requestModule.buildUrl()+request);if(returnJson)xhr.responseType='json';xhr.setRequestHeader('pkey',base.options.sitekey);xhr.onload=function(){if(this.status>=200&&this.status<300){resolve(xhr.response)}else{reject({status:this.status,statusText:xhr.statusText})}};xhr.onerror=function(){reject({status:this.status,statusText:xhr.statusText})};xhr.send(datas)})},parseResult:function(datas){var result=datas;if(typeof result!='object')
result=JSON.parse(result);return result},watchXhr:function(){helper.log('Initialize XHR watcher');let s_ajaxListener=new Object();s_ajaxListener.tempOpen=XMLHttpRequest.prototype.open;s_ajaxListener.tempSend=XMLHttpRequest.prototype.send;s_ajaxListener.callback=function(){for(let i=0;i<base.binds.length;i++){let bind=base.binds[i];setTimeout(function(){let form=formModule.getForm(bind.form);if(form){formModule.setBindForm(bind.form,bind.token,!0)}},1)}}
XMLHttpRequest.prototype.open=function(a,b){if(!a)var a='';if(!b)var b='';s_ajaxListener.tempOpen.apply(this,arguments);s_ajaxListener.method=a;s_ajaxListener.url=b;if(a.toLowerCase()=='get'){s_ajaxListener.data=b.split('?');s_ajaxListener.data=s_ajaxListener.data[1]}}
XMLHttpRequest.prototype.send=function(a,b){if(!a)var a='';if(!b)var b='';s_ajaxListener.tempSend.apply(this,arguments);if(s_ajaxListener.method.toLowerCase()=='post')s_ajaxListener.data=a;this.onreadystatechange=function(){if(this.readyState===4){s_ajaxListener.callback()}}}}};var formModule={constructModule:function(form,xhrdatas){var container=document.createElement('div');container.id='PAconsent_container_'+xhrdatas.token;container.classList.add('PAstyle_'+xhrdatas.style);for(let i=0;i<xhrdatas.usages.length;i++){var tokenconsent=formModule.getTokenConsent();var usage=xhrdatas.usages[xhrdatas.usages.length-1-i];var divusage=document.createElement('div');divusage.id='PAconsent_usage_'+usage.token;divusage.classList.add('usage_block');let language=base.options.languages.find(l=>l.id==usage.language_id);let codeLanguage;if(language){codeLanguage=language.code}else continue;if(codeLanguage!=base.options.language){divusage.style.display="none"}else container.classList.add('PAconsent_container');divusage.dataset.codeLanguage=codeLanguage;var title=document.createElement('label');title.setAttribute('for','check_'+usage.token);title.classList.add('title');title.id='label_'+usage.token;var check=document.createElement('input');check.type="checkbox";check.value=usage.token;check.name="check_"+usage.token;check.id="check_"+usage.token;check.addEventListener('change',function(event){formModule.checkAction(this,form,event)});var spancheck=document.createElement('span');spancheck.classList.add('radio');spancheck.appendChild(document.createElement('span'));var spanaccept=document.createElement('strong');spanaccept.classList.add('texts_accept');spanaccept.appendChild(document.createTextNode(base.texts[base.options.language].accept));var titvarext=document.createElement('span');titvarext.classList.add('text');titvarext.appendChild(spanaccept);titvarext.appendChild(document.createTextNode(' '+usage.consent_str));title.appendChild(check);title.appendChild(spancheck);title.appendChild(titvarext);if(usage.fichiers&&usage.fichiers.length<1){var titledesc=document.createElement('p');titledesc.classList.add('texts_endgoal');titledesc.classList.add('subtitle');titledesc.appendChild(document.createTextNode(base.texts[base.options.language].endgoal))}
var desc=document.createElement('p');desc.classList.add('desc');desc.appendChild(document.createTextNode(usage.description));var a=document.createElement('a');a.name="texts_consentlink";a.classList.add('texts_consentlink');a.href=formModule.getConsentLink([xhrdatas.token,usage.token,tokenconsent]);a.classList.add('setConsentLink');a.target="_blank";a.classList.add('link_consent');a.appendChild(document.createTextNode(base.texts[base.options.language].consentlink));if((usage.fichiers&&usage.fichiers.length>0)||(usage.pages&&usage.pages.length>0)){var divfiles=document.createElement('div');divfiles.id='PAconsent_fichiers_'+usage.token;divfiles.classList.add('fichiers_block');for(let i=0;i<usage.fichiers.length;i++){var fichier=usage.fichiers[i];var file=document.createElement('a');file.href=formModule.getFileLink([fichier.id,fichier.lastversion.filename]);file.target="_blank";file.classList.add('link_consent');file.appendChild(document.createTextNode(fichier.name));divfiles.appendChild(file)}
for(let i=0;i<usage.pages.length;i++){var page=usage.pages[i];var file=document.createElement('a');file.href=formModule.getPageLink(page.url);file.target="_blank";file.classList.add('link_consent');file.appendChild(document.createTextNode(page.lastversion.title));divfiles.appendChild(file)}}
var inputhidden=document.createElement('input');inputhidden.type="hidden";inputhidden.id="PAconsent_token_"+usage.token;inputhidden.name="PAconsent_token_"+usage.token;inputhidden.value=tokenconsent;var hidden1=document.createElement('input');hidden1.type="hidden";hidden1.id="PAconsent_usage_"+usage.token+"_token";hidden1.name="PAconsent_usage["+usage.token+"][token]";hidden1.value=tokenconsent;var hidden2=document.createElement('input');hidden2.type="hidden";hidden2.id="PAconsent_usage_"+usage.token+"_usagename";hidden2.name="PAconsent_usage["+usage.token+"][usagename]";hidden2.value=usage.name;var hidden3=document.createElement('input');hidden3.type="hidden";hidden3.id="PAconsent_usage_"+usage.token+"_url";hidden3.name="PAconsent_usage["+usage.token+"][url]";hidden3.value=formModule.getConsentLink([xhrdatas.token,usage.token,tokenconsent]);hidden3.classList.add('setConsentLink');var hidden4=document.createElement('input');hidden4.type="hidden";hidden4.id="PAconsent_usage_"+usage.token+"_usagetoken";hidden4.name="PAconsent_usage["+usage.token+"][usagetoken]";hidden4.value=usage.token;divusage.appendChild(title);if(usage.fichiers.length<1)
divusage.appendChild(titledesc);divusage.appendChild(desc);if(divfiles)
divusage.appendChild(divfiles);divusage.appendChild(a);divusage.appendChild(inputhidden);divusage.appendChild(hidden1);divusage.appendChild(hidden2);divusage.appendChild(hidden3);divusage.appendChild(hidden4);container.appendChild(divusage)}
form.appendChild(container);form.contactfield=form.querySelector('[name="'+form.xhrdatas.front_contact+'"]');var btnsubmit=form.querySelector('[type="submit"]');btnsubmit.addEventListener('click',function(event){formModule.submitAction(event,xhrdatas)});form.contactfield.addEventListener('keyup',function(){if(this.value===''){formModule.setFieldError(this)}else{formModule.resetFieldError(this);formModule.resetUsages(form)}})},submitAction:function(event,xhrdatas){for(i in xhrdatas.usages){let usage=xhrdatas.usages[i];formModule.resetError(usage);helper.log('Usage '+usage.name+' required',usage);if(usage.required==='1'||usage.required===1){helper.log('Checkbox usage state :',formModule.getUsageCheckbox(usage));if(!formModule.getUsageCheckbox(usage)){helper.log('Validation failed');event.preventDefault();formModule.setError(usage)}}}},checkAction:function(check,form,event){if(check&&form&&form.contactfield){if(form.contactfield.value===''||form.contactfield.value===undefined||form.contactfield.value===null){helper.log('Recontact field empty',form.contactfield.value);check.checked=!1;formModule.setFieldError(form.contactfield);return}
var datas=new FormData();var tokenconsent=document.getElementById('PAconsent_token_'+check.value);datas.append('tokenusage',check.value);datas.append('tokenconsent',tokenconsent.value);datas.append('contact_value',form.contactfield.value);if(check.checked)
datas.append('status',1);else datas.append('status',0);let request=requestModule.do('POST','/consent',datas);request.then(function(datas){helper.log('Post consent',requestModule.parseResult(datas))}).catch(function(err){helper.error('Error',err)})}},getUsageCheckbox:function(usage,object){object=object||null;var usagebox=document.getElementById('check_'+usage.token);if(object)
return usagebox;else return usagebox.checked},getTokenConsent:function(){var stringLength=20;var stringArray=['0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','*'];var rndString="";for(var i=1;i<stringLength;i++){var rndNum=Math.ceil(Math.random()*stringArray.length)-1;rndString=rndString+stringArray[rndNum]};return rndString},getConsentLink:function(params){return base.options.domain+'consentement/'+params.join('/')},getFileLink:function(params){return base.options.domain+'documents/'+base.options.sitekey+'/'+params.join('/')},getPageLink:function(url){return base.options.domain+url},resetError:function(usage){var labelbox=document.getElementById('label_'+usage.token);var error=document.getElementById('PAconsent_errorbox_'+usage.token);if(error)
error.remove()},setError:function(usage){let labelbox=document.getElementById('label_'+usage.token);let error=document.getElementById('PAconsent_errorbox_'+usage.token);let bodyrect=document.body.getBoundingClientRect();let targetpos=labelbox.getBoundingClientRect();if(error)
error.remove();var errorbox=document.createElement('div');errorbox.classList.add('PAconsent_errorbox');errorbox.id='PAconsent_errorbox_'+usage.token;errorbox.appendChild(document.createTextNode('Cet usage est obligatoire'));let rgpd_form=document.getElementById('PAconsent_usage_'+usage.token);window.scrollTo({top:rgpd_form.getBoundingClientRect().top+window.pageYOffset-200,behavior:"smooth"});labelbox.appendChild(errorbox)},setFieldError:function(field,msg){msg=msg||base.texts[base.options.language].requiredField;let error=document.getElementById('PAconsent_errorbox_field_'+field.getAttribute('name'));let bodyrect=document.body.getBoundingClientRect();let targetpos=field.getBoundingClientRect();if(error)
error.remove();var errorbox=document.createElement('div');errorbox.classList.add('PAconsent_errorbox','PAconsent_errorbox_field');errorbox.id='PAconsent_errorbox_field_'+field.getAttribute('name');errorbox.appendChild(document.createTextNode(msg));errorbox.style.bottom='initial';errorbox.style.top=(targetpos.top-bodyrect.top-targetpos.height)+'px';errorbox.style.left=(targetpos.left-bodyrect.left)+'px';document.body.appendChild(errorbox);window.scrollTo({top:errorbox.getBoundingClientRect().top+window.pageYOffset-200,behavior:"smooth"})},resetFieldError:function(field){field=field|| null;if(field&&document.querySelector('#PAconsent_errorbox_field_'+field.getAttribute('name')))
return document.querySelector('#PAconsent_errorbox_field_'+field.getAttribute('name')).remove();var errors=document.querySelectorAll('PAconsent_errorbox_field');[].forEach.call(errors,function(error){error.remove()})},resetUsages:function(form){helper.log('Contact field changed, reseting usages');for(i in form.xhrdatas.usages){let usage=form.xhrdatas.usages[i];let box=formModule.getUsageCheckbox(usage,!0);helper.log('Reseting usage',usage,box);formModule.resetError(usage);if(box)box.checked=!1}},getForm:function(formid){let getFormByClassName=document.getElementsByClassName(formid);let getFormById=document.getElementById(formid);if(getFormByClassName.length>0&&!getFormById){return getFormByClassName[0]}else return getFormById},setBindForm:function(formid,token,bind){let binded=bind||!1;let form=formModule.getForm(formid);if(!form){helper.log('Form not found, returned',formid);if(!binded)base.binds.push({'form':formid,'token':token});return}
if(bind){helper.log('Remove bind from binds before request form',formid);let bindindex=helper.findBindIndex(formid);base.binds.splice(bindindex,1)}
let request=requestModule.do('GET','/form/'+token);request.then(function(datas){form.xhrdatas=datas;formModule.constructModule(form,datas)}).catch(function(err){helper.error('Error',err)})}};var helper={findBindIndex:function(formid){for(let index=0;index<base.binds.length;index++){let bind=base.binds[index];if(bind.form===formid)return index}
return null},log:function(msg,object){if(!base.options.logs)return;object=object||'';console.warn(msg,object)},error:function(msg,object){if(!base.options.logs)return;object=object||'';console.error(msg,object)}};return{init:function(observer){helper.log('Initialize module consent');init(observer)},bindForm:function(form,token){return formModule.setBindForm(form,token)},setSitekey:function(key){base.options.sitekey=key},changeLanguage:function(code){return frontModule.changeLanguage(code)},setConsentLink:function(){let consentlinks=document.getElementsByClassName("setConsentLink");Array.from(consentlinks).forEach(consentlink=>{if(consentlink.tagName=="A"){let url=consentlink.href.split("/");url[4]=Pa.rgpd.language;consentlink.href=url.join("/")}else if(consentlink.tagName=="INPUT"){let url=consentlink.value.split("/");url[4]=Pa.rgpd.language;consentlink.href=url.join("/")}})},}}();PAconsent.init();PAconsent.bindForm('gform_2','09b493f448f27224646279921705555e');var PAcookies={firstInitFlag:!1,module:null,moduleConsent:null,categories:{},services:{},tasks:[],options:{logs:!1,gtmfallback:!0,domain:'https://legal.press-agrum.com/',cookieDomain:'',paramsLinks:JSON.parse('{"1":{"fr":"https:\/\/legal.press-agrum.com\/2e676d7b446f6d76\/biovalley-france\/139-politique-de-confidentialite"}}'),sitekey:'2e676d7b446f6d76',style:'1',languages:JSON.parse('[{"id":1,"name":"Francais","code":"fr","pivot":{"site_id":59,"language_id":1}}]'),language:JSON.parse('[{"id":1,"name":"Francais","code":"fr","pivot":{"site_id":59,"language_id":1}}]')[0].code,},textes:{'fr':{'logo':'#','shortdesc':'En poursuivant votre navigation, vous acceptez l’utilisation de cookies destinés à vous offrir une navigation optimale et personnalisée.','desc':"Notre site utilise des cookies pour faciliter la navigation, proposer des contenus personnalisés et réaliser des statistiques de manière anonyme afin d'améliorer votre expérience utilisateur. Les cookies seront déposés uniquement si vous donnez votre accord. Vous pouvez changer d’avis et modifier vos choix à tout moment.",'consent':"J'ai compris",'custom':'Gérer les paramètres','saveAndExit':'Enregistrer et quitter','close':"Fermer",'personalDataPolicy':"Politique des données personnelles",'required':'Requis','accept':'Accepter','acceptAll':'Tout accepter','refuse':'Refuser','refuseAll':'Tout refuser','learnMore':'En savoir plus','displayedDescriptionModule':'Description affichée dans le module','displayedDescriptionCookie':'Description affichée dans le module de cookies','requiredLabel':'Nécessaire','requiredDescription':"Les cookies nécessaires permettent l'activation des fonctions de base du site. Ils apportent une navigation fluide et l'accès aux zones sécurisées. Notre site ne peut pas fonctionner correctement sans ces cookies. Leur dépôt est donc dispensable et autorisé par le règlement européen sur la protection des données personnelles.",'analyseLabel':"Statistique",'ananlyseDescription':"Ces cookies permettent d'établir des statistiques de fréquentation sur notre site. Désactiver ces cookies nous empêchera de suivre et d'améliorer la qualité de nos services.",'marketingLabel':'Marketing','marketingDescription':"Les cookies marketing permettent d'afficher des publicités pertinentes et intéressantes de nos partenaires. En les désactivant, vous aurez toujours le même volume de publicité mais ces dernières seront non ciblées."},'en':{'logo':'#','shortdesc':'By continuing to browse, you accept the use of cookies intended to offer you optimal and personalized browsing.','desc':"Our site uses cookies to facilitate navigation, to offer personalized content and to generate statistics anonymously in order to improve your user experience. Cookies will only be deposited if you give your consent. You can change your mind and change your choices at any time.",'consent':"I get it",'custom':'Manage settings','saveAndExit':'Save and exit','close':'Close','personalDataPolicy':"Personal data policy",'required':'Required','accept':'Accept','acceptAll':'Accept all','refuse':'Refuse','refuseAll':'Refuse all','learnMore':'Learn more','displayedDescriptionModule':'Description displayed in the module','displayedDescriptionCookie':'Description displayed in the cookies module','requiredLabel':'Necessary','requiredDescription':'The necessary cookies allow the activation of the basic functions of the site. They provide smooth navigation and access to secure areas. Our site cannot function properly without these cookies. Their filing is therefore dispensable and authorized by the European regulation on the protection of personal data.','analyseLabel':"Statistic",'ananlyseDescription':'These cookies make it possible to establish traffic statistics on our site. Disabling these cookies will prevent us from monitoring and improving the quality of our services.','marketingLabel':'Marketing','marketingDescription':'Marketing cookies make it possible to display relevant and interesting advertisements from our partners. By deactivating them, you will still have the same volume of advertising but the latter will be untargeted.',},'de':{'logo':'#','shortdesc':'Wenn Sie weiter surfen, akzeptieren Sie die Verwendung von Cookies, um Ihnen ein optimales und personalisiertes Surfen zu ermöglichen.','desc':"Unsere Website verwendet Cookies, um die Navigation zu erleichtern, um personalisierte Inhalte anzubieten und um anonymisierte Statistiken zu erstellen, um Ihre Benutzererfahrung zu verbessern. Cookies werden nur hinterlegt, wenn Sie Ihre Zustimmung geben. Sie können Ihre Meinung jederzeit ändern und Ihre Auswahl ändern.",'consent':"Ich habe es verstanden.",'custom':'Einstellungen verwalten','saveAndExit':'Speichern und beenden','close':'Schließen Sie','personalDataPolicy':"Politik in Bezug auf personenbezogene Daten",'required':'Erforderlich','accept':'Akzeptieren','acceptAll':'Alle akzeptieren','refuse':'Abfälle','refuseAll':'Alle ablehnen','learnMore':'Mehr erfahren','displayedDescriptionModule':'Im Modul angezeigte Beschreibung','displayedDescriptionCookie':'Im Cookie-Modul angezeigte Beschreibung','requiredLabel':'Erforderlich','requiredDescription':'Die notwendigen Cookies ermöglichen die Aktivierung der Grundfunktionen der Website. Sie ermöglichen eine reibungslose Navigation und den Zugang zu geschützten Bereichen. Unsere Website kann ohne diese Cookies nicht richtig funktionieren. Ihre Ablage ist daher entbehrlich und durch die europäische Verordnung über den Schutz personenbezogener Daten erlaubt.','analyseLabel':"Statistik",'ananlyseDescription':'Diese Cookies ermöglichen die Erstellung von Verkehrsstatistiken auf unserer Website. Wenn Sie diese Cookies deaktivieren, können wir die Qualität unserer Dienstleistungen nicht mehr überwachen und verbessern.','marketingLabel':'Marketing','marketingDescription':'Marketing-Cookies ermöglichen es, relevante und interessante Werbung von unseren Partnern anzuzeigen. Wenn Sie diese Cookies deaktivieren, erhalten Sie immer noch den gleichen Umfang an Werbung, aber diese ist nicht zielgerichtet.',}},queuedScripts:[],load:function(){var cookie=PAcookies.cookies.get('PAcookie');PAcookies.frontModule.loadAssets();if(cookie!=undefined&&cookie!=''){(PAcookies.options.logs)?console.warn('Preferences cookie exist, initialize'):'';PAcookies.initialize()}else{PAcookies.frontModule.firstConsentHtml(!0);document.addEventListener('click',function(){return})
window.addEventListener('scroll',function(){return})}},initialize:function(){PAcookies.servicesModule.updateServices();PAcookies.servicesModule.registerServices();if(location.hash=='#PAcookies_editconsent'){const urlParams=new URLSearchParams(window.location.search);const code=urlParams.get('code');if(code)Pa.rgpd.changeLanguage(code);PAcookies.frontModule.open()}},categoriesModule:{getServices:function(category){var ss={};for(s in PAcookies.services){var service=PAcookies.services[s];if(service.category===category)
ss[s]=service}
return ss}},servicesModule:{registerServices:function(){for(service in PAcookies.services){var s=PAcookies.services[service];var c=PAcookies.categories[s.category];if(!s.status){(PAcookies.options.logs)?console.warn('Service '+s.label+' disable',s,c):'';continue}
if(s.executed){(PAcookies.options.logs)?console.warn('Service already executed',s,c):'';continue}
if(s.script)PAcookies.servicesModule.loadScript(s,service);if(!s.script)PAcookies.servicesModule.fallBack(s,service);if(s.run)s.run();s.executed=!0;(PAcookies.options.logs)?console.warn('Service '+s.label+' started',s):''}},updateServices:function(){var prefs=JSON.parse(PAcookies.cookies.get('PAcookie'));for(cat in prefs){var services=prefs[cat];var path=cat;for(service in services){var val=services[service];spath=path+'.'+service;var obj=PAcookies.helper.resolve(spath);obj.status=val}}(PAcookies.options.logs)?console.warn('Updating services with preferences cookie'):''},loadScript:function(service,id){var script;script=document.createElement('script');script.type='text/javascript';script.id='script_'+id;script.async=(service.script.async)?service.script.async:!0;script.src=(typeof service.script==='object')?service.script.url:service.script;if(service.script.attributes){for(attr in service.script.attributes){script.setAttribute(attr,service.script.attributes[attr])}}
document.getElementsByTagName('head')[0].appendChild(script);(PAcookies.options.logs)?console.warn('Loading script',service.script):''},fallBack:function(service,id){window.dataLayer=window.dataLayer||[];dataLayer.push({'event':'cookieEvent',pacookies:{service:id,status:service.status}})},exec:function(id,script){var cookie=PAcookies.cookies.get('PAcookie');if(cookie!=undefined&&cookie!=''){(PAcookies.options.logs)?console.warn('Consent exist, exec accepted services'):'';var obj=PAcookies.helper.resolve('services.'+id);if(obj.status)
script()}else{(PAcookies.options.logs)?console.warn('Consent doesnt exist yet, no execution'):'';PAcookies.queuedScripts.push({'id':id,'script':script})}}},cookies:{constructConsent:function(){var consentval={'services':{}};for(service in PAcookies.services){var s=PAcookies.services[service];consentval.services[service]=s.status}
return JSON.stringify(consentval)},create:function(){var d=new Date(),time=d.getTime(),expireTime=time+31536000000,consentstr=PAcookies.cookies.constructConsent(),value='PAcookie='+consentstr,domain=(PAcookies.options.cookieDomain!==undefined&&PAcookies.options.cookieDomain!=='')?'domain='+PAcookies.options.cookieDomain+';':'';d.setTime(expireTime);document.cookie=value+'; expires='+d.toGMTString()+'; path=/;'+domain;(PAcookies.options.logs)?console.warn('Preferences cookie set'):''},get:function(name){var match=document.cookie.match(new RegExp('(^| )'+name+'=([^;]+)'));if(match)
return match[2]},delete:function(name){document.cookie=name+"=; expires=Thu, 01 Jan 2000 00:00:00 GMT; path=/"}},frontModule:{loadAssets:function(){(PAcookies.options.logs)?console.warn('Loading assets'):'';var head=document.getElementsByTagName('head')[0];var link=document.createElement('link');link.id='PAconsent_css';link.rel='stylesheet';link.type='text/css';link.href=PAcookies.options.domain+'modules/cache/css/'+PAcookies.options.sitekey+'/pa.cookies.css';link.media='all';head.appendChild(link)},createHtml:function(show,box){box=box||document.body;show=show||!1;var container=document.createElement('div');container.id='PAcookies_container';container.classList.add('style_'+PAcookies.options.style);var holder=document.createElement('div');holder.classList.add('holder_block');container.appendChild(holder);var section=document.createElement('div');section.classList.add('section_block','top');holder.appendChild(section);var desc=document.createElement('div');desc.id='PAcookies_desc';desc.appendChild(document.createTextNode(PAcookies.textes[PAcookies.options.language].desc));section.appendChild(desc);if(!show)container.style.display='none';for(cat in PAcookies.categories){var services=PAcookies.categoriesModule.getServices(cat);if(Object.keys(services).length<1)
continue;var div=document.createElement('div');div.id='PAcookies_category_'+cat;div.classList.add('category_block');var c=PAcookies.categories[cat];var title=document.createElement('p');title.classList.add('title');title.dataset.cat=cat;title.appendChild(document.createTextNode(c.label));var desc=document.createElement('p');desc.classList.add('desc');desc.dataset.cat=cat;desc.appendChild(document.createTextNode(c.description));var toggle=document.createElement('button');toggle.classList.add('toggle_category');toggle.appendChild(document.createTextNode(PAcookies.textes[PAcookies.options.language].acceptAll));var remove=document.createElement('span');remove.classList.add('remove_category');remove.appendChild(document.createTextNode(PAcookies.textes[PAcookies.options.language].refuseAll));PAcookies.frontModule.toggleCategory(toggle,cat,!0);PAcookies.frontModule.toggleCategory(remove,cat,!1);div.appendChild(title);div.appendChild(desc);if(!c.required){div.appendChild(toggle);div.appendChild(remove)}
var divservices=document.createElement('div');divservices.id='PAcookies_services_'+cat;divservices.classList.add('services_block')
for(serviceid in services){var s=services[serviceid];var divservice=document.createElement('div');divservice.id='PAcookies_service_'+serviceid;divservice.classList.add('service_block');divservice.dataset.codeLanguage=s.language.code;divservice.dataset.cat=cat;if(!s.language||(s.language&&s.language.code!=PAcookies.options.language)){divservice.style.display="none";if(Object.keys(services).length==1)div.style.display="none"}
var title=document.createElement('p');title.classList.add('title');title.appendChild(document.createTextNode(s.label));if(c.required){var span=document.createElement('span')
span.appendChild(document.createTextNode(PAcookies.textes[PAcookies.options.language].required));title.appendChild(span)}
if(s.link){var a=document.createElement('a');a.href=s.link;a.classList.add('link_service');a.target="_blank";a.appendChild(document.createTextNode(PAcookies.textes[PAcookies.options.language].learnMore))}
var desc=document.createElement('p');desc.classList.add('desc');desc.appendChild(document.createTextNode(s.description));var toggle=document.createElement('button');toggle.id='PAcookies_button_service_'+serviceid;toggle.appendChild(document.createTextNode(s.status?PAcookies.textes[PAcookies.options.language].accept:PAcookies.textes[PAcookies.options.language].refuse));toggle.setAttribute('data-status',s.status?'true':'false');toggle.setAttribute('data-path','services.'+serviceid);PAcookies.frontModule.activationEvent(toggle);if(!c.required)
divservice.appendChild(toggle);divservice.appendChild(title);divservice.appendChild(desc);if(s.link)
divservice.appendChild(a);divservices.appendChild(divservice)}
div.appendChild(divservices);section.appendChild(div)}
var section=document.createElement('div');section.classList.add('section_block','small');holder.appendChild(section);if(PAcookies.options.paramsLinks){var paramlink=document.createElement('a');paramlink.id='PAcookies_params_link';paramlink.href=Object.values(PAcookies.options.paramsLinks).find(page=>page[PAcookies.options.language])[PAcookies.options.language]?Object.values(PAcookies.options.paramsLinks).find(page=>page[PAcookies.options.language])[PAcookies.options.language]:"";paramlink.target="_blank";paramlink.classList.add("texts_personalDataPolicy");paramlink.appendChild(document.createTextNode(PAcookies.textes[PAcookies.options.language].personalDataPolicy));section.appendChild(paramlink)}
var section=document.createElement('div');section.classList.add('section_block','bottom');holder.appendChild(section);var btnconsent=document.createElement('button');btnconsent.id='PAcookies_consent_btn';btnconsent.appendChild(document.createTextNode(PAcookies.textes[PAcookies.options.language].saveAndExit));btnconsent.addEventListener('click',PAcookies.frontModule.saveEvent);section.appendChild(btnconsent);box.appendChild(container);PAcookies.module=container;PAcookies.module.addEventListener('click',function(event){event.stopPropagation()})},firstConsentHtml:function(show){show=show||!1;var container=document.createElement('div');container.id='PAcookies_consent_container';container.classList.add('style_'+PAcookies.options.style);if(!show)container.style.display='none';var holder=document.createElement('div');holder.classList.add('holder_block');container.appendChild(holder);var section=document.createElement('div');section.classList.add('section_block','top');holder.appendChild(section);var logo=document.createElement('img');logo.src=PAcookies.textes[PAcookies.options.language].logo;logo.classList.add('mainlogo');var desc=document.createElement('p');desc.classList.add('shortdesc');desc.classList.add('texts_shortdesc');desc.appendChild(document.createTextNode(PAcookies.textes[PAcookies.options.language].shortdesc));if(PAcookies.textes[PAcookies.options.language].logo!=="#")section.appendChild(logo);section.appendChild(desc);var section=document.createElement('div');section.classList.add('section_block','bottom');holder.appendChild(section);var btnconsent=document.createElement('button');btnconsent.id='PAcookies_consent_btn';btnconsent.appendChild(document.createTextNode(PAcookies.textes[PAcookies.options.language].consent));btnconsent.addEventListener('click',PAcookies.frontModule.saveEvent);var paramlink=document.createElement('button');paramlink.id='PAcookies_params_link';paramlink.appendChild(document.createTextNode(PAcookies.textes[PAcookies.options.language].custom));PAcookies.frontModule.customEvent(paramlink);section.appendChild(paramlink);section.appendChild(btnconsent);document.body.appendChild(container);PAcookies.moduleConsent=container;PAcookies.moduleConsent.addEventListener('click',function(event){event.stopPropagation()})},activeHtml:function(){var container=document.createElement('div');container.id='PAcookies_consent_container';container.classList.add('style_'+PAcookies.options.style);var holder=document.createElement('div');holder.classList.add('holder_block');container.appendChild(holder);var section=document.createElement('div');section.classList.add('section_block','top');holder.appendChild(section);var desc=document.createElement('p');desc.classList.add('shortdesc','clean');desc.classList.add('texts_shortdesc');desc.appendChild(document.createTextNode(PAcookies.textes[PAcookies.options.language].shortdesc));section.appendChild(desc);var section=document.createElement('div');section.classList.add('section_block','bottom');holder.appendChild(section);var paramlink=document.createElement('a');paramlink.id='PAcookies_params_link';paramlink.href=Object.values(PAcookies.options.paramsLinks).find(page=>page[PAcookies.options.language])[PAcookies.options.language];paramlink.target="_blank";paramlink.classList.add("texts_personalDataPolicy");paramlink.appendChild(document.createTextNode(PAcookies.textes[PAcookies.options.language].personalDataPolicy));var closelink=document.createElement('button');closelink.id='PAcookies_close_link';closelink.classList.add("texts_close");closelink.appendChild(document.createTextNode(PAcookies.textes[PAcookies.options.language].close));closelink.addEventListener('click',PAcookies.frontModule.close);section.appendChild(paramlink);section.appendChild(closelink);document.body.appendChild(container);PAcookies.moduleConsent=container;PAcookies.moduleConsent.addEventListener('click',function(event){event.stopPropagation()})},saveEvent:function(elem){PAcookies.servicesModule.registerServices();var cookie=PAcookies.cookies.get('PAcookie');if(cookie===undefined||cookie===''){PAcookies.runTasks(!0)}
PAcookies.cookies.create();PAcookies.frontModule.close();if(PAcookies.queuedScripts.length>0){for(i in PAcookies.queuedScripts){var item=PAcookies.queuedScripts[i];var obj=PAcookies.helper.resolve('services.'+item.id);if(obj.status)
item.script()}}
PAcookies.firstInitFlag=!0},customEvent:function(elem){elem.addEventListener('click',function(){if(PAcookies.moduleConsent){document.body.removeChild(PAcookies.moduleConsent);PAcookies.moduleConsent=null}
PAcookies.frontModule.open()})},activationEvent:function(elem,status){elem.addEventListener('click',function(){var data=this.dataset;var obj=PAcookies.helper.resolve(data.path);if(obj.status)
obj.status=!1;else obj.status=!0;elem.innerText=(obj.status)?PAcookies.textes[PAcookies.options.language].accept:PAcookies.textes[PAcookies.options.language].refuse;elem.setAttribute('data-status',(obj.status)?'true':'false');(PAcookies.options.logs)?console.warn('Preferences for '+obj.label+' set to',obj.status,obj):''})},toggleCategory:function(elem,category,enable){elem.addEventListener('click',function(){var list=PAcookies.categoriesModule.getServices(category);for(service in list){var s=list[service];if(enable){if(s.status){(PAcookies.options.logs)?console.warn('Service '+s.label+' already enabled',s):'';continue}
if(!s.status){document.getElementById('PAcookies_button_service_'+service).click();(PAcookies.options.logs)?console.warn('Service '+s.label+' enabled',s):'';continue}}else{if(s.status){document.getElementById('PAcookies_button_service_'+service).click();(PAcookies.options.logs)?console.warn('Service '+s.label+' disabled',s):'';continue}
if(!s.status){(PAcookies.options.logs)?console.warn('Service '+s.label+' already disabled',s):'';continue}}}
if(enable)(PAcookies.options.logs)?console.warn('All '+category+' services enabled'):'';else(PAcookies.options.logs)?console.warn('All '+category+' services disabled'):''})},open:function(){if(PAcookies.module)
PAcookies.module.style.display='';else PAcookies.frontModule.createHtml(!0);if(PAcookies.moduleConsent){document.body.removeChild(PAcookies.moduleConsent);PAcookies.moduleConsent=null}},close:function(){if(PAcookies.module)
PAcookies.module.style.display='none';if(PAcookies.moduleConsent){document.body.removeChild(PAcookies.moduleConsent);PAcookies.moduleConsent=null}},changeLanguage:function(code){if(['fr','en','de'].includes(code)){PAcookies.options.language=code;let textsShortdescs=document.getElementsByClassName("texts_shortdesc");Array.from(textsShortdescs).forEach(textsShortdesc=>textsShortdesc.innerHTML=PAcookies.textes[code].shortdesc);let textsLinkService=document.getElementsByClassName("link_service");Array.from(textsLinkService).forEach(textsLinkService=>textsLinkService.innerHTML=PAcookies.textes[code].learnMore);let textsPersonalDataPolicys=document.getElementsByClassName("texts_personalDataPolicy");Array.from(textsPersonalDataPolicys).forEach(textsPersonalDataPolicy=>{textsPersonalDataPolicy.innerHTML=PAcookies.textes[code].personalDataPolicy;textsPersonalDataPolicy.href=Object.values(PAcookies.options.paramsLinks).find(page=>page[code])[code]});let textsCloses=document.getElementsByClassName("texts_close");Array.from(textsCloses).forEach(textsClose=>textsClose.innerHTML=PAcookies.textes[code].close);let textsToggleCat=document.getElementsByClassName("toggle_category");Array.from(textsToggleCat).forEach(textsShortdesc=>textsShortdesc.innerHTML=PAcookies.textes[code].acceptAll);let textsRemoveCat=document.getElementsByClassName("remove_category");Array.from(textsRemoveCat).forEach(textsShortdesc=>textsShortdesc.innerHTML=PAcookies.textes[code].refuseAll);let textDesc=document.getElementById("PAcookies_desc");if(textDesc)textDesc.innerHTML=PAcookies.textes[code].desc;let textBtnConsent=document.getElementById("PAcookies_consent_btn");if(textBtnConsent)textBtnConsent.innerHTML=PAcookies.textes[code].saveAndExit;let textBtnParam=document.getElementById("PAcookies_params_link");if(textBtnParam){if(textBtnParam.href)textBtnParam.innerHTML=PAcookies.textes[code].personalDataPolicy;else textBtnParam.innerHTML=PAcookies.textes[code].custom}
let textBtnCats=document.querySelectorAll('[id^="PAcookies_button_"]');textBtnCats.forEach(textBtnCat=>textBtnCat.innerText=textBtnCat.dataset.status?PAcookies.textes[code].accept:PAcookies.textes[code].refuse)
let count={}
document.querySelectorAll('[data-code-language]').forEach(form=>{if(form.dataset.codeLanguage!=code){form.style.display="none";if(form.dataset.cat=="undefined")count[form.dataset.cat]=0}else{form.style.display="block";count[form.dataset.cat]=1}})
Object.keys(count).forEach(cat=>{if(cat&&cat!="undefined"){let div=document.getElementById('PAcookies_category_'+cat);if(count[cat]>0)div.style.display="block";else div.style.display="none"}});PAcookies.categories.requis={label:PAcookies.textes[code].requiredLabel,description:PAcookies.textes[code].requiredDescription,required:!0}
PAcookies.categories.analyse={label:PAcookies.textes[code].analyseLabel,description:PAcookies.textes[code].ananlyseDescription,}
PAcookies.categories.marketing={label:PAcookies.textes[code].marketingLabel,description:PAcookies.textes[code].marketingDescription}
let textsCatLabel=document.getElementsByClassName("title");Array.from(textsCatLabel).forEach(textsCatLabel=>{if(textsCatLabel.dataset.cat)textsCatLabel.innerHTML=PAcookies.categories[textsCatLabel.dataset.cat].label});let textsCatDesc=document.getElementsByClassName("desc");Array.from(textsCatDesc).forEach(textsShortdesc=>{if(textsShortdesc.dataset.cat)textsShortdesc.innerHTML=PAcookies.categories[textsShortdesc.dataset.cat].description});return!0}else return!1}},helper:{resolve:function(path){return path.split('.').reduce(function(prev,curr){return prev?prev[curr]:undefined},PAcookies||self)}},runTasks:function(force){force=force||!1;var cookie=PAcookies.cookies.get('PAcookie');if(PAcookies.tasks.length<1||!force&&(cookie===undefined||cookie===''))
return;for(i in PAcookies.tasks){var task=PAcookies.tasks[i];var obj=PAcookies.helper.resolve('services.'+task.id);if(obj.status)
task.run()}}};PAcookies.categories.requis={label:PAcookies.textes[PAcookies.options.language].requiredLabel,description:PAcookies.textes[PAcookies.options.language].requiredDescription,required:!0}
PAcookies.categories.analyse={label:PAcookies.textes[PAcookies.options.language].analyseLabel,description:PAcookies.textes[PAcookies.options.language].ananlyseDescription,}
PAcookies.categories.marketing={label:PAcookies.textes[PAcookies.options.language].marketingLabel,description:PAcookies.textes[PAcookies.options.language].marketingDescription};PAcookies.textes.logo='https://www.biovalley-france.com/wp-content/themes/Biovalley/static/img/logo_biovalley.svg';PAcookies.services.analytics={"category":"analyse","label":"Google Analytics FR","description":"Google Analytics r\u00e9cup\u00e8re les statistiques de visites du site et permet d'analyser sa fr\u00e9quentation.","link":"https:\/\/support.google.com\/analytics\/answer\/2838718?hl=fr&ref_topic=6010376","status":!0,"language":{"id":1,"name":"Francais","code":"fr"}};PAcookies.services.hotjar={"category":"analyse","label":"Hotjar FR","description":"Hotjar permet de suivre en temps r\u00e9el les actions des visiteurs sur ce site.","link":"https:\/\/www.hotjar.com\/","status":!0,"language":{"id":1,"name":"Francais","code":"fr"}};PAcookies.load()