diff --git a/config/confidentiel.exemple.php b/config/confidentiel.exemple.php
index ab15547..7925a8e 100644
--- a/config/confidentiel.exemple.php
+++ b/config/confidentiel.exemple.php
@@ -44,3 +44,4 @@ define("BDD_BATEAUX_DEV_DATABASE_PREFIXE", "");
// --- Autres ---
define("BDD_BATEAU_PASSWORD", "");
define("SMTP_PASSWORD", ""); // mot de passe de l'adresse email d'envoi (fonctions_mail.php)
+define("CLE_CHIFFREMENT_ARCHIVE", "");
diff --git a/config/definitions.php b/config/definitions.php
index 168cbb1..495b03a 100644
--- a/config/definitions.php
+++ b/config/definitions.php
@@ -1,5 +1,5 @@
= NIVEAU_EDITEUR_ACCES_ADMINISTATEUR)){
+ if (($_SESSION['acces_valide']) && ($_SESSION['shipmember']['Niveau_acces'] >= NIVEAU_EDITEUR_ACCES_ADMINISTRATEUR)){
if ($_SESSION['modifier_texte'] == 1) $texte = $texte.'';
}
@@ -64,7 +64,7 @@ function Recuperer_texte($fichier, $page, $bloc, $nom){
//************************************************************************************************************
function Ajouter_lien_modif($fichier, $page, $bloc, $nom){
$texte = "";
- if (($_SESSION['acces_valide']) && ($_SESSION['shipmember']['Niveau_acces'] >= NIVEAU_EDITEUR_ACCES_ADMINISTATEUR)){
+ if (($_SESSION['acces_valide']) && ($_SESSION['shipmember']['Niveau_acces'] >= NIVEAU_EDITEUR_ACCES_ADMINISTRATEUR)){
if ($_SESSION['modifier_texte'] == 1) $texte = '';
}
@@ -81,7 +81,7 @@ function Ajouter_lien_modif($fichier, $page, $bloc, $nom){
//************************************************************************************************************
function Ajouter_lien_modif_buttons($fichier, $page, $bloc, $nom){
$texte = "";
- if (($_SESSION['acces_valide']) && ($_SESSION['shipmember']['Niveau_acces'] >= NIVEAU_EDITEUR_ACCES_ADMINISTATEUR)){
+ if (($_SESSION['acces_valide']) && ($_SESSION['shipmember']['Niveau_acces'] >= NIVEAU_EDITEUR_ACCES_ADMINISTRATEUR)){
if ($_SESSION['modifier_texte'] == 1) $texte = '';
}
diff --git a/config/lang/en.php b/config/lang/en.php
index e026469..b0e8e1c 100644
--- a/config/lang/en.php
+++ b/config/lang/en.php
@@ -1,219 +1,214 @@
'[Email] is invalid!',
- '[Email] est déjà utilisée par un ShipMember.
Si vous êtes le propriétaire de cette adresse, merci de vous connecter avec cette adresse.
Sinon, merci de choisir une autre adresse.'
- => '[Email] is already in use by a ShipMember.
If you are the owner of this email address, please log in using it.
Otherwise, please choose a different email address.',
+ 'Accéder à mon bateau...'
+ => 'Getting to my boat...',
+ 'Accéder à notre site Koriolan'
+ => 'Visit our Koriolan website',
+ 'Accéder au menu de modification de vos informations...'
+ => 'Go to the menu for changing your details...',
+ 'Accès à mes bateaux'
+ => 'Access to my boats',
+ 'Accès à mon bateau'
+ => 'Access to my boat',
+ 'Accès validé pour '
+ => 'Access granted to ',
+ 'Activation de mon compte'
+ => 'Activation of my account',
+ 'Annuler'
+ => 'Cancel',
+ 'Annuler la saisie...'
+ => 'Cancel your entry...',
+ 'Attention : dès validation, seul ce nouveau mot de passe provisoire sera valide pour vous connecter. Si vous n\'avez pas reçu cet email dans les prochaines minutes, merci de vérifier s\'il ne se trouve pas dans vos courriers indésirables. '
+ => 'Caution: as soon as you confirm, only this new temporary password will be valid to connect you. If you have not received this email within the next few minutes, please check your spam folder.',
+ 'Bienvenue !'
+ => 'Welcome!',
+ 'Bienvenue dans votre espace ShipMember !'
+ => 'Welcome to your ShipMember area !',
+ '
Bonjour,
+L\'adresse email associée à votre compte ShipMember vient d\'être modifiée à votre demande :
+Ancienne adresse : [[Old_email]]
Nouvelle adresse : [[New_email]]
+Si vous n\'êtes pas à l\'origine de ce changement d\'adresse, merci de contacter sans attendre l\'administrateur du site à : [[Adresse_email_alertes]]
+L\'équipage ShipHeart
' + => 'Hello,
+The email address associated with your ShipMember account has just been changed at your request:
+Old address: [[Old_email]]
New address: [[New_email]]
+If you did not request this change of address, please contact the site administrator immediately at: [[Adresse_email_alertes]]
+The ShipHeart team
', + 'Bonjour,
+Le mot de passe de votre compte ShipMember vient d\'être réinitialisé à votre demande.
+Nom : [[Prenom]] [[Nom]]
+Email : [[Email]]
+Mot de passe provisoire : [[Password]]
+Plus qu’un clic : Connectez-vous sur [[Url_site]] pour activer votre compte ShipMember en modifiant votre mot de passe provisoire (*).
+Bienvenue à nouveau parmi nous !
+L\'équipage ShipHeart
++
(*) L\'activation devra être faite avant le [[Date_maxi_activation]]. Mais pas d\'inquiétude ; si vous ne le faites pas avant, vous pourrez toujours demander un nouveau mot de passe provisoire.
' + => 'Hello,
+The password for your ShipMember account has just been reset at your request.
+Name: [[Prenom]] [[Nom]]
+Email: [[Email]]
+Temporary password: [[Password]]
+Just one more click: Log in to [[Url_site]] to activate your ShipMember account by changing your temporary password (*).
+Welcome back!
+The ShipHeart team
++
(*) Activation must be completed by [[Date_maxi_activation]]. But don’t worry; if you don’t manage to do so by then, you can always request a new temporary password.
', + 'C\'est également ici que vous pourrez créer des profils [Propriétaire], [Installateur] ou [Skipper] afin de donner accès de façon contrôlée à votre ou à vos bateaux. Sans aucune limite !' + => 'This is also where you can create [Owner], [Installer] or [Skipper] profiles to grant controlled access to your boat or boats. There are no limits!', + 'Code postal' + => 'Postcode', + 'Connectez-vous' + => 'Log in', + 'Déconnexion' + => 'Logout', + 'Déjà ShipMember ?' + => 'Already ShipMember?', + 'Désolé, votre compte n\'a pas été activé dans le délai maximal.Félicitations !
-Votre compte ShipMember est créé, vous y êtes presque.
-Nom : [[Prenom]] [[Nom]]
-Email : [[Email]]
-Mot de passe provisoire : [[Password]]
-Plus qu’un clic : Connectez-vous sur ShipHeart.tech pour valider votre compte ShipMember en modifiant votre mot de passe provisoire (*). C’est une garantie de sécurité à ne pas négliger.
-Et ensuite, où que vous soyez et dès que votre ShipHeart est installé, accédez à votre bateau via votre accès privilégié ShipMember !
--
Bienvenue parmi nous !
-L\'équipage ShipHeart
--
(*) L\'activation devra être faite avant le [[Date_maxi_activation]]. Mais pas d\'inquiétude ; si vous ne le faites pas avant, vous pourrez toujours demander un nouveau mot de passe provisoire.
' - => 'Congratulations!
-Your ShipMember account has been created – you’re almost there.
-Surname: [[First name]] [[Surname]]
-Email: [[Email]]
-Temporary password: [[Password]]
-Just one more click: Log in to ShipHeart.tech to verify your ShipMember account by changing your temporary password (*). This is an important security measure that should not be overlooked.
-And then, wherever you are and as soon as your ShipHeart is installed, access your boat via your exclusive ShipMember account!
--
Welcome on board!
-The ShipHeart crew
--
(*) Activation must be completed by [[Date_maxi_activation]]. But don’t worry; if you don’t manage to do so by then, you can always request a new temporary password.
', - 'Votre accès ShipMember - Un dernier clic pour accéder à votre bateau !' - => 'Your ShipMember login – Just one more click to access your boat!', - 'Un email vient d\'être envoyé à [[Prenom]] [[Nom]] ([[Email]]) avec un mot de passe provisoire.' - => 'An email has just been sent to [[First name]] [[Surname]] ([[Email]]) containing a temporary password.', - 'Désolé, votre compte n\'a pas été activé dans le délai maximal.Bonjour,
-Le mot de passe de votre compte ShipMember vient d\'être réinitialisé à votre demande.
-Nom : [[Prenom]] [[Nom]]
-Email : [[Email]]
-Mot de passe provisoire : [[Password]]
-Plus qu’un clic : Connectez-vous sur Ship2net.fr pour activer votre compte ShipMember en modifiant votre mot de passe provisoire (*). C’est une garantie de sécurité à ne pas négliger...
-Bienvenue à nouveau parmi nous !
-L\'équipage ShipHeart
--
(*) L\'activation devra être faite avant le [[Date_maxi_activation]]. Mais pas d\'inquiétude ; si vous ne le faites pas avant, vous pourrez toujours demander un nouveau mot de passe provisoire.
' - => 'Hello,
-The password for your ShipMember account has just been reset at your request.
-Surname: [[First name]] [[Surname]]
-Email: [[Email]]
-Temporary password: [[Password]]
-Just one more click: Log in to Ship2net.fr to activate your ShipMember account by changing your temporary password (*). This is an important security measure that should not be overlooked...
-Welcome back!
-The ShipHeart team
--
(*) Activation must be completed by [[Date_maxi_activation]]. But don’t worry; if you don’t manage to do so by then, you can always request a new temporary password.
', - 'Votre demande concernant votre accès ShipMember' - => 'Your enquiry regarding your ShipMember access', - 'Un email vient d\'être envoyé à [[Prenom]] [[Nom]] ([[Email]]) avec les informations relatives à votre inscription.' - => 'An email has just been sent to [[First name]] [[Surname]] ([[Email]]) containing details of your registration.', - 'Bonjour,
-L\'adresse email associée à votre compte ShipMember vient d\'être modifiée à votre demande :
-Ancienne adresse : [[Old_email]]
Nouvelle adresse : [[New_email]]
-Si vous n\'êtes pas à l\'origine de ce changement d\'adresse, merci de contacter sans attendre l\'administrateur du site à : [[Adresse_email_alertes]].\'
-L\'équipage ShipHeart
' - => 'Hello,
-The email address associated with your ShipMember account has just been changed at your request:
-Old address: [[Old_email]]
New address: [[New_email]]
-If you did not request this change of address, please contact the site administrator immediately at: [[Alert_email_address]].\'
-The ShipHeart team
', - 'Modifications de votre accès ShipMember' - => 'Changes to your ShipMember access', - 'Connectez-vous' - => 'Log in', - 'Déjà ShipMember ?' - => 'Already ShipMember?', - 'Merci de vous identifier :' - => 'Thank you for logging in:', - 'Email' - => 'Email', - 'Saisissez votre adresse email...' - => 'Enter your email address...', - 'Mot de passe' - => 'Password', - 'Saisissez votre mot de passe...' - => 'Enter your password...', - 'Valider' - => 'Confirm', - 'Générer un nouveau mot de passe' - => 'Generate a new password', - 'Pas encore ShipMember ?' - => 'Not a ShipMember yet?', - 'Merci de renseigner vos coordonnées ; votre espace ShipMember sera créé immédiatement :' - => 'Please fill in your details; your ShipMember account will be created immediately.', - 'Prénom' - => 'First name', - 'Nom' - => 'Last name', - 'Entreprise' - => 'Company', - 'Numéro et rue' - => 'Number and street', - 'Numéro et nom de voie, bâtiment, appartement, lotissement, ...' - => 'Number and name of lane, building, flat, housing estate,...', - 'Code postal' - => 'Postcode', - 'Ville' - => 'City', - 'Pays' - => 'Country', - 'Téléphone' - => 'Phone', - 'Mon espace ShipMember' - => 'My ShipMember account', - 'Activation de mon compte' - => 'Activation of my account', - 'Votre compte n\'a pas encore été activé. Pour cela, merci de changer votre mot de passe provisoire ci-dessous.' - => 'Your account has not yet been activated. Please change your temporary password below.', - 'Nouveau mot de passe' - => 'New password', - 'Entre 6 et 20 caractères, et être composé exclusivement de minuscules, majuscules, de chiffres ou des caractères spéciaux suivants _-!*=.' - => 'Between 6 and 20 characters, and must consist exclusively of lower-case letters, upper-case letters, numbers or the following special characters _-!*=.', - 'Nouveau mot de passe (2)' - => 'New password (2)', - 'Saisissez à nouveau votre nouveau mot de passe...' - => 'Re-enter your new password...', - 'Générer un nouveau mot de passe provisoire' - => 'Generate a new temporary password', - 'Renseignez votre adresse email puis confirmez votre demande.Votre compte ShipMember est créé, vous y êtes presque.
+Nom : [[Prenom]] [[Nom]]
+Email : [[Email]]
+Mot de passe provisoire : [[Password]]
+Plus qu’un clic : Connectez-vous sur [[Url_site]] pour valider votre compte ShipMember en modifiant votre mot de passe provisoire (*). C’est une garantie de sécurité à ne pas négliger.
+Et ensuite, où que vous soyez et dès que votre ShipHeart est installé, accédez à votre bateau via votre accès privilégié ShipMember !
++
Bienvenue parmi nous !
+L\'équipage ShipHeart
++
(*) L\'activation devra être faite avant le [[Date_maxi_activation]]. Mais pas d\'inquiétude ; si vous ne le faites pas avant, vous pourrez toujours demander un nouveau mot de passe provisoire.
' + => 'Congratulations!
+Your ShipMember account has been created – you’re almost there.
+Name: [[Prenom]] [[Nom]]
+Email: [[Email]]
+Temporary password: [[Password]]
+Just one more click: Log in to [[Url_site]] to verify your ShipMember account by changing your temporary password (*). This is an important security measure that should not be overlooked.
+And then, wherever you are and as soon as your ShipHeart is installed, access your boat via your exclusive ShipMember account!
++
Welcome on board!
+The ShipHeart crew
++
(*) Activation must be completed by [[Date_maxi_activation]]. But don’t worry; if you don’t manage to do so by then, you can always request a new temporary password.
', + 'Félicitations : votre compte est maintenant activé et vous êtes d\'ores et déjà connecté.e.' + => 'Congratulations: your account is now active and you\'re already logged in.', + 'Fermer votre session...' + => 'Close your session...', + 'Générer un nouveau mot de passe' + => 'Generate a new password', + 'Générer un nouveau mot de passe provisoire' + => 'Generate a new temporary password', + 'Le mot de passe renseigné n\'est pas conforme. Pour la sécurité de vos données, il doit contenir entre 6 et 20 caractères, et être composé exclusivement de minuscules, de majuscules, de chiffres ou des caractères spéciaux suivants _-!*=.' + => 'The password you have entered is not valid. To ensure the security of your data, it must contain between 6 and 20 characters, and must consist exclusively of lower-case letters, upper-case letters, numbers or the following special characters _-!*=.', + 'Les deux mots de passe saisis doivent être identiques.' + => 'Both passwords shall be the same.', + 'Mais dès que ce sera le cas, vous trouverez ici l\'accès à votre ou vos bateaux.' + => 'But as soon as that happens, you’ll find access to your boat or boats here.', + 'Mentions légales' + => 'Legal notices', + 'Merci de renseigner vos coordonnées ; votre espace ShipMember sera créé immédiatement :' + => 'Please fill in your details; your ShipMember account will be created immediately.', + 'Merci de vous identifier :' + => 'Please log in:', + 'Mes informations' + => 'My information', + 'Modifications de votre accès ShipMember' + => 'Changes to your ShipMember access', + 'Modifier' + => 'Edit', + 'Modifier mes informations' + => 'Edit my details', + 'Mon bateau' + => 'My boat', + 'Mon espace ShipMember' + => 'My ShipMember account', + 'Mot de passe' + => 'Password', + 'Nom' + => 'Last name', + 'Nouveau mot de passe' + => 'New password', + 'Nouveau mot de passe (2)' + => 'New password (2)', + 'Numéro de ShipMember' + => 'ShipMember number', + 'Numéro et nom de voie, bâtiment, appartement, lotissement, ...' + => 'Number and name of street, building, flat, housing estate,...', + 'Numéro et rue' + => 'Number and street', + 'Pas encore ShipMember ?' + => 'Not a ShipMember yet?', + 'Pays' + => 'Country', + 'Pour chacun d\'eux, vous visualiserez l\'état de tous les circuits, leur consommation, le niveau des réservoirs et des batteries, mais aussi toutes les valeurs de vos capteurs : températures, pression atmosphérique, humidité, position géographique, etc...| Nom | +Entreprise | +Telephone | +|
|---|---|---|---|
| + + '.$shipmembers[$i]['Prenom'].' '.$shipmembers[$i]['Nom'].' + + | +'.$shipmembers[$i]['Entreprise'].' | +'.$shipmembers[$i]['Telephone'].' | +'.$shipmembers[$i]['Email'].' | +
| Nom complet | +'.$shipmember['Prenom'].' '.$shipmember['Nom'].' | +
| Entreprise | +'.$shipmember['Entreprise'].' | +
| Adresse | +'.$shipmember['Rue'].' - '.$shipmember['Code_postal'].' '.$shipmember['Ville'].' - '.$shipmember['Libelle_pays'].' | +
| Téléphone | +'.$shipmember['Telephone'].' | +
| '.$shipmember['Email'].' | +|
| Date création du compte | +'.Formatage_date($shipmember['Date_creation_compte']).' | +
| Niveau d\'accès | ++ | +
| Bateaux accessibles | +';
+ if ($nb_bateaux == 0) echo 'Aucun...';
+ else
+ {
+ for ($i=0; $i<$nb_bateaux; $i ++)
+ {
+ echo $bateaux[$i]['Nom'].' '; + } + } + echo ' |
+
Nom : [[Prenom]] [[Nom]]
Email : [[Email]]
Mot de passe provisoire : [[Password]]
-Plus qu’un clic : Connectez-vous sur ShipHeart.tech pour valider votre compte ShipMember en modifiant votre mot de passe provisoire (*). C’est une garantie de sécurité à ne pas négliger.
+Plus qu’un clic : Connectez-vous sur [[Url_site]] pour valider votre compte ShipMember en modifiant votre mot de passe provisoire (*). C’est une garantie de sécurité à ne pas négliger.
Et ensuite, où que vous soyez et dès que votre ShipHeart est installé, accédez à votre bateau via votre accès privilégié ShipMember !
Bienvenue parmi nous !
@@ -241,6 +230,7 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session $texte_email = str_replace("[[Nom]]", $_SESSION['shipmember']['Nom'], $texte_email); $texte_email = str_replace("[[Email]]", $_SESSION['shipmember']['Email'], $texte_email); $texte_email = str_replace("[[Password]]", $password, $texte_email); + $texte_email = str_replace("[[Url_site]]", URL_SITE, $texte_email); $texte_email = str_replace("[[Date_maxi_activation]]", $date_maxi_activation, $texte_email); Envoi_email('', $_SESSION['shipmember']['Email'], @@ -263,15 +253,15 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session // Créer le lien bateau shipmember, affecter l'enregitrement a cet utilisateur : if (isset($_SESSION['code_acces']) && $_SESSION['code_acces']!=''){ $code = $_SESSION['code_acces']; - $requete = 'SELECT * FROM TB_Lien_bateau_shipmember WHERE Validite=1 AND Code="'.$code.'" AND ID_Shipmember=0'; - $reponse = Requete_bdd($requete, __FILE__, __LINE__); + $requete = 'SELECT * FROM TB_Lien_bateau_shipmember WHERE Validite=1 AND Code=? AND ID_Shipmember=0'; + $reponse = Requete_preparee_bdd($requete, array(array('s', $code)), __FILE__, __LINE__); $donnees = Recherche_ligne_bdd($reponse); Liberation_jeu_de_resultat_bdd($reponse); if ($donnees == NULL) $message_erreur .= "Code invalide ou déjà utilisé \n"; else { - $sous_req = 'UPDATE TB_Lien_bateau_shipmember SET ID_Shipmember='.$_SESSION['shipmember']['Cle_primaire'].' WHERE Validite=1 AND Code="'.$code.'" AND ID_Shipmember=0'; - $sous_rep = Requete_bdd($sous_req, __FILE__, __LINE__); + $sous_req = 'UPDATE TB_Lien_bateau_shipmember SET ID_Shipmember=? WHERE Validite=1 AND Code=? AND ID_Shipmember=0'; + $sous_rep = Requete_preparee_bdd($sous_req, array(array('i', $_SESSION['shipmember']['Cle_primaire']), array('s', $code)), __FILE__, __LINE__); } $_SESSION['code_acces'] = ''; } @@ -307,7 +297,7 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session $email = Protection_mysql(strtolower($_POST['email_validation'])); // On ajoute les caractères d'échappement sur l'email qui sera envoyé dans la requête $mdp = $_POST['mdp_validation']; // Le MDP n'est pas envoyé... - $requete = 'SELECT ID AS Cle_primaire, Validite, Nom, Prenom, Entreprise, Rue, Code_postal, Ville, Telephone, Email, ID_Stripe, Mdp, Date_creation_compte, Niveau_acces, ID_PAYS AS ID_Pays, ID_LANGUAGES, (SELECT 1 FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Compte_a_activer, (SELECT Date_creation_mdp FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Date_creation_mdp FROM TB_Shipmembers WHERE Email=? '; + $requete = 'SELECT ID AS Cle_primaire, Validite, Nom, Prenom, Entreprise, Rue, Code_postal, Ville, Telephone, Email, Mdp, Date_creation_compte, Niveau_acces, ID_PAYS AS ID_Pays, ID_LANGUAGES, (SELECT 1 FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Compte_a_activer, (SELECT Date_creation_mdp FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Date_creation_mdp FROM TB_Shipmembers WHERE Email=? '; $reponse = Requete_preparee_bdd($requete, array( array('s', $email)), @@ -349,7 +339,7 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session __FILE__, __LINE__); // Recherche des informations du ShipMember : - $requete = 'SELECT ID AS Cle_primaire, Validite, Nom, Prenom, Entreprise, Rue, Code_postal, Ville, Telephone, Email, ID_Stripe, Mdp, Date_creation_compte, Niveau_acces, ID_PAYS AS ID_Pays, ID_LANGUAGES, (SELECT 1 FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Compte_a_activer, (SELECT Date_creation_mdp FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Date_creation_mdp FROM TB_Shipmembers WHERE ID=?'; + $requete = 'SELECT ID AS Cle_primaire, Validite, Nom, Prenom, Entreprise, Rue, Code_postal, Ville, Telephone, Email, Mdp, Date_creation_compte, Niveau_acces, ID_PAYS AS ID_Pays, ID_LANGUAGES, (SELECT 1 FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Compte_a_activer, (SELECT Date_creation_mdp FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Date_creation_mdp FROM TB_Shipmembers WHERE ID=?'; $reponse = Requete_preparee_bdd($requete, array( array('i', $_SESSION['shipmember']['Cle_primaire'])), @@ -376,8 +366,8 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session // Créer le lien bateau shipmember, affecter l'enregitrement a cet utilisateur if (isset($_SESSION['code_acces']) && $_SESSION['code_acces']!=''){ $code = $_SESSION['code_acces']; - $requete = 'SELECT * FROM TB_Lien_bateau_shipmember WHERE Validite=1 AND Code="'.$code.'" AND ID_Shipmember=0'; - $reponse = Requete_bdd($requete, __FILE__, __LINE__); + $requete = 'SELECT * FROM TB_Lien_bateau_shipmember WHERE Validite=1 AND Code=? AND ID_Shipmember=0'; + $reponse = Requete_preparee_bdd($requete, array(array('s', $code)), __FILE__, __LINE__); $donnees = Recherche_ligne_bdd($reponse); // Vérifier si le code est tjrs valable if ($donnees == NULL){ @@ -385,8 +375,8 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session $_SESSION['code_acces'] = ''; } else { - $sous_req = 'UPDATE TB_Lien_bateau_shipmember SET ID_Shipmember = '.$_SESSION['shipmember']['Cle_primaire'].' WHERE Validite=1 AND Code="'.$code.'" AND ID_Shipmember=0'; - $sous_rep = Requete_bdd($sous_req, __FILE__, __LINE__); + $sous_req = 'UPDATE TB_Lien_bateau_shipmember SET ID_Shipmember=? WHERE Validite=1 AND Code=? AND ID_Shipmember=0'; + $sous_rep = Requete_preparee_bdd($sous_req, array(array('i', $_SESSION['shipmember']['Cle_primaire']), array('s', $code)), __FILE__, __LINE__); $_SESSION['code_acces'] = ''; // $_SESSION['droits_acces'] = $donnees['Niveau_acces']; } @@ -429,7 +419,7 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session $new_mdp = $_POST['Mot_de_passe_1']; // Recherche du MDP existant de l'adhérent : - $requete = 'SELECT ID AS Cle_primaire, Validite, Nom, Prenom, Entreprise, Rue, Code_postal, Ville, Telephone, Email, ID_Stripe, Mdp, Date_creation_compte, Niveau_acces, ID_PAYS AS ID_Pays, ID_LANGUAGES, (SELECT 1 FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Compte_a_activer, (SELECT Date_creation_mdp FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Date_creation_mdp FROM TB_Shipmembers WHERE ID=?'; + $requete = 'SELECT ID AS Cle_primaire, Validite, Nom, Prenom, Entreprise, Rue, Code_postal, Ville, Telephone, Email, Mdp, Date_creation_compte, Niveau_acces, ID_PAYS AS ID_Pays, ID_LANGUAGES, (SELECT 1 FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Compte_a_activer, (SELECT Date_creation_mdp FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Date_creation_mdp FROM TB_Shipmembers WHERE ID=?'; $reponse = Requete_preparee_bdd($requete, array( array('i', $_SESSION['shipmember']['Cle_primaire'])), @@ -439,7 +429,7 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session // Vérification que le mot de passe est changé : // if (Hash_Mdp($new_mdp) == $shipmember['Mdp']) $message_erreur .= nl2br(Recuperation_texte('all','all','erreurs','pwd_egal_temporaire')); - if (password_verify($new_mdp, $shipmember['Mdp'])) $message_erreur .= nl2br(t("Pour des raisons de sécurité, votre nouveau mot de passe ne peut pas être identique au mot de passe provisoire.")); + if (password_verify($new_mdp, $shipmember['Mdp'])) $message_erreur .= t("Pour des raisons de sécurité, votre nouveau mot de passe ne peut pas être identique au mot de passe provisoire."); else { // Mise à jour du nouveau mot de passe : @@ -502,16 +492,20 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session { $nb_emails_valides = 0; - $requete = 'SELECT ID AS Cle_primaire, Validite, Nom, Prenom, Entreprise, Rue, Code_postal, Ville, Telephone, Email, ID_Stripe, Mdp, Date_creation_compte, Niveau_acces, ID_PAYS AS ID_Pays, ID_LANGUAGES, (SELECT 1 FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Compte_a_activer, (SELECT Date_creation_mdp FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Date_creation_mdp FROM TB_Shipmembers WHERE Validite=1 AND Email=? '; + $requete = 'SELECT ID AS Cle_primaire, Validite, Nom, Prenom, Entreprise, Rue, Code_postal, Ville, Telephone, Email, Mdp, Date_creation_compte, Niveau_acces, ID_PAYS AS ID_Pays, ID_LANGUAGES, (SELECT 1 FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Compte_a_activer, (SELECT Date_creation_mdp FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Date_creation_mdp FROM TB_Shipmembers WHERE Validite=1 AND Email=? '; $reponse = Requete_preparee_bdd($requete, array( array('s', $_SESSION['shipmember']['Email'])), __FILE__, __LINE__); while ($donnees = Recherche_ligne_bdd($reponse)) { - $_SESSION['shipmember']['Cle_primaire'] = $donnees['Cle_primaire']; - $_SESSION['shipmember']['Prenom'] = $donnees['Prenom']; - $_SESSION['shipmember']['Nom'] = $donnees['Nom']; + // Ces informations ne servent qu'à composer l'e-mail : NE PAS écrire + // $_SESSION['shipmember'], pour ne pas laisser en session l'identité d'un + // compte QUE L'ON N'A PAS ENCORE AUTHENTIFIÉ (n'importe qui peut demander la + // réinitialisation du mot de passe d'une adresse qui n'est pas la sienne). + $cle_primaire_demande = $donnees['Cle_primaire']; + $prenom_demande = $donnees['Prenom']; + $nom_demande = $donnees['Nom']; $nb_emails_valides ++; } Liberation_jeu_de_resultat_bdd($reponse); @@ -525,20 +519,20 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session $requete = 'DELETE FROM TB_Activation WHERE ID_SHIPMEMBERS=?'; Requete_preparee_bdd($requete, array( - array('i', $_SESSION['shipmember']['Cle_primaire'])), + array('i', $cle_primaire_demande)), __FILE__, __LINE__); $requete = 'UPDATE TB_Shipmembers SET Mdp=? WHERE ID=?'; Requete_preparee_bdd($requete, array( array('s', password_hash($password, PASSWORD_DEFAULT)), - array('i', $_SESSION['shipmember']['Cle_primaire'])), + array('i', $cle_primaire_demande)), __FILE__, __LINE__); $requete = 'INSERT INTO TB_Activation(ID_SHIPMEMBERS) VALUES (?)'; Requete_preparee_bdd($requete, array( - array('s', $_SESSION['shipmember']['Cle_primaire'])), + array('s', $cle_primaire_demande)), __FILE__, __LINE__); // Mémorisation dans l'historique de la connexion : @@ -547,9 +541,9 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session array( array('i', SYSTEME), array('i', SYSTEME_REINIT_MDP_USER), - array('i', $_SESSION['shipmember']['Cle_primaire']), + array('i', $cle_primaire_demande), array('i', 0), - array('s', 'Réinitialisation du mot de passe de '.$_SESSION['shipmember']['Prenom'].' '.$_SESSION['shipmember']['Prenom'].' [N° '.$_SESSION['shipmember']['Cle_primaire'].']')), + array('s', 'Réinitialisation du mot de passe de '.$prenom_demande.' '.$prenom_demande.' [N° '.$cle_primaire_demande.']')), __FILE__, __LINE__); @@ -565,39 +559,39 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la sessionNom : [[Prenom]] [[Nom]]
Email : [[Email]]
Mot de passe provisoire : [[Password]]
-Plus qu’un clic : Connectez-vous sur ShipHeart.tech pour activer votre compte ShipMember en modifiant votre mot de passe provisoire (*). C’est une garantie de sécurité à ne pas négliger...
+Plus qu’un clic : Connectez-vous sur [[Url_site]] pour activer votre compte ShipMember en modifiant votre mot de passe provisoire (*).
Bienvenue à nouveau parmi nous !
L'équipage ShipHeart
(*) L'activation devra être faite avant le [[Date_maxi_activation]]. Mais pas d'inquiétude ; si vous ne le faites pas avant, vous pourrez toujours demander un nouveau mot de passe provisoire.
"); // Mise à jour des parametres du texte : - $texte_email = str_replace("[[Prenom]]", $_SESSION['shipmember']['Prenom'], $texte_email); - $texte_email = str_replace("[[Nom]]", $_SESSION['shipmember']['Nom'], $texte_email); + $texte_email = str_replace("[[Prenom]]", $prenom_demande, $texte_email); + $texte_email = str_replace("[[Nom]]", $nom_demande, $texte_email); $texte_email = str_replace("[[Email]]", $_SESSION['shipmember']['Email'], $texte_email); $texte_email = str_replace("[[Password]]", $password, $texte_email); + $texte_email = str_replace("[[Url_site]]", URL_SITE, $texte_email); $texte_email = str_replace("[[Date_maxi_activation]]", $date_maxi_activation, $texte_email); Envoi_email('', $_SESSION['shipmember']['Email'], t("Votre demande concernant votre accès ShipMember"), $texte_email, "ShipHeart by Koriolan", $_SESSION['Config__Adresse_email_shipmember'], ''); - //Fin......................................................................... //............................................................................ // Message d'information : $message = t("Un email vient d'être envoyé à [[Prenom]] [[Nom]] ([[Email]]) avec les informations relatives à votre inscription.")."Bonjour,
L'adresse email associée à votre compte ShipMember vient d'être modifiée à votre demande :
Ancienne adresse : [[Old_email]]
Nouvelle adresse : [[New_email]]
-Si vous n'êtes pas à l'origine de ce changement d'adresse, merci de contacter sans attendre l'administrateur du site à : [[Adresse_email_alertes]].'
+Si vous n'êtes pas à l'origine de ce changement d'adresse, merci de contacter sans attendre l'administrateur du site à : [[Adresse_email_alertes]]
L'équipage ShipHeart
"); // Mise à jour des parametres du texte : @@ -830,7 +824,7 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session case "Accueil": { // Mise à jour des données du ShipMember (au cas où) : - $requete = 'SELECT ID AS Cle_primaire, Validite, Nom, Prenom, Entreprise, Rue, Code_postal, Ville, Telephone, Email, ID_Stripe, Mdp, Date_creation_compte, Niveau_acces, ID_PAYS AS ID_Pays, ID_LANGUAGES, (SELECT 1 FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Compte_a_activer, (SELECT Date_creation_mdp FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Date_creation_mdp FROM TB_Shipmembers WHERE ID=?'; + $requete = 'SELECT ID AS Cle_primaire, Validite, Nom, Prenom, Entreprise, Rue, Code_postal, Ville, Telephone, Email, Mdp, Date_creation_compte, Niveau_acces, ID_PAYS AS ID_Pays, ID_LANGUAGES, (SELECT 1 FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Compte_a_activer, (SELECT Date_creation_mdp FROM TB_Activation WHERE ID_SHIPMEMBERS=ID) AS Date_creation_mdp FROM TB_Shipmembers WHERE ID=?'; $reponse = Requete_preparee_bdd($requete, array( array('i', $_SESSION['shipmember']['Cle_primaire'])), @@ -845,8 +839,8 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session // Créer le lien bateau shipmember, affecter l'enregitrement a cet utilisateur if (isset($_SESSION['code_acces']) && $_SESSION['code_acces']!=''){ $code = $_SESSION['code_acces']; - $requete = 'SELECT * FROM TB_Lien_bateau_shipmember WHERE Validite=1 AND Code="'.$code.'" AND ID_Shipmember=0'; - $reponse = Requete_bdd($requete, __FILE__, __LINE__); + $requete = 'SELECT * FROM TB_Lien_bateau_shipmember WHERE Validite=1 AND Code=? AND ID_Shipmember=0'; + $reponse = Requete_preparee_bdd($requete, array(array('s', $code)), __FILE__, __LINE__); $donnees = Recherche_ligne_bdd($reponse); // Vérifier si le code est tjrs valable if ($donnees == NULL){ @@ -854,8 +848,8 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session $_SESSION['code_acces'] = ''; } else { - $sous_req = 'UPDATE TB_Lien_bateau_shipmember SET ID_Shipmember='.$_SESSION['shipmember']['Cle_primaire'].' WHERE Validite=1 AND Code="'.$code.'" AND ID_Shipmember=0'; - $sous_rep = Requete_bdd($sous_req, __FILE__, __LINE__); + $sous_req = 'UPDATE TB_Lien_bateau_shipmember SET ID_Shipmember=? WHERE Validite=1 AND Code=? AND ID_Shipmember=0'; + $sous_rep = Requete_preparee_bdd($sous_req, array(array('i', $_SESSION['shipmember']['Cle_primaire']), array('s', $code)), __FILE__, __LINE__); $_SESSION['code_acces'] = ''; // $_SESSION['droits_acces'] = $donnees['Niveau_acces']; } @@ -878,116 +872,9 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session break; } - //**************************************************************************************************************************** - case "Administration": - { - // Protection contre les accès directs : - if ((!$_SESSION['acces_valide']) OR ($_SESSION['shipmember']['Niveau_acces'] < NIVEAU_MINI_ACCES_ADMINISTATEUR)) header('Location:shipmembers.php?action=navigation&destination=Login'); - - // Récupération des informations sur les ShipMembers : - $nb_shipmembers = 0; - - $requete = 'SELECT * FROM TB_Shipmembers WHERE Validite=1 ORDER BY ID ASC'; - $reponse = Requete_preparee_bdd($requete, - array(), - __FILE__, __LINE__); - while ($donnees = Recherche_ligne_bdd($reponse)) - { - $shipmembers[$nb_shipmembers ++] = $donnees; - } - Liberation_jeu_de_resultat_bdd($reponse); - - break; - } - //**************************************************************************************************************************** - case "Details": - { - // Modifier les droits d'accès d'un utilisateur - if (isset($_POST['acces'])){ - $requete = 'UPDATE TB_Shipmembers SET Niveau_acces=? WHERE ID=?'; - $reponse = Requete_preparee_bdd($requete, - array( - array('i', $_POST['acces']), - array('i', $_SESSION['Shipmembers']['ID'])), - __FILE__, __LINE__); - - } - - // Récupération des informations sur le ShipMember : - $requete = 'SELECT *, (SELECT Texte FROM TB_Textes_traduction WHERE ID_TYPE = 1 AND ID_TEXTES=(SELECT ID_NOM FROM TB_Pays WHERE ID=TB_Shipmembers.ID_PAYS) AND ID_LANGUAGES=1) AS Libelle_pays FROM TB_Shipmembers WHERE ID='.$_SESSION['Shipmembers']['ID'].' '; - $reponse = Requete_preparee_bdd($requete, - array(), - __FILE__, __LINE__); - while ($donnees = Recherche_ligne_bdd($reponse)) - { - $shipmember = $donnees; - } - Liberation_jeu_de_resultat_bdd($reponse); - - $requete = ''; - - // Récupération des informations sur le ou les bateaux accessibles à ce ShipMember : - $nb_bateaux = 0; - $requete = 'SELECT * FROM TB_Lien_bateau_shipmember WHERE ID_SHIPMEMBER=? '; - $reponse = Requete_preparee_bdd($requete, - array( - array('i', $_SESSION['Shipmembers']['ID'])), - __FILE__, __LINE__); - while ($donnees = Recherche_ligne_bdd($reponse)) - { - $bateaux[$nb_bateaux ++]['Cle_primaire'] = $donnees['ID_Bateau']; - } - Liberation_jeu_de_resultat_bdd($reponse); - - // Récupération des informations relatives à chacun des bateaux accessibles : - for ($i=0; $i<$nb_bateaux; $i ++) - { - $requete = 'SELECT * FROM TB_Bateaux WHERE Cle_primaire=? '; - $reponse = Requete_preparee_bdd($requete, - array( - array('i', $bateaux[$i]['Cle_primaire'])), - __FILE__, __LINE__); - while ($donnees = Recherche_ligne_bdd($reponse)) - { - $bateaux[$i] = $donnees; - } - Liberation_jeu_de_resultat_bdd($reponse); - } - // Créer le lien bateau shipmember, affecter l'enregitrement a cet utilisateur - if (isset($_SESSION['code_acces']) && $_SESSION['code_acces']!=''){ - $code = $_SESSION['code_acces']; - $requete = 'SELECT * FROM TB_Lien_bateau_shipmember WHERE Validite=1 AND Code="'.$code.'" AND ID_Shipmember=0'; - $reponse = Requete_bdd($requete, __FILE__, __LINE__); - $donnees = Recherche_ligne_bdd($reponse); - // Vérifier si le code est tjrs valable - if ($donnees == NULL){ - $message_erreur .= "Code invalide ou déjà utilisé \n"; - $_SESSION['code_acces'] = ''; - } - else { - $sous_req = 'UPDATE TB_Lien_bateau_shipmember SET ID_Shipmember='.$_SESSION['shipmember']['Cle_primaire'].' WHERE Validite=1 AND Code="'.$code.'" AND ID_Shipmember=0'; - $sous_rep = Requete_bdd($sous_req, __FILE__, __LINE__); - $_SESSION['code_acces'] = ''; - // $_SESSION['droits_acces'] = $donnees['Niveau_acces']; - } - } - - // Récupération des liaisons shipmember - bateau - - $current_timestamp = date_format(date_create(), 'Y-m-d H:i:s'); - $requete = 'SELECT ID_Bateau, ID_Type_acces_bateau_shipmember FROM TB_Lien_bateau_shipmember WHERE ID_Shipmember='.$_SESSION['shipmember']['Cle_primaire'].' AND Validite=1 AND Validite_acces=1 AND Fin_validite>="'.$current_timestamp.'"'; - $reponse = Requete_bdd($requete, __FILE__, __LINE__); - $nb_acces = 0; - // $bateau_shipmember = [] - while ($donnees = Recherche_ligne_bdd($reponse)) { - $_SESSION['bateau_shipmember'][$nb_acces++] = $donnees; - } - $_SESSION['acces'] = $nb_acces; - // $_SESSION['acces_valide'] = true; - - break; - } + + //**************************************************************************************************************************** case "Profil": @@ -1082,8 +969,8 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session // Créer le lien bateau shipmember, affecter l'enregitrement a cet utilisateur if (isset($_SESSION['code_acces']) && $_SESSION['code_acces']!=''){ $code = $_SESSION['code_acces']; - $requete = 'SELECT * FROM TB_Lien_bateau_shipmember WHERE Validite=1 AND Code="'.$code.'" AND ID_Shipmember=0'; - $reponse = Requete_bdd($requete, __FILE__, __LINE__); + $requete = 'SELECT * FROM TB_Lien_bateau_shipmember WHERE Validite=1 AND Code=? AND ID_Shipmember=0'; + $reponse = Requete_preparee_bdd($requete, array(array('s', $code)), __FILE__, __LINE__); $donnees = Recherche_ligne_bdd($reponse); // Vérifier si le code est tjrs valable if ($donnees == NULL){ @@ -1091,8 +978,8 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session $_SESSION['code_acces'] = ''; } else { - $sous_req = 'UPDATE TB_Lien_bateau_shipmember SET ID_Shipmember = '.$_SESSION['shipmember']['Cle_primaire'].' WHERE Validite=1 AND Code="'.$code.'" AND ID_Shipmember=0'; - $sous_rep = Requete_bdd($sous_req, __FILE__, __LINE__); + $sous_req = 'UPDATE TB_Lien_bateau_shipmember SET ID_Shipmember=? WHERE Validite=1 AND Code=? AND ID_Shipmember=0'; + $sous_rep = Requete_preparee_bdd($sous_req, array(array('i', $_SESSION['shipmember']['Cle_primaire']), array('s', $code)), __FILE__, __LINE__); $_SESSION['code_acces'] = ''; // $_SESSION['droits_acces'] = $donnees['Niveau_acces']; } @@ -1444,7 +1331,6 @@ Init_session(basename($_SERVER['SCRIPT_NAME'])); // Fonction ouvrant la session echo '| Nom | -Entreprise | -Telephone | -|
|---|---|---|---|
| - - '.$shipmembers[$i]['Prenom'].' '.$shipmembers[$i]['Nom'].' - - | -'.$shipmembers[$i]['Entreprise'].' | -'.$shipmembers[$i]['Telephone'].' | -'.$shipmembers[$i]['Email'].' | -
| Nom complet | -'.$shipmember['Prenom'].' '.$shipmember['Nom'].' | -
| Entreprise | -'.$shipmember['Entreprise'].' | -
| Adresse | -'.$shipmember['Rue'].' - '.$shipmember['Code_postal'].' '.$shipmember['Ville'].' - '.$shipmember['Libelle_pays'].' | -
| Téléphone | -'.$shipmember['Telephone'].' | -
| '.$shipmember['Email'].' | -|
| Date création du compte | -'.Formatage_date($shipmember['Date_creation_compte']).' | -
| Niveau d\'accès | -- | -
| Bateaux accessibles | -';
- if ($nb_bateaux == 0) echo 'Aucun...';
- else
- {
- for ($i=0; $i<$nb_bateaux; $i ++)
- {
- echo $bateaux[$i]['Nom'].' '; - } - } - echo ' |
-