Artikel Dropdown mit nur einer Sprache

Gesperrt
helix
Beiträge: 6
Registriert: So 15. Aug 2004, 14:22
Wohnort: Stuttgart
Kontaktdaten:

Artikel Dropdown mit nur einer Sprache

Beitrag von helix »

Hi zusammen,

ich hab da mal ne Frage zu nem Modul, daß ich etwas abgeändert hab. Ich will auf meiner Seite ein Dropdown Menü haben, daß die Titel von bestimmten Artikeln enthält (die in der Kategorie Sprachpakete) und dann auf diese verlinkt. Soweit tut mein Modul auch schon. (Siehe http://www.euroball.info oben).

Problem: die Seite ist zweisprachig! auf den englischen seiten sollen aber nicht die artikel aus der englischen Kategorie "Sprachpakete" aufgelistet werden sondern ebenfalls die aus der DEUTSCHEN!!

Werde also irgendwo was in der Art ändern müssen, daß er nicht die von der aktuell gewählen Sprache nimmt sondern immer die von der Sprache 1.

Hat jemand ne Ahnung wie ich das hinbekommen kann? Hab das Modul bisher nur ein wenig abgeändert, kenn mich leider mit SQL zu wenig aus um das selber hinzubekommen :-(.
Wär echt klasse, wenn jemand von euch ne Idee hat!!!!

hier der Code von dem eingesetzen Modul:

INPUT:

Code: Alles auswählen

/**
* Artikelliste mit I1,H1,T1
*
* Erstellt eine Liste mit allen Artikel bis
* auf den Startartikel.
*
* INPUT
*
* Author Jan Lengowski
* Copyright four for business AG
*/

// selected category
$selected = "CMS_VALUE[0]";

echo "<table cellspacing=\"0\" cellpadding=\"10\" border=\"0\">
        <tr valign=\"top\">
          <td>Kategorie wählen:</td>
          <td>
            <select name=\"CMS_VAR[0]\">";
            if($selected!="0" && $selected!=""){
             echo"<option value=\"0\">--- kein ---</option>";

            }else{
            echo"<option selected=\"selected\" value=\"0\">--- kein ---</option>";
            }

            // fetch all categorys
            $query = "SELECT A.idcat, A.level, C.name FROM ".$cfg["tab"]["cat_tree"]." AS A, ".
                     $cfg["tab"]["cat"]." AS B,  ".$cfg["tab"]["cat_lang"]." AS C WHERE A.idcat=B.idcat ".
                     "AND B.idcat=C.idcat AND C.idlang='$lang' AND B.idclient='$client' ".
                     "AND C.visible=1 ORDER BY A.idtree";
            // execute query
            $db->query($query);

            // loop result and build the options
            while ($db->next_record()) {

              // indent spacer
              $spaces = "|";

              // how many levels
              $levels = $db->f("level");

              for ($i = 0; $i < $levels; $i ++) {
                // add 2 spaces for every level
                $spaces = $spaces . "--";

              } // end for
              
              $spaces .= ">";


              if ($selected == $db->f("idcat")) {
                // selected category
                echo "<option selected=\"selected\" value=\"". $db->f("idcat") ."\">". $spaces . $db->f("name") ."</option>";

              } else {
                // category
                echo "<option value=\"". $db->f("idcat") ."\">". $spaces . $db->f("name") ."</option>";

              } // end if

            } // end while

echo "      </select>";

echo "    </td>
        </tr>
        <tr>
          <td>Überschrift</td>
          <td><input type=\"text\" name=\"CMS_VAR[2]\" value=\"CMS_VALUE[2]\"></td>
        </tr>
        <tr>
          <td>Angezeigte Länge in Zeichen</td>
          <td><input type=\"text\" name=\"CMS_VAR[3]\" value=\"CMS_VALUE[3]\"></td>
        </tr>

      </table>";

und jetzt noch der
OUTPUT:

Code: Alles auswählen

<select name="sprachpakete" onChange="MM_jumpMenu('parent',this,0)" style="font-size:10px ">
<option value="#" selected>Sprachwahl</option>
<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* REFERENZ MODUL / ARTIKELLISTE
*
* Artikelliste mit Img 1, Head 1, Head 2
*
* Erstellt eine Liste mit allen Artikel bis
* auf den Startartikel.
*
* Author      :     Jan Lengowski
* Copyright   :     four for business AG
* Created     :     15-08-2002
* Modified    :     16-08-2002
************************************************/

// second db class instance
$db2 = new DB_Contenido;

// selected category
$selcat = "CMS_VALUE[0]";

 if($selcat!="0" && $selcat!=""){

// select all articles in category widthout start article
$query = "SELECT ARTLANG.idart, ARTLANG.idartlang FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".
          $cfg["tab"]["art_lang"]." AS ARTLANG ".
         "WHERE CATART.idcat = '$selcat' AND ARTLANG.idart = CATART.idart AND ARTLANG.idlang = '$lang' AND ".
         "ARTLANG.online = '1' ORDER BY CATART.idart DESC";

// execute query
$db->query($query);

unset($articleID);
unset($linkID);

// get id's of sub articles
while ($db->next_record()) {
  $articleID[] = $db->f("idartlang");
  $linkID[] = $db->f("idart");
} // end while

// loop through subarticles

//echo '
//<table  border="0" cellspacing="0" cellpadding="0">

//';

if (is_array($articleID)) {

    foreach ($articleID as $key => $value) {

          // select all CMS variables of the article 
          /* $sql = "SELECT * FROM ".$cfg["tab"]["content"]." WHERE idartlang = '$value' AND idtype = '1' AND typeid = '1'"; */ 
          $sql = "SELECT * FROM ".$cfg["tab"]["art_lang"]." WHERE idartlang = '$value' ORDER BY idartlang DESC"; 

          $db->query($sql); 
          $db->next_record(); 
          $head = $db->f("title"); 

          if ( strlen($head) > "CMS_VALUE[3]") { 
            $head = substr($head, 0, "CMS_VALUE[3]"); 
            $head .= '..'; 
          } 

          // link 
          $link = $sess->url("front_content.php?client=$client&changelang=1&idcat=$selcat&idart=$linkID[$key]&m=$m&s=$s"); 
          
echo '<option value="'.$link.'">'.urldecode($db->f("title")).'</option>';
//          echo '<tr><td colspan="2" class="hotbox" height="22" style="border: 0px; border-top:0px;padding-left:2px"><a 
//href="'.$link.'" class="hotbox">::'.urldecode($db->f("title")).'</a></td></tr>';           


    } // end while



          unset($headline);
        unset($text);
        
    } // end foreach
    
} // end if (is_array)

//echo '</table>';


?>
</select>


Gruss Nils
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

ebenfalls die aus der deutschen ?

im output nimm mal beim sql query

Code: Alles auswählen

ARTLANG.idlang = '$lang' 
raus...

damit wird auf die aktuelle sprache beschränkt...

du solltest dann aber den wert ARTLANG.idlang mit auslesen und entsprechend dieses wertes &changelang=X bei den links der anderen sprache setzen...
in der aktuellen sprache ist dies nicht notwenig...
ansonsten wird kein sprachwechsel erfolgen...
*** make your own tools (wishlist :: thx)
Gesperrt