136 lines
6.9 KiB
PHP
Executable File
136 lines
6.9 KiB
PHP
Executable File
<?php
|
|
$nomFicAppelant = basename(__FILE__);
|
|
// -----------------------------------------------------
|
|
// Mise à jour de l'abonnement suite a paiement
|
|
// -----------------------------------------------------
|
|
if (empty($today)) {
|
|
date_default_timezone_set('Europe/Paris');
|
|
$dateTimeObj = new DateTime('now', new DateTimeZone('Europe/Paris'));
|
|
$today = IntlDateFormatter::formatObject($dateTimeObj, "y-MM-dd_HH-mm", 'fr');
|
|
}
|
|
|
|
// -----------------------------------------------------
|
|
// 1 - recup idClient 123clients
|
|
// -----------------------------------------------------
|
|
if ( !isset($_SESSION['idClient123']) || empty($_SESSION['idClient123']) ) include ($includePathAdmin. "/req/reqRecupClient123.php");
|
|
|
|
// -----------------------------------------------------
|
|
// Debug
|
|
// -----------------------------------------------------
|
|
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2,['SESSION[idClient123]' => $_SESSION['idClient123'], 'SESSION idAbo' => $_SESSION['idAbo'] ],'reqUpdateAbo.php');}
|
|
|
|
// -----------------------------------------------------
|
|
// Recup description abo
|
|
// -----------------------------------------------------
|
|
$desc = 'Abonnement';
|
|
$next = 'aucun';
|
|
|
|
// -----------------------------------------------------
|
|
// 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
|
|
include ("clesStripe/stripePKSIncludeAbo.php");
|
|
|
|
// valider abo
|
|
\Stripe\Stripe::setApiKey($privateSecretStripe);
|
|
|
|
// recup subscription
|
|
$stripe = new \Stripe\StripeClient($privateSecretStripe);
|
|
try {
|
|
$response = $stripe->checkout->sessions->retrieve($_SESSION['checkOutSession_id']);
|
|
if (isset($debug[1]) && $debug[1] == '1') echo $response;
|
|
$stripeSubscription_id = $response->subscription;
|
|
if (isset($debug[1]) && $debug[1] == '1') $debugMsg .= monDebug (1, ['stripeSubscription_id' => $stripeSubscription_id ],'');
|
|
$_SESSION['stripeSubscription_id'] = $stripeSubscription_id;
|
|
} 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 de l' => $api_error], '');}
|
|
}
|
|
|
|
// -----------------------------------------------------
|
|
// 1.2 - verif si la ligne existe pas deja dans 123projets
|
|
// -----------------------------------------------------
|
|
$resConn = '';
|
|
$idClientExist = "";
|
|
$reqSelect = "SELECT idClient FROM `123projets` WHERE idClient=" .$idClient123. " and idModule =1;";
|
|
if (isset($debug[2]) && $debug[2] == '1') $debugMsg .= monDebug (2, ['reqSelect' => $reqSelect ],'');
|
|
$resConn = '';
|
|
$resConn = $connexion->query($reqSelect);
|
|
if ($resConn) {
|
|
$tabResult = $resConn->fetch(PDO::FETCH_ASSOC);
|
|
$idClientExist = $tabResult['idClient'];
|
|
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['idClientExist' => $idClientExist], '');}
|
|
} else if (isset($debug[2]) && $debug[2] == '1') {
|
|
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['pas de connect' => ''], '');}
|
|
}
|
|
|
|
// -----------------------------------------------------
|
|
// Update ligne avec statut panier to actif // portal_id est mis apres coup depuis le fichier abonnement
|
|
// -----------------------------------------------------
|
|
$resConn = '';
|
|
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']. "', '1', '" .$_SESSION['prixAbo']. "', '1', 'param1', $desc , '" .$_SESSION['checkOutSession_id']. "', 'portail_id', '" .$_SESSION['stripeSubscription_id']. "', '" .$_SESSION['custId']. "', 'actif', '" .$today. "', 'sans', $desc, '' );";
|
|
if (isset($debug[2]) && $debug[2] == '1') $debugMsg .= monDebug (2, ['reqInsert' => $reqInsert ],'');
|
|
$resConn = '';
|
|
$resConn = $connexion->query($reqInsert);
|
|
if ($resConn) {
|
|
if (isset($debug[2]) && $debug[2] == '1') $debugMsg .= monDebug (2, ['Insert module frais Achat ok' => '' ],'');
|
|
}
|
|
else {
|
|
if (isset($debug[2]) && $debug[2] == '1') $debugMsg .= monDebug (2, ['pb de insert module frais' => '' ],'');
|
|
}
|
|
} else {
|
|
$reqUpdate = "UPDATE `123projets` SET is_payed=1, statut='actif', param1 = '" .$idAbo. "', dateAchat='" .$today. "', dateRenouvellement='" .$next. "', description='" .$desc. "', commentaire='" .$desc. "', ";
|
|
if (isset($_SESSION['stripeSubscription_id']) && !empty($_SESSION['stripeSubscription_id']))
|
|
$reqUpdate .= "stripeSubscription_id='" .$_SESSION['stripeSubscription_id']. "', ";
|
|
if (isset($_SESSION['checkOutSession_id']) && !empty($_SESSION['checkOutSession_id']))
|
|
$reqUpdate .= "stripePaiement_id='" .$_SESSION['checkOutSession_id']. "', ";
|
|
if (isset($_SESSION['custId']) && !empty($_SESSION['custId']))
|
|
$reqUpdate .= "stripeClient_id='" .$_SESSION['custId']. "' ";
|
|
$rest = strlen($reqUpdate) - 2;
|
|
$reqUpdate = substr($reqUpdate, 0, $rest);
|
|
$reqUpdate .= " WHERE idClient='" .$idClient123. "' AND idModule=1;";
|
|
if (isset($debug[2]) && $debug[2] == '1') $debugMsg .= monDebug (2, ['reqUpdate' => $reqUpdate ],'');
|
|
|
|
$connexion->query($reqUpdate);
|
|
if ($resConn) {
|
|
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['Mise à jour de l\'abonnement' => ''], '');}
|
|
$_SESSION['statutAbo'] = true;
|
|
} else {
|
|
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['Echec de la mise à jour de l\'abonnement' => ''], '');}
|
|
}
|
|
}
|
|
|
|
// -----------------------------------------------------
|
|
// Update statut maintenance
|
|
// -----------------------------------------------------
|
|
if ($_SESSION['avancementFini'] == true) {
|
|
$reqUpdate = "UPDATE `languenav` SET afficher=0 WHERE id=315;";
|
|
if (isset($debug[2]) && $debug[2] == '1') $debugMsg .= monDebug (2, ['reqUpdate' => $reqUpdate ],'');
|
|
$resConn = $idPdo->query($reqUpdate);
|
|
if ($resConn) {
|
|
$admMsg .= '<br>Mise à jour du statut du site ok. ';
|
|
} else {
|
|
$admMsg .= '<br>Echec de la mise à jour du statut du site : reqUpdateAbo.php';
|
|
}
|
|
}
|
|
|
|
// -----------------------------------------------------
|
|
// Version SMS free API
|
|
// -----------------------------------------------------
|
|
// setlocale (LC_TIME, 'fr_FR.utf8', 'fra');
|
|
// $msg= "Nouvel abonnement 123ventes : " .$siteName. ' ' .$desc;
|
|
// include ("smsFree.php");
|
|
// if (isset($debug[1]) && $debug[1] == '1') echo $output;
|
|
|
|
// -----------------------------------------------------
|
|
// Make facture
|
|
// -----------------------------------------------------
|
|
$idModule = 1; // pour reqUdateFacture
|
|
include ("./extensions/makeFact/chapeauMakeFacture.php");
|
|
?>
|