Exemple #1
0
<?php

// Incluimos la clase que contiene las funcionalidades de testAB
include_once "testAB.php";
// Le pasamos el nodo actual, para que mire si existe un test activo en esta página
$testAB = new testAB($node->nid);
// Leemos y guardamos los parámetros GET, para luego tenerlos en la redirección de página
$getVars = '';
$i = 0;
foreach ($_GET as $key => $value) {
    if ($key != 'q') {
        if ($i) {
            $getVars .= '&' . $key . '=' . $value;
        } else {
            //primera variable
            $getVars .= '?' . $key . '=' . $value;
        }
        $i++;
    }
}
// Nos aseguramos de que ?origen=attel o parecidos quedan excluidos del test
$attel = isset($_GET['origen']) && preg_match('/attel/', $_GET['origen']);
// Si el nodo tiene un test A/B activo, procedemos
if (!$attel && $testAB->get_id()) {
    // Recuperamos la IP del usuario
    $remote_ip = $_SERVER['REMOTE_ADDR'];
    if (!$remote_ip || $remote_ip == '') {
        $remote_ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
    }
    // Vemos si tiene una cookie guardada con el test. El valor va a ser test_id-opcion_id
    $cookie_info = explode('-', $_COOKIE['aiesp_multivariate_test']);
Exemple #2
0
 public static function get_random()
 {
     mt_srand(testAB::make_seed());
     $rand = mt_rand(0, 1);
     return $rand;
 }