modul illustration: alt und title

Gesperrt
maccaroni
Beiträge: 79
Registriert: So 21. Mai 2006, 18:18
Kontaktdaten:

modul illustration: alt und title

Beitrag 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
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag 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..
*** make your own tools (wishlist :: thx)
maccaroni
Beiträge: 79
Registriert: So 21. Mai 2006, 18:18
Kontaktdaten:

Beitrag 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
silicone
Beiträge: 299
Registriert: Di 15. Mär 2005, 10:33
Kontaktdaten:

Beitrag 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.'">&nbsp;'.$dirname.'</option>';
	} else {
		$selected = true;
		echo '<option value="'.$dirname.'" selected="selected">&nbsp;'.$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>&nbsp;<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.'">&nbsp;'.$img_name.'</option>';
		} else {
			echo '<option selected="selected" value="'.$img_name.'">&nbsp;'.$img_name.'</option>';
		}
	}
}

echo '</select>&nbsp;<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
maccaroni
Beiträge: 79
Registriert: So 21. Mai 2006, 18:18
Kontaktdaten:

Beitrag 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
Zuletzt geändert von maccaroni am Do 15. Jun 2006, 13:27, insgesamt 1-mal geändert.
silicone
Beiträge: 299
Registriert: Di 15. Mär 2005, 10:33
Kontaktdaten:

Beitrag 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 :oops:

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.'">&nbsp;'.$dirname.'</option>';
	} else {
		$selected = true;
		echo '<option value="'.$dirname.'" selected="selected">&nbsp;'.$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>&nbsp;<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.'">&nbsp;'.$img_name.'</option>';
		} else {
			echo '<option selected="selected" value="'.$img_name.'">&nbsp;'.$img_name.'</option>';
		}
	}
}

echo '</select>&nbsp;<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
maccaroni
Beiträge: 79
Registriert: So 21. Mai 2006, 18:18
Kontaktdaten:

Beitrag von maccaroni »

nun funktioniert alles korrekt. nochmals vielen dank!

gruss ronan
Gesperrt