Exemplo n.º 1
0
 public function __construct()
 {
     try {
         $options = array(PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC);
         $this->db = new PDO('pgsql:dbname=' . DB_NAME . ';host=' . DB_HOST . ';port=' . DB_PORT, DB_USER, DB_PASSWORD, $options);
         if (!$this->db) {
             Tool::log("Database not available.", 'emergency');
         }
     } catch (PDOException $e) {
         Tool::log("Database not available: " . $e->getMessage(), 'emergency');
     }
 }
Exemplo n.º 2
0
 /**
  * Prepare the object to retrieve access token for
  * specific driver
  */
 public function __construct($provider)
 {
     if (!isset(Tool::getConfig()['oauth'][$provider])) {
         Tool::log('OAuth settings not configured for provider \'' . $provider . '\' in config.php');
         Tool::endWithJson([], 500);
         exit;
     }
     $config = Tool::getConfig()['oauth'][$provider];
     $this->service = $provider;
     if ($provider == 'github') {
         $this->provider = new \League\OAuth2\Client\Provider\Github(['clientId' => $config['clientId'], 'clientSecret' => $config['clientSecret']]);
     } else {
         Tool::endWithJson(["error" => "OAuth Provider " . $provider . " doesn\\'t exist"], 500);
         exit;
     }
 }
Exemplo n.º 3
0
 /**
  * Función para la ejecución de consultas sobre la base de datos que no devuelven un conjunto de registros como resultado (UPDATE, INSERT o DELETE).
  * @param $sql Cadena de instrucción SQL.     
  * @param $db Enlace a la base de datos sobre la que se ejecuta la consulta.
  * @return bool Devuelve true en caso de ejecución correcta y false en caso de error.
  */
 public static function ejecuta($sql, $db, $logErrors = false)
 {
     $res = mysql_query($sql, $db);
     if (!$res) {
         if ($logErrors) {
             Tool::log("[ERROR] SQL:" . $sql, LOG);
         }
         echo "SQL:" . $sql . "<br/>Error: " . mysql_error($db) . "<br/>";
         return false;
     } else {
         return true;
     }
 }
Exemplo n.º 4
0
 /**
  * Función para mover una compra de la tabla Compras a HistoricoCompras. El registro desaparecerá de la tabla Compras.
  * @param unknown $id Id de la compra.
  */
 public static function archivaCompra($id)
 {
     $db = Tool::_conectaBD();
     $archivado = false;
     if (!$db) {
         Tool::log("[ERROR] Error conectando a la base de datos archivando compra" . PHP_EOL . mysql_errno . ":" . mysql_error($db), LOG);
     } else {
         $c = new Compra();
         $c->getCompra($id);
         $sql = "INSERT INTO HistoricoCompras (Id,IdVendedor,IdComprador,importe,fecha,cantidad,IdEvento)\n\t\t\tVALUES ('" . $c->id_transaccion . "','" . $c->email_vendedor . "','" . $c->email_comprador . "','" . $c->precio . "','" . $c->fecha . "'," . $c->cantidad . ",'" . $c->id_evento . "')";
         if ($c->id_transaccion != "") {
             if (!Compra::estaArchivada($c->id_transaccion)) {
                 if (Tool::ejecutaConsulta($sql, $db)) {
                     //echo "Compra " . $c->id_transaccion . " archivado<br/>";
                     $archivado = true;
                 } else {
                     //echo "Error en la insercion del compra " . $c->id_transaccion . " -> " . mysqli_error($db) . "<br/>
                     //	  SQL->" . $sql . "<br/><hr/>";
                 }
             } else {
                 $archivado = true;
                 //echo "Compra " . $id . " ya esta archivado<br/>";
             }
         } else {
             //echo "Compra " . $id . " no encontrado<br/>";
         }
         if ($archivado) {
             Compra::deleteCompra($id);
         }
     }
     Tool::_desconectaBD($db);
     return $archivado;
 }
Exemplo n.º 5
0
    Tool::log("[OK] Comprador ya registrado ", LOG_FILE);
}
$auxReg2 = $compra->compraVerificada();
if ($auxReg2) {
    Tool::log("[OK] Compra con ID " . $compra->id_transaccion . " verificada.", LOG_FILE);
    $auxReg3 = $compra->compraRegistrada();
    if (!$auxReg3) {
        $res = $compra->registraCompra();
        if ($res) {
            Tool::log("[OK] Compra con ID " . $compra->id_transaccion . " registrada correctamente", LOG_FILE);
            Tool::notificaMAIL(true, $compra);
        }
    } else {
        Tool::log("[ERROR] Compra con ID " . $compra->id_transaccion . " duplicada", LOG_FILE);
    }
} else {
    Tool::log("[ERROR] Compra con ID " . $compra->id_transaccion . " erronea o no completada", LOG_FILE);
}
/*
if(DEBUG == true) {
error_log(date('[Y-m-d H:i e] '). "Verified IPN: $req ". PHP_EOL, 3, LOG_FILE);
error_log($first_name . " " . $last_name . " con e-mail " . $payer_email . " compra " . $item_name . " por " . $payment_amount . " " . $payment_currency . PHP_EOL, 3, LOG_FILE);
}
} else if (strcmp ($res, "INVALID") == 0) {
// log for manual investigation
// Add business logic here which deals with invalid IPN messages
if(DEBUG == true) {
error_log(date('[Y-m-d H:i e] '). "Invalid IPN: $req" . PHP_EOL, 3, LOG_FILE);
}
}
*/
Exemplo n.º 6
0
 /**
  * Función para mover un comprador de la tabla Compradores a HistoricoCompradores. El registro desaparecerá de la tabla Compradores.
  * @param unknown $id Email del comprador.
  */
 public static function archivaComprador($id)
 {
     $db = Tool::_conectaBD();
     $archivado = false;
     if (!$db) {
         Tool::log("[ERROR] Error conectando a la base de datos archivando comprador" . PHP_EOL . mysqli_errno($db) . ":" . mysqli_error($db), LOG);
     } else {
         $c = new Comprador();
         $c->getComprador($id);
         $sql = "INSERT INTO HistoricoCompradores (nombre,apellidos,email) VALUES ('" . $c->nombre . "','" . $c->apellidos . "','" . $c->email . "')";
         if ($c->email != "") {
             if (!Comprador::estaArchivado($c->email)) {
                 if (Tool::ejecutaConsulta($sql, $db)) {
                     //echo "Comprador " . $c->email . " archivado<br/>";
                     $archivado = true;
                 } else {
                     //echo "Error en la insercion del comprador " . $c->email . " -> " . mysql_error($db) . "<br/>
                     //	  SQL->" . $sql . "<br/><hr/>";
                 }
             } else {
                 $archivado = true;
                 //echo "Comprador " . $id . " ya esta archivado<br/>";
             }
         } else {
             //echo "Comprador " . $id . " no encontrado<br/>";
         }
         if ($archivado) {
             Comprador::deleteComprador($id);
         }
     }
     Tool::_desconectaBD($db);
     return $archivado;
 }