Sujet : Front.phtml -> Front.xyl

Bonjour à tous,

Bon ceci ressemblera surement à un post de ras le bol; je m'en excuse par avance.
Bon ça fait des mois qu'on entends du xyl à toutes les sauces, qu'on voie de démos de débugger magiques, etc...
On voit un bout de site en html5 qui arrive, mais le-dit site reste très simple à priori, et de toute façon, on a pas les sources .xyl hmm

Bref tout ça pour dire que pour l'instant Hoa 1.* reste inutilisable pour moi (et je pense pour beaucoup) dans des cas réels de production.

Je souhaiterais passer mes sites fait sous Hoa 0.5 à la version supérieure.
Deux problèmes se posent, premièrement, je ne souhaite pas mettre à jour mes designs pour passer à de l'html5, ils sont en xhtml, et je changerais pas d'ici demain, trop de boulot.

Deuxième problème, on ne sait rien sur Xyl et son fonctionnement.

Donc voilà, si tu veux que ça avance (pour moi en tout cas), que les dons avancent également, et que Hoa puisse être utilisé en entreprise, voilà un devoir à la maison pour toi, mon Front.phtml actuel:
Pourrais-tu me dire si c'est possible de faire quelque chose avec Xyl?

<?php

// récupération des paramètres
$params=$this->getRouter()->getParameters();

// mise à plat des paramètres
$module=ucfirst(strtolower(str_replace('-','',$params['data.array']['module'])));
$action=ucfirst(strtolower(str_replace('-','',$params['data.array']['action'])));

// construction des metas
$metas = '';

if(!empty($this->metas['timeexpire']) && $this->metas['timeexpire'] > 0){

  $metas .= '<meta http-equiv="expires" content="'.date('D, d M Y H:i:s',$this->metas['timeexpire']).' GMT" />'.PHP_EOL;
}
if(!empty($this->metas['keywords']) && is_array($this->metas['keywords'])){

  $metas .= '<meta name="keywords" content="'.htmlspecialchars(implode(', ',$this->metas['keywords'])).'" />'.PHP_EOL;
}
if(!empty($this->metas['description'])){

  $metas .= '<meta name="description" content="'.htmlspecialchars($this->metas['description']).'" />'.PHP_EOL;
}

// Gestion de l'état du menu (ouvert/fermé par défaut)
if(!empty($this->MenuStatus)){
  $status = $this->MenuStatus;
}
elseif(!empty($_COOKIE['MenuStatus'])){
  $status = $_COOKIE['MenuStatus'];
}
else {
  $status = 'open';
}

$menuOpen = $status == 'open';

?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    
    <!-- Metas définies dans les controllers secondaires -->
    <?php echo $metas;?>

    <!-- Title dynamique en fonction de la variable définie dans les controllers secondaires -->
    <title><?php echo !empty($this->title) ? $this->title.' - ':'';?>Titre constant</title>
    
    <!-- Lien vers les fils de syndication -->
    <link rel="alternate" type="application/rss+xml" title="Les dernières mises à jour de l'Association Galapiat Cirque" href="<?php echo PUBLIC_URL;?>Rss/Index.xml" />
    <link rel="alternate" type="application/rss+xml" title="Les brèves de l'Association Galapiat Cirque" href="<?php echo PUBLIC_URL;?>Rss/Breves.xml" />
    <link rel="alternate" type="application/rss+xml" title="Les albums de l'Association Galapiat Cirque" href="<?php echo PUBLIC_URL;?>Rss/Albums.xml" />

    <!-- Fichiers Css de base
    <link rel="stylesheet" type="text/css" media="screen" href="<?php echo PUBLIC_URL;?>Css/base.css" />
    <link rel="stylesheet" type="text/css" media="screen" href="<?php echo PUBLIC_URL;?>Css/style.css" />

    <!--[if lte IE 6]>
        <link rel="stylesheet" type="text/css" media="screen" href="<?php echo PUBLIC_URL;?>Css/styleie6.css" />
    <![endif]-->

    <?php
    // éventuels fichiers css supplémentaires
    if(!empty($this->headerCss) && is_array($this->headerCss)){
        foreach($this->headerCss as $file){
        ?>
            <link rel="stylesheet" type="text/css" media="screen" href="<?php echo PUBLIC_URL;?>Css/<?php echo $file;?>" />
        <?php
        }
    }
    ?>
    
    <!-- fichiers JS -->
    <script type="text/javascript" charset="utf-8" src="<?php echo PUBLIC_URL;?>Js/cufon-yui.js"></script>
    <script type="text/javascript" charset="utf-8" src="<?php echo PUBLIC_URL;?>Js/Quimbie_Shaddow_400.font.js"></script>
    <script type="text/javascript" charset="utf-8" src="<?php echo PUBLIC_URL;?>Js/Quimbie_3D_400.font.js"></script>
    <script type="text/javascript" charset="utf-8" src="<?php echo PUBLIC_URL;?>Js/jquery-1.4.1.js"></script>
    <script type="text/javascript" charset="utf-8" src="<?php echo PUBLIC_URL;?>Js/cookies.js"></script>
    <script type="text/javascript" charset="utf-8" src="<?php echo PUBLIC_URL;?>Js/jquery.fontavailable.js"></script>
    <!-- transmission de constantes aux js -->
    <script type="text/javascript">
        var public_url = <?php echo json_encode(PUBLIC_URL);?>;
        var public_static_url = <?php echo json_encode(PUBLIC_STATIC_URL);?>;
    </script>
    <script type="text/javascript" charset="utf-8" src="<?php echo PUBLIC_URL;?>Js/effects.js"></script>
    <?php
    // éventuels fichiers Js supplémentaires
    if(!empty($this->headerJs) && is_array($this->headerJs)){
        foreach($this->headerJs as $file){
        ?>
            <script type="text/javascript" charset="utf-8" src="<?php echo PUBLIC_URL;?>Js/<?php echo $file;?>"></script>
        <?php
        }
    }
    ?>

    <script type="text/javascript">
    Cufon.DOM.ready(function() {
        if(!$.fontAvailable('Quimbie_Shaddow')) {
            Cufon.replace($('#grostitre a'), { fontFamily: 'Quimbie_Shaddow' });
        }
        if(!$.fontAvailable('Quimbie_3D')) {
            Cufon.replace($('#soustitre'), { fontFamily: 'Quimbie_3D' });
        }
    });
    </script>
</head>
<body>
<!-- Global -->
<div id="global">
    
    <!-- Liens d'évitement -->
    <ul id="selectlang" style="visibility:hidden">
        <li>&nbsp;</li>
    </ul>
    <ul id="speednav">
        <li><a href="#content" accesskey="8">Aller au contenu</a></li>
        <li class="last"><a href="#menu" accesskey="9">Aller au menu</a></li>
    </ul>
    
    <!-- Header -->
    <h1 id="grostitre"><a href="<?php echo PUBLIC_URL;?>Accueil.html" title="Acceuil">Galapiat</a><span>cirque</span></h1>
    <a id="home-link" href="<?php echo PUBLIC_URL;?>Accueil.html" title="Accueil">Accueil</a>
    <p id="page-actuelle">Page <?php echo $this->pageNumber;?></p>
    <!-- Fin Header -->

    <!-- Menu -->
    <div id="menu">
        <span id="hautmenu">&nbsp;</span>
        <h2>
            <span>
                <img src="<?php echo PUBLIC_URL;?>Images/<?php echo $menuOpen ? 'top':'bottom';?>-arrow.png" alt="<?php echo $menuOpen ? 'top':'bottom';?>" /> 
                Menu 
                <img src="<?php echo PUBLIC_URL;?>Images/<?php echo $menuOpen ? 'top':'bottom';?>-arrow.png" alt="<?php echo $menuOpen ? 'top':'bottom';?>" />
            </span>
        </h2>
        <ul id="l1"<?php echo !$menuOpen ? ' style="display:none"':'';?>>
          <li><a<?php echo $action=='Histoire' ? ' id="active"':'';?> href="<?php echo PUBLIC_URL;?>Histoire.html">Pour la petite histoire,</a>
          <br /><span>voir page 2.</span></li>
          <li><a<?php echo $action=='Collectif' ? ' id="active"':'';?> href="<?php echo PUBLIC_URL;?>Collectif.html">Le Collectif Galapiat,</a>
          <br /><span>voir page 6.</span></li>
          <li><a<?php echo $action=='Chapiteaux' ? ' id="active"':'';?> href="<?php echo PUBLIC_URL;?>Chapiteaux.html">Les chapiteaux,</a>
          <br /><span>voir page 9.</span></li>
          <li><a<?php echo $action=='Gougnaferies' ? ' id="active"':'';?> href="<?php echo PUBLIC_URL;?>Gougnaferies.html">Gougnaferies,</a>
          <br /><span>voir page 10.</span></li>
        </ul>
        <ul id="l2"<?php echo !$menuOpen ? ' style="display:none"':'';?>>
          <li><a<?php echo $action=='Risquezero' ? ' id="active"':'';?> href="<?php echo PUBLIC_URL;?>Risque-Zero.html">Risque ZérO,</a>
          <br /><span>voir page 3.</span></li>
          <li><a<?php echo $module=='Tantquilyauradesmouettes' ? ' id="active"':'';?> href="<?php echo PUBLIC_URL;?>Tant-qu-il-y-aura-des-mouettes/">Tant qu'il y aura des mouettes,</a>
          <br /><span>voir page 4.</span></li>
          <li><a<?php echo $action=='Petaouchnok' ? ' id="active"':'';?> href="<?php echo PUBLIC_URL;?>Petaouchnok.html">Projet Pétaouchnok,</a>
          <br /><span>voir page 8.</span></li>
          <li><a<?php echo $module=='Remiluchez' ? ' id="active"':'';?> href="<?php echo PUBLIC_URL;?>Remi-Luchez/">Miettes // Rémi Luchez,</a>
          <br /><span>voir page 5.</span></li>
        </ul>
        <ul id="l3"<?php echo !$menuOpen ? ' style="display:none"':'';?>>
          <li><a<?php echo $action=='Contacts' ? ' id="active"':'';?> href="<?php echo PUBLIC_URL;?>Contacts.html">Contacts,</a>
          <br /><span>voir page 12.</span></li>
          <li><a<?php echo $action=='Calendrier' ? ' id="active"':'';?> href="<?php echo PUBLIC_URL;?>Calendrier.html">Calendrier,</a>
          <br /><span>voir page 11.</span></li>
          <li><a<?php echo $module=='Medias' && ($action=='Album' || $action=='Listealbums') ? ' id="active"':'';?> href="<?php echo PUBLIC_URL;?>Medias/Liste-Albums.html">Images,</a>
          <br /><span>voir page 14.</span></li>
          <li><a<?php echo $module=='Medias' && $action=='Videos' ? ' id="active"':'';?> href="<?php echo PUBLIC_URL;?>Medias/Videos.html">Vidéos,</a>
          <br /><span>voir page 15.</span></li>
          <li><a<?php echo $module=='Medias' && $action=='Presse' ? ' id="active"':'';?> href="<?php echo PUBLIC_URL;?>Medias/Presse.html">Presse,</a>
          <br /><span>voir page 16.</span></li>
        </ul>
        <span id="spacer"<?php echo !$menuOpen ? ' style="display:none"':'';?>>&nbsp;</span>
        <p id="piedmenu">&nbsp;</p>
        <span id="basmenu">&nbsp;</span>
    </div>
    <!-- Fin Menu -->

    <!-- Contenu -->
    <span id="content">&nbsp;</span>
    <?php

    // Affichage du contenu de la page
    echo $this->_page;

    ?>
    <!-- Fin Contenu -->
    
    <span class="clear">&nbsp;</span>
    <!-- Footer -->
    <div id="footer_part1">
        <p id="pageNumber"><a href="#global" title="Remonter jusqu'en haut de la page"><?php echo $this->pageNumber;?></a></p>
        <ul>
          <li><a href="<?php echo PUBLIC_URL;?>Liens.html">Liens</a></li>
          <li><a href="<?php echo PUBLIC_URL;?>Partenaires.html">Partenaires</a></li>
        </ul>
    </div>
    <div id="footer_part2">
        <ul>
          <li><a href="<?php echo PUBLIC_URL;?>Mentions.html">Mentions</a></li>
          <li>&nbsp;</li>
        </ul>
        <p>&nbsp;</p>
    </div>

    <!-- Fin Footer -->
    <p id="go-top">
        <a href="#global">
            <img src="<?php echo PUBLIC_URL;?>Images/top-arrow.png" alt="Go Top!" />
        </a>
    </p>
    <!--[if lte IE 6]>
    <p id="go-top-ie6">
        <a href="#global">
            <img src="<?php echo PUBLIC_URL;?>Images/top-arrow.png" alt="Go Top!" />
        </a>
    </p>
    <![endif]-->
    
</div>
<!-- Fin Global -->

<!-- Cufon pour IE -->
<script type="text/javascript">
Cufon.now();
</script>
<!-- Fin Cufon pour IE -->
</body>
</html>

Merci d'avance.

Re : Front.phtml -> Front.xyl

Bonjour,

Je me permet de faire un petit up de mon sujet, des fois que ton déménagement l'est fait sombrer dams l'oubli...
Merci d'avance pour ton aide!

3

Re : Front.phtml -> Front.xyl

Hey smile,

En effet, avec le déménagement je n'ai pas vu ce message smile.
Je suis en train d'écrire la documentation pour apprendre à utiliser les bibliothèques.
Avant tout, as-tu lu le démarrage rapide ? Je sais qu'il est maigre, mais comme je vais m'en servir pour t'expliquer, autant s'en assurer smile.

« Un handicap est le résultat d'une rencontre entre une déficience ou différence et une incapacité de la société à répondre à celle-ci. »

Re : Front.phtml -> Front.xyl

Yep,

Oui oui j'ai lu le démarrage rapide, mais comme tu le dis xyl y est très peu expliquer...
On voit vite fait bind, et la tête d'un .xyl en gros, mais on ne voit pas les subtilités permettant de donner une classe à un élément
, de remplir une liste complexe (du genre <ul><li _data_ ><a _data_ ><img _data_ ><span _data_ >...</span></a></li></ul>), etc etc...

Et dans mon premier message je me focalise sur mon front.xyl mais j'aurais ensuite toutes mes vues secondaires à traiter, mais j'espère que ce que j'aurais appris avec front.xyl me permettra de me débrouiller pour la suite ou de n'avoir besoin d'aide que ponctuellement wink

Donc voilà hors apprentissage de la syntaxe de xyl, n'oublies pas mes petites questions quand au rendu non-html5, etc...

Merci d'avance wink