miniature pour les sous-catégories ???

Réduire
X
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • miniature pour les sous-catégories ???

    Bonjour à tous,
    Je ne comprends pas pourquoi quand j'assigne une miniature à une catégorie, çà se voit en front-end, par contre si j'assigne une miniature pour une SOUS-catégorie, elle n'est pas visible sur le front-end? Mais est-ce possible que quand je clique sur une catégorie, je puisse donc voir la liste des sous-catégories avec leur miniature que je leur ai assignée du coté back-end?
    Merci d'avance!
    A+
    Dernière édition par bris à 01/08/2006, 11h20 Raison: J'avais pas précisé qu'il s'agissait de datso

  • #2
    Oui effectivement, l'affichage des miniatures pour les sous-catégories pose problème.
    Regarde comment j'ai fait ici
    En fait, pour la miniature dans la sous catégorie, il ne sert à rien de sélectionner une image dans la liste, elle ne passe pas. Par contre, tout simplement, comme l'ajout d'une image dans un item, tu cliques sur la petite icône avec l'arbre et puis tu mets l'adresse de l'image et c'est bon !
    (j'ai mis une petite ligne au dessus de l'image sinon elle colle au titre et c'est moche)

    Phil
    Nous promotionons l'art et la culture, par nature... Nous luttons pour un monde plus juste, par devoir. Mont K'i

    Commentaire


    • #3
      Bonjour Orphil,
      oui effectivement, je pense que ta solution est assez sympatique, et surtout simple ;-), tu parles surement d'insérer la photo dans la partie description de la sous-catégorie, c'est bien çà? je n'y avais pas pensé et j'ai passé quelques heures à me prendre la tete sur le fichier datsogallery.php ourquoi faire simple quand on peut se compliquer la vie... ceci dit, j'ai trouvé la solution, je vais refaire la partie du code relative aux sous-catégories et m'empresser de l'envoyer qui l'a dévellopé, je pense que cà peut l'intéresser. Pour faire simple (il faudra bien évidement refaire un peu le code autour), il faut chercher la ligne :
      Code:
      $cur_name = @$rows[$index];
      aux alentours de la ligne 1000 et j'ai ajouté ces quelques lignes dessous:
      Code:
      $output .= '<img src="images/stories/' . $cur_name->image .'" alt="">';
      Evidement, comme je l'ai déjà, il faut aussi ajuster le code pour le tableau pour une meilleur visibilité, je metterai le code sur ce meme topic à peine l'aurais-je modifié

      Merci encore Orphil pour l'intéret que tu as porté à ma question
      A+
      Dernière édition par bris à 01/08/2006, 15h32

      Commentaire


      • #4
        Voilà, je l'ai vite fait et il serait aussi intéressant d'insérer une variable permettant de définir le nombre de sous-catégorie par ligne (variable à ajouter dans l'interface de configuration) ... à suivre...

        Voici donc la fonction dmoz, que vous pouvez substituer à celle d'origine dans le fichier datsogallery.php si vous souhaiter voir l'image miniature que vous avez associée votre sous-catégorie :

        function dmoz ($catid, $Itemid)

        {

        global $database, $travelConfig, $task, $gid, $dgurl;

        $database->setQuery("SELECT d.* "

        . " \n FROM #__datsogallery_catg AS d "

        . " \n WHERE d.parent=$catid and d.published=1 and access<='" . $gid . "'"

        . " \n ORDER BY d.ordering DESC ");

        $rows = $database->loadObjectList();

        $num_rows = count($rows);

        $index = 0;
        $output = '<table cellspacing="1" cellpadding="4" border="0" width="100%">';

        if (!$num_rows) {

        $output .= '<tr><td></td></tr>';

        }else{

        $output .= '<tr><td align="left" colspan="2" class="sectiontableheader">'._DG_POMKAT.'</td>'.'</tr>';

        }

        for ($row_count = 0; $row_count < $num_rows; $row_count++) {

        $output .= '<tr valign="middle"><td class="sectiontableentry2" align="left">';
        $cur_name = @$rows[$index];
        $output .= '<a href="' . sefRelToAbs("$dgurl&func=viewcategory&catid=$cur_n ame->cid") . '">';
        $output .= '<img src="images/stories/' . $cur_name->image .'" alt=""></a></td>';
        $output .= '<td class="sectiontableentry2" width="100%" align="left">';
        if (trim($cur_name)) {

        $output .= '<a href="' . sefRelToAbs("$dgurl&func=viewcategory&catid=$cur_n ame->cid") . '">';
        $output .= $cur_name->name . ' (' . GetNumberOfLinks($cur_name->cid) . ')</a>';

        }

        $index++;
        $output .= '<br />' . @$cur_name->description . '</td></tr>';
        }

        $output .= '</table>';

        return $output;
        }
        vous obtiendrez une sous catégorie par ligne!

        A+

        Commentaire


        • #5
          Voici donc le code refait (je sais, c'est sale mais çà marche) avec la variable $NB_SCPL ... (Nombre de Sous-Categorie Par Ligne)
          après divers tests, tout semble aller pour le mieu, tester là et dites le moi ;-)
          Enjoy

          function dmoz ($catid, $Itemid)

          {

          global $database, $travelConfig, $task, $gid, $dgurl;

          $database->setQuery("SELECT d.* "

          . " \n FROM #__datsogallery_catg AS d "

          . " \n WHERE d.parent=$catid and d.published=1 and access<='" . $gid . "'"

          . " \n ORDER BY d.ordering DESC ");

          $rows = $database->loadObjectList();

          $num_rows = count($rows);

          $index = 0;


          /*Voici la variable $NB_SCPL (Nombre de Sous-Categorie Par Ligne), je pense que çà se comprend tout seul, modifiez-la à votre convenance, espérons que Datso, nous l'inclu dnas la partie configuration dans sa prochaine version ;-)*/
          $NB_SCPL = 3;

          if ($NB_SCPL > $num_rows){
          $NB_SCPL = $num_rows;}
          else{$NB_SCPL = $NB_SCPL; }

          $Colspantitle = $NB_SCPL*2;
          $output = '<table cellspacing="1" cellpadding="4" border="0" width="100%">';

          if (!$num_rows) {

          $output .= '<tr><td></td></tr>';

          }else{

          $output .= '<tr><td align="left" colspan="'.$Colspantitle.'" class="sectiontableheader">'._DG_POMKAT.'</td>'.'</tr>';

          }

          for ($row_count = 0; $row_count < ($num_rows/$NB_SCPL) ; $row_count++) {

          $output .= '<tr valign="middle">';
          for ($X = 0; $X < $NB_SCPL; $X++) {
          $cur_name = @$rows[$index];
          $output .= '<td class="sectiontableentry2" align="left" width="50">';
          $output .= '<a href="' . sefRelToAbs("$dgurl&func=viewcategory&catid=$cur_n ame->cid") . '">';
          if (!$cur_name->image){
          $output .= '</td><td>';}
          else{
          $output .= '<img src="images/stories/' . $cur_name->image .'" alt=""></a></td>';
          $output .= '<td class="sectiontableentry2" align="left">';}
          if (trim($cur_name)) {

          $output .= '<a href="' . sefRelToAbs("$dgurl&func=viewcategory&catid=$cur_n ame->cid") . '">';
          $output .= $cur_name->name . ' (' . GetNumberOfLinks($cur_name->cid) . ')</a>';

          }

          $index++;
          $output .= '<br />' . @$cur_name->description . '</td>';
          }
          $output .= '</tr>';
          }


          $output .= '</table>';

          return $output;
          }
          A+

          Commentaire


          • #6
            Merci Bris !
            Du tout beau boulot !

            Phil
            Nous promotionons l'art et la culture, par nature... Nous luttons pour un monde plus juste, par devoir. Mont K'i

            Commentaire


            • #7
              juste que, en ouvrant une sous-catégorie, j'ai ce warning :

              Warning: Division by zero in /home/m/mont-ki/www/components/com_datsogallery/datsogallery.php on line 1026

              la ligne 1026 c'est :

              for ($row_count = 0; $row_count < ($num_rows/$NB_SCPL) ; $row_count++) {

              Le warning apparaît également dans les catégories sans sous-catégories...
              Phil
              Nous promotionons l'art et la culture, par nature... Nous luttons pour un monde plus juste, par devoir. Mont K'i

              Commentaire


              • #8
                Par ailleurs, depuis tes modifs, des sous-catégories réservées aux membres ne s'ouvrent pas tout de suite (je ne sais pas si ça a un rapport, ça m'étonnerait mais quand même bizarre que ça se produise depuis cette modif)
                le message apparaît pour dire qu'il faut se connecter (alors que je suis connecté) ; si on reclique une deuxième voire une troisième fois, alors ça s'ouvre...
                (c'est un peu emmerdant, ça...)
                Nous promotionons l'art et la culture, par nature... Nous luttons pour un monde plus juste, par devoir. Mont K'i

                Commentaire


                • #9
                  maintenant je viens de tester la première version (en une colonne) et je n'ai plus le warning... Par contre le message "Vous n\'êtes pas autorisé à accéder à ce dossier.Vous devez vous connecter. Vous identifier. " apparaît encore...
                  Nous promotionons l'art et la culture, par nature... Nous luttons pour un monde plus juste, par devoir. Mont K'i

                  Commentaire


                  • #10
                    Et si je puis me permettre une dernière remarque : si, dans la version 1 colonne, il n'y a plus le warning, par contre il oblige impérativement la miniature (sous peine d'avoir une croix rouge)
                    Si tu pouvais fignoler ces quelques détails, ce serait cool ! (si je savais le faire, ce serait volontiers... Hélas... je connais un petit peu le htm... et voilà tout )
                    Dernière édition par Orphil à 02/08/2006, 18h24
                    Nous promotionons l'art et la culture, par nature... Nous luttons pour un monde plus juste, par devoir. Mont K'i

                    Commentaire


                    • #11
                      Super, merci, c'était bien ça !

                      Quant au problème de warning :

                      Envoyé par Orphil
                      juste que, en ouvrant une sous-catégorie, j'ai ce warning :

                      Warning: Division by zero in /home/m/mont-ki/www/components/com_datsogallery/datsogallery.php on line 1026

                      la ligne 1026 c'est :

                      for ($row_count = 0; $row_count < ($num_rows/$NB_SCPL) ; $row_count++) {

                      Le warning apparaît également dans les catégories sans sous-catégories...
                      Phil
                      en fait, il n'apparaît plus que sur les pages de miniatures.
                      Si, à la place, je remets la phrase d'origine :
                      for ($row_count = 0; $row_count < $num_rows; $row_count++) {

                      alors le warning n'apparaît plus et c'est presque parfait... Sauf que, je ne sais pas pourqoi, il remet deux lignes inutiles en dessous. (voir ici)
                      Mais bon, si ce n'est que ça le problème... je m'en fous un peu.

                      bon w-e !
                      Phil
                      Nous promotionons l'art et la culture, par nature... Nous luttons pour un monde plus juste, par devoir. Mont K'i

                      Commentaire


                      • #12
                        Salut Orphil,
                        C'est quand meme bizarre ces nouveaux messages, il est vrai que j'ai fait quelques autres modifs dans le reste du code, mais je ne pense que çà ait un effet sur les permissions ... ?!?
                        pour la division par 0, oui, en effet si tu configures $NB_SCPL=0 c'est à dire 0 catégorie par ligne, çà ne peut pas marcher ;-) pour le reste, tests-tu en local ou sur un server web publique? sur quel navigateur fais-tu le test (perso, j'ai fait le tyest sur firefox et IE), enfin, pour la croix rouge quand il n'y a pas de miniature, il faudrait surement que je revois ma condition if (!$cur_name->image) ... peut-etre en if ($cur_name->image == "") ... j'aimerai bien avoir l'avis du créateur du composant, un certain "datso" qui fréquente aussi ce forum à qui j'ai déjà envoyé un message, si tu veux orphil, je pourrais aussi t'envoyer la totalitée de mon datsogallery.php pour que tu puisses tester... mais pour çà on en reparle minimum mardi car ce dimanche, je me marie :-)
                        A+

                        Commentaire


                        • #13
                          Génial ! Toutes mes félicitations !

                          concernant la division par zéro j'ai essayé d'autres chiffres sans réel succès... mais bon : je suis épaté par vos connaissances en ce langage si difficile (pour un littéraire comme moi !) et je me dis qu'il doit s'agir d'une connerie de détail...
                          Pour le reste, il est vrai que je n'ai testé qu'avec Maxthon (IE)
                          et enfin oui, je veux bien ta version de datsogallery.php
                          Ok, on en reparlera mardi...

                          Encore tous mes voeux de bonheur !

                          Phil
                          Nous promotionons l'art et la culture, par nature... Nous luttons pour un monde plus juste, par devoir. Mont K'i

                          Commentaire


                          • #14
                            salut Bris,

                            concernant ton fichier datsogallery.php, je veux bien l'essayer (si tu voulais me l'envoyer à phil@montki.com)
                            en fait, oui : la présentation en une seule colonne oblige la miniature quant à celle en plusieurs colonnes, il ajoute 2 lignes... je ne sais pas pourquoi.

                            (mais encore une fois, dés qu'il s'agit de travailler directement dans le code, j'accuse de sérieuses lacunes...)

                            Phil
                            Nous promotionons l'art et la culture, par nature... Nous luttons pour un monde plus juste, par devoir. Mont K'i

                            Commentaire


                            • #15
                              Salut Orphil,
                              après un mois passé au Madagascar, me revoilà pointer le bout de mon nez... J'ai solutionné le problème de la division par 0, il manquait en fait une petite condition pour faire en sorte que s'il n'y a pas de sous-catégorie, alors on n'affiche rien... ben oui, s'il n'y pas de sous-catégorie, alors la variable $num_rows = 0 et donc ayant affecté le nombre de sous-catégorie par ligne ($NB_SCPL) à $num_rows, la machine n'apprécie que bien peu : "$num_rows/$NB_SCPL" (0 divisé par 0 egal la tete dans l'ordo :-))

                              voici donc une petite mise à jour de la fonction dmoz de datsogallery.php :

                              function dmoz ($catid, $Itemid)

                              {

                              global $database, $travelConfig, $task, $gid, $dgurl;

                              $database->setQuery("SELECT d.* "

                              . " \n FROM #__datsogallery_catg AS d "

                              . " \n WHERE d.parent=$catid and d.published=1 and access<='" . $gid . "'"

                              . " \n ORDER BY d.ordering DESC ");

                              $rows = $database->loadObjectList();

                              $num_rows = count($rows);

                              $index = 0;


                              /*Voici la variable $NB_SCPL (Nombre de Sous-Categorie Par Ligne), je pense que çà se comprend tout seul, modifiez-la à votre convenance, espérons que Datsonous la mette dans la partie configuration dans sa prochaine version ;-)*/
                              $NB_SCPL = 3;

                              if ($num_rows == 0){
                              $output = '<table cellspacing="1" cellpadding="4" border="0" width="100%"><TR><TD></TD></TR>';
                              }
                              else{


                              if ($NB_SCPL > $num_rows){
                              $NB_SCPL = $num_rows;}
                              else{$NB_SCPL = $NB_SCPL; }

                              $Colspantitle = $NB_SCPL*2;
                              $output = '<table cellspacing="1" cellpadding="4" border="0" width="100%">';

                              if (!$num_rows) {

                              $output .= '<tr><td></td></tr>';

                              }else{

                              $output .= '<tr><td align="left" colspan="'.$Colspantitle.'" class="sectiontableheader">'._DG_POMKAT.'</td>'.'</tr>';

                              }

                              for ($row_count = 0; $row_count < ($num_rows/$NB_SCPL) ; $row_count++) {

                              $output .= '<tr valign="middle">';
                              for ($X = 0; $X < $NB_SCPL; $X++) {
                              $cur_name = @$rows[$index];
                              $output .= '<td class="sectiontableentry2" align="left" width="50">';
                              $output .= '<a href="' . sefRelToAbs("$dgurl&func=viewcategory&catid=$cur_n ame->cid") . '">';
                              if (!$cur_name->image){
                              $output .= '</td><td>';}
                              else{
                              $output .= '<img src="images/stories/' . $cur_name->image .'" alt=""></a></td>';
                              $output .= '<td class="sectiontableentry2" align="left">';}
                              if (trim($cur_name)) {

                              $output .= '<a href="' . sefRelToAbs("$dgurl&func=viewcategory&catid=$cur_n ame->cid") . '">';
                              $output .= $cur_name->name . ' (' . GetNumberOfLinks($cur_name->cid) . ')</a>';

                              }

                              $index++;
                              $output .= '<br />' . @$cur_name->description . '</td>';
                              }
                              $output .= '</tr>';
                              }
                              }

                              $output .= '</table>';

                              return $output;
                              }
                              Je ne me rapèle plus quels étaient les autres problèmes...
                              A+
                              Dernière édition par bris à 18/09/2006, 11h40

                              Commentaire

                              Annonce

                              Réduire
                              1 sur 2 < >

                              C'est [Réglé] et on n'en parle plus ?

                              A quoi ça sert ?
                              La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

                              Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

                              Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
                              Comment ajouter la mention [Réglé] à votre discussion ?
                              1 - Aller sur votre discussion et éditer votre premier message :


                              2 - Cliquer sur la liste déroulante Préfixe.

                              3 - Choisir le préfixe [Réglé].


                              4 - Et voilà… votre discussion est désormais identifiée comme réglée.

                              2 sur 2 < >

                              Assistance au forum - Outil de publication d'infos de votre site

                              Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

                              Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

                              Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

                              UTILISER À VOS PROPRES RISQUES :
                              L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

                              Problèmes connus :
                              FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

                              Installation :

                              1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

                              Archive zip : https://github.com/AFUJ/FPA/zipball/master

                              2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

                              3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

                              4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

                              5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

                              6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
                              et remplacer www. votresite .com par votre nom de domaine


                              Exemples:
                              Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
                              Télécharger le script fpa-fr.php dans: /public_html/
                              Pour executer le script: http://www..com/fpa-fr.php

                              Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
                              Télécharger le script fpa-fr.php dans: /public_html/cms/
                              Pour executer le script: http://www..com/cms/fpa-fr.php

                              En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

                              Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
                              Voir plus
                              Voir moins
                              Travaille ...
                              X