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

Wicket Java Discussion :

Ouverture ModalWindow conditionnée par URL


Sujet :

Wicket Java

  1. #1
    Membre régulier
    Femme Profil pro
    Analyste-developpeur java
    Inscrit en
    Mai 2010
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste-developpeur java
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2010
    Messages : 135
    Points : 76
    Points
    76
    Par défaut Ouverture ModalWindow conditionnée par URL
    Bonjour,

    J'ai une problématique de développement et j'aimerais votre avis sur le sujet.
    Je dois ouvrir une ModalWindow dans une page centrale de mon application. Cette ouverture sera très rare et conditionnée uniquement par une URL.
    Auriez vous une idée de comment procéder?

    Url_page_normal
    Url_page_normal_avec_pop_up

    Merci de vos réponses!

  2. #2
    Invité
    Invité(e)
    Par défaut
    Si ta page est stateless, tu peux utiliser un PageParameters que tu donnes passes argument comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    PageParameters pageParameters = new PageParameters();
    pageParameters.add("xyz", valeur du param);
    setResponsePage(LaPage.class, pageParameters);
    Dans la page où il y a la modal tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if(parameters.containsKey("xyz")){
    <div style="margin-left:40px">result = parameters.getString("xyz");</div>}
    Si elle est stateful, tu fais un simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    setResponsePage(new LaPage( boolean condition ) );
    François
    Dernière modification par Robin56 ; 13/02/2013 à 16h34. Motif: Utilisation de la balise [code][/code] (bouton #)

  3. #3
    Membre régulier
    Femme Profil pro
    Analyste-developpeur java
    Inscrit en
    Mai 2010
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste-developpeur java
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2010
    Messages : 135
    Points : 76
    Points
    76
    Par défaut
    François, je précise que ce n'est pas l'appli qui appelle cette page avec la popup.
    On sort de l'appli (en gardant bien sur la session) et le retour sur cette même page avec ouverture de la popup doit être garantie par une URL que cette entité extérieure appellera.
    J'ai pensé à faire un remplissage de popup suivant les paramètres de la request mais je trouve cette solution peu sécurisée...

  4. #4
    Membre régulier
    Femme Profil pro
    Analyste-developpeur java
    Inscrit en
    Mai 2010
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste-developpeur java
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2010
    Messages : 135
    Points : 76
    Points
    76
    Par défaut
    Et je viens de m'en apercevoir!!
    Le pire c'est qu'il s'agit de la page d'accueil qui est elle même issue d'une redirection Wicket après login donc complètement statefull.....
    Donc pas d'ajout possible dans la request.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Atterrir sur une page qui va déclencher une popup n'est pas recommandé pour offrir une bonne expérience utilisateur.

    Un petit panel serait plus sympa...

    Mais si c'est le use case...
    alors il faut manier du javascript
    Plein d'info sur http://www.w3schools.com/jsref/obj_window.asp

    François

  6. #6
    Membre régulier
    Femme Profil pro
    Analyste-developpeur java
    Inscrit en
    Mai 2010
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste-developpeur java
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2010
    Messages : 135
    Points : 76
    Points
    76
    Par défaut
    En fait c'est plutôt l'accueil qui ouvre une popup à la connexion de l'utilisateur (un truc qui ressemblerait à de la pub).
    Le clic sur un bouton de cette popup ferme la popup et ouvre une deuxième popup (la popup à créer) qui réalise une action.
    Mais le deal est que la popup 1 d'ouverture est paramétrée par une entité extérieur et le retour sur l'accueil + ouverture popup devra se faire donc au moyen d'une URL.
    Et maintenant je m’aperçois ne pas pouvoir donner d'URL qui conduisent vers la page d'accueil (qui est la setResponse() de la page de login)...

  7. #7
    Membre régulier
    Femme Profil pro
    Analyste-developpeur java
    Inscrit en
    Mai 2010
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste-developpeur java
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2010
    Messages : 135
    Points : 76
    Points
    76
    Par défaut
    Je progresse, l'URL va être traitée d'abord par du JS et je peux me servir de sa structure pour déclencher un évènement JS qui ouvrira la ModalWindow.

    En conclusion, sauriez vous svp comment rendre une ModalWindow à l'écoute des évènements JS et l'ouvrir sur évènement JS?!
    J'ai vu des extraits de forum:
    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
    36
    37
    38
    39
    40
    41
    /**
     * @author Ernesto Reinaldo Barreiro 
     */
    public class OpenOnLoadModalWindow extends ModalWindow implements
    IHeaderContributor {
     
           private static final long serialVersionUID = 1L;
     
           /**
            * @param id
            */
           public OpenOnLoadModalWindow(String id) {
                   super(id);
           }
     
           /**
            * @param id
            * @param model
            */
           public OpenOnLoadModalWindow(String id, IModel<?> model) {
                   super(id, model);
           }
     
           /**
            * Adds the JavaScript to initially open modal window.
            */
           public void renderHead(IHeaderResponse response)
           {
                   response.renderOnDomReadyJavascript(getWindowOpenJavascript());
           }
     
           /*
            * (non-Javadoc)
            * @see org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow#makeContentVisible()
            */
           @Override
           protected boolean makeContentVisible()
           {
                   return true;
           }
    }
    Sauriez vous svp comment procéder?!

Discussions similaires

  1. [Référencement] pages accessible par url
    Par oranoutan dans le forum Référencement
    Réponses: 6
    Dernier message: 15/12/2005, 10h17
  2. [VB.NET] Authentifier et provoquer une action par URL
    Par Immobilis dans le forum ASP.NET
    Réponses: 4
    Dernier message: 30/11/2005, 14h03
  3. Personaliser l'ouverture de telnet par un script
    Par olive_le_malin dans le forum Windows
    Réponses: 3
    Dernier message: 17/10/2005, 21h56
  4. passage valeur select par URL
    Par toome dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 09/08/2005, 11h51
  5. Parametre par URL
    Par arsgunner dans le forum ASP
    Réponses: 2
    Dernier message: 21/06/2004, 09h53

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