Seite 1 von 1
modul illustration: alt und title
Verfasst: Sa 3. Jun 2006, 19:01
von maccaroni
hallo miteinander
ich benutze auf meiner seite das modul illustration. in den damit eingefügten bilder setzt es der alt sowie der titel automatisch auf «illustration». dies macht aber überhaupt keinen sinn und ich bin mir fast sicher, dass ich den bildern irgendwo diese beiden eigenschaften übergeben kann, oder? habs wohl einfach noch nicht gefunden. «beschreibung» und «schlüsselwörter» in den bildeigenschaften ist es leider nicht.
oder besteht die möglichkeit wirklich nicht?
gruss ronan
Verfasst: Mo 5. Jun 2006, 10:10
von emergence
so wie das modul geschrieben ist besteht diese möglichkeit nicht...
es müsste um die möglichkeit erweitert werden um auf die bildeigenschaften zuzugreifen..
Verfasst: Mo 5. Jun 2006, 10:21
von maccaroni
hallo
schade, denn so machen die alt- und title-angaben keinen wirklichen sinn. da ich mich leider erst in contenido und php einarbeite wird es wohl seine zeit (jahre?

dauern, bis ich fähig bin, eine solche änderung vorzunehmen. danke für deine antwort.
gruss ronan
Verfasst: Do 15. Jun 2006, 11:23
von silicone
Hallo,
hab das mal für dich gemacht:
Input
Code: Alles auswählen
?><?php
/***********************************************
* CONTENIDO MODUL - INPUT
*
* Modulname : Illustration
* Author(s) : Andreas Lindner, 4fb
* Copyright : Contenido - four for business, Andreas Lindner
* Created : 12.08.2005
* Modified : 15.06.2006 (alt und -title tag Eingabe ergänzt)
************************************************/
#Selected img directory
$cms_dirname = "CMS_VALUE[1]";
#Selected img
$cms_filename = "CMS_VALUE[2]";
#alt tag
$cms_alt_tag = "CMS_VALUE[3]";
#title tag
$cms_title_tag = "CMS_VALUE[4]";
if ($cms_dirname == '' || $cms_dirname == '0') {
$cms_dirname = 'bilder/';
}
#Get paths
$sql = "SELECT
htmlpath, frontendpath
FROM
".$cfg["tab"]["clients"]."
WHERE
idclient = ".$client." ";
$db->query($sql);
if ($db->next_record()) {
$htmlpath = $db->f('htmlpath');
$frontendpath = $db->f('frontendpath');
}
#Choose image folder
echo '<table cellpadding="0" cellspacing="0" border="0">
<tr><td class="text_medium" style="padding:5px">'.mi18n("Das Bild soll folgende Größe haben: 170 x 80 px").'</td></tr>
<tr><td class="text_medium" style="padding:5px">'.mi18n("alt tag:").'</td></tr>
<tr><td class="text_medium" style="padding:5px"><input type="text" name="CMS_VAR[3]" value='.$cms_alt_tag.'></td></tr>
<tr><td class="text_medium" style="padding:5px">'.mi18n("title tag:").'</td></tr>
<tr><td class="text_medium" style="padding:5px"><input type="text" name="CMS_VAR[4]" value='.$cms_title_tag.'></td></tr>
<tr><td class="text_medium" style="padding:5px">'.mi18n("Bildverzeichnis wählen").': </td></tr>
<tr><td class="text_medium" style="padding:5px">';
echo '<select name="CMS_VAR[1]" style="width:200px">';
#Get upload directories
$sql = "SELECT DISTINCT
dirname
FROM
".$cfg["tab"]["upl"]."
WHERE
idclient='$client' AND
filetype IN ('jpeg','jpg','gif','png')
ORDER BY
dirname";
$db->query($sql);
$selected = false;
while ($db->next_record()) {
$dirname = $db->f('dirname');
if ($cms_dirname != $dirname) {
echo '<option value="'.$dirname.'"> '.$dirname.'</option>';
} else {
$selected = true;
echo '<option value="'.$dirname.'" selected="selected"> '.$dirname.'</option>';
}
}
if (!$selected) {
echo '<option value="0" selected="selected">'.i18n("Bitte wählen").'</option>';
} else {
echo '<option value="0">'.i18n("Bitte wählen").'</option>';
}
#Choose image file
echo '</select> <input type="image" src="images/submit.gif">
<tr><td class="text_medium" style="padding:5px">'.mi18n("Bild wählen").': </td></tr>
<tr><td class="text_medium" style="padding:5px">';
echo '<select name="CMS_VAR[2]" style="width:200px">';
echo '<option value="0" selected="selected">'.i18n("Bitte wählen").'</option>';
if ($cms_dirname != '0') {
#Get uploaded files
$sql = "SELECT
filename
FROM
".$cfg["tab"]["upl"]."
WHERE
idclient = '$client' AND
filetype IN ('jpeg','jpg','gif','png','swf') AND
dirname = '$cms_dirname'
ORDER BY
filename";
$db->query($sql);
while ($db->next_record()) {
$img_name = $db->f('filename');
if ($cms_filename != $img_name) {
echo '<option value="'.$img_name.'"> '.$img_name.'</option>';
} else {
echo '<option selected="selected" value="'.$img_name.'"> '.$img_name.'</option>';
}
}
}
echo '</select> <input type="image" src="images/submit.gif">';
#Preview image
if ($cms_dirname != '0' AND $cms_filename != '0' AND strlen($cms_dirname) > 0 AND strlen($cms_filename) > 0) {
$img_path = $htmlpath.$cfgClient[$client]['upload'].$cms_dirname.$cms_filename;
$img_split = preg_split("/\./", $cms_filename);
$count = count($img_split);
$type = $img_split[$count -1];
echo '<tr><td colspan="2" style="padding:5px">
<img src="'.$img_path.'">
</td></tr> ';
}
echo '</td></tr>';
echo '</table>';
?><?php
output
Code: Alles auswählen
<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname : Illustration
* Author(s) : Andreas Lindner, 4fb
* Copyright : Contenido - four for business, Andreas Lindner
* Created : 12.08.2005
************************************************/
#Selected img directory
$cms_dirname = "CMS_VALUE[1]";
#Selected img
$cms_filename = "CMS_VALUE[2]";
#alt tag
$cms_alt_tag = "CMS_VALUE[3]";
#title tag
$cms_title_tag = "CMS_VALUE[4]";
#Default settings
$img_width = 245;
$img_height = 200;
$defaultImage = 'bilder/illu.jpg';
$htmlpath = $cfgClient[$client]['path']['htmlpath'];
$frontendpath = $cfgClient[$client]['path']['frontend'];
$img_path = $htmlpath.$cfgClient[$client]['upload'].$defaultImage;
$img_path_fs = $frontendpath.$cfgClient[$client]['upload'].$defaultImage;
#Check configured images
if ($cms_dirname != '0' AND $cms_filename != '0' AND strlen($cms_dirname) > 0 AND strlen($cms_filename) > 0) {
$img_path = $htmlpath.$cfgClient[$client]['upload'].$cms_dirname.$cms_filename;
$img_path_fs = $frontendpath.$cfgClient[$client]['upload'].$cms_dirname.$cms_filename;
$img_split = preg_split("/\./", $cms_filename);
$count = count($img_split);
$type = $img_split[$count -1];
if (!file_exists($img_path_fs)) {
$img_path = $htmlpath.$cfgClient[$client]['upload'].$defaultImage;
$img_path_fs = $frontendpath.$cfgClient[$client]['upload'].$defaultImage;
}
}
#Scale image
$image = capiImgScale($img_path_fs, $img_width, $img_height, false, false, 10, false);
#Get dimensions of scaled image
list ($width, $height, $type, $attr) = getimagesize($image);
#Output image tag
echo '<img src="'.$image.'" width="'.$width.'" height="'.$height.'" alt="'.$cms_alt_tag.'" title="'.$cms_title_tag.'"/>';
?>
Sollte so funktionieren...
Gruß,
Tom
Verfasst: Do 15. Jun 2006, 12:55
von maccaroni
sali tom
vielen dank. wenn ich den code im nachhinein anschaue, geht das ja ganz einfach. eigentlich wird ja nur eine variable definiert, super!
einziger bug:
gebe ich mehrere wörter als alt und title ein und klicke auf den grünen knopf, so wird im quelltext alles richtig geschrieben. möchte ich aber den alt und title wieder abändern, so sehe ich in den feldern in der vorkonfiguration des templates nur jeweils das erste wort. lässt sich das irgendwie einfach «umgehen»?
merci und gruss
ronan
Verfasst: Do 15. Jun 2006, 13:09
von silicone
Puh, da verlassen sie mich wieder...
Hab mir das mit meinem Halbwissen so zurecht gebastelt. Diese Frage muss ich jetzt leider an jemand anderen übergeben
EDIT: Habs doch gefunden. Es fehlten die Anführungszeichen.
Hier der geänderte Input:
Code: Alles auswählen
?><?php
/***********************************************
* CONTENIDO MODUL - INPUT
*
* Modulname : Illustration
* Author(s) : Andreas Lindner, 4fb
* Copyright : Contenido - four for business, Andreas Lindner
* Created : 12.08.2005
* Modified : 15.06.2006 (alt und -title tag Eingabe ergänzt)
************************************************/
#Selected img directory
$cms_dirname = "CMS_VALUE[1]";
#Selected img
$cms_filename = "CMS_VALUE[2]";
#alt tag
$cms_alt_tag = "CMS_VALUE[3]";
#title tag
$cms_title_tag = urldecode("CMS_VALUE[4]");
if ($cms_dirname == '' || $cms_dirname == '0') {
$cms_dirname = 'bilder/';
}
#Get paths
$sql = "SELECT
htmlpath, frontendpath
FROM
".$cfg["tab"]["clients"]."
WHERE
idclient = ".$client." ";
$db->query($sql);
if ($db->next_record()) {
$htmlpath = $db->f('htmlpath');
$frontendpath = $db->f('frontendpath');
}
#Choose image folder
echo '<table cellpadding="0" cellspacing="0" border="0">
<tr><td class="text_medium" style="padding:5px">'.mi18n("Das Bild soll folgende Größe haben: 170 x 80 px").'</td></tr>
<tr><td class="text_medium" style="padding:5px">'.mi18n("alt tag:").'</td></tr>
<tr><td class="text_medium" style="padding:5px"><input type="text" name="CMS_VAR[3]" value="'.$cms_alt_tag.'"></td></tr>
<tr><td class="text_medium" style="padding:5px">'.mi18n("title tag:").'</td></tr>
<tr><td class="text_medium" style="padding:5px"><input type="text" name="CMS_VAR[4]" value="'.$cms_title_tag.'"></td></tr>
<tr><td class="text_medium" style="padding:5px">'.mi18n("Bildverzeichnis wählen").': </td></tr>
<tr><td class="text_medium" style="padding:5px">';
echo '<select name="CMS_VAR[1]" style="width:200px">';
#Get upload directories
$sql = "SELECT DISTINCT
dirname
FROM
".$cfg["tab"]["upl"]."
WHERE
idclient='$client' AND
filetype IN ('jpeg','jpg','gif','png')
ORDER BY
dirname";
$db->query($sql);
$selected = false;
while ($db->next_record()) {
$dirname = $db->f('dirname');
if ($cms_dirname != $dirname) {
echo '<option value="'.$dirname.'"> '.$dirname.'</option>';
} else {
$selected = true;
echo '<option value="'.$dirname.'" selected="selected"> '.$dirname.'</option>';
}
}
if (!$selected) {
echo '<option value="0" selected="selected">'.i18n("Bitte wählen").'</option>';
} else {
echo '<option value="0">'.i18n("Bitte wählen").'</option>';
}
#Choose image file
echo '</select> <input type="image" src="images/submit.gif">
<tr><td class="text_medium" style="padding:5px">'.mi18n("Bild wählen").': </td></tr>
<tr><td class="text_medium" style="padding:5px">';
echo '<select name="CMS_VAR[2]" style="width:200px">';
echo '<option value="0" selected="selected">'.i18n("Bitte wählen").'</option>';
if ($cms_dirname != '0') {
#Get uploaded files
$sql = "SELECT
filename
FROM
".$cfg["tab"]["upl"]."
WHERE
idclient = '$client' AND
filetype IN ('jpeg','jpg','gif','png','swf') AND
dirname = '$cms_dirname'
ORDER BY
filename";
$db->query($sql);
while ($db->next_record()) {
$img_name = $db->f('filename');
if ($cms_filename != $img_name) {
echo '<option value="'.$img_name.'"> '.$img_name.'</option>';
} else {
echo '<option selected="selected" value="'.$img_name.'"> '.$img_name.'</option>';
}
}
}
echo '</select> <input type="image" src="images/submit.gif">';
#Preview image
if ($cms_dirname != '0' AND $cms_filename != '0' AND strlen($cms_dirname) > 0 AND strlen($cms_filename) > 0) {
$img_path = $htmlpath.$cfgClient[$client]['upload'].$cms_dirname.$cms_filename;
$img_split = preg_split("/\./", $cms_filename);
$count = count($img_split);
$type = $img_split[$count -1];
echo '<tr><td colspan="2" style="padding:5px">
<img src="'.$img_path.'">
</td></tr> ';
}
echo '</td></tr>';
echo '</table>';
?><?php
Gruß,
Tom
Verfasst: Do 15. Jun 2006, 13:57
von maccaroni
nun funktioniert alles korrekt. nochmals vielen dank!
gruss ronan