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 :

view.yml ajouter script js [1.x]


Sujet :

Symfony PHP

  1. #1
    Membre habitué Avatar de guiyomh
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 328
    Points : 155
    Points
    155
    Par défaut view.yml ajouter script js
    Bonjour,

    je cherche a ajouter google api sur mon site, pour celà je dois ajouter un script comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script type="text/javascript" src="http://www.google.com/jsapi?key=ABCDEFG"></script>
    j'ai bien vu qu'il faut renseigner ceci dans le fichier de vue :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      javascripts:    [http://www.google.com/jsapi?key=ABCDEF]
    Mon soucis, c'est que ça marche avec une clé, et que la clé va changer en fonction de mon environnement de (developpement / production).

    comment renseigner le fichier de configuration pour avoir des JS propre à l'environnment de développement et des js spécifique à l'environnment de prod ?
    ---
    "Rien n'est impossible"
    http://journaldeguillaume.blogspot.com

  2. #2
    Expert éminent
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Points : 8 486
    Points
    8 486
    Par défaut
    Ca c'est bien tordu, comme je les aimes

    Je penserais bien à un componement appelé au niveau du layout.

    Dans le corps du componement, tu peux, à partir du sfContext, savoir si tu est en test ou en dev ou en prod ou autre. Et préparer la variable avec le code qui va bien. Et dans le template de componement, tu n'as plus qu'à mettre un bout de JS pour initialiser la variable.
    Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).

    • Pensez à valoriser les réponses pertinantes, cliquez sur le bouton vert +1 pour indiquer votre accord avec la solution proposée.
    • Pensez à utiliser la balise [code] pour afficher du code, elle est cachée sous le bouton [#] dans l'éditeur.
    • Une discussion est terminée ? Alors le bouton est votre ami !

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    396
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 396
    Points : 396
    Points
    396
    Par défaut
    Bonjour,

    Si ta clé est fixe dans l'environnement de dev d'un côté et fixe dans l'environnement de prod de l'autre, cela devrait pouvoir se résoudre en fixant sa valeur dans settings.yml. Exemple :
    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
     
    prod:
      .settings:
        no_script_name:         true
        logging_enabled:        false
        google_api_key:        ABCDEFG
     
    dev:
      .settings:
        error_reporting:        <?php echo (E_ALL | E_STRICT)."\n" ?>
        web_debug:              true
        cache:                  false
        no_script_name:         false
        etag:                   false
        google_api_key:         GFEDCBA
    Après, tu aurais quelque chose du genre à faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <?php $googleApiKey = sfConfig::get('sf_google_api_key') ?>
    <script type="text/javascript" src="http://www.google.com/jsapi?key=<?php echo $googleApiKey ?>"></script>
    ou bien même peut-être :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      javascripts:
        - http://www.google.com/jsapi?key=<?php echo sfConfig::get('sf_google_api_key') ?> 
    EDIT

    Pour info, je viens de tester chez moi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    #settings.yml
    all:
      .settings:
        js_path:                ../atolExt3WidgetPlugin/js
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    #view.yml
     
      javascripts:
        - <?php echo sfConfig::get('sf_js_path') ?>/ext-base-debug.js
        - <?php echo sfConfig::get('sf_js_path') ?>/ext-all-debug.js
        - <?php echo sfConfig::get('sf_js_path') ?>/plug.js
        - <?php echo sfConfig::get('sf_js_path') ?>/submitbutton.js
        - <?php echo sfConfig::get('sf_js_path') ?>/fieldSetWithCheckbox.js
    Et mon appli marche toujours avec le JS. Donc la méthode que devrais marcher chez toi aussi.

  4. #4
    Expert éminent
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Points : 8 486
    Points
    8 486
    Par défaut
    Beaucoup plus élégant comme solution.

    Je retourne me coucher

    Si la solution te convient, il ne reste qu'à cliquer sur
    Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).

    • Pensez à valoriser les réponses pertinantes, cliquez sur le bouton vert +1 pour indiquer votre accord avec la solution proposée.
    • Pensez à utiliser la balise [code] pour afficher du code, elle est cachée sous le bouton [#] dans l'éditeur.
    • Une discussion est terminée ? Alors le bouton est votre ami !

  5. #5
    Membre habitué Avatar de guiyomh
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 328
    Points : 155
    Points
    155
    Par défaut
    Bonjour, merci pour vos réponse. effectivement la deuxième solutions et plus élégante.

    merci
    ---
    "Rien n'est impossible"
    http://journaldeguillaume.blogspot.com

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [1.x] Slot title et view.yml
    Par coupolites dans le forum Symfony
    Réponses: 11
    Dernier message: 26/03/2010, 02h47
  2. [1.x] view.yml, css&js ?
    Par bricecol dans le forum Symfony
    Réponses: 1
    Dernier message: 18/12/2009, 10h58
  3. Ajouter script en crontab
    Par antoine1504 dans le forum Linux
    Réponses: 6
    Dernier message: 12/10/2009, 16h24
  4. securiser ajout script sur un site
    Par calitom dans le forum Général Conception Web
    Réponses: 4
    Dernier message: 04/01/2009, 21h17
  5. Réponses: 1
    Dernier message: 14/08/2007, 17h53

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