From 6bb72e4da91467db5de0be3355423cde542165cc Mon Sep 17 00:00:00 2001
From: Nicolas Dubois <nicdub@gmx.ch>
Date: Fri, 25 Oct 2019 10:25:34 +0200
Subject: [PATCH] Add job name in email to managers

---
 canapEPFL/cible.php               | 12 +++++++++++-
 canapEPFL/helpers.php             | 27 +++++++++++++++++++++++----
 canapEPFL/models/DBController.php | 11 +++++++++++
 3 files changed, 45 insertions(+), 5 deletions(-)

diff --git a/canapEPFL/cible.php b/canapEPFL/cible.php
index 872b7ed..c28191c 100644
--- a/canapEPFL/cible.php
+++ b/canapEPFL/cible.php
@@ -22,6 +22,14 @@
         if (isset($_GET['edit'])) {
           // update data
           updatePostulation($pdo, $candidateData, $_FILES);
+          
+          // get job name
+          $job = $DBController->getPositionName($candidateData->formation);
+          if ($SENDEMAILS) {
+            mailToResp($candidateData->prenomApprenti, $candidateData->nomApprenti, $job);
+            mailToApprenti($candidateData->mailApprenti);
+          }
+          
           include("templates/confirmationText.php");
         } else {
           // write infos in DB
@@ -34,8 +42,10 @@
           // insert files in DB
           insertFiles($pdo, $candidateData->fichiers, $candidateId, $candidateData->rootpath);
 
+          // get job name
+          $job = $DBController->getPositionName($candidateData->formation);
           if ($SENDEMAILS) {
-            mailToResp($candidateData->prenomApprenti, $candidateData->nomApprenti, $candidateData->formation);
+            mailToResp($candidateData->prenomApprenti, $candidateData->nomApprenti, $job);
             mailToApprenti($candidateData->mailApprenti);
           }
           // kill session
diff --git a/canapEPFL/helpers.php b/canapEPFL/helpers.php
index d3ba44c..22d17d4 100644
--- a/canapEPFL/helpers.php
+++ b/canapEPFL/helpers.php
@@ -1,13 +1,32 @@
 <?php
 #region [Mail Sendings]
 function mailToResp($surname, $name, $job){
-  require_once("templates/mails/mailToResp.php");
-  mail($to, $subject, $message, $headers);
+  global $EMAIL_FORMATION, $EMAIL_FROM, $EMAIL_REPLY_TO;
+
+  $subject = 'Nouvelle Candidature';
+  
+  $message = "Candidat: $surname $name\r\n".
+      "Profession: $job\r\n".
+      "Consulter la candidature sur: https://canap-gest.epfl.ch/";
+  
+  $headers = "From: $EMAIL_FROM\r\n" .
+      "Reply-To: $EMAIL_REPLY_TO\r\n" .
+      "X-Mailer: PHP/" . phpversion();
+    mail($EMAIL_FORMATION, $subject, $message, $headers);
 }
 
 function mailToApprenti($to){
-  require_once("templates/mails/mailToApp.php");
-  mail($to, $subject, $message, $headers);
+  global $EMAIL_FROM, $EMAIL_REPLY_TO;
+
+  $subject = 'Votre candidature pour une place d\'apprentissage';
+
+  $message = file_get_contents('./templates/mails/apprenticeMailTemplate.html');
+  
+  $headers = "From: $EMAIL_FROM\r\n" .
+      "Content-type: text/html; charset=utf8\r\n" .
+      "Reply-To: $EMAIL_REPLY_TO\r\n" .
+      "X-Mailer: PHP/" . phpversion();
+    mail($to, $subject, $message, $headers);
 }
 #endregion
 
diff --git a/canapEPFL/models/DBController.php b/canapEPFL/models/DBController.php
index 40fef32..59fed06 100644
--- a/canapEPFL/models/DBController.php
+++ b/canapEPFL/models/DBController.php
@@ -15,4 +15,15 @@ class DBController {
     $query->execute();
     return $query->fetchAll();
   }
+
+  public function getPositionName(int $positionId)
+  {
+    $sqlreq = "SELECT * FROM position JOIN job ON job_id = fk_job JOIN location ON fk_location = location_id WHERE position_id = :position";
+    $query = $this->pdo->prepare($sqlreq);
+    $query->bindParam(':position', $positionId, PDO::PARAM_INT);
+    $query->execute();
+    $job = $query->fetch();
+    return "{$job["job_full_value"]} ({$job["location_site"]})";
+}
+
 }
\ No newline at end of file
-- 
GitLab