Guten Tag,
ich nutze die aktuelle ALA 2.6.0 und versuche Dabei, einen Link, der in meiner Vorlagendatei über ein einfaches Linkmodul (CMS_LINK) eingebunden ist,
nun auch im Bereich "Elemente identifizieren" einzufügen, also neben "Text", "Image" und "Image aus Text" auch "Link" zu haben.
Ich bin im Input-Bereich soweit gekommen, dass im Dropdown "Link" angezeigt" und auch wieder ausgegeben wird (rot fett markierte Codezeilen im folgenden):
-------------------------------------------------------- CODE ANFANG -------------------------------------------
if ($aSettings["Elements"] > 0)
{
for ($i = 0; $i < $aSettings["Elements"]; $i++)
{
$iElementType = $iDataStart + ($i * 10);
echo "<!-- Durchlauf $i -->";
$iElementIdentifier = $iElementType + 1;
$iElementWidth = $iElementType + 2;
$iElementHeight = $iElementType + 3;
$iElementDontStripTags = $iElementType + 3;
$sElementTypeSelectedText = ($aSettings["k".$i]["ElementType"] == "Text") ? ' selected="selected"' : '';
$sElementTypeSelectedSummary = ($aSettings["k".$i]["ElementType"] == "Summary") ? ' selected="selected"' : '';
$sElementTypeSelectedAuthorName = ($aSettings["k".$i]["ElementType"] == "AuthorName") ? ' selected="selected"' : '';
$sElementTypeSelectedImage = ($aSettings["k".$i]["ElementType"] == "Image") ? ' selected="selected"' : '';
$sElementTypeSelectedExtractedImage = ($aSettings["k".$i]["ElementType"] == "ExtractedImage") ? ' selected="selected"' : '';
$sElementTypeSelectedExtractedLink = ($aSettings["k".$i]["ElementType"] == "ExtractedLink") ? ' selected="selected"' : '';
$sBottomStyle = ($i == ($aSettings["Elements"] - 1)) ? "border-bottom: 1px solid #747488;" : ""; // Paint the table area closing line
echo '<tr>
<td class="text" style="border-left: 1px solid #747488;padding-left: 20px;vertical-align: top;">'.sprintf(mi18n("%s. Element:"), $i + 1).'</td>
<td class="text" style="border-right: 1px solid #747488;">'.mi18n("Type:").'<br />
<select name="'."CMS_VAR[$iElementType]".'" onchange="if (document.forms[0].elements[\''."CMS_VAR[$iElementType]".'\'].value != \''.$aSettings["k".$i]["ElementType"].'\') { document.forms[0].elements[\''."CMS_VAR[$iElementIdentifier]".'\'].disabled = true; document.forms[0].elements[\''."CMS_VAR[$iElementWidth]".'\'].disabled = true; if (document.forms[0].elements[\''."CMS_VAR[$iElementHeight]".'\']) {document.forms[0].elements[\''."CMS_VAR[$iElementHeight]".'\'].disabled = true;}} else { document.forms[0].elements[\''."CMS_VAR[$iElementIdentifier]".'\'].disabled = false; document.forms[0].elements[\''."CMS_VAR[$iElementWidth]".'\'].disabled = false; if (document.forms[0].elements[\''."CMS_VAR[$iElementHeight]".'\']) {document.forms[0].elements[\''."CMS_VAR[$iElementHeight]".'\'].disabled = false;}}"">
<option value="Text"'.$sElementTypeSelectedText.'>'.mi18n("Text").'</option>
<option value="Link"'.$sElementTypeSelectedLink.'>'.mi18n("Link").'</option>
<option value="Image"'.$sElementTypeSelectedImage.'>'.mi18n("Image").'</option>
<option value="ExtractedImage"'.$sElementTypeSelectedExtractedImage.'>'.mi18n("Image from text").'</option>
</select> '.$sSubmitLink.'
</td>
</tr>
<tr>'."\n";
switch ($aSettings["k".$i]["ElementType"]) {
case "Image":
echo '<td class="text" style="border-left: 1px solid #747488;border-bottom: 1px solid silver;'.$sBottomStyle.'padding-left: 20px;"> </td>
<td class="text" style="border-right: 1px solid #747488;border-bottom: 1px solid silver;'.$sBottomStyle.'">'.mi18n("Item:").'<br />'.fncBuildTypeSelect("CMS_VAR[$iElementIdentifier]", $aSettings["SampleArt"], $aSettings["k".$i]["Identifier"], "'4'").' '.mi18n("Width:"). ' <input type="text" name="'."CMS_VAR[$iElementWidth]".'" value="'.$aSettings["k".$i]["ElementWidth"].'" size="4" title="'.mi18n("Set to 0 to disable resize").'"> '.mi18n("Height:").' <input type="text" name="'."CMS_VAR[$iElementHeight]".'" value="'.$aSettings["k".$i]["ElementHeight"].'" size="4" title="'.mi18n("Set to 0 to disable resize").'">
</td>'."\n";
break;
case "ExtractedImage":
echo '<td class="text" style="border-left: 1px solid #747488;border-bottom: 1px solid silver;'.$sBottomStyle.'padding-left: 20px;"> </td>
<td class="text" style="border-right: 1px solid #747488;border-bottom: 1px solid silver;'.$sBottomStyle.'">'.mi18n("Item:").'<br />'.fncBuildTypeSelect("CMS_VAR[$iElementIdentifier]", $aSettings["SampleArt"], $aSettings["k".$i]["Identifier"], "'1','2','3','9','17'").' '.mi18n("Width:"). ' <input type="text" name="'."CMS_VAR[$iElementWidth]".'" value="'.$aSettings["k".$i]["ElementWidth"].'" size="4" title="'.mi18n("Set to 0 to disable resize").'"> '.mi18n("Height:").' <input type="text" name="'."CMS_VAR[$iElementHeight]".'" value="'.$aSettings["k".$i]["ElementHeight"].'" size="4" title="'.mi18n("Set to 0 to disable resize").'">
</td>'."\n";
break;
default:
$bDontStripTags = ($aSettings["k".$i]["ElementDontStripTags"] == "yes") ? ' checked="checked"' : '';
echo '<td class="text" style="border-left: 1px solid #747488;border-bottom: 1px solid silver;'.$sBottomStyle.'padding-left: 20px;"> </td>
<td class="text" style="border-right: 1px solid #747488;border-bottom: 1px solid silver;'.$sBottomStyle.'">'.mi18n("Item:").'<br />'.fncBuildTypeSelect("CMS_VAR[$iElementIdentifier]", $aSettings["SampleArt"], $aSettings["k".$i]["Identifier"], "'1','2','3','9','17'").' '.mi18n("Length (max.):").' <input type="text" name="'."CMS_VAR[$iElementWidth]".'" value="'.$aSettings["k".$i]["ElementWidth"].'" size="3" title="'.mi18n("Set to 0 to show all").'"><br/><input type="checkbox" name="'."CMS_VAR[$iElementDontStripTags]".'" value="yes"'.$bDontStripTags.' />'.mi18n("Do not strip tags in text (only possible if length is set to 0)").'</td>'."\n";
}
echo '</tr>'."\n";
}
}
echo '</table>'."\n";
-------------------------------------------------------- CODE ENDE -------------------------------------------
Aber der Link in der Vorlagendatei wird nicht mit eingelesen, ich vermute hierzu braucht es noch eines "case "Link": ..."-Teils im weiteren Code, aber da enden auch leider meine Fähigkeiten.
Gibt es da schon ein Workaround oder weiss mir da jemand zu helfen.
Zumal ich fürchte
dass auch im Outputbereich Anpassungen nötig werden.
Danke schon mal für jede Hilfe,
Grüße aus Bremen,
Horst