-
benja
- Beiträge: 168
- Registriert: Mi 31. Aug 2005, 10:54
- Wohnort: Köln
-
Kontaktdaten:
Beitrag
von benja » Di 23. Feb 2010, 11:36
Hallo,
kann mir jemand helfen und das Sprachmodul so ändern dass ich am Ende keinen Trenner habe?
Also so:
Deutsch / English / Türkçe / Portuguese
statt:
Deutsch / English / Türkçe / Portuguese /
Vielen Dank im Voraus
benja
Hier das Modul das ich verwende:
Code: Alles auswählen
<?php
//Sprachmodul - Version 2.3
//für Contenido 4.4.x
//Alexander Zimmerhofer - alexander(at)zimmerhofer.org
//modified 01.12.2004: Uli Steinle
//Sprachmodul zeigt kleine Landesflaggen zum Umschalten der Sprache an, wenn die entsprechenden Kategorien sowie die entsprechenden Artikel online geschaltet sind.
//Im Editormodus wird die Umschaltmöglichkeit IMMER angeboten...
//Konfiguration...
//Diese Zeilen konfigurieren das Modul...
//Aufbau: $picture["Sprach-ID"] = "PFAD zur Flagge";
$picture["1"] = "Deutsch";
$picture["2"] = "English";
$picture["3"] = "Türkçe";
$picture["4"] = "France";
$picture["5"] = "Portuguese";
echo "".$picture_pfad."</a> ";
//Alt-Tag, das angezeigt werden soll. Analog Sprach-ID [idlang]
$alt["1"] = "Deutsch";
$alt["2"] = "English";
$alt["3"] = "Türkçe";
$alt["4"] = "France";
$alt["5"] = "Portuguese";
//AB HIER NICHTS MEHR ÄNDERN...
$mydb = new DB_Contenido;
$sql = "SELECT ARTLANG.idlang, ARTLANG.online, CATLANG.visible FROM ".$cfg["tab"]["art_lang"]." ";
$sql = $sql. "AS ARTLANG, ".$cfg["tab"]["cat_lang"]." ";
$sql = $sql. "AS CATLANG WHERE ARTLANG.idart = $idart AND CATLANG.idcat = $idcat AND ARTLANG.idlang = CATLANG.idlang ORDER BY ARTLANG.idlang ASC";
$mydb ->query ($sql);
// echo $sql;
while ($mydb -> next_record())
{
while(list($lang_id,$picture_pfad) = each($picture))
{
if(strstr($REQUEST_URI,"changeview=edit") || $submit=="editcontent" || strstr($REQUEST_URI,"area=con_editcontent"))
{
if (($lang != ($mydb->f("idlang"))) and (($mydb->f("idlang")) == $lang_id))
{
echo "<a class=".hilfsnavigation." href=".$sess->url("front_content.php?client=$client&idcat=$idcat&changelang=".($mydb->f("idlang"))."&idart=$idart");
echo ">".$alt[$mydb->f("idlang")]."</a> / ";
}
}
else
{
if (($lang != ($mydb->f("idlang"))) and (($mydb->f("idlang")) == $lang_id) and (($mydb->f("online")) == 1) and (($mydb->f("visible")) == 1))
{
echo "<a class=".hilfsnavigation." href=".$sess->url("front_content.php?&idcat=$idcat&changelang=".($mydb->f("idlang"))."&idart=$idart");
echo ">".$alt[$mydb->f("idlang")]."</a> / ";
}
}
}
reset($picture);
}
?>
-
xmurrix
- Beiträge: 3143
- Registriert: Do 21. Okt 2004, 11:08
- Wohnort: Augsburg
-
Kontaktdaten:
Beitrag
von xmurrix » Di 23. Feb 2010, 14:28
Hallo,
ersetze einfach den Code der while-Schleife im Modul, gegen diesen:
Code: Alles auswählen
$languageLinks = '';
while ($mydb -> next_record())
{
while(list($lang_id,$picture_pfad) = each($picture))
{
if(strstr($REQUEST_URI,"changeview=edit") || $submit=="editcontent" || strstr($REQUEST_URI,"area=con_editcontent"))
{
if (($lang != ($mydb->f("idlang"))) and (($mydb->f("idlang")) == $lang_id))
{
$languageLinks .= "<a class=".hilfsnavigation." href=".$sess->url("front_content.php?client=$client&idcat=$idcat&changelang=".($mydb->f("idlang"))."&idart=$idart");
$languageLinks .= ">".$alt[$mydb->f("idlang")]."</a> / ";
}
}
else
{
if (($lang != ($mydb->f("idlang"))) and (($mydb->f("idlang")) == $lang_id) and (($mydb->f("online")) == 1) and (($mydb->f("visible")) == 1))
{
$languageLinks .= "<a class=".hilfsnavigation." href=".$sess->url("front_content.php?&idcat=$idcat&changelang=".($mydb->f("idlang"))."&idart=$idart");
$languageLinks .= ">".$alt[$mydb->f("idlang")]."</a> / ";
}
}
}
reset($picture);
}
echo trim($languageLinks, ' /');
unset($languageLinks);
Du solltest dich eigentlich etwas mit dem Modulcode außeinander setzen und es selber ändern können...
Gruß
xmurrix
-
benja
- Beiträge: 168
- Registriert: Mi 31. Aug 2005, 10:54
- Wohnort: Köln
-
Kontaktdaten:
Beitrag
von benja » Di 23. Feb 2010, 17:27
Danke xmurrix,
ich sollte mich wirklich mehr damit auseinander setzen. Leider fehlen mir schon die Grundlagen
Den Code von der Hilfsnavigation hier im Forum mit einer ähnlichen Änderung hatte ich mir auch schon angesehen, aber das Umsetzen ist dann doch nichts für mich zumal ich den folgenden Fehler trotz Deiner Hilfe nicht finde.
Leider kommt bei mir im Backend ein Fehler im Modul (Line 18)!
LG
benja
-
xmurrix
- Beiträge: 3143
- Registriert: Do 21. Okt 2004, 11:08
- Wohnort: Augsburg
-
Kontaktdaten:
Beitrag
von xmurrix » Di 23. Feb 2010, 17:59
Poste doch mal das Resultat, also den neuen Modulcode im Ganzen - irgend etwas stimmt in Zeile 18 nicht...
Gruß
xmurrix
-
benja
- Beiträge: 168
- Registriert: Mi 31. Aug 2005, 10:54
- Wohnort: Köln
-
Kontaktdaten:
Beitrag
von benja » Di 23. Feb 2010, 18:01
Das wäre der gesamte Code:
Code: Alles auswählen
<?php
//Sprachmodul - Version 2.3
//für Contenido 4.4.x
//Alexander Zimmerhofer - alexander(at)zimmerhofer.org
//modified 01.12.2004: Uli Steinle
//Sprachmodul zeigt kleine Landesflaggen zum Umschalten der Sprache an, wenn die entsprechenden Kategorien sowie die entsprechenden Artikel online geschaltet sind.
//Im Editormodus wird die Umschaltmöglichkeit IMMER angeboten...
//Konfiguration...
//Diese Zeilen konfigurieren das Modul...
//Aufbau: $picture["Sprach-ID"] = "PFAD zur Flagge";
$picture["1"] = "Deutsch";
$picture["2"] = "English";
$picture["3"] = "Türkçe";
$picture["4"] = "France";
$picture["5"] = "Portuguese";
echo "".$picture_pfad."</a> ";
//Alt-Tag, das angezeigt werden soll. Analog Sprach-ID [idlang]
$alt["1"] = "Deutsch";
$alt["2"] = "English";
$alt["3"] = "Türkçe";
$alt["4"] = "France";
$alt["5"] = "Portuguese";
//AB HIER NICHTS MEHR ÄNDERN...
$mydb = new DB_Contenido;
$sql = "SELECT ARTLANG.idlang, ARTLANG.online, CATLANG.visible FROM ".$cfg["tab"]["art_lang"]." ";
$sql = $sql. "AS ARTLANG, ".$cfg["tab"]["cat_lang"]." ";
$sql = $sql. "AS CATLANG WHERE ARTLANG.idart = $idart AND CATLANG.idcat = $idcat AND ARTLANG.idlang = CATLANG.idlang ORDER BY ARTLANG.idlang ASC";
$mydb ->query ($sql);
// echo $sql;
$languageLinks = '';
while ($mydb -> next_record())
{
while(list($lang_id,$picture_pfad) = each($picture))
{
if(strstr($REQUEST_URI,"changeview=edit") || $submit=="editcontent" || strstr($REQUEST_URI,"area=con_editcontent"))
{
if (($lang != ($mydb->f("idlang"))) and (($mydb->f("idlang")) == $lang_id))
{
$languageLinks .= "<a class=".hilfsnavigation." href=".$sess->url("front_content.php?client=$client&idcat=$idcat&changelang=".($mydb->f("idlang"))."&idart=$idart");
$languageLinks .= ">".$alt[$mydb->f("idlang")]."</a> / ";
}
}
else
{
if (($lang != ($mydb->f("idlang"))) and (($mydb->f("idlang")) == $lang_id) and (($mydb->f("online")) == 1) and (($mydb->f("visible")) == 1))
{
$languageLinks .= "<a class=".hilfsnavigation." href=".$sess->url("front_content.php?&idcat=$idcat&changelang=".($mydb->f("idlang"))."&idart=$idart");
$languageLinks .= ">".$alt[$mydb->f("idlang")]."</a> / ";
}
}
}
reset($picture);
}
echo trim($languageLinks, ' /');
unset($languageLinks);
?>
-
xmurrix
- Beiträge: 3143
- Registriert: Do 21. Okt 2004, 11:08
- Wohnort: Augsburg
-
Kontaktdaten:
Beitrag
von xmurrix » Di 23. Feb 2010, 18:22
Bist du dir sicher, dass der Fehler in diesem Modul ist?
Der Modulcode sieh gut aus und in Zeile 18 ist nichts verdächtiges drin...
Gruß
xmurrix
-
benja
- Beiträge: 168
- Registriert: Mi 31. Aug 2005, 10:54
- Wohnort: Köln
-
Kontaktdaten:
Beitrag
von benja » Di 23. Feb 2010, 19:41
Ja, es ist das Modul. Es leuchtet das rote Lämpchen!
LG
benja
-
xmurrix
- Beiträge: 3143
- Registriert: Do 21. Okt 2004, 11:08
- Wohnort: Augsburg
-
Kontaktdaten:
Beitrag
von xmurrix » Di 23. Feb 2010, 21:34
Kann da keinen Fehler erkennen, habe den Code zum Einen in eine IDE eingefügt, zum Anderen testweise als Modul in Contenido. Beide Male gibt es kein Problem.
Vermutlich hast du bei dir im Modulcode in Zeile 18 irgendetwas drin, dass das Problem verursacht. Bei mir hat das mit dem Code aus
http://forum.contenido.org/viewtopic.ph ... 52#p143354. Nimm einfach das, füge es erneut in die Modulausgabe und speichere es ab. Vielleicht klappt es diesmal...
-
benja
- Beiträge: 168
- Registriert: Mi 31. Aug 2005, 10:54
- Wohnort: Köln
-
Kontaktdaten:
Beitrag
von benja » Mi 24. Feb 2010, 09:48
Seltsam, jetzt geht es.
Viele Dank nochmal
-
marphin
- Beiträge: 196
- Registriert: Mo 24. Nov 2003, 13:01
Beitrag
von marphin » Fr 16. Apr 2010, 11:21
Hallo,
ich bekomme bei dem Modul die Flaggen nicht angezeigt, nur die Links. Den Pfad habe ich wie folgt angegeben:
Code: Alles auswählen
$picture["1"] = "../images/deutsch.jpg";
$picture["2"] = "../images/english.jpg";
$picture["3"] = "../images/france.jpg";
Die Icons liegen in cms/images.
Muss ich da noch etwas beachten?
Gruß, Martin
-
benja
- Beiträge: 168
- Registriert: Mi 31. Aug 2005, 10:54
- Wohnort: Köln
-
Kontaktdaten:
Beitrag
von benja » Fr 16. Apr 2010, 11:28
Hallo Martin,
ist der Pfad richtig? Ich habe dort nur
$picture["1"] = "images/deutsch.jpg";
LG
benja
-
marphin
- Beiträge: 196
- Registriert: Mo 24. Nov 2003, 13:01
Beitrag
von marphin » Fr 16. Apr 2010, 11:41
Hallo Benja,
vielen Dank für die rasche Antwort. Auch mit dem Pfad bekomme ich leider keine Icons!
VG, Martin
-
benja
- Beiträge: 168
- Registriert: Mi 31. Aug 2005, 10:54
- Wohnort: Köln
-
Kontaktdaten:
Beitrag
von benja » Fr 16. Apr 2010, 11:45
Sorry, dann kann ich auch nicht weiterhelfen außer noch mal meinen kompletten Code zu posten. Bei dem Modul wird die Flagge und die Sprache als Text angezeigt.
Code: Alles auswählen
<?php
//Sprachmodul - Version 2.3
//für Contenido 4.4.x
//Alexander Zimmerhofer - alexander(at)zimmerhofer.org
//modified 01.12.2004: Uli Steinle
//Sprachmodul zeigt kleine Landesflaggen zum Umschalten der Sprache an, wenn die entsprechenden Kategorien sowie die entsprechenden Artikel online geschaltet sind.
//Im Editormodus wird die Umschaltmöglichkeit IMMER angeboten...
//Konfiguration...
//Diese Zeilen konfigurieren das Modul...
//Aufbau: $picture["Sprach-ID"] = "PFAD zur Flagge";
$picture["1"] = "Deutsch";
$picture["2"] = "Japanisch";
$picture["4"] = "English";
$picturef["1"] = "images/de.gif";
$picturef["2"] = "images/jp.gif";
$picturef["4"] = "images/en.gif";
//Alt-Tag, das angezeigt werden soll. Analog Sprach-ID [idlang]
$alt["1"] = "Deutsch";
$alt["2"] = "日本語";
$alt["4"] = "English";
//AB HIER NICHTS MEHR ÄNDERN...
$mydb = new DB_Contenido;
$sql = "SELECT ARTLANG.idlang, ARTLANG.online, CATLANG.visible FROM ".$cfg["tab"]["art_lang"]." ";
$sql = $sql. "AS ARTLANG, ".$cfg["tab"]["cat_lang"]." ";
$sql = $sql. "AS CATLANG WHERE ARTLANG.idart = $idart AND CATLANG.idcat = $idcat AND ARTLANG.idlang = CATLANG.idlang ORDER BY ARTLANG.idlang ASC";
$mydb ->query ($sql);
// echo $sql;
$languageLinks = '';
while ($mydb -> next_record())
{
while(list($lang_id,$picture_pfad) = each($picture))
{
if(strstr($REQUEST_URI,"changeview=edit") || $submit=="editcontent" || strstr($REQUEST_URI,"area=con_editcontent"))
{
if (($lang != ($mydb->f("idlang"))) and (($mydb->f("idlang")) == $lang_id))
{
$languageLinks .= "<img src='".$picturef[$mydb->f("idlang")]."' height='10' width='10' vspace='2' hspace='3' border='0' alt='".$alt[$mydb->f("idlang")]."'/> <a class='".hilfsnavigation."' href=".$sess->url("front_content.php?client=$client&idcat=$idcat&changelang=".($mydb->f("idlang"))."&idart=$idart");
$languageLinks .= ">".$alt[$mydb->f("idlang")]."</a> <br/>";
}
}
else
{
if (($lang != ($mydb->f("idlang"))) and (($mydb->f("idlang")) == $lang_id) and (($mydb->f("online")) == 1) and (($mydb->f("visible")) == 1))
{
//$languageLinks .= "<a class=".hilfsnavigation." href=".$sess->url("front_content.php?&idcat=$idcat&changelang=".($mydb->f("idlang"))."&idart=$idart");
$languageLinks .= "<img src='".$picturef[$mydb->f("idlang")]."' height='10' width='10' vspace='2' hspace='3' border='0' alt='".$alt[$mydb->f("idlang")]."'/> <a class='".hilfsnavigation."' href='".$sess->url("front_content.php?&idcat=$idcat&changelang=".($mydb->f("idlang"))."&idart=$idart");
$languageLinks .= "'>".$alt[$mydb->f("idlang")]."</a> <br/>";
}
}
}
reset($picture);
}
echo trim($languageLinks, ' ');
unset($languageLinks);
?>
-
marphin
- Beiträge: 196
- Registriert: Mo 24. Nov 2003, 13:01
Beitrag
von marphin » Fr 16. Apr 2010, 12:27
Hallo Benja,
dankeschön! Hatte wohl einen Fehler im Modul.
Kannst du mir denn auch sagen wie ich den Zeilenumbruch so hin bekomme, dass die Flagge immer über der Sprache steht?
Siehe hier:
http://www.rote-funken-koeln.com/cms
Modulcode:
Code: Alles auswählen
<?php
//Sprachmodul - Version 2.3
//für Contenido 4.4.x
//Alexander Zimmerhofer - alexander(at)zimmerhofer.org
//modified 01.12.2004: Uli Steinle
//Sprachmodul zeigt kleine Landesflaggen zum Umschalten der Sprache an, wenn die entsprechenden Kategorien sowie die entsprechenden Artikel online geschaltet sind.
//Im Editormodus wird die Umschaltmöglichkeit IMMER angeboten...
//Konfiguration...
//Diese Zeilen konfigurieren das Modul...
//Aufbau: $picture["Sprach-ID"] = "PFAD zur Flagge";
$picture["1"] = "Deutsch";
$picture["2"] = "English";
$picture["3"] = "France";
$picture["4"] = "Chinese";
$picture["5"] = "Koelsch";
$picturef["1"] = "images/deutsch.jpg";
$picturef["2"] = "images/english.jpg";
$picturef["3"] = "images/france.jpg";
$picturef["4"] = "images/chinese.jpg";
$picturef["5"] = "images/koelsch.jpg";
//Alt-Tag, das angezeigt werden soll. Analog Sprach-ID [idlang]
$alt["1"] = "Deutsch";
$alt["2"] = "English";
$alt["3"] = "France";
$alt["4"] = "Chinese";
$alt["5"] = "Koelsch";
//AB HIER NICHTS MEHR ÄNDERN...
$mydb = new DB_Contenido;
$sql = "SELECT ARTLANG.idlang, ARTLANG.online, CATLANG.visible FROM ".$cfg["tab"]["art_lang"]." ";
$sql = $sql. "AS ARTLANG, ".$cfg["tab"]["cat_lang"]." ";
$sql = $sql. "AS CATLANG WHERE ARTLANG.idart = $idart AND CATLANG.idcat = $idcat AND ARTLANG.idlang = CATLANG.idlang ORDER BY ARTLANG.idlang ASC";
$mydb ->query ($sql);
// echo $sql;
$languageLinks = '';
while ($mydb -> next_record())
{
while(list($lang_id,$picture_pfad) = each($picture))
{
if(strstr($REQUEST_URI,"changeview=edit") || $submit=="editcontent" || strstr($REQUEST_URI,"area=con_editcontent"))
{
if (($lang != ($mydb->f("idlang"))) and (($mydb->f("idlang")) == $lang_id))
{
$languageLinks .= "<img src='".$picturef[$mydb->f("idlang")]."' height='10' width='10' vspace='2' hspace='3' border='0' alt='".$alt[$mydb->f("idlang")]."'/> <a class='".hilfsnavigation."' href=".$sess->url("front_content.php?client=$client&idcat=$idcat&changelang=".($mydb->f("idlang"))."&idart=$idart");
$languageLinks .= ">".$alt[$mydb->f("idlang")]."</a> <br/>";
}
}
else
{
if (($lang != ($mydb->f("idlang"))) and (($mydb->f("idlang")) == $lang_id) and (($mydb->f("online")) == 1) and (($mydb->f("visible")) == 1))
{
//$languageLinks .= "<a class=".hilfsnavigation." href=".$sess->url("front_content.php?&idcat=$idcat&changelang=".($mydb->f("idlang"))."&idart=$idart");
$languageLinks .= "<img src='".$picturef[$mydb->f("idlang")]."' height='29' width='40' vspace='2' hspace='3' border='0' alt='".$alt[$mydb->f("idlang")]."'/> <a class='".hilfsnavigation."' href='".$sess->url("front_content.php?&idcat=$idcat&changelang=".($mydb->f("idlang"))."&idart=$idart");
$languageLinks .= "'>".$alt[$mydb->f("idlang")]."</a> ";
}
}
}
reset($picture);
}
echo trim($languageLinks, ' ');
unset($languageLinks);
?>
VG, Martin
-
benja
- Beiträge: 168
- Registriert: Mi 31. Aug 2005, 10:54
- Wohnort: Köln
-
Kontaktdaten:
Beitrag
von benja » Fr 16. Apr 2010, 14:07
Das würde ich über CSS regeln/müsste ich auch ausprobieren.