Bitte um code der Original Bildergalerie 4.6.15

Gesperrt
arakis
Beiträge: 81
Registriert: Di 18. Nov 2003, 16:27
Kontaktdaten:

Bitte um code der Original Bildergalerie 4.6.15

Beitrag von arakis » Sa 25. Nov 2006, 23:07

hallo da draußen!

während eines computerabsturzes und gleichzeitiger arbeit im adminbereich von contenido ist mir die bildergalerie flöten gegangen...

wäre bitte jemand so nett und würde den in- und outputcode posten? möchte deswegen nicht zusätzlich ein system installieren...

danke :-)

lg
arakis

mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf » So 26. Nov 2006, 00:05

kein backup der db? :?

input

Code: Alles auswählen

?><?php
/***********************************************
* Bildergalerie Input
*
* Author      :     Timo A. Hummel
* Copyright   :     four for business AG
* Created     :     30-09-2005
************************************************/?>

<table>
  <tr>
    <td><?php echo mi18n("Breite");?></td>
    <td><input type="text" name="<?php echo "CMS_VAR[0]"; ?>" value="<?php echo "CMS_VALUE[0]"; ?>"></td>
  </tr>
  <tr>
    <td><?php echo mi18n("Höhe");?></td>
    <td><input type="text" name="<?php echo "CMS_VAR[1]"; ?>" value="<?php echo "CMS_VALUE[1]"; ?>"></td>
  </tr>
  <tr>
    <td><?php echo mi18n("Spalten");?></td>
    <td><input type="text" name="<?php echo "CMS_VAR[2]"; ?>" value="<?php echo "CMS_VALUE[2]"; ?>"></td>
  </tr>
  <tr>
    <td><?php echo mi18n("Zeilen");?></td>
    <td><input type="text" name="<?php echo "CMS_VAR[3]"; ?>" value="<?php echo "CMS_VALUE[3]"; ?>"></td>
  </tr>
  <tr>
    <td><?php echo mi18n("Breite Detailansicht");?></td>
    <td><input type="text" name="<?php echo "CMS_VAR[4]"; ?>" value="<?php echo "CMS_VALUE[4]"; ?>"></td>
  </tr>
  <?php
  $sql = "SELECT DISTINCT dirname FROM ".$cfg['tab']['upl']." ORDER BY dirname";
  $db->query($sql);
  echo '<tr><td>'.mi18n("Verzeichnis auswählen").'</td><td>
		<select name="CMS_VAR[5]" size="1" style="width: 320px">
			<option value="">'.mi18n("Nichts ausgewählt").'</option>';
			while ($db->next_record()) {
				if ( stristr($db->f("dirname"),'CVS/') === FALSE ) {
					if ($db->f("dirname")=="CMS_VALUE[5]") {
						echo '<option value="'.$db->f("dirname").'" selected="selected">'.$db->f("dirname").'</option>';
					} else {
						echo '<option value="'.$db->f("dirname").'">'.$db->f("dirname").'</option>';
					}
				}
			}
	echo '</select></td></tr>';?>
</table>
<?php

output

Code: Alles auswählen

<?php
/***********************************************
* Bildergalerie Output
*
* Author      :     Timo A. Hummel
* Copyright   :     four for business AG
* Created     :     30-09-2005
************************************************/

cInclude("includes", "functions.api.images.php");

/* Gallery variables */
$bRecursive = false;

$sPath = "CMS_VALUE[5]";
if ($sPath=='') {
	$sPath = $cfgClient[$client]["path"]["frontend"] . $cfgClient[$client]["upl"]["frontendpath"] . "bildergalerie/";
} else {
	$sPath = $cfgClient[$client]["path"]["frontend"] . $cfgClient[$client]["upl"]["frontendpath"] . "CMS_VALUE[5]";
}

$iRows = "CMS_VALUE[3]";

if ($iRows == 0)
{
  $iRows = 2;
}

$iColumns = "CMS_VALUE[2]";

if ($iColumns == 0)
{
  $iColumns = 2;
}

if (isset($start))
{
  $iCurrentPage = $start;
} else {
  $iCurrentPage = 1;
}

$iWidth = "CMS_VALUE[0]";
$iHeight = "CMS_VALUE[1]";

if ($iWidth == 0)
{
  $iWidth = 300;
}

if ($iHeight == 0)
{
  $iHeight = 300;
}

$iDetailWidth = "CMS_VALUE[4]";

if ($iDetailWidth == 0)
{
  $iDetailWidth = 300;
}

$aValidExtensions = array("jpg", "jpeg", "gif", "png");

$iImagesPerPage = $iRows * $iColumns;

if ($_REQUEST['view']=='') {
	/* Read all gallery files */
	$aGalleryFiles = scanDirectory($sPath, $bRecursive);
	
         if (is_array($aGalleryFiles))
         {
	/* Filter out non-images */
	foreach ($aGalleryFiles as $key => $aGalleryFile)
	{
	  $sExtension = strtolower(getFileExtension($aGalleryFile));
	
	  if (!in_array($sExtension, $aValidExtensions))
	  {
	     unset($aGalleryFiles[$key]);
	  }
	}
	
	/* Calculate effective variables */
	$iFileCount = count($aGalleryFiles);
	$iPages = ceil($iFileCount / $iImagesPerPage);
	
	$aImagesToDisplay = array_slice($aGalleryFiles, ($iCurrentPage - 1) * $iImagesPerPage, $iImagesPerPage);
	
	$oImageTpl = new Template;
	$oGalleryTpl = new Template;
	$oEmptyImageTpl = new Template;
	
	$aRenderedImages = array();
	
	$iRow = 0;
	$iImagesRendered = 0;
	
	foreach ($aImagesToDisplay as $sImageToDisplay)
	{
	  /* Do Scaling */
	  $sScaledImage = cApiImgScale($sImageToDisplay, $iWidth, $iHeight);
	
	  $link = 'front_content.php?idcatart='.$idcatart.'&start='.$_REQUEST['start'].'&view='.urlencode(str_replace($cfgClient[$client]['path']['frontend'],'',$sImageToDisplay));

	  $description = ig_getImageDescription($sImageToDisplay);
	  if ($description=='') {
	  	$description = '&nbsp;';
	  }
	  
	  $download_link = str_replace($cfgClient[$client]['path']['frontend'],$cfgClient[$client]['path']['htmlpath'],$sImageToDisplay);

	  $download_size = ig_GetReadableFileSize($sImageToDisplay);
	  	  	
	  $oImageTpl->reset();
	  $oImageTpl->set("s", "FILE", $sScaledImage);
	  $oImageTpl->set("s", "WIDTH", $iWidth);
	  $oImageTpl->set("s", "HEIGHT", $iHeight);
	  $oImageTpl->set("s", "LINK", $link);
	  $oImageTpl->set("s", "DESCRIPTION", $description);
	  $oImageTpl->set("s", "DOWNLOAD_LINK", $download_link);
	  $oImageTpl->set("s", "DOWNLOAD_SIZE", $download_size);
	  $oImageTpl->set("s", "DOWNLOAD_CAPTION", mi18n("runter laden"));
	  $oImageTpl->set("s", "PREVIEW_CAPTION", mi18n("Bildvorschau"));
	  
	  $aRenderedImages[] = $oImageTpl->generate($cfgClient[$client]["path"]["frontend"] . "templates/gallery_image.html", true, false);
	
	  $iImagesRendered++;
	
	  if ($iImagesRendered == $iColumns)
	  {
	    $oGalleryTpl->set("d", "COLUMNS", implode("", $aRenderedImages));
	    $oGalleryTpl->next();
	    $iImagesRendered = 0;
	    $aRenderedImages = array();
	  }
	}
	
	if (count($aRenderedImages) < $iColumns && count($aRenderedImages) > 0)
	{
	  $iEmptyCells = $iColumns - count($aRenderedImages);
	
	  $oEmptyImageTpl->set("s", "WIDTH", $iWidth);
	  $oEmptyImageTpl->set("s", "HEIGHT", $iHeight);
	
	  $sEmptyCells = str_repeat($oEmptyImageTpl->generate($cfgClient[$client]["path"]["frontend"] . "templates/gallery_empty.html", true, false),$iEmptyCells);
	 
	  $oGalleryTpl->set("d", "COLUMNS", implode("", $aRenderedImages) . $sEmptyCells);
	  $oGalleryTpl->next();
	}
	
	$aLinks = array();
	
	if ($iCurrentPage > 1)
	{
	  $oPreviousTpl = new Template;
	  $oPreviousTpl->set("s", "LINK", $cfgClient[$client]["path"]["htmlpath"] . sprintf("front_content.php?idcatart=%s&start=%s", $idcatart, $iCurrentPage - 1));
	  $oPreviousTpl->set("s", "TITLE", mi18n("Zurück"));
	  $aLinks[] = $oPreviousTpl->generate($cfgClient[$client]["path"]["frontend"] . "templates/gallery_link.html", true, false);
	}
	
	if (($iCurrentPage < $iPages) && $iCurrentPage)
	{
	  $oNextTpl = new Template;
	  $oNextTpl->set("s", "LINK", $cfgClient[$client]["path"]["htmlpath"] . sprintf("front_content.php?idcatart=%s&start=%s", $idcatart, $iCurrentPage + 1));
	  $oNextTpl->set("s", "TITLE", mi18n("Vor"));
	  $aLinks[] = $oNextTpl->generate($cfgClient[$client]["path"]["frontend"] . "templates/gallery_link.html", true, false);
	}
	
	$oGalleryTpl->set("s", "NAVIGATION", implode("", $aLinks));
	
	$oGalleryTpl->generate($cfgClient[$client]["path"]["frontend"] . "templates/gallery.html", false, false);
    }
} else {
	$sImageToDisplay = $cfgClient[$client]['path']['frontend'].$_REQUEST['view'];
	$sScaledImage = cApiImgScale($sImageToDisplay, $iDetailWidth, 1000);

	$description = ig_getImageDescription($sImageToDisplay);
	if ($description=='') {
		$description = '&nbsp;';
	}

	$download_link = str_replace($cfgClient[$client]['path']['frontend'],$cfgClient[$client]['path']['htmlpath'],$sImageToDisplay);

	$download_size = ig_GetReadableFileSize($sImageToDisplay);
	
	$oImageTpl = new Template;
	$oImageTpl->set("s", "IMG",$sScaledImage);
	$oImageTpl->set("s", "BACKLINK",'front_content.php?idcat='.$idcat.'&idart='.$idart.'&start='.$_REQUEST['start']);
	$oImageTpl->set("s", "BACKCAPTION",mi18n("Zurück"));
	$oImageTpl->set("s", "DESCRIPTION", $description);
	$oImageTpl->set("s", "DOWNLOAD_LINK", $download_link);
	$oImageTpl->set("s", "DOWNLOAD_SIZE", $download_size);
	$oImageTpl->set("s", "DOWNLOAD_CAPTION", mi18n("runter laden"));
	
	$oImageTpl->generate($cfgClient[$client]["path"]["frontend"] . "templates/gallery_detail.html", false, false);
}

function ig_getImageDescription($idupl){

	global $cfg, $cfgClient, $db, $client, $lang;
	
	$cApiClient = new cApiClient($client);
	$language_separator = $cApiClient->getProperty('language','separator');
	if ($language_separator == "") {
		//Sanity, if module used in client without set client setting
		$language_separator = "§§§";
		$cApiClient->setProperty('language','separator', $language_separator);
	}
	if(is_numeric($idupl)){
		//ID is a number 
		$query = "SELECT description FROM ".$cfg["tab"]["upl"]." WHERE idupl = ".$idupl;
	}else{
		//ID is a string
		$path_parts = pathinfo($idupl);
		$upload = $cfgClient[$client]['upl']['frontendpath'];
		$len = strlen($upload);
		$pos = strpos($idupl,$upload);
		$dirname = substr($path_parts['dirname'],$pos+$len).'/';
		$query = "SELECT description FROM ".$cfg["tab"]["upl"]." WHERE (dirname = '".$dirname."') AND (filename='".$path_parts['basename']."') AND (filetype='".$path_parts['extension']."')";
	}
	$db->query($query);
	if($db->next_record()){
		return htmlspecialchars(urldecode($db->f("description")));
	}else{
		return '';
	}
}

function ig_GetReadableFileSize($path) {
	$filesize = filesize($path);
	$unit = "bytes";
	
	if ($filesize > 1024) {
	$filesize = ($filesize / 1024);
	$unit = "kB"; }
	if ($filesize > 1024) {
	$filesize = ($filesize / 1024);
	$unit = "MB"; }
	if ($filesize > 1024) {
	$filesize = ($filesize / 1024);
	$unit = "GB"; }
	if ($filesize > 1024) {
	$filesize = ($filesize / 1024);
	$unit = "TB"; }
	
	$filesize = round($filesize, 0);
	return $filesize." ".$unit;
}
?>
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams

arakis
Beiträge: 81
Registriert: Di 18. Nov 2003, 16:27
Kontaktdaten:

hihi...

Beitrag von arakis » So 26. Nov 2006, 19:34

leider nein :-)
herzlichen dank für deine hilfe...

lg
arakis

Gesperrt