noch besser:
ich habe mal ein wenig den code gehackt und zwei neue Seperatoren eingefuehrt:
- "#" fuer kleine Bilder aus einer Galerie
- "*" fuer grosse Bilder aus einer Galerie
jetzt kann ich :
[bild=kleines Bild Titel|galeryName#bild.jpg] -> nimmt das kleine Bild aus der Galerie
[bild=grosses Bild Titel|galeryName*bild.jpg] -> nimmt das grosse Bild aus der Galerie
das gute, das funktioniert auch gleich mit bildlinks und bildrechts und mann kann wieder einen Titel geben.
ABER,
es checkt weder, ob die Galerie existiert, noch das Bild!!!!
Ich bin nicht der PHP hacker, aber bei mir funktioniert es auf Anhieb.
dazu muss man noch den code im file cmsSyntax.php
aendern:
ab zeile 354:
viel spass damit.
ich habe mal ein wenig den code gehackt und zwei neue Seperatoren eingefuehrt:
- "#" fuer kleine Bilder aus einer Galerie
- "*" fuer grosse Bilder aus einer Galerie
jetzt kann ich :
[bild=kleines Bild Titel|galeryName#bild.jpg] -> nimmt das kleine Bild aus der Galerie
[bild=grosses Bild Titel|galeryName*bild.jpg] -> nimmt das grosse Bild aus der Galerie
das gute, das funktioniert auch gleich mit bildlinks und bildrechts und mann kann wieder einen Titel geben.
ABER,
es checkt weder, ob die Galerie existiert, noch das Bild!!!!
Ich bin nicht der PHP hacker, aber bei mir funktioniert es auf Anhieb.
dazu muss man noch den code im file cmsSyntax.php
aendern:
ab zeile 354:
Code Auswählen
$imgsrc = "";
$error = false;
$takeGalKl = false; //for galery small pic
$takeGalGr = false; //for galery large pic
$value = $specialchars->getHtmlEntityDecode($value);
// Bei externen Bildern: $value NICHT nach ":" aufsplitten!
if (preg_match($this->LINK_REGEX, $value)) {
$valuearray = $specialchars->replaceSpecialChars($value,false);
}
// Ansonsten: Nach ":" aufsplitten
else {
//changes looki
$galerieKlSel = '#';
$posKl = strpos($value, $galerieKlSel);
$galerieGRSel = '*';
$posGr = strpos($value, $galerieGRSel);
if($posKl === FALSE && $posGr === FALSE) {
//is for categorie
//take the old way
$valuearray = explode(":", $value);
} else if ($posGr === FALSE){
$valuearray = explode("#", $value);
$takeGalKl = true;
} else {
$valuearray = explode("*", $value);
$takeGalGr = true;
}
if(count($valuearray) > 1) {
$valuearray[0] = $specialchars->replaceSpecialChars($valuearray[0],false);
$valuearray[1] = $specialchars->replaceSpecialChars($valuearray[1],false);
}
}
// Bild in aktueller Kategorie
if (count($valuearray) == 1) {
// Bilddatei existiert
if (file_exists($CONTENT_DIR_REL.$cat."/".$CONTENT_FILES_DIR_NAME."/".$specialchars->replaceSpecialChars($value,false))) {
$imgsrc = $specialchars->replaceSpecialChars($URL_BASE.$CONTENT_DIR_NAME."/".$cat."/".$CONTENT_FILES_DIR_NAME."/".$specialchars->replaceSpecialChars($value,false),true);
}
// externes Bild
elseif (preg_match($this->LINK_REGEX, $value)) {
$imgsrc = $value;
}
// Bilddatei existiert nicht
else {
$error = true;
$content = str_replace ($match, $this->createDeadlink($value, $language->getLanguageValue1("tooltip_image_error_1", $value)), $content);
}
}
// Bild in anderer Kategorie
// or inside galery
else {
if($takeGalGr == false && $takeGalKl == false) {
//take the old way - cathegory
$requestedcat = nameToCategory($valuearray[0]);
// Kategorie existiert
if ((!$requestedcat=="") && (file_exists($CONTENT_DIR_REL.$requestedcat))) {
// Bilddatei existiert
if (file_exists($CONTENT_DIR_REL.$requestedcat."/".$CONTENT_FILES_DIR_NAME."/".$valuearray[1])) {
$imgsrc = $specialchars->replaceSpecialChars($URL_BASE.$CONTENT_DIR_NAME."/".$requestedcat."/".$CONTENT_FILES_DIR_NAME."/".$valuearray[1],true);
}
// Bilddatei existiert nicht
else {
$content = str_replace ($match, $this->createDeadlink($valuearray[1], $language->getLanguageValue2("tooltip_image_error_2", $valuearray[1], $valuearray[0])), $content);
$error = true;
}
}
// Kategorie existiert nicht
else {
$content = str_replace ($match, $this->createDeadlink($valuearray[1], $language->getLanguageValue1("tooltip_link_category_error_1", $valuearray[0])), $content);
$error = true;
}
} else {
//changes looki
//take the galery
global $GALLERIES_DIR_NAME;
global $PREVIEW_DIR_NAME;
if($takeGalKl == true) {
//take the small picture
$requestedgal = $GALLERIES_DIR_NAME."/".$valuearray[0];
$imgsrc = $specialchars->replaceSpecialChars($URL_BASE."/".$requestedgal."/".$PREVIEW_DIR_NAME."/".$valuearray[1],true);
} else {
//take the large picture
$requestedgal = $GALLERIES_DIR_NAME."/".$valuearray[0];
$imgsrc = $specialchars->replaceSpecialChars($URL_BASE."/".$requestedgal."/".$valuearray[1],true);
}
}
}
viel spass damit.