Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 01-09-2009 17:06:21

yann05
Membre
Date d'inscription: 26-07-2009
Messages: 13

[1.8][Zend_Form | Zend_Layout] Ajouter les composants Dojo (css/js)

Salut à tous,

J'ai suivi ce tuto très bien fait pour faire un formulaire avec des dates :

http://www.itanea.com/blog/2008/09/25/z … avascript/

J'ai bien réussi à créer mon formulaire avec des elements Zend_Dojo_Form_Element_DateTextBox en utilisant Zend_view.
Malheureusement tout se complique lorsque je souhaite insérer un autre formulaire de dates, mais dans mon layout (sur toutes les pages).
Le formulaire s'affiche mais sans le calendrier qui va avec. les feuilles de style et le javascript de DOJO n'aparaissent pas dans le code source non plus.

Comment insérer un formulaire avec dojo dans le layout?
De plus je ne vois pas ou je pourrais insérer les lignes ci-dessous ailleurs que dans les fonctions _init() de chaque controlleur :

Code:

$form = new Form_CalculRemise();
        $form->submit->setLabel('Calcul de votre remise');
        $this->view->form_calculremise = $form;

Voici un extrait de mon bootstrap.php :

Code:

function _initViewHelpers(){
       $this->bootstrap('layout');
       $layout = $this->getResource('layout');
       $view = $layout->getView();
       Zend_Dojo::enableView($view);
       $view->doctype('XHTML1_STRICT');
       $view->headMeta()->appendHttpEquiv('Content-Type', 'text/html;charset=utf-8');
    }

MERCI pour votre aide

Dernière modification par Mr.MoOx (03-09-2009 09:25:56)

Hors ligne

 

#2 07-09-2009 09:23:44

itecman
Membre
Lieu: Orléans
Date d'inscription: 03-07-2009
Messages: 57

Re: [1.8][Zend_Form | Zend_Layout] Ajouter les composants Dojo (css/js)

Salut,

J'ai du passer par là il y a peu. Déjà j'ai trouvé ce tutoriel :

http://zendgeek.blogspot.com/2009/06/ze … ation.html

Avec ce passage notamment :

Code:

You job has not done yet.

Next you would need to add path to dojo.js file and other module of the dojo toolkit.

So open your layout file and put following code.

    if($this->dojo()->isEnabled()) {

        $this->dojo()->setDjConfigOption(’usePlainJson’,true)

                  ->addStylesheetModule(’dijit.themes.tundra’)

                  ->setLocalPath(”http://localhost/z/js/dojo/dojo/dojo.js”);

        echo $this->dojo();

    }

Ceci dit ça n'a pas marché des masses pour moi, du coup j'ai rajouté les lignes que ce code est sensé rajouté moi même "en dur" :

Code:

<script type="text/javascript" src="/js/dojo-release-1.3.2/dojo/dojo.js" djConfig="isDebug: false, parseOnLoad: true"> </script>

<style type="text/css">
    @import '/js/dojo-release-1.3.2/dijit/themes/nihilo/nihilo.css';
    @import '/js/dojo-release-1.3.2/dojo/resources/dojo.css';
</style>

<!-- Composants Dijit necessaires pour le bouton "Recherche Rapide" -->
<script type="text/javascript">

    dojo.require("dojo.parser");
    dojo.require("dijit.Dialog");
    dojo.require("dijit.form.TextBox"); 
    dojo.require("dijit.form.Button");
    dojo.require("dijit.Tooltip");

</script>

Une chose est sure, on doit à un moment préciser le lien local vers ton dossier de la librairie dojo. par la suite je vais essayer de faire fonctionner la première solution qui est quand même plus propre.

En espérant t'avoir aidé smile

Bye


-- itecman smile

ZF 1.8.4 - Zend Server CE

Hors ligne

 

#3 07-09-2009 18:02:20

stealth35
Membre
Date d'inscription: 30-08-2009
Messages: 29

Re: [1.8][Zend_Form | Zend_Layout] Ajouter les composants Dojo (css/js)

pas forcement tu peu utiliser le CDN comme ca pas besion d'avoir Dojo en local,  ce qui faut surtout pas oublié c'est de mettre la class sur le body

soit de faire <body class="nihilo">

soit plus propre

<script type="text/javascript">dojo.addOnLoad(function(){dojo.addClass(dojo.body(),"nihilo");});</script>

ou "tundra" selon ce qu'on a choisie

normalmeent zend creer automatiquement les dependances

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages