New file |
0,0 → 1,70 |
package org.tela_botanica.del.client.utils; |
|
import org.tela_botanica.del.client.Del; |
import org.tela_botanica.del.client.config.Config; |
|
public class Analytics { |
|
/** |
* Envoie une notification à Google Analytics, comme quoi la page "url" a été visitée; |
* passer par pageVisitee() pour s'assurer qu'on est bien en prod |
* |
* @param url adresse ou surnom de la page visitée |
*/ |
public static native void pageVisiteeNatif(String url) /*-{ |
if (url == "") { |
url = $wnd.location.href; |
} |
$wnd.ga('send', 'pageview', url); |
}-*/; |
|
/** |
* Proxy pour evenementNatif() qui n'envoie l'événement que si on est en prod |
*/ |
public static void pageVisitee(String url) { |
Config config = new Config(); |
if (config.isProd()) { |
//Del.LogVersFirebug("Page vue: " + url); |
Analytics.pageVisiteeNatif(url); |
} else { |
|
} |
} |
|
public static void pageVisitee() { |
pageVisitee(""); |
} |
|
/** |
* Envoie une notification à Google Analytics, comme quoi l'événement "action" a été déclenché |
* sur la ressource "categorie" - passer par evenement() pour s'assurer qu'on |
* est bien en prod |
* |
* @param categorie - la ressource sur laquelle l'utilisateur a agi |
* @param action - ce que l'utilisateur a fait avec cette ressource |
* @param label - un bout de JSON avec des détails |
* @param nombre - nombre d'actions à enregistrer |
*/ |
public static native void evenementNatif(String categorie, String action, String label, int nombre) /*-{ |
$wnd.ga('send', 'event', categorie, action, label, nombre); |
}-*/; |
|
/** |
* Proxy pour evenementNatif() qui n'envoie l'événement que si on est en prod |
*/ |
public static void evenement(String categorie, String action, String label, int nombre) { |
Config config = new Config(); |
if (config.isProd()) { |
//Del.LogVersFirebug("Evenement: " + categorie + ", " + action + ", " + label + ", " + nombre); |
Analytics.evenementNatif(categorie, action, label, nombre); |
} |
} |
|
public static void evenement(String categorie, String action, String label) { |
Analytics.evenement(categorie, action, label, 1); |
} |
|
public static void evenement(String categorie, String action) { |
Analytics.evenement(categorie, action, "", 1); |
} |
} |