diff --git a/candidatures.php b/candidatures.php index 0708408..647ee45 100644 --- a/candidatures.php +++ b/candidatures.php @@ -27,7 +27,7 @@ if (isset($_COOKIE['username']) && isset($_COOKIE['pass'])) { $query_candidatures->execute(['user' => $_COOKIE["username"]]); $results_candidatures = $query_candidatures->fetchALL(PDO::FETCH_OBJ); } else if ($results_perm[0]->name_role == "Pilote") { - $sql = 'SELECT ID_candidature, ID_user, username, firstname_user, lastname_user, progression_candidature, cv_file_path_candidature, lm_file_path_candidature, validation_form_file_path_candidature, internship_agreement_file_path_candidature, name_internship, name_company, email_company, city_localisation, postal_code_localisation FROM users NATURAL JOIN user_belong_promo NATURAL JOIN promotions NATURAL JOIN roles NATURAL JOIN candidatures INNER JOIN internships ON candidatures.ID_internship=internships.ID_internship NATURAL JOIN companies INNER JOIN localisations ON internships.ID_localisation=localisations.ID_localisation WHERE name_role="Etudiant" AND ID_promotion IN (SELECT ID_promotion FROM users NATURAL JOIN user_belong_promo NATURAL JOIN promotions WHERE username=:user);'; + $sql = 'SELECT ID_candidature, ID_user, username, firstname_user, lastname_user, progression_candidature, cv_file_path_candidature, lm_file_path_candidature, validation_form_file_path_candidature, internship_agreement_file_path_candidature, name_internship, name_company, email_company, city_localisation, postal_code_localisation FROM users NATURAL JOIN user_belong_promo NATURAL JOIN promotions NATURAL JOIN roles NATURAL JOIN candidatures INNER JOIN internships ON candidatures.ID_internship=internships.ID_internship NATURAL JOIN companies INNER JOIN localisations ON internships.ID_localisation=localisations.ID_localisation WHERE name_role="Etudiant" AND ID_promotion IN (SELECT ID_promotion FROM users NATURAL JOIN user_belong_promo NATURAL JOIN promotions WHERE username=:user) ORDER BY lastname_user ASC;'; $query_candidatures = $bdd->prepare($sql); $query_candidatures->execute(['user' => $_COOKIE["username"]]); $results_candidatures = $query_candidatures->fetchALL(PDO::FETCH_OBJ); @@ -63,7 +63,7 @@ if (isset($_COOKIE['username']) && isset($_COOKIE['pass'])) { progression_candidature == 0) {echo "Vous avez indiquez que l'entreprise a répondu négativemet à votre demande.
Ne perdez pas espoir :)";} else if ($result->progression_candidature == 1) {?> -
Status
+
Status progression_candidature ?>
La candidature est actuellement en attente de réponse de l'entreprise.
Prochaine étape:
A partir de l'adresse email de l'entreprise, nous vous invitons à la contacter afin de leur adresser votre CV et lettre de motivation. @@ -94,7 +94,7 @@ if (isset($_COOKIE['username']) && isset($_COOKIE['pass'])) { ?> progression_candidature == 2) { ?> -
Status
+
Statut progression_candidature ?>
La candidature est actuellement en attendre d'une fiche de validation de sujet de stage complétée et signée par l'entreprise.
Prochaine étape:
A présent, vous pouvez envoyer la fiche de validation à l'entreprise pour ensuite la déposer complétée ci-dessous. @@ -116,7 +116,7 @@ if (isset($_COOKIE['username']) && isset($_COOKIE['pass'])) { echo '
Vous n\'avez pas la permission d\'entrer la réponse de l\'entreprise... Veuillez contacter votre pilote ou délégué(e).'; } } else if ($result->progression_candidature == 3) { ?> -
Status
+
Statut progression_candidature ?>
La candidature est actuellement en attendre d'une fiche de validation de sujet de stage signée par le pilote.
Prochaine étape:
Le pilote a été averti de votre dépôt. Il signera votre fiche de validation @@ -189,71 +189,50 @@ if (isset($_COOKIE['username']) && isset($_COOKIE['pass'])) {
- name_company; ?> + lastname_user ?> firstname_user ?>
city_localisation; ?> postal_code_localisation; ?> - email_company; ?>
progression_candidature == 0) {echo "Vous avez indiquez que l'entreprise a répondu négativemet à votre demande.
Ne perdez pas espoir :)";} else if ($result->progression_candidature == 1) {?> -
Status
+
Statut progression_candidature ?>
La candidature est actuellement en attente de réponse de l'entreprise.
Prochaine étape:
- A partir de l'adresse email de l'entreprise, nous vous invitons à la contacter afin de leur adresser votre CV et lettre de motivation. -
- - prepare('SELECT code_permission FROM users NATURAL JOIN roles NATURAL JOIN roles_has_permissions NATURAL JOIN permissions WHERE code_permission="SFx31" AND username=:user;'); - $query_perm_step2->execute(['user' => $_COOKIE["username"]]); - if ($query_perm_step2->rowCount() >= 1) { - echo '
Est-ce que la réponse de l\'entreprise est positive ?
'; - ?> -
- - - - -
-
- - - - -
- Vous n\'avez pas la permission d\'entrer la réponse de l\'entreprise... Veuillez contacter votre pilote ou délégué(e).'; - } - ?> + L'étudiant a envoyé son CV et sa lettre de motivation et est dans l'attente d'une réponse de l'entreprise, il indiquera la réponse de cette dernière dès que possible. + progression_candidature == 2) { ?> -
Status
+
Statut progression_candidature ?>
La candidature est actuellement en attendre d'une fiche de validation de sujet de stage complétée et signée par l'entreprise.
Prochaine étape:
- A présent, vous pouvez envoyer la fiche de validation à l'entreprise pour ensuite la déposer complétée ci-dessous. + L'étudiant a envoyé la fiche de validation de sujet de stage à l'entreprise. Vous serez aerti par mail lorsqu'il la déposera.
- prepare('SELECT code_permission FROM users NATURAL JOIN roles NATURAL JOIN roles_has_permissions NATURAL JOIN permissions WHERE code_permission="SFx32" AND username=:user;'); + + progression_candidature == 3) { ?> +
Statut progression_candidature ?>
+
La candidature est actuellement en attendre d'une fiche de validation de sujet de stage signée par le pilote.
+
Prochaine étape:
+ Vous pouvez dès à présent signer la fiche de validation de sujet de stage que l'étudiant a déposé. +
+ prepare('SELECT code_permission FROM users NATURAL JOIN roles NATURAL JOIN roles_has_permissions NATURAL JOIN permissions WHERE code_permission="SFx33" AND username=:user;'); $query_perm_step3->execute(['user' => $_COOKIE["username"]]); if ($query_perm_step3->rowCount() >= 1) { ?>
-
+
+
Vous n\'avez pas la permission d\'entrer la réponse de l\'entreprise... Veuillez contacter votre pilote ou délégué(e).'; - } - } else if ($result->progression_candidature == 3) { ?> -
Status
-
La candidature est actuellement en attendre d'une fiche de validation de sujet de stage signée par le pilote.
-
Prochaine étape:
- Le pilote a été averti de votre dépôt. Il signera votre fiche de validation -
+ } ?>
diff --git a/controller/Manage_candidatures.php b/controller/Manage_candidatures.php index 67de71f..e4e050e 100644 --- a/controller/Manage_candidatures.php +++ b/controller/Manage_candidatures.php @@ -103,6 +103,67 @@ if (isset($_COOKIE['username']) && isset($_COOKIE['pass'])) { } } } + } else if ($progression_candidature == "3") { + $ID_user = $_POST["ID_user"]; + if (isset($_POST["ID_user"])) { + $query_perm_step4 = $bdd->prepare('SELECT ID_user, code_permission, firstname_user, lastname_user FROM users NATURAL JOIN roles NATURAL JOIN roles_has_permissions NATURAL JOIN permissions WHERE code_permission="SFx32" AND username=:user;'); + $query_perm_step4->execute(['user' => $_COOKIE["username"]]); + $results_perm_step4 = $query_perm_step4->fetchALL(PDO::FETCH_OBJ); + if ($query_perm_step4->rowCount() >= 1) { + $query_ID_internship = $bdd->prepare('SELECT ID_internship FROM candidatures WHERE ID_candidature=:ID_candidature;'); + $query_ID_internship->execute(['ID_candidature' => $ID_candidature]); + $results_ID_internship = $query_ID_internship->fetchALL(PDO::FETCH_OBJ); + if (is_uploaded_file($_FILES['fvss_signee']['tmp_name'])){ + $query_pilots_of_user = $bdd->prepare('SELECT ID_user, firstname_user, lastname_user, email_user FROM users NATURAL JOIN user_belong_promo NATURAL JOIN promotions INNER JOIN roles ON roles.ID_role=users.ID_role WHERE (name_role="Pilote" OR name_role="Délégué(e)") AND ID_promotion=(SELECT ID_promotion FROM users NATURAL JOIN user_belong_promo NATURAL JOIN promotions WHERE username=:user);'); + $query_pilots_of_user->execute(['user' => $_COOKIE["username"]]); + $results_pilots_of_user = $query_pilots_of_user->fetchALL(PDO::FETCH_OBJ); + + $location_fvss = "/documents/users/".$ID_user."/"."candidatures/".$results_ID_internship[0]->ID_internship."/".$_FILES['fvss_signee']['name']; + + try { + if (!is_dir("../documents/users/".$ID_user."/"."candidatures/".$results_ID_internship[0]->ID_internship)){ + mkdir("../documents/users/".$ID_user."/"."candidatures/".$results_ID_internship[0]->ID_internship, 0700); + } + + move_uploaded_file($_FILES['fvss_signee']['tmp_name'], "..".$location_fvss); + + $query_update_candidature = $bdd->prepare('UPDATE candidatures SET progression_candidature="4", validation_form_file_path_candidature=:location_fvss WHERE ID_candidature=:ID_candidature;'); + $query_update_candidature->execute(['location_fvss' => $location_fvss, 'ID_candidature' => $ID_candidature]); + + /*try { + $mail->isSMTP(); + $mail->Host = 'smtp.gmail.com'; + $mail->SMTPAuth = true; + $mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS; + $mail->Port = 587; + + $mail->Username = 'teamspeakcompte@gmail.com'; + $mail->Password = 'wptjusfmrxurmgcf'; + + $mail->setFrom('teamspeakcompte@gmail.com', 'Ceci Ton Stage'); + foreach ($results_pilots_of_user as $result) { + $mail->addAddress($result->email_user, $result->firstname_user." ".$result->lastname_user); + } + + $mail->IsHTML(true); + $mail->Subject = "CTS - Depot de candidature"; + $mail->Body = 'Bonjour, le tuteur '.$results_perm_step4[0]->firstname_user.' '.$results_perm_step4[0]->lastname_user.' a depose la fiche de validation de sujet de stage signee. La prochaine etape conscite a attendre la convention de stage de la part de l\'ecole.'; + //$mail->AltBody = 'Plain text message body for non-HTML email client. Gmail SMTP email body.'; + + $mail->send(); + echo "Email message sent."; + } catch (Exception $e) { + echo "Error in sending email. Mailer Error: {$mail->ErrorInfo}"; + }*/ + + echo ""; + + } catch (Exception $e) { + echo "zut une erreur"; + } + } + } + } } } } diff --git a/documents/users/1/candidatures/2/CV.pdf b/documents/users/1/candidatures/2/CV.pdf deleted file mode 100644 index e41ab97..0000000 Binary files a/documents/users/1/candidatures/2/CV.pdf and /dev/null differ diff --git a/documents/users/1/candidatures/2/LM.pdf b/documents/users/1/candidatures/2/LM.pdf deleted file mode 100644 index 0d8eff2..0000000 Binary files a/documents/users/1/candidatures/2/LM.pdf and /dev/null differ diff --git a/documents/users/1/candidatures/4/CV.pdf b/documents/users/1/candidatures/4/CV.pdf deleted file mode 100644 index e41ab97..0000000 Binary files a/documents/users/1/candidatures/4/CV.pdf and /dev/null differ diff --git a/documents/users/1/candidatures/4/FVSS.pdf b/documents/users/1/candidatures/4/FVSS.pdf deleted file mode 100644 index c59a21e..0000000 Binary files a/documents/users/1/candidatures/4/FVSS.pdf and /dev/null differ diff --git a/documents/users/1/candidatures/4/LM.pdf b/documents/users/1/candidatures/4/LM.pdf deleted file mode 100644 index 0d8eff2..0000000 Binary files a/documents/users/1/candidatures/4/LM.pdf and /dev/null differ diff --git a/documents/users/2/candidatures/2/FVSS signee.pdf b/documents/users/2/candidatures/2/FVSS signee.pdf new file mode 100644 index 0000000..dd9640c Binary files /dev/null and b/documents/users/2/candidatures/2/FVSS signee.pdf differ diff --git a/documents/users/2/candidatures/3/CV.pdf b/documents/users/2/candidatures/3/CV.pdf deleted file mode 100644 index e41ab97..0000000 Binary files a/documents/users/2/candidatures/3/CV.pdf and /dev/null differ diff --git a/documents/users/2/candidatures/3/LM.pdf b/documents/users/2/candidatures/3/LM.pdf deleted file mode 100644 index 0d8eff2..0000000 Binary files a/documents/users/2/candidatures/3/LM.pdf and /dev/null differ