Passa al contenuto principale

API Javascript

Il Framework integrato all’interno di Avacy mette a disposizione una serie di API Javascript da poter richiamare all’occorrenza nel codice oppure attraverso la console del proprio browser, queste funzioni permettono un’interazione tra gli strumenti utilizzati da un publisher e il banner.

Un esempio di utilizzo può essere la creazione di un pulsante o di un link per la riapertura del pannello preferenze, qualora un utente voglia rivedere le preferenze espresse:

<a href="#" onclick="AVACY.showPreferenceCenter('absolute');">Mostra preferenze</a> 

È anche possibile, durante le fasi di test e integrazione, richiamare manualmente alcuni eventi relativi al banner come l’opt-in, opt-out e altri, senza che vi sia necessariamente l’interazione dell’utente.

L’oggetto AVACY è presente all’interno dello scope window e, al suo interno, vi sono i metodi elencati nella seguente tabella:

Nome EventoDescrizione
AVACY.triggerOptIn();Viene fornito l’opt-in proprio come se l’utente avesse accettato il Banner Cookie
AVACY.triggerOptOut()Verranno rimossi tutti i cookie settati e quindi verrà effettuato l’opt-out
AVACY.reload()Ricarica la configurazione descritta nell’oggetto iniziale. Va utilizzata in seguito a AVACY.triggerOptOut().
AVACY.showPreferenceCenter()Visualizza il Pannello di Controllo dei Cookie in funzione della modalità scelta in fase di configurazione del banner. Il pannello può essere visualizzato in due modalità: absolute: mostra il Pannello di Controllo in stile conforme al Cookie Banner iniziale, quindi nella stessa posizione. In questo caso non è necessario specificare il div tag contrassegnato dall’ id #oil-preference-center. inline: mostra il Pannello di Controllo esattamente dove viene inserito il div tag. Se non dovesse essere inserito alcun parametro, il metodo si comporterà di default come se fosse “inline”, e mostrerà il Pannello di Controllo come ultimo elemento visibile del body se è presente il div tag con id oil-preference-center
AVACY.getPurposeConsents()Questo metodo permette di ottenere oggetto che mappa le finalità date o non date. Viene restituita una promise.
AVACY.hasConsents( [purposeID_1, purposeID_2, ...])Questo metodo accetta un array come parametro (default = []). Verrà quindi restituito un valore booleano: true: purpose IDs forniti sono stati tutti accettati dall’utente; false: almeno uno dei purpose IDs forniti NON sono stati accettati dall’utente. Viene restituita una promise.
AVACY.getLegalText(legalTextName = "cookie" )Questo metodo permette di ottenere un array contenente il corpo e la versione di un testo legale salvato nell’oggetto di configurazione di AVACY. Accetta (privacy o cookie).Viene restituita una promise.
AVACY.changeLanguage(lang_code)Riceve come parametro il language code della lingua desiderata e cambia dinamicamente la lingua dei testi scritti nel banner. Se non sono presenti i testi nella configurazione, prende automaticamente quelli di default.

Modifica lingua del banner

Un altro esempio di utilizzo delle API riguardano la modifica dinamica della lingua, tramite l’attributo language, che indica la lingua corrente del banner. La modifica può essere effettuata in modo statico, modificando l’oggetto di configurazione con il lang code (in formato ISO 639-1) desiderato (es. language: "en") o dinamico, attraverso la funzione AVACY.changeLanguage(). Se la lingua selezionata non è presente nella configurazione, viene utilizzata quella impostata sulla SaaS.

Il flag autolanguage è un valore booleano che, se settato a true, al caricamento della pagina, lancia automaticamente AVACY.changeLanguage() prendendo come parametro il valore assegnato alla chiave language.

I testi relativi ai vendors e i testi legali vengono presi da un JSON presente sulla CDN di default. Ciò significa che se anche il language selezionato potrebbe non essere presente nell’oggetto di configurazione, questi testi verrebbero comunque tradotti (a patto che siano presenti sulla CDN).