alpha_full/admin/extensions/prestas/reqUpdatePresta.php
2026-04-06 22:58:51 +02:00

144 lines
7.0 KiB
PHP
Executable File

<?php
$nomFicAppelant = basename(__FILE__);
// -----------------------------------------------------
// Mise à jour de l'abonnement suite a paiement
// -----------------------------------------------------
$today = date("Y-n-j");
// -----------------------------------------------------
// 1 - recup idClient 123clients
// -----------------------------------------------------
include ($includePathAdmin. "/req/reqRecupClient123.php");
if (isset($_SESSION['desc'])) $desc=$_SESSION['desc'];
// -----------------------------------------------------
// Debug
// -----------------------------------------------------
$idPresta= $_SESSION['idPresta'];
$idModule=$_SESSION['idModule'];
if (isset($debug[2]) && $debug[2] == '1') {
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['SESSION idPresta' => $_SESSION['idPresta']], '');}
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['SESSION idModule' => $_SESSION['idModule']], '');}
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['idPresta' => $idPresta], '');}
}
// -----------------------------------------------------
// Retrouver le subscription ID pour le mettre en base ( pas reussi à le faire directement dans le checkout, mais marche ici )
// -----------------------------------------------------
//
require 'vendor/autoload.php';
// recup cles api
$niveau=2;
include ("./prestas/clesStripe/stripePKSPresta.php");
// recup subscription
$stripe = new \Stripe\StripeClient($privateSecretStripe);
try {
$response= $stripe->checkout->sessions->retrieve($_SESSION['checkOutSession_id']);
if (isset($debug[2]) && $debug[2] == '1' ) {
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['reponse' => $response], '');}
}
$stripePaiement_id=$response->id;
$_SESSION['stripePaiement_id']=$stripePaiement_id;
if (isset($debug[2]) && $debug[2] == '1' ) $debugMsg .= monDebug (2, ['stripePaiement_id' => $stripePaiement_id ],'');
$stripeSubscription_id=$response->subscription;
$_SESSION['stripeSubscription_id']=$stripeSubscription_id;
if (isset($debug[2]) && $debug[2] == '1' ) $debugMsg .= monDebug (2, ['stripeSubscription_id' => $stripeSubscription_id ],'');
$custId=$response->client_reference_id;
$cust=$response->customer;
$_SESSION['custId']=$cust;
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['cust' => $cust], '');}
$continuer=1;
}
catch(Exception $e) {
$api_error = $e->getMessage();
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['api_error' => $api_error], '');}
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['Erreur lors de la récupération du paiement (' => $api_error], '');}
}
// -----------------------------------------------------
// 4 - Mettre à jour la DB
// -----------------------------------------------------
if ($continuer==1) {
// -----------------------------------------------------
// 4.1 - verif si la ligne existe pas deja dans 123projets
// -----------------------------------------------------
$resConn='';
$today = date("Y-n-j");
$idClientExist="";
$reqSelect="SELECT idClient FROM `123projets` WHERE idClient=" .$idClient123. " AND idModule =" .$idModule. ";";
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['reqSelect' => $reqSelect], 'reqUpdatePresta.php');}
if (isset($debug[2]) && $debug[2] == '1' ) echo '<br>'. $reqSelect;
$resConn='';
$resConn=$connexion->query($reqSelect);
if ($resConn) {
$tabResult=$resConn->fetch(PDO::FETCH_ASSOC);
if (isset($tabResult['idClient'])) $idClientExist=$tabResult['idClient'];
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['idClientExist' => $idClientExist], '');}
}
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['pas de connect' => ''], '');}
// -----------------------------------------------------
// ligne exist pas
// -----------------------------------------------------
if ($idClientExist=="") {
// 1.3.1 requete insert
$reqInsert="INSERT INTO `123projets` (numModule, idClient, siteName, idModule, prix, is_payed, param1, param2, stripePaiement_id, stripePortal_id, stripeSubscription_id, stripeClient_id, statut, dateAchat, dateRenouvellement, description, commentaire) VALUES (0, " .$idClient123. ", '" .$_SESSION['siteNomTech']. "', $idModule, '" .$_SESSION['prixPresta']. "', '1', $idPresta , '" .$desc. "', '" .$_SESSION['checkOutSession_id']. "', 'portail_id', '" .$_SESSION['stripeSubscription_id']. "', '" .$_SESSION['custId']. "', 'actif', '" .$today. "', 'sans', '" .$desc. "', 'param2=idPresta' );";
if (isset($debug[2]) && $debug[2] == '1' ) echo '<br>'. $reqInsert;
$resConn='';
$resConn=$connexion->query($reqInsert);
if ($resConn) {
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['Insert module presta ok' => $reqInsert], 'reqUpdatePresta.php');}
}
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['; if (isset($debug[2]) && $debug[2] ==' => '', 'reqInsert' => $reqInsert], 'reqUpdatePresta.php');}
}
else {
// -----------------------------------------------------
// ligne exist
// -----------------------------------------------------
$reqUpdate="UPDATE `123projets` SET is_payed=1, ";
$reqUpdate .= "param1='" .$idPresta. "', ";
if (isset($desc)) $reqUpdate .= "param2='" .$desc. "', ";
$reqUpdate .= "prix='" .$_SESSION['prixPresta']. "'";
$reqUpdate .= "stripeSubscription_id='" .$stripeSubscription_id. "', ";
$reqUpdate .= "stripePaiement_id='" .$stripePaiement_id. "', ";
$reqUpdate .= "stripeClient_id='" .$cust. "', ";
$reqUpdate .= "statut='actif', ";
$reqUpdate .= "dateAchat='" .$today. "', ";
$reqUpdate .= "dateRenouvellement='sans', ";
if (isset($desc)) $reqUpdate .= "description='" .$desc. "', ";
$reqUpdate .= "commentaire='param2=idPresta', ";
$reqUpdate .= "jsonReponse='" .$response. "' ";
$reqUpdate .= "WHERE idClient=" .$idClient123. " AND idModule=" .$idModule. ";";
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['Req update Presta' => $reqUpdate], 'reqUpdatePresta.php');}
try {
$resConn=$connexion->query($reqUpdate);
if ($resConn) {
$admMsg .="<br>Mise à jour du de la prestation ok. ";
}
}
catch (PDOException $e) {
echo "Erreur !: " . $e->getMessage() . "<br/>";
$admMsg .="<br>Echec de la mise à jour de la prestation => reqUpdatePresta.php";
}
}
} //continuer=1
// -----------------------------------------------------
// Version SMS free API
// -----------------------------------------------------
// setlocale (LC_TIME, 'fr_FR.utf8','fra');
// $msg= "Nouvel prestation 123ventes : " .$_SESSION['nomSiteAff']. ' - ' .$desc ;
// include ("smsFree.php");
// if (isset($debug[1]) && $debug[1] == '1' ) $debugMsg .=$output;
// -----------------------------------------------------
// Make facture
// -----------------------------------------------------
include ("./extensions/makeFact/chapeauMakeFacture.php");
?>