Bildmodul mit oder ohne Link

Gesperrt
Halchteranerin
Beiträge: 5478
Registriert: Di 2. Mär 2004, 21:11
Wohnort: Halchter, wo sonst? ;-)
Kontaktdaten:

Bildmodul mit oder ohne Link

Beitrag von Halchteranerin » Mi 4. Mai 2005, 16:20

Mit der Hilfe von Andreas Kummer habe ich das mitgelieferte Standard-Bildmodul korrigiert, und zwar so, dass nur dann ein Link eingebaut wird, wenn man auch einen angegeben hat (zur Erinnerung: beim mitgelieferten Modul ist das so, dass die Startseite verlinkt wird, falls kein Link angegeben wurde). Das Modul ist in diesem Thread versteckt:
http://www.contenido.org/forum/viewtopic.php?t=5113

Aber um es leichter zu finden, hier nochmal:
INPUT Leer

OUTPUT

Code: Alles auswählen

<?php
/*********************************************** 
* CONTENIDO MODUL - OUTPUT 
* 
* Modulname   :     Bild(1)
* Beschreibung:     im Gegensatz zum Originalmodul wird das Bild 
*                           nur dann mit einem Link hinterlegt, wenn auch 
*                           tatsächlich ein Link angegeben wurde
* Version         :     1.2
* Author          :     irgendwer von 4fb ;-)
* Created        :     keine Ahnung, 4fb fragen
* Last Modified :     04-05-2005 by Christa Tabara mit Hilfe von 
*                           Andreas Kummer und emergence :-)
************************************************/ 

if ("CMS_IMG[1]" != "") {

    $img = '<img src="CMS_IMG[1]" border="0">';

    $imagelink = trim("CMS_LINK[1]");

    if ($imagelink != "http://" && $imagelink != "" && $imagelink != $cfgClient[$client]["path"]["htmlpath"])
      {
        $img = sprintf('<a href="%s" target="%s">%s</a>',"$imagelink", "CMS_LINKTARGET[1]", $img);
      }
    else {$img = '<img src="CMS_IMG[1]" border="0">';}

    echo $img;
}

if ($edit) {
echo "<br>";
echo "CMS_IMGDESCR[1]";
echo "<br>";
echo "CMS_LINKDESCR[1]";
echo "<br>";
}

?>
Ich hatte noch dazu geschrieben:
Ich glaube, man koennte eigentlich auf && !empty($imagelink) verzichten, denn mir scheint so, als waere die Variable niemals leer, aber ich hab's sicherheitshalber nicht gelassen.
was ich aber nicht klaeren konnte, weil sich niemand dazu geaeussert hat. Sollte sich jetzt jemand dazu aeussern, koennte ich ggf. den Code noch korrigieren. :-)

Gruss
Christa

Hier eine Version von i-fekt (veroeffentlicht hier: http://www.contenido.org/forum/viewtopi ... 0986#50986 ), wo man noch einen Alt-Tag angeben kann:

Code: Alles auswählen

<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname   :     Bild(1)
* Beschreibung:     im Gegensatz zum Originalmodul wird das Bild
*                           nur dann mit einem Link hinterlegt, wenn auch
*                           tatsächlich ein Link angegeben wurde
* Version         :     1.2
* Author          :     irgendwer von 4fb ;-)
* Created        :     keine Ahnung, 4fb fragen
* Last Modified :     04-05-2005 by Christa Tabara mit Hilfe von
*                           Andreas Kummer und emergence :-)
************************************************/

if ("CMS_IMG[1]" != "") {

    $img = '<img src="CMS_IMG[1]" border="0">';

    $imagelink = trim("CMS_LINK[1]");

    if ($imagelink != "http://" && $imagelink != "" && $imagelink != $cfgClient[$client]["path"]["htmlpath"])
      {
        $img = sprintf('<a href="%s" target="%s">%s</a>',"$imagelink", "CMS_LINKTARGET[1]", $img);
      }
    else {$img = '<img src="CMS_IMG[1]" border="0" alt="CMS_TEXT[1]" title="CMS_TEXT[2]">';}

    echo $img;
}

if ($edit) {
echo "<br>";
echo "CMS_IMGDESCR[1]";
echo "<br>";
echo "CMS_LINKDESCR[1]";
echo "<br>";
echo "Alt: CMS_TEXT[1]";
echo "Title: CMS_TEXT[2]";
}

?>
Zuletzt geändert von Halchteranerin am Di 27. Sep 2005, 08:54, insgesamt 5-mal geändert.

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

Beitrag von emergence » Mi 4. Mai 2005, 16:41

ähm... statt

Code: Alles auswählen

!empty($imagelink)
täte es folgendes auch...

Code: Alles auswählen

$imagelink != ""

Code: Alles auswählen

$imagelink = "CMS_LINK[1]";
könnte noch ein trim vertragen

Code: Alles auswählen

$imagelink = trim("CMS_LINK[1]");
naja ist geschmacksache...
*** make your own tools (wishlist :: thx)

Halchteranerin
Beiträge: 5478
Registriert: Di 2. Mär 2004, 21:11
Wohnort: Halchter, wo sonst? ;-)
Kontaktdaten:

Beitrag von Halchteranerin » Mi 4. Mai 2005, 16:49

emergence hat geschrieben:naja ist geschmacksache...
Och, ich bin fuer Verbesserungsvorschlaege immer dankbar, so ist das nicht. :wink:

Meinst du so, wie ich das oben geaendert habe?

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

Beitrag von emergence » Mi 4. Mai 2005, 20:13

yep
*** make your own tools (wishlist :: thx)

Beleuchtfix
Beiträge: 1082
Registriert: Di 22. Jul 2003, 10:14
Wohnort: Hessen
Kontaktdaten:

Beitrag von Beleuchtfix » Mi 4. Mai 2005, 20:14

Danke, da kann ich etwas von meiner to do Liste streichen. Das wollte ich schon lange haben :lol:

Was hälst du von folgender "Verbesserung":

Code: Alles auswählen

/******************************************
* File      :   Bild(1)
* Project   :   Contenido
* Descr     :
*
* Author    :   unknown
* modified  :   Halchteranerin  Ausgabe des Links soll nur erfolgen wenn auch ein Link gespeichert ist.
*                Ohne Link wird nicht ausgegeben
*  http://www.contenido.org/forum/viewtopic.php?t=8203&start=0&postdays=0&postorder=asc&highlight=
*               
* Created  :   
* Modified  :    01.05.2005
* 
* Version   :   1.1
* ©  ? 
*****************************************/
Gruß
Florian

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

Beitrag von emergence » Mi 4. Mai 2005, 20:24

ach ja

Code: Alles auswählen

echo "<br>"; 
echo "CMS_IMGDESCR[1]"; 
echo "<br>"; 
echo "CMS_LINKDESCR[1]"; 
echo "<br>";
könnte ein...

Code: Alles auswählen

if ($edit) {
echo "<br>"; 
echo "CMS_IMGDESCR[1]"; 
echo "<br>"; 
echo "CMS_LINKDESCR[1]"; 
echo "<br>";
}
vertragen...
*** make your own tools (wishlist :: thx)

Halchteranerin
Beiträge: 5478
Registriert: Di 2. Mär 2004, 21:11
Wohnort: Halchter, wo sonst? ;-)
Kontaktdaten:

Beitrag von Halchteranerin » Mi 4. Mai 2005, 20:29

Beleuchtfix hat geschrieben:Danke, da kann ich etwas von meiner to do Liste streichen. Das wollte ich schon lange haben :lol:
Aehm, wie lange denn? Wie gesagt, es war schon im Forum gepostet, nur an anderer Stelle. :P

Halchteranerin
Beiträge: 5478
Registriert: Di 2. Mär 2004, 21:11
Wohnort: Halchter, wo sonst? ;-)
Kontaktdaten:

Beitrag von Halchteranerin » Mi 4. Mai 2005, 20:30

Ich hoffe, ich habe nichts verschlimmbessert oben. emergence, bitte nochmal druebergucken. :-) Danke!

Beleuchtfix
Beiträge: 1082
Registriert: Di 22. Jul 2003, 10:14
Wohnort: Hessen
Kontaktdaten:

Beitrag von Beleuchtfix » Mi 4. Mai 2005, 20:38

@Christa,
da habe ich doch wahrhaftig einen der 46493 Beiträge überlesen. :lol:

Dakota
Beiträge: 22
Registriert: Mi 27. Okt 2004, 09:24
Kontaktdaten:

Beitrag von Dakota » Do 5. Mai 2005, 11:18

Hallo,
emergence hat geschrieben:ach ja

Code: Alles auswählen

echo "<br>"; 
echo "CMS_IMGDESCR[1]"; 
echo "<br>"; 
echo "CMS_LINKDESCR[1]"; 
echo "<br>";
könnte ein...

Code: Alles auswählen

if ($edit) {
echo "<br>"; 
echo "CMS_IMGDESCR[1]"; 
echo "<br>"; 
echo "CMS_LINKDESCR[1]"; 
echo "<br>";
}
vertragen...
mit if ($edit) wird die Beschreibung nicht mehr angezeigt, also fallweise verwenden, ich nutze diesen zum Beispiel um auf den Link hinzuweisen!

$img = '<img src="CMS_IMG[1]" alt="Bild_1" border="0">';

erzeugt auch den "alt" Eintrag

Ansonsten, Danke für dieses Modul.

Manfred

Beleuchtfix
Beiträge: 1082
Registriert: Di 22. Jul 2003, 10:14
Wohnort: Hessen
Kontaktdaten:

Beitrag von Beleuchtfix » Do 5. Mai 2005, 11:42

oder aber if $edit in

Code: Alles auswählen

if ($edit || "CMS_IMGDESCR[1]" != "" ) {
echo "<br>";
echo "CMS_IMGDESCR[1]";
echo "<br>";
echo "CMS_LINKDESCR[1]";
echo "<br>";
} 
Umwandeln.

Gruß
Florian

Gesperrt