IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

Login - gestion des messages


Sujet :

Symfony PHP

  1. #1
    En attente de confirmation mail
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2012
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2012
    Messages : 17
    Points : 9
    Points
    9
    Par défaut Login - gestion des messages
    Bonsoir.

    Je suis un petit nouveau dans le monde de symfony et j'essaie de créer et manipuler des scripts pour me faire la main. J'ai installé FOSUserBundle et c'est naturellement que je m'intéresse à la connexion (qui, il me semble, n'est pas gérée par FOSUB).

    Bref tout marche bien mais je voudrais pouvoir gérer les messages moi-même. Par exemple lorsque je rentre de mauvais identifiants j'ai ceci qui apparaît : "The presented password is invalid." c'est normal sauf que je le voudrais en français ...

    Dans app/config/config.yml j'ai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        translator:      { fallback: %locale% }
    et dans app/config/parameters.ini j'ai bien :

    Mes message de FOSUB sont bien traduits quant à eux. Mais pas pour la connexion.

    Deuxième problème : comment gérer les messages de connexion/déconnexion ? Lors de la connexion il y n'y a par défaut aucun message. Je voudrais mettre "Vous êtes désormais connecté." par exemple.

    Merci par avance de votre aide.

    Bonne soirée.

  2. #2
    En attente de confirmation mail
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2012
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2012
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    Personne n'a une idée de comment faire ?

  3. #3
    Membre habitué
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2010
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2010
    Messages : 141
    Points : 157
    Points
    157
    Par défaut
    Pour ton souci de message à la connexion, je te conseille de te renseigner sur les listeners. Je sais qu'il en existe un dédié à la connexion dont je ne connais plus le nom.

    Pour le reste, peux-tu afficher le template de ta page de connexion?

  4. #4
    En attente de confirmation mail
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2012
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2012
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    Citation Envoyé par KzrData Voir le message
    Pour ton souci de message à la connexion, je te conseille de te renseigner sur les listeners. Je sais qu'il en existe un dédié à la connexion dont je ne connais plus le nom.

    Pour le reste, peux-tu afficher le template de ta page de connexion?
    Ok je vais me renseigner sur les listeners.

    Mon template de connexion est grosso-modo le même que celui utilisé par FOSUB :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    {% extends "FOSUserBundle::layout.html.twig" %}
     
    {% block fos_user_content %}
    {% if error %}
        <div>{{ error|trans({}, 'FOSUserBundle') }}</div>
    {% endif %}
    <h1>Connexion au site</h1>
     
    <div class="well">
    	<form action="{{ path("fos_user_security_check") }}" method="post" class="generalForm">
    	<h3 class="legend">Connexion à son espace perso</h3>
     
    	    <input type="hidden" name="_csrf_token" value="{{ csrf_token }}" />
     
    	    <div class="field">
    		    <label for="username">{{ 'security.login.username'|trans({}, 'FOSUserBundle') }}</label>
    		    <input type="text" id="username" name="_username" value="{{ last_username }}" />
    		</div>
     
    	    <div class="field">
    		    <label for="password">{{ 'security.login.password'|trans({}, 'FOSUserBundle') }}</label>
    		    <input type="password" id="password" name="_password" />
    		</div>
     
    	    <div class="field">
    		    <input type="checkbox" id="remember_me" name="_remember_me" value="on" />
    		    <label for="remember_me">{{ 'security.login.remember_me'|trans({}, 'FOSUserBundle') }}</label>
    	    </div>
     
    	    <p class="alignCenter">
    	    	<input class="btn" type="submit" id="_submit" name="_submit" value="{{ 'security.login.submit'|trans({}, 'FOSUserBundle') }}" />
    	    </p>
    	</form>
    </div>
    {% endblock fos_user_content %}

  5. #5
    En attente de confirmation mail
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2012
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2012
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    Pour ceux que ça intéresse voici la méthode faire quelque chose directement après la connexion :

    Fichier app/config/config.yml rajouter ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    services:
        login_listener:
            class: Lwc\UserBundle\Listener\LoginListener
            arguments: [@security.context, @session]
            tags:
                - { name: kernel.event_listener, event: security.interactive_login, method: onSecurityInteractiveLogin }
    où "class" fait référence au listener que l'on va créer et "arguments" sont des objets que l'on peut avoir besoin (en l’occurrence "context" pour accéder à l'user et "session" pour mettre des flash messages). Ces objets seront passés au constructeur du listener.

    Fichier NomProjet\UserBundle\Listener\LoginListener :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    <?php
    namespace Lwc\UserBundle\Listener;
     
    use Symfony\Component\HttpFoundation\RedirectResponse;
    use Symfony\Component\EventDispatcher\Event;
    use Symfony\Component\Security\Http\Event\InteractiveLoginEvent;
    use Symfony\Component\Security\Core\SecurityContext;
    use Symfony\Bundle\DoctrineBundle\Registry as Doctrine;
    use Symfony\Component\HttpFoundation\Session;
     
     
    class LoginListener {
    	private $context;
    	private $session;
     
    	public function __construct(SecurityContext $context, Session $session) {
    		$this->context = $context;
    		$this->session = $session;
    	}
     
    	public function onSecurityInteractiveLogin(Event $event) {
    		$user = $this->context->getToken()->getUser();
    		$this->session->setFlash('infos', 'Vous êtes désormais connecté(e) !');
    	}
    }
    Plus d'infos : http://www.ens.ro/2012/03/14/symfony...vent-listener/

    Voilà voilà.

    Merci KzrData.

Discussions similaires

  1. Réponses: 2
    Dernier message: 12/10/2006, 23h36
  2. [GUI] Gestion des messages d'erreurs
    Par agent007se dans le forum C++
    Réponses: 11
    Dernier message: 28/07/2006, 20h52
  3. gestion des messages d'erreurs
    Par keibenoit dans le forum Access
    Réponses: 2
    Dernier message: 31/05/2006, 14h49
  4. [debutant]gestion des messages des exceptions
    Par maxvador dans le forum Langage
    Réponses: 4
    Dernier message: 03/02/2006, 14h55
  5. Gestion des message windows dans les threads
    Par billyboy dans le forum Windows
    Réponses: 5
    Dernier message: 06/10/2003, 17h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo