menu flash dans oscss 1.2.1

Archive

Messagepar bofy » Lun 27 Avr 2009, 19:01

bonjour à tous,
j'ai remplacé l'entete et menus par un menu flash...(je sais, c'est pas bien mais bon).
chaque bouton de mon menu flash à un action script du genre

on (press) {
getURL("http://www.monsite.com/index.php?cPath=6","_self")
}

ce script m'envoi bien sur la page concernée mais il reset automatiquement ce qu'il y a dans mon panier, ma préférence de langue etc.:( en fait il ne tiens pas compte de mon id de session et donc me considère comme un nouveau venu.:( comment puis je lui faire tenir compte de cette id de session qui s'ajoute automatiquement lorsque j'utilise le menu de bas de page qui lui est celui d'origine... :/
Est il possible que l'action script de mon menu flash au lieu de m'envoyer directement sur la page concernée corresponde à un clique sur le menu de bas de page par exemple??:/
est ce que lors d'un clique sur le menu flash je peux lui demander d'envoyer un ordre php par exemple (le même que celui de mon menu de bas de page pour être plus précis)??:/
y a t-il un moyen plus simple pour que l'id de session touche aussi le menu flash.:/

oups peut être n'ai je pas posté au bon endroit
Dernière édition par bofy le Lun 27 Avr 2009, 20:51, édité 1 fois.
bofy
Membre inactif
 
Messages: 5
Inscription: Lun 27 Avr 2009, 18:40

Messagepar Louis_Cypher » Mar 28 Avr 2009, 11:12

Bonjour.

Aaahhh, flash et oscss...

Alors, commençons par le tout début : comment as-tu intégré ton flash ? A quel endroit du site ? dans quelle page ?
oscss 1.2 + qpbpp + qtpro + gestion pointue des stocks + appros + export clients + export commandes sur ebp + liaison avec apisoft + module personnalisation + calcul des prix à la surface + ultra pics + import via csv + resize auto des images via imagemagik + plein d'autres trucs + intégration dans joomla
Louis_Cypher
Site Admin
 
Messages: 82
Inscription: Ven 22 Sep 2006, 18:08

Messagepar bofy » Mar 28 Avr 2009, 11:56

bonjour,
j'ai créé un template et dans ce template j'ai intégré mon menu flash, le template est une copie du modèle oscssauquel j'ai changé le header par mon menu flash et changé la dispo en une seule colonne.

Code: Tout sélectionner
<head>
  <meta http-equiv="content-type" content="text/html; charset=<?php echo CHARSET; ?>" />
  <meta name="monsite" content="j4k"/>
  <?php  require_once(DIR_WS_INCLUDES . 'header_tags.php');?>
 <meta name="robots" content="all" />
  <base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>" />
 <style type="text/css" media="all">
   @import "<?php echo 'templates/'.$template.'/'; ?>sample.css";   
  </style>
  <script type="text/javascript" src="includes/general.js"></script>
  <?php  require_once(DIR_WS_INCLUDES . 'header_includes.php');?>
  <?php isset($javascripts) ? require_once(DIR_WS_INCLUDES . 'js/' . basename($javascripts)) : ''; ?>
    <link href="/-/templates/montemplate/sample.css" rel="stylesheet" type="text/css" />
    <script src="../../../Scripts/AC_RunActiveContent.js" type="text/javascript"></script>
</head>

<body>   
<div id="container">
  <div id="header">
<!-- Flash Menu -->
        <script type="text/javascript">
AC_FL_RunContent( 'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0','width','850','height','92','src','/-/templates/montemplate/includes/languages/french/menufr/Menu_test','quality','high','pluginspage','http://www.macromedia.com/go/getflashplayer','movie','/-/templates/montemplate/includes/languages/french/menufr/Menu_test' ); //end AC code
</script><noscript><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="850" height="92">
          <param name="movie" value="/-/templates/montemplate/includes/languages/french/menufr/Menu_test.swf" />
          <param name="quality" value="high" />
          <embed src="/-/templates/montemplate/includes/languages/french/menufr/Menu_test.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="850" height="92"></embed>
        </object></noscript>
    <?php require_once(oscss_boxes($template,'languages.php')); ?>
<!-- END Flash Menu   -->
  </div>

les flags ont été déplacés dans le "page_content".
Dernière édition par bofy le Mar 28 Avr 2009, 11:58, édité 1 fois.
bofy
Membre inactif
 
Messages: 5
Inscription: Lun 27 Avr 2009, 18:40

Messagepar Louis_Cypher » Jeu 30 Avr 2009, 14:11

Je serais toi, j'incluerais mon menu flash par le biais d'une box.

manip :
tu copies ce joli code dans un nouveau fichier php, que tu appelleras - au hasard - header_flash.php

<?php

require_once('includes/application_top.php'); ?>
[code affichage flash]

Ce fichier header_flash, tu le places - parce que tu es organisé - dans le dossier content/boxes/

et apr_s, tu l'appelles dans ta page à l'aide de la fonction oscss boxes

Et là, logiquement, tes problèmes seront résolus...
oscss 1.2 + qpbpp + qtpro + gestion pointue des stocks + appros + export clients + export commandes sur ebp + liaison avec apisoft + module personnalisation + calcul des prix à la surface + ultra pics + import via csv + resize auto des images via imagemagik + plein d'autres trucs + intégration dans joomla
Louis_Cypher
Site Admin
 
Messages: 82
Inscription: Ven 22 Sep 2006, 18:08

Messagepar bofy » Jeu 30 Avr 2009, 16:22

salut LOUIS_CYPHER
alors j'ai suivi tout ceci à la lettre:
j'ai donc créé une boxe appelée header_flash.php
contenant ceci
Code: Tout sélectionner
<?php
  require_once('includes/application_top.php'); ?>
 <script type="text/javascript">
AC_FL_RunContent( 'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0','width','850','height','92','src','/-/templates/monsite/includes/languages/french/menufr/Menu_test','quality','high','pluginspage','http://www.macromedia.com/go/getflashplayer','movie','/-/templates/monsite/includes/languages/french/menufr/Menu_test' ); //end AC code
</script><noscript><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="850" height="92">
          <param name="movie" value="/-/templates/monsite/includes/languages/french/menufr/Menu_test.swf" />
          <param name="quality" value="high" />
          <embed src="/-/templates/monsite/includes/languages/french/menufr/Menu_test.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="850" height="92"></embed>
        </object></noscript>

puis dans mon template j'appelle Header_flash.php
Code: Tout sélectionner
<body>   
<div id="container">
  <div id="header">
<!-- Flash Menu -->
<?php  require_once('includes/boxes/' . 'header_flash.php');?>           
<!-- END Flash Menu   -->

<!-- Language Flags -->
    <?php require_once(oscss_boxes($template,'languages.php')); ?>
<!-- END Language Flags -->
  </div>

j'obtiens effectivement que le menu flash s'affiche mais pour qu'il fonctionne il faut d'abord que je clique sur un des flags de langue et en plus il ne fonctionne qu'une fois ensuite si je veux le reutiliser je dois dabord cliquer sur un flag de language.
ensuite.. les cPath qui correspondent au boutons du menu flash ne contiennent toujours pas d'oscid comme quand je clique sur le menu de footer.
index.php?cPath=23&osCsid=cdfc1479ff956c38a8128fcf108d3274

ce qui fait que ça reset automatiquement mon cart.
de plus comme tu peux le voir dans les liens d'accès au menu flash c'est un menu temporaire car ce que je voudrai faire c'est deux menu flash, un par langue chacun s'appelera menu et sera placé dans templates/montemplate/include/languages/la langue choisie
le menu flash français aura un seul drapeau de langue, l'anglais et bien entendu le menu flash anglais aura lui aussi un seul drapeau de langue, le français.(c'est le menu flash qui contient le texte qui apparait au passage de la souris)
on a besoin uniquement du drapeau de la langue que l'on veut obtenir pas celui de la langue qu'on utilise actuellement.(pour le moment la langue je ne m'en soucis pas encore... si tout le reste fonctionne ça sera déja pas mal...)

avant de passer le menu flash dans une boxe, mon menu flash avait deja ce petit problème de chargement lors de la première arrivée sur le site (lors de la première visite d'un nouveau visiteur) il lui fallait cliquer sur une des langue pour que le menu flash s'active et fonctionne, avant il était visible mais pas actif.
est il possible de demander au chargement du menu flash de vérifier si une session id existe et si oui de l'utiliser... je te demande ça car en poussant un peu plus mes essais je me suis rendu compte que le bouton mon compte de mon menu flash...obtient une session ID à chaque fois mais c'est une nouvelle à chaque fois pas celle de la session en cours.
mon bouton flash mon compte envois là:
Code: Tout sélectionner
on (press) {
 
  getURL("http://www.monsite.com/account.php?","_self")
 
}

peut etre dois je mettre getURL("/account.php?","_self") pour rester dans la même session et faire de même pour tout les autres boutons ??
Dernière édition par bofy le Jeu 30 Avr 2009, 16:40, édité 1 fois.
bofy
Membre inactif
 
Messages: 5
Inscription: Lun 27 Avr 2009, 18:40

Messagepar Louis_Cypher » Jeu 30 Avr 2009, 22:06

Ah, on progresse dans la définition du problème.

Alors, 1er point essentiel : la variable language. Il faut qu'elle suive partout.
Donc...déclarer la variable dans tous tes liens, non ?

petite chose au passage : 2 flash pour un simple problème de langue ? Un peu bricoleur, ça !! Flash est capable de lire des variables que tu vas lui donner... et donc, d'afficher un contenu spécifique selon cette variable..et surtout, flash doit te redonner des variables lui aussi.
La première solution à mettre en place ? Hé bien...déclarer la variable language !
language=en ou language=fr
en clair, ca veut dire menutest.swf?language=fr ou - plus pro encore - language=$_GET['language'].

A l'intérieur de flash, ca devient alors tout bête de redonner cette variable sur tous les liens.

Essaie deja avec ça : je pense que ce devrait corriger de nombreux soucis.
oscss 1.2 + qpbpp + qtpro + gestion pointue des stocks + appros + export clients + export commandes sur ebp + liaison avec apisoft + module personnalisation + calcul des prix à la surface + ultra pics + import via csv + resize auto des images via imagemagik + plein d'autres trucs + intégration dans joomla
Louis_Cypher
Site Admin
 
Messages: 82
Inscription: Ven 22 Sep 2006, 18:08

Messagepar bofy » Ven 01 Mai 2009, 19:54

alors tout d'abord j'ai retiré menu_test.swf pour mettre un menu.swf dans templates/montemplate/includes/languages/french/ pour le menu flash en français et un menu.swf dans templates/montemplate/includes/languages/english/ pour le menu flash en anglais.
ensuite dans header_flash que j'ai créé la dernière fois j'ai maintenant
Code: Tout sélectionner
<?php
  require_once('includes/application_top.php'); ?>
<script src="../../Scripts/AC_RunActiveContent.js" type="text/javascript"></script>
<script type="text/javascript">
AC_FL_RunContent( 'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0','width','850','height','92','src','/templates/montemplate/includes/languages/<?php echo $language ;?>/Menu','quality','high','pluginspage','http://www.macromedia.com/go/getflashplayer','movie','/templates/montemplate/includes/languages/<?php echo $language ;?>/Menu' ); //end AC code
</script><noscript><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="850" height="92">
          <param name="movie" value="/templates/montemplate/includes/languages/<?php echo $language ;?>/Menu.swf" />
          <param name="quality" value="high" />
          <embed src="/templates/montemplate/includes/languages/<?php echo $language ;?>/Menu.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="850" height="92"></embed>
        </object></noscript>

maintenant en même temps que je charge une page ça me charge le menu flash en français (car langue par défaut) puis si je clique sur le drapeau anglais le menu flash chargé est celui en anglais.
donc pour ça c'est nickel.
par contre quand je passe la souris au dessus les images changent comme prévu mais quand je clique rien ne se passe. Mais comme j'ai modifié les actions scripts dans les menus flash... je pense que je me suis planté dans la syntaxe en rajoutant la langue qui de plus n'est pas nécessaire car comme je charge un menu différent pour chaque langue, tant que le visiteur ne clique pas sur le drapeau de la langue opposée il n'y a aucune raison que la langue change seule... mais peut être est ce une sécurité supplémentaire. par exemple pour le bouton accueil, l'action script est maintenant:
Code: Tout sélectionner
on (press) {
 
  getURL("http://www.monsite.com/index.php?","_self")
 language=$_GET['french']
 
}

une catégorie donne
Code: Tout sélectionner
on (press) {
 
  getURL("http://www.monsite.com/index.php?cPath=6","_self")
  language=$_GET['french']
 
}

et pour le drapeau qui permet de changer pour la langue opposée
Code: Tout sélectionner
on (press) {
 
  set language='english'
 
}

donc il y a de grande chances que ces actions scripts ne fonctionnent pas à causes des ordres qui y sont inscrits avec une syntaxe erronée.
Tu dis que je peux avoir des variables différentes dans flash mais dans ce cas comment lui indiquer au repos dans tout les cas "cette serie d'image, la meme pour les deux langues car pas de texte au repos" si langue anglaise on mouseover "la serie avec texte en anglais" et onclick "goto page texte anglais" et si langue française on mouseover "la serie d'image avec texte en français" et onclick "goto page texte français" ???
Dernière édition par bofy le Ven 01 Mai 2009, 20:37, édité 1 fois.
bofy
Membre inactif
 
Messages: 5
Inscription: Lun 27 Avr 2009, 18:40

Messagepar Louis_Cypher » Ven 01 Mai 2009, 23:23

Alors.

je persiste : 2 flash pour une simple histoire de langue, c'est inutile.Bref.

Concernant la variable language :
- tu es obligé de la faire passer dans tes liens en flash (j'en suis quasiment certain) : la variable language est une variable globale de oscommerce. Dans les liens "normaux", la variable globale est suivie. Concernant flash, je crois qu'il faut la re-déclarer à chaque lien. Donc, index.php?language=fr", par exemple.

Quant à ta dernière question, la réponse y est : tu programme cette phrase et tu as gagné : tu viens tout simplement d'écrire le mini-cahier des charges de ton animation flash. Tout se gère à partir de cette variable language.
Pour savoir comment interagir entre flash et php, je t'invite à utiliser google : tu y trouveras une source inégalée de tutoriels et explications en tous genres.
oscss 1.2 + qpbpp + qtpro + gestion pointue des stocks + appros + export clients + export commandes sur ebp + liaison avec apisoft + module personnalisation + calcul des prix à la surface + ultra pics + import via csv + resize auto des images via imagemagik + plein d'autres trucs + intégration dans joomla
Louis_Cypher
Site Admin
 
Messages: 82
Inscription: Ven 22 Sep 2006, 18:08


Retourner vers osCSS 1.2.1

 


  • Articles en relation
    Réponses
    Vus
    Dernier message
  • Oscss 121
    par chever » Ven 29 Aoû 2008, 10:45
    7 Réponses
    1637 Vus
    Dernier message par cynic- Voir le dernier message
    Mar 02 Sep 2008, 18:38
  • osCSS + ERP CRM Dolibarr
    par j4k » Lun 01 Sep 2008, 13:28
    4 Réponses
    1987 Vus
    Dernier message par j4k Voir le dernier message
    Jeu 26 Nov 2009, 14:13
  • osCSS 1.2.1 finale
    par j4k » Lun 01 Sep 2008, 19:52
    15 Réponses
    4080 Vus
    Dernier message par Juto Voir le dernier message
    Mar 13 Oct 2009, 19:33
  • CMS pour osCSS
    par j4k » Mer 17 Sep 2008, 23:51
    11 Réponses
    3175 Vus
    Dernier message par j4k Voir le dernier message
    Mar 31 Mar 2009, 01:30
  • osCSS et Spip
    par Gil1256 » Jeu 28 Mai 2009, 22:12
    5 Réponses
    1190 Vus
    Dernier message par oscim Voir le dernier message
    Mar 30 Juin 2009, 10:30

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité

cron