modif
This commit is contained in:
parent
57ce71062d
commit
35daf83b92
2 changed files with 36 additions and 2 deletions
|
|
@ -69,7 +69,13 @@ const getUserProfile = async (req, res) => {
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
return res.json(data);
|
// Enregistre les infos utiles en session
|
||||||
|
req.session.user.nom = data.given_name + " " + data.family_name;
|
||||||
|
req.session.user.img = data.picture;
|
||||||
|
req.session.user.email = data.email;
|
||||||
|
|
||||||
|
// Redirige vers /me après authentification
|
||||||
|
res.redirect("/me");
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error(
|
console.error(
|
||||||
"LinkedIn OIDC error:",
|
"LinkedIn OIDC error:",
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ const router = express.Router();
|
||||||
|
|
||||||
const { getUserProfile } = require("../controllers/linkedin");
|
const { getUserProfile } = require("../controllers/linkedin");
|
||||||
|
|
||||||
|
// Page d'accueil
|
||||||
router.get("/", (req, res) => {
|
router.get("/", (req, res) => {
|
||||||
res.send(`
|
res.send(`
|
||||||
<h1>Welcome to the CV Generator Home Page!</h1>
|
<h1>Welcome to the CV Generator Home Page!</h1>
|
||||||
|
|
@ -14,7 +15,34 @@ router.get("/", (req, res) => {
|
||||||
`);
|
`);
|
||||||
});
|
});
|
||||||
|
|
||||||
// Route for fetching user profile information
|
// Route pour afficher le profil utilisateur (API)
|
||||||
router.get("/profile", getUserProfile);
|
router.get("/profile", getUserProfile);
|
||||||
|
|
||||||
|
// Route protégée /me
|
||||||
|
router.get("/me", (req, res) => {
|
||||||
|
const user = req.session.user;
|
||||||
|
if (!user || !user.nom || !user.img) {
|
||||||
|
return res.redirect("/");
|
||||||
|
}
|
||||||
|
res.send(`
|
||||||
|
<h2>Bienvenue, ${user.nom} !</h2>
|
||||||
|
<img src="${user.img}" alt="Photo de profil" width="100" height="100" style="border-radius:50%;" />
|
||||||
|
<form method="POST" action="/me/link">
|
||||||
|
<label for="linkedinUrl">Votre URL LinkedIn :</label>
|
||||||
|
<input type="url" id="linkedinUrl" name="linkedinUrl" placeholder="https://www.linkedin.com/in/votre-profil" required>
|
||||||
|
<button type="submit">Enregistrer</button>
|
||||||
|
</form>
|
||||||
|
`);
|
||||||
|
});
|
||||||
|
|
||||||
|
// Traitement du formulaire d'URL LinkedIn
|
||||||
|
router.post("/me/link", express.urlencoded({ extended: true }), (req, res) => {
|
||||||
|
if (!req.session.user) return res.redirect("/");
|
||||||
|
req.session.user.linkedinUrl = req.body.linkedinUrl;
|
||||||
|
res.send(`
|
||||||
|
<p>URL LinkedIn enregistrée : <a href="${req.body.linkedinUrl}" target="_blank">${req.body.linkedinUrl}</a></p>
|
||||||
|
<a href="/me">Retour</a>
|
||||||
|
`);
|
||||||
|
});
|
||||||
|
|
||||||
module.exports = router;
|
module.exports = router;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue