Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
mathieu
potage
Commits
c1ab27ca
Commit
c1ab27ca
authored
Aug 29, 2018
by
Mat
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
hop
parent
c586d814
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
40 additions
and
4 deletions
+40
-4
src/PotageBundle/Controller/DefaultController.php
src/PotageBundle/Controller/DefaultController.php
+22
-3
src/PotageBundle/Resources/views/Mail/bodyMail.html.twig
src/PotageBundle/Resources/views/Mail/bodyMail.html.twig
+6
-1
src/PotageBundle/Services/LettreToken.php
src/PotageBundle/Services/LettreToken.php
+12
-0
No files found.
src/PotageBundle/Controller/DefaultController.php
View file @
c1ab27ca
...
...
@@ -21,6 +21,9 @@ class DefaultController extends MasterController
/**
* TEMPORAIRE une page de test
* envoie une infolettre manuellement lorsqu'on déclenche un submit
*
* @param Request $request
* @param Newsletter $newsletter
* @param LettreToken $lettreToken
...
...
@@ -73,12 +76,19 @@ class DefaultController extends MasterController
/**
* La page today affiche le(s) offres disponibles pour un user
* identifié sur base du token passé dans le lien
*
* @param Request $request
* @param LettreToken $lettreToken
* @return \Symfony\Component\HttpFoundation\Response
*/
public
function
todayAction
()
public
function
todayAction
(
Request
$request
,
LettreToken
$lettreToken
)
{
$user
=
$this
->
getUser
();
$user
=
$this
->
getUser
();
$token
=
$request
->
query
->
get
(
'token'
);
if
(
$user
!==
null
)
{
// récupère l'id de l'utilisateur
...
...
@@ -100,11 +110,20 @@ class DefaultController extends MasterController
}
}
else
{
}
else
if
(
$token
!==
null
)
{
$groupes
=
array
();
$dataToken
=
$lettreToken
->
decodePotageAccess
(
$token
);
dump
(
$dataToken
);
}
else
{
return
$this
->
redirectToRoute
(
'fos_user_security_login'
);
}
return
$this
->
render
(
'@Potage/Default/today.html.twig'
,
array
(
'user'
=>
$user
,
'groupes'
=>
$groupes
));
}
...
...
src/PotageBundle/Resources/views/Mail/bodyMail.html.twig
View file @
c1ab27ca
...
...
@@ -22,7 +22,12 @@
<h1>
{{
subject
}}
</h1>
<h2>
Période du
{{
body.lettre.start
|
date
(
'd-m-Y'
)
}}
au
{{
body.lettre.end
|
date
(
'd-m-Y'
)
}}
</h2>
<h3>
Bonjour
{{
to.fullName
}}
,
</h3>
<h3>
Bonjour
{{
to.fullName
}}
<br>
<a
href=
"
{{
absolute_url
(
path
(
'potage_today'
,
{
token
:
to.token
}
))
}}
"
target=
"_blank"
rel=
"noreferrer"
>
<button>
Commander des légumes
</button>
</a>
</h3>
<p>
{{
body.groupe.nom
}}
<br>
{{
body.depot.localisation
}}
</p>
...
...
src/PotageBundle/Services/LettreToken.php
View file @
c1ab27ca
...
...
@@ -7,6 +7,18 @@ use PotageBundle\Entity\Lettre;
use
PotageBundle\Entity\User
;
use
Symfony\Component\DependencyInjection\ContainerInterface
;
/**
* Class LettreToken
*
* La classe LettreToken a 2 fonctions principales, l'une d'encodage, l'autre de décodage.
* encode: permet de générer un token à partir d'un utilisateur et d'une infolettre,
* decode: permet à partir d'un token, de retrouver quel utilisateur et quelle infolettre.
*
* L'algorithme s'appuie soit sur un champs dans la table user,
* soit sur une recette secrète qui permet de réaliser les 2 opérations.
*
* @package PotageBundle\Services
*/
class
LettreToken
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment