Dateiwähler von chobbert für contenido 4.4 überarbeitet...

Gesperrt
jumar
Beiträge: 25
Registriert: Fr 24. Okt 2003, 00:38
Kontaktdaten:

Dateiwähler von chobbert für contenido 4.4 überarbeitet...

Beitrag von jumar » Mo 27. Okt 2003, 01:48

Hi!

Ich habe das Modul Dateiwähler von chobbert für contenido 4.4 überarbeitet...

@chobbert: ich habe bewußt auf die Hervorhebung Deines Orginaltextes per Zitat verzichtet,
da sich an fast allen Stellen Feinheiten verändert haben.

Damit kann man die URL eines Bildes oder eines Videos aus den Upload-Ordnern von Contenido
in das Text-Eingabefeld eines Moduls zu schreiben.

Dazu brauch man zum ersten eine Datei (zu speichern unter /contenido/choose_pics.php):

Code: Alles auswählen

<? 
/* choose_pics.php 
*  zum Auswählen von Bild-, Flash- und Quicktime-Dateien und der Übertragung des Wertes in ein Textfeld 
*  benötigt Internet Explorer ab Version 5.0 
* 
* Vorige Version (0.8):
* Autor:      Robert Strouhal 
* Datum:      14.08.2003 
* 
* Aktuelle Version (0.9) getestet mit contenido 4.4.0
* Autor:      Jumar 
* Datum:      27.10.2003 
*
* Neue Funktionen:
* - Diese Erweiterung kann mehrfach in einem Template eingebaut werden
* - Dateien können wie in der Dateiverwaltung sortiert werden
* (diese Funktion ist der contenido-Dateiverwaltung entnommen)
* - Dateien (sofern es Bilder sind) können wie in der Dateiverwaltung
* in Orginalgrösse angesehen werden (Pop-Up-Fenster; diese Funktion
* ist der contenido-Dateiverwaltung entnommen)
* - Dateien (sofern es Bilder sind) werden automatisch in der in der
* config.php angegebenen Größe angezeigt, ansonsten max. 100 hoch und 100 breit
*
***************** 
* 
* Verwendung: 
* übeträgt den Namen der ausgewählten Datei in ein Textfeld innerhalb der Datei, 
* die das PopUP mit dem Datei-Auswähler geöffnet hat. 
* 
*
* Wenn man diese Funktionalität in einem Modul einsetzen will,
* muß man ein Textfeld um folgendes erweitern
* (alle Zeilenumbrüche aus dem Code entfernen!!!):
* onClick="window.open('choose_pics.php?client=<?=$client;?>
* &form='+this.name+'&getwidth=0&type=','PicSelector','toolbar=no,
* location=no,directories=no,status=no,menubar=no,scrollbars=yes,
* resizable=yes,height=450,width=500,left=10,top=10');">
*
*
* Ein Textfeld sollte dann z.B. so lauten (alle Zeilenumbrüche aus dem Code entfernen!!!):
* <input type="text" name="CMS_VAR[1]" value="CMS_VALUE[1]" 
* onClick="window.open('choose_pics.php?client=<?=$client;?>
* &form='+this.name+'&getwidth=0&type=','PicSelector','toolbar=no,
* location=no,directories=no,status=no,menubar=no,scrollbars=yes,
* resizable=yes,height=450,width=500,left=10,top=10');">
*
*
*
* Die drei Parameter der Funktion openPicSelector bedeuten: 
*
* 1. this.name -> darf nicht verändert werden, beinhaltet den Namen des Eingabefeldes 
* 2. getwidth -> die Breite der gesuchten Bilder,
* bei 0 werden Bilder unabhängig von Ihrer Breite angezeigt 
* 3. type -> beschränkt die Suche auf bestimmte Dateitypen;
* möglich sind: 'jpg', 'gif', 'png', swf', 'mov'; wenn es leergelassen wird, werden alle Dateitypen angezeigt
**** 
*/ 

include_once ('./includes/config.php'); 
include_once ($cfg["path"]["classes"] . 'class.plugin.php'); 
include_once ($cfg["path"]["classes"] . 'class.xml.php'); 
include_once ($cfg["path"]["classes"] . 'class.navigation.php'); 
include_once ($cfg["path"]["classes"] . 'class.template.php'); 
include_once ($cfg["path"]["classes"] . 'class.backend.php'); 
include_once ('./includes/functions.upl.php'); 

if(!$sort) $sort="filename";

switch ($sort) {
  case "fileasc" : $sort="filename asc";
            break;
  case "filedesc" : $sort="filename desc";
            break;
  case "descriptionasc" : $sort="description asc";
            break;
  case "descriptiondesc" : $sort="description desc";
            break;
	case "sizeasc" : $sort="size asc";
            break;
  default : $sort="filename asc";
}
?> 
<html> 
<head> 
<title>Bild ausw&auml;hlen</title> 
<link rel="stylesheet" type="text/css" href="<? print $cfg["path"]["contenido_fullhtml"] . $cfg["path"]["styles"] ?>contenido.css">
<script type="text/javascript">
function uplSort(selObj)
{
    var url = 'choose_pics.php?client=<?=$client?>&form=<?=$form?>&getwidth=<?=$getwidth?>&type=<?=$type?>&folder=<?=$folder?>';
    var i = selObj.selectedIndex;
    var sortkey = selObj.options[i].value;

    window.location.href = url + '&sort=' + sortkey;
}

function iZoom(path, defaultWidth, defaultHeight)
{
    //var defaultWidth = 640;
    //var defaultHeight = 480;

    var xwin = parseInt((screen.availWidth / 2) - (defaultWidth / 2));
    var ywin = parseInt((screen.availHeight / 2) - (defaultHeight / 2));

    zwin = window.open("","","left="+xwin+",top="+ywin+",width=" + defaultWidth + ",height=" + defaultHeight + "\"");
    zwin.moveTo(xwin,ywin);

    zcon  = "<html>\n<head>\n<link rel=\"stylesheet\" type=\"text/css\" href=\"styles/contenido.css\" /><title></title>\n</head>\n";
    zcon += "<body leftmargin=\"0\" topmargin=\"0\"><table width=\"100%\" height=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\"><tr><td valign=\"top\" align=\"center\" valign=\"middle\">";
    zcon += "<body self.moveTo((screen.availWidth / 2) - (defaultWidth / 2 + 5),(screen.availHeight / 2) - (defaultHeight / 2 + 20))\" leftmargin=\"0\" topmargin=\"0\" marginwidth=\"0\" marginheight=\"0\">\n";
    zcon += "<a class=\"text_medium\" href=\"javascript:self.close()\"><img name=\"zimg\" src=\""+path+"\" border=\"0\" alt=\"schliessen\"><br>schliessen</a>\n";
    zcon += "</td></tr></table></body>\n</html>";

    zwin.document.open();
    zwin.document.write(zcon);
    zwin.document.close();
}
</script>
</HEAD> 
<BODY MARGINHEIGHT=0 MARGINWIDTH=0 LEFTMARGIN=0 TOPMARGIN=0> 

<table cellspacing="0" cellpadding="0" border="0" width="100%"> 

    <tr style="background-color: #C6C6D5; height: 18px"> 
      <td style="font-family: Arial; font-size: 10pt; color: #00000; font-weight: bold;">&nbsp;&nbsp;Bild ausw&auml;hlen</td>
			<td style="font-family: Arial; font-size: 10pt; color: #00000; font-weight: bold;" align="right">
			Dateisortierung:&nbsp;&nbsp;&nbsp;<!-- Generated by Contenido 4.4.0-->
    	<select id="{ID}" name="sort" class="text_medium" onchange="uplSort(this)">
    
        <option value="fileasc" >Dateiname A-Z</option>
        <option value="filedesc" >Dateiname Z-A</option>
        <option value="descriptionasc" >Beschreibung A-Z</option>
        <option value="descriptiondesc" >Beschreibung Z-A</option>
        <option value="sizeasc" >Dateigr&ouml;sse</option>
    
    	</select>&nbsp;&nbsp;
			</td>
    </tr> 

    <tr style="background-color: #747488; height: 1px"> 
        <td colspan="2"><img src="images/spacer.gif" width="1" height="1"></td> 
    </tr> 
</table> 
<? 

// Create Contenido classes 
$db  = new DB_Contenido; 

if (!$folder){ 
   $folder = "bilder/"; 
   } 

if (!$type){ 
$sql="SELECT DISTINCT dirname FROM ".$cfg["tab"]["upl"]." WHERE idclient='$client' AND (filetype='jpg' OR filetype='gif' OR filetype='png') order by $sort"; 
}else{ 
$sql="SELECT DISTINCT dirname FROM ".$cfg["tab"]["upl"]." WHERE idclient='$client' AND (filetype='$type') order by $sort"; 
} 


$db->query($sql); 

echo "<br><table width=\"400\" cellspacing=\"0\" cellpadding=\"3\" border=\"0\" style=\"border:0px; border-left:1px; border-top: 1px;border-color: #747488; border-style: solid;\">\n"; 

echo "<tr style=\"background-color: #a9aec2\">\n"; 
echo "<td style=\"font-family: Arial; font-size: 10pt; border: 0px; border-bottom:1px; border-right:1px; border-color: #747488; border-style: solid\">"; 
echo "Ordner auswählen:\n"; 
echo "</td>\n"; 
echo "<td style=\"font-family: Arial; font-size: 10pt; border: 0px; border-bottom:1px; border-right:1px; border-color: #747488; border-style: solid\">"; 

echo "<select style=\"font-size: 9pt;\" name=\"folders\" onChange=\"document.location.search = document.location.search+'&folder='+this.value\">"; 
while($db->next_record()){ 
   echo "<option value=\"".$db->f("dirname")."\" "; 
   if ($folder == $db->f("dirname")){ 
      echo " selected "; 
      } 
   echo ">".$db->f("dirname")."</option>\n"; 
   } 
echo "</select></td>\n"; 
echo "<td style=\"font-family: Arial; font-size: 10pt; border: 0px; border-bottom:1px; border-right:1px; border-color: #747488; border-style: solid\">&nbsp;</td>\n"; 
echo "</tr>\n"; 


$sql = "SELECT * FROM ".$cfg["tab"]["upl"]." WHERE idclient='$client' AND dirname='".$folder."'"; 

if (!$type){ 
$sql .= " AND (filetype='jpg' OR filetype='gif' OR filetype='png' OR filetype='swf' OR filetype='mov') order by $sort"; 
}else{ 
$sql .= " AND (filetype='$type') order by $sort"; 
} 

    $db->query($sql); 
    while($db->next_record()){ 

if(!is_int($type))
{
	switch ($type){ 
   case "gif": $type=1; break; 
   case "jpg": $type=2; break; 
   case "png": $type=3; break; 
   case "swf": $type=4; break; 
   case "mov": $type=5; break; 
   case "": $type = 0; break;
	} 
}

if ($type != 5){ 
    $imgsize = getimagesize("../cms/upload/".$folder.$db->f("filename")); 
    $width  = $imgsize[0]; 
    $height = $imgsize[1]; 
    $filetype = $imgsize[2]; 
    } 
elseif ($type == 5){ 
   require_once "includes/getid3/getid3.php"; 
   $imgSize = GetAllFileInfo("../cms/upload/".$folder.$db->f("filename")); 
    $width  = $imgSize["video"]["resolution_x"]; 
    $height = $imgSize["video"]["resolution_y"]; 
    $filetype = 5; 
    } 

    if ((($width == $getwidth) || ($getwidth == 0)) && (($filetype==$type) || ($type==0))){ 
		if (isset($con_cfg['thumb']['width']) && isset($con_cfg['thumb']['height']))
		{
			if($width<=$height && $height > $con_cfg['thumb']['height'])
  		{
  			$ratio = ($con_cfg['thumb']['height']/$height); 
        $width2 = $ratio*$width; 
        $height2 = $con_cfg['thumb']['height']; 
  		}
  		elseif($width>$height && $width > $con_cfg['thumb']['width'])
  		{
  			$ratio = ($con_cfg['thumb']['width']/$width); 
        $width2 = $con_cfg['thumb']['width']; 
        $height2 = $ratio*$height; 
  		}			
		}
    elseif($width<=$height && $height > 100)
		{
			$ratio = (100/$height); 
      $width2 = $ratio*$width; 
      $height2 = 100; 
		}
		elseif($width>$height && $width > 100)
		{
			$ratio = (100/$width); 
      $width2 = 100; 
      $height2 = $ratio*$height; 
		}
		else
    {
    	$width2=$width;
    	$height2=$height;
    } 
         echo "<tr style=\"background-color: #F4F4F7\">\n"; 
         echo "<td style=\"border: 0px; border-bottom:1px; border-right:1px; border-color: #747488; border-style: solid\" >"; 

         if ($filetype < 4){ 
         echo "<a href=\"javascript:iZoom('../cms/upload/".$folder.$db->f("filename")."',".$width.",".($height+20).")\"><img src=\"../cms/upload/".$folder.$db->f("filename")."\" width=".$width2." height=".$height2."></a>"; 
         } 
         elseif ($filetype == 4){ 
         echo "<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0\" width=\"$width2\" height=\"$height2\"><param name=\"movie\" value=\"../cms/upload/".$folder.$db->f("filename")."\"><param name=\"quality\" value=\"high\"><param name=\"bgcolor\" value=\"#DBE3EF\"><embed src=\"../cms/upload/".$folder.$db->f("filename")."\" quality=\"high\" bgcolor=\"#DBE3EF\" width=\"$width2\" height=\"$height2\" type=\"application/x-shockwave-flash\" pluginspace=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\"></embed></object>"; 
         } 
         elseif ($filetype == 5){ 
         echo "<embed src=\"../cms/upload/".$folder.$db->f("filename")."\" type=\"video/quicktime\" pluginspage=\"http://www.apple.com/quicktime/download/\" width=\"".$width2."\"  height=\"".$height2."\" volume=0>"; 
         } 
				 
         echo "</td>\n"; 
         echo "<td style=\"font-family: Arial; font-size: 10pt; border: 0px; border-bottom:1px; border-right:1px; border-color: #747488; border-style: solid\">".$db->f("filename"); 
         echo "<br>\n"; 
         echo "<table style=\"font-family: Arial; font-size: 8pt;\">\n"; 
         echo "<tr><td>Beschreibung:</td><td>".$db->f("description")."</td></tr>\n"; 
  	 		 if($db->f("size")>=1048576) $size=round($db->f("size")/1048576,2)." MB";
         elseif($db->f("size")>=1024) $size=round($db->f("size")/1024,2)." KB";
         else $size=$db->f("size")." Bytes";
         echo "<tr><td>Dateigrösse:</td><td>".$size."</td></tr>\n"; 
         echo "<tr><td>Bildgrösse: </td><td>".$width."x".$height."</td></tr>\n"; 
         echo "</table>\n"; 

         echo "</td>\n"; 
         echo "<td style=\"font-family: Arial; font-size: 10pt; border: 0px; border-bottom:1px; border-right:1px; border-color: #747488; border-style: solid\"><a href=\"#\"   onClick=\"opener.tplcfgform.elements['".$form."'].value='".$folder.$db->f("filename")."'; window.close()\"><img src=\"images/but_ok.gif\" alt=\"Bild ausw&auml;hlen\" border=0></a></td>\n"; 
         echo "</tr>\n"; 
         echo "</tr>\n"; 
      } 
    } 
echo "</table>"; 

echo "<br><a href=\"#\" onClick=\"opener.tplcfgform.elements['".$form."'].value=''; window.close()\"><img src=\"images/but_cancel.gif\" alt=\"Kein Bild ausw&auml;hlen\" border=0></a>\n"; 
?>
Verwendung:
übeträgt den Namen der ausgewählten Datei in ein Textfeld innerhalb der Datei, die das Pop-Up mit dem Datei-Auswähler geöffnet hat.

Wenn man diese Funktionalität in einem Modul einsetzen will, muß man ein Textfeld um folgendes erweitern (alle Zeilenumbrüche aus dem Code entfernen!!!):

Code: Alles auswählen

onClick="window.open('choose_pics.php?client=<?=$client;?>
&form='+this.name+'&getwidth=0&type=','PicSelector','toolbar=no,
location=no,directories=no,status=no,menubar=no,scrollbars=yes,
resizable=yes,height=450,width=500,left=10,top=10');">

Ein Textfeld sollte dann z.B. so lauten (alle Zeilenumbrüche aus dem Code entfernen!!!):

Code: Alles auswählen

<input type="text" name="CMS_VAR[1]" value="CMS_VALUE[1]" 
onClick="window.open('choose_pics.php?client=<?=$client;?>
&form='+this.name+'&getwidth=0&type=','PicSelector','toolbar=no,
location=no,directories=no,status=no,menubar=no,scrollbars=yes,
resizable=yes,height=450,width=500,left=10,top=10');">
Die drei Parameter der Funktion openPicSelector bedeuten:
1. this.name -> darf nicht verändert werden, beinhaltet den Namen des Eingabefeldes
2. getwidth -> die Breite der gesuchten Bilder,
bei 0 werden Bilder unabhängig von Ihrer Breite angezeigt
3. type -> beschränkt die Suche auf bestimmte Dateitypen;
möglich sind: 'jpg', 'gif', 'png', swf', 'mov'; wenn es leergelassen wird, werden alle Dateitypen angezeigt


Bye,
Jumar

jumar
Beiträge: 25
Registriert: Fr 24. Okt 2003, 00:38
Kontaktdaten:

Beitrag von jumar » Mo 27. Okt 2003, 11:23

Hi!

Ähm, mir ist noch aufgefallen, daß der Dateipfad, den man zurückbekommt, nicht den Ordner "upload" enhält, das werde ich noch ändern und mein voriges Posting dann abändern.

Was ich auch noch ändern will ist, daß das neue Fenster beim Klick in das Textfeld geöffnet wird. Falls jemand 'ne Idee dafür hat (bitte erst das Skript anschaun, ich weiß schon wie man das technisch z.B. über ein Bild umsetzt, nur muß das Ganze in diesem Fall dynamisch ablaufen)... bitte melden.

Bye,
Jumar

chobbert
Beiträge: 371
Registriert: Mo 14. Jul 2003, 10:14
Wohnort: Frankfurt am Main
Kontaktdaten:

Beitrag von chobbert » Di 28. Okt 2003, 21:34

Hallo,

danke, daß Du Dich des Dateiwählers angenommen hast. Das Ding hat an der einen oder anderen Stelle so seine Schwachstellen gehabt, und ich war in den letzten Wochen an andere Projekte gebunden.

Freut mich, daß die Erweiterung nun in besserer Version für alle zur Verfügung steht.


Schöne Grüße

Robert

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » So 2. Nov 2003, 13:10

Kleine Anmerkung:
Der Dateiwähler ist in der o.a. Form nur für den Beispiel-Mandanten (im Verzeichnis cms) geeignet. Mal unabhängig von der Erweiterung des Moduls kann man das sehr einfach anpassen:

Einfach jeweils die Angabe "../cms/upload/" in "../<Mandanten-Verzeichnis>/upload/" ändern...

Gruß
HerrB

chobbert
Beiträge: 371
Registriert: Mo 14. Jul 2003, 10:14
Wohnort: Frankfurt am Main
Kontaktdaten:

Beitrag von chobbert » Mo 17. Nov 2003, 12:46

Hallo,

ich hab den Dateiwähler noch um zwei Details erweitert:

- Der zuletzt geöffnete Ordner wird in einem Cookie gespeichert und beim nächsten Aufruf des Dateiwählers automatisch geöffnet.
- Es können auch AVI-Videos ausgewählt werden.


Hier der aktualisierte Code:

Code: Alles auswählen

<?
/* choose_pics.php
*  zum Auswählen von Bild-, Flash- und Movie-Dateien und der Übertragung des Wertes in ein Textfeld
*  benötigt Internet Explorer ab Version 5.0
*
* Vorige Version (0.8):
* Autor:      Robert Strouhal
* Datum:      14.08.2003
*
* Vorige Version (0.9) getestet mit contenido 4.4.0
* Autor:      Jumar
* Datum:      27.10.2003
*
* Aktuelle Version (0.92) getestet mit contenido 4.4.0
* Autor:      Robert Strouhal
* Datum:      13.11.2003
*
* ChangeLog:
* 0.9
* - Diese Erweiterung kann mehrfach in einem Template eingebaut werden
* - Dateien können wie in der Dateiverwaltung sortiert werden
* (diese Funktion ist der contenido-Dateiverwaltung entnommen)
* - Dateien (sofern es Bilder sind) können wie in der Dateiverwaltung
* in Orginalgrösse angesehen werden (Pop-Up-Fenster; diese Funktion
* ist der contenido-Dateiverwaltung entnommen)
* - Dateien (sofern es Bilder sind) werden automatisch in der in der
* config.php angegebenen Größe angezeigt, ansonsten max. 100 hoch und 100 breit
*
*0.92
* - der ausgewählte Ordner wird in einem Cookie gespeichert und beim nächsten
*   Aufruf automatisch geöffnet
* - AVI-Movies können ausgewählt werden (type=avi)
*
*
*****************
*
* Verwendung:
* übeträgt den Namen der ausgewählten Datei in ein Textfeld innerhalb der Datei,
* die das PopUP mit dem Datei-Auswähler geöffnet hat.
*
*
* Wenn man diese Funktionalität in einem Modul einsetzen will,
* muß man ein Textfeld um folgendes erweitern
* (alle Zeilenumbrüche aus dem Code entfernen!!!):
* onClick="window.open('choose_pics.php?client=<?=$client;?>
* &form='+this.name+'&getwidth=0&type=','PicSelector','toolbar=no,
* location=no,directories=no,status=no,menubar=no,scrollbars=yes,
* resizable=yes,height=450,width=500,left=10,top=10');">
*
*
* Ein Textfeld sollte dann z.B. so lauten (alle Zeilenumbrüche aus dem Code entfernen!!!):
* <input type="text" name="CMS_VAR[1]" value="CMS_VALUE[1]"
* onClick="window.open('choose_pics.php?client=<?=$client;?>
* &form='+this.name+'&getwidth=0&type=','PicSelector','toolbar=no,
* location=no,directories=no,status=no,menubar=no,scrollbars=yes,
* resizable=yes,height=450,width=500,left=10,top=10');">
*
*
*
* Die drei Parameter der Funktion openPicSelector bedeuten:
*
* 1. this.name -> darf nicht verändert werden, beinhaltet den Namen des Eingabefeldes
* 2. getwidth -> die Breite der gesuchten Bilder,
* bei 0 werden Bilder unabhängig von Ihrer Breite angezeigt
* 3. type -> beschränkt die Suche auf bestimmte Dateitypen;
* möglich sind: 'jpg', 'gif', 'png', swf', 'mov', 'avi'; wenn es leergelassen wird, werden alle Dateitypen angezeigt
****
*/

if (!$_GET[folder]){
	if (!$_COOKIE[cfolder]){
		$folder = "bilder/";
	}else{
	$folder = $_COOKIE[cfolder];
	}
}
else{
	$folder = $_GET[folder];
	setcookie("cfolder", $_GET[folder]);
}

include_once ('./includes/config.php');
include_once ($cfg["path"]["classes"] . 'class.plugin.php');
include_once ($cfg["path"]["classes"] . 'class.xml.php');
include_once ($cfg["path"]["classes"] . 'class.navigation.php');
include_once ($cfg["path"]["classes"] . 'class.template.php');
include_once ($cfg["path"]["classes"] . 'class.backend.php');
include_once ('./includes/functions.upl.php');

if(!$sort) $sort="filename";

switch ($sort) {
  case "fileasc" : $sort="filename asc";
            break;
  case "filedesc" : $sort="filename desc";
            break;
  case "descriptionasc" : $sort="description asc";
            break;
  case "descriptiondesc" : $sort="description desc";
            break;
   case "sizeasc" : $sort="size asc";
            break;
  default : $sort="filename asc";
}
?>
<html>
<head>
<title>Bild ausw&auml;hlen</title>
<link rel="stylesheet" type="text/css" href="<? print $cfg["path"]["contenido_fullhtml"] . $cfg["path"]["styles"] ?>contenido.css">
<script type="text/javascript">
function uplSort(selObj)
{
    var url = 'choose_pics.php?client=<?=$client?>&form=<?=$form?>&getwidth=<?=$getwidth?>&type=<?=$type?>&folder=<?=$folder?>';
    var i = selObj.selectedIndex;
    var sortkey = selObj.options[i].value;

    window.location.href = url + '&sort=' + sortkey;
}

function iZoom(path, defaultWidth, defaultHeight)
{
    //var defaultWidth = 640;
    //var defaultHeight = 480;

    var xwin = parseInt((screen.availWidth / 2) - (defaultWidth / 2));
    var ywin = parseInt((screen.availHeight / 2) - (defaultHeight / 2));

    zwin = window.open("","","left="+xwin+",top="+ywin+",width=" + defaultWidth + ",height=" + defaultHeight + "\"");
    zwin.moveTo(xwin,ywin);

    zcon  = "<html>\n<head>\n<link rel=\"stylesheet\" type=\"text/css\" href=\"styles/contenido.css\" /><title></title>\n</head>\n";
    zcon += "<body leftmargin=\"0\" topmargin=\"0\"><table width=\"100%\" height=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\"><tr><td valign=\"top\" align=\"center\" valign=\"middle\">";
    zcon += "<body self.moveTo((screen.availWidth / 2) - (defaultWidth / 2 + 5),(screen.availHeight / 2) - (defaultHeight / 2 + 20))\" leftmargin=\"0\" topmargin=\"0\" marginwidth=\"0\" marginheight=\"0\">\n";
    zcon += "<a class=\"text_medium\" href=\"javascript:self.close()\"><img name=\"zimg\" src=\""+path+"\" border=\"0\" alt=\"schliessen\"><br>schliessen</a>\n";
    zcon += "</td></tr></table></body>\n</html>";

    zwin.document.open();
    zwin.document.write(zcon);
    zwin.document.close();
}
</script>
</HEAD>
<BODY MARGINHEIGHT=0 MARGINWIDTH=0 LEFTMARGIN=0 TOPMARGIN=0>

<table cellspacing="0" cellpadding="0" border="0" width="100%">

    <tr style="background-color: #C6C6D5; height: 18px">
      <td style="font-family: Arial; font-size: 10pt; color: #00000; font-weight: bold;">&nbsp;&nbsp;Bild ausw&auml;hlen</td>
         <td style="font-family: Arial; font-size: 10pt; color: #00000; font-weight: bold;" align="right">
         Dateisortierung:&nbsp;&nbsp;&nbsp;<!-- Generated by Contenido 4.4.0-->
       <select id="{ID}" name="sort" class="text_medium" onchange="uplSort(this)">

        <option value="fileasc" >Dateiname A-Z</option>
        <option value="filedesc" >Dateiname Z-A</option>
        <option value="descriptionasc" >Beschreibung A-Z</option>
        <option value="descriptiondesc" >Beschreibung Z-A</option>
        <option value="sizeasc" >Dateigr&ouml;sse</option>

       </select>&nbsp;&nbsp;
         </td>
    </tr>

    <tr style="background-color: #747488; height: 1px">
        <td colspan="2"><img src="images/spacer.gif" width="1" height="1"></td>
    </tr>
</table>
<?

// Create Contenido classes
$db  = new DB_Contenido;

if (!$folder){
   $folder = "bilder/";
   }

if (!$type){
$sql="SELECT DISTINCT dirname FROM ".$cfg["tab"]["upl"]." WHERE idclient='$client' AND (filetype='jpg' OR filetype='gif' OR filetype='png') order by $sort";
}else{
$sql="SELECT DISTINCT dirname FROM ".$cfg["tab"]["upl"]." WHERE idclient='$client' AND (filetype='$type') order by $sort";
}


$db->query($sql);

echo "<br><table width=\"400\" cellspacing=\"0\" cellpadding=\"3\" border=\"0\" style=\"border:0px; border-left:1px; border-top: 1px;border-color: #747488; border-style: solid;\">\n";

echo "<tr style=\"background-color: #a9aec2\">\n";
echo "<td style=\"font-family: Arial; font-size: 10pt; border: 0px; border-bottom:1px; border-right:1px; border-color: #747488; border-style: solid\">";
echo "Ordner auswählen:\n";
echo "</td>\n";
echo "<td style=\"font-family: Arial; font-size: 10pt; border: 0px; border-bottom:1px; border-right:1px; border-color: #747488; border-style: solid\">";

echo "<select style=\"font-size: 9pt;\" name=\"folders\" onChange=\"document.location.search = document.location.search+'&folder='+this.value\">";
echo "<option value=\"/\">/</option>\n";
while($db->next_record()){
   echo "<option value=\"".$db->f("dirname")."\" ";
   if ($folder == $db->f("dirname")){
      echo " selected ";
      }
   echo ">".$db->f("dirname")."</option>\n";
   }
echo "</select></td>\n";
echo "<td style=\"font-family: Arial; font-size: 10pt; border: 0px; border-bottom:1px; border-right:1px; border-color: #747488; border-style: solid\">&nbsp;</td>\n";
echo "</tr>\n";


$sql = "SELECT * FROM ".$cfg["tab"]["upl"]." WHERE idclient='$client' AND dirname='".$folder."'";

if (!$type){
$sql .= " AND (filetype='jpg' OR filetype='gif' OR filetype='png' OR filetype='swf' OR filetype='mov') order by $sort";
}else{
$sql .= " AND (filetype='$type') order by $sort";
}

$db->query($sql);

while($db->next_record()){

    if(!is_int($type))
    {
    
       switch ($type){
       case "gif": $type=1; break;
       case "jpg": $type=2; break;
       case "png": $type=3; break;
       case "swf": $type=4; break;
       case "mov": $type=5; break;
       case "avi": $type=6; break;
       case "": $type = 0; break;
       }
    }

    if ($type < 5){
        $imgsize = getimagesize("../cms/upload/".$folder.$db->f("filename"));
        $width  = $imgsize[0];
        $height = $imgsize[1];
        $filetype = $imgsize[2];
        }
    elseif ($type == 5){
        require_once "includes/getid3/getid3.php";
        $imgSize = GetAllFileInfo("../cms/upload/".$folder.$db->f("filename"));
        $width  = $imgSize["video"]["resolution_x"];
        $height = $imgSize["video"]["resolution_y"];
        $filetype = 5;
        }
    elseif ($type == 6){
        require_once "includes/getid3/getid3.php";
        $imgSize = GetAllFileInfo("../cms/upload/".$folder.$db->f("filename"));
        $width  = $imgSize["video"]["resolution_x"];
        $height = $imgSize["video"]["resolution_y"];
        $filetype = 6;

        }

        if ((($width == $getwidth) || ($getwidth == 0)) && (($filetype==$type) || ($type==0))){

          if (isset($con_cfg['thumb']['width']) && isset($con_cfg['thumb']['height']))
          {
             if($width<=$height && $height > $con_cfg['thumb']['height'])
            {
               $ratio = ($con_cfg['thumb']['height']/$height);
            $width2 = $ratio*$width;
            $height2 = $con_cfg['thumb']['height'];
            }
            elseif($width>$height && $width > $con_cfg['thumb']['width'])
            {
               $ratio = ($con_cfg['thumb']['width']/$width);
            $width2 = $con_cfg['thumb']['width'];
            $height2 = $ratio*$height;
            }
          }
        elseif($width<=$height && $height > 100)
          {
             $ratio = (100/$height);
          $width2 = $ratio*$width;
          $height2 = 100;
          }
          elseif($width>$height && $width > 100)
          {
             $ratio = (100/$width);
          $width2 = 100;
          $height2 = $ratio*$height;
          }
          else
        {
           $width2=$width;
           $height2=$height;
        }

             echo "<tr style=\"background-color: #F4F4F7\">\n";
             echo "<td style=\"border: 0px; border-bottom:1px; border-right:1px; border-color: #747488; border-style: solid\" >";

             if ($filetype < 4){
             echo "<a href=\"javascript:iZoom('../cms/upload/".$folder.$db->f("filename")."',".$width.",".($height+20).")\"><img src=\"../cms/upload/".$folder.$db->f("filename")."\" width=".$width2." height=".$height2."></a>";
             }
             elseif ($filetype == 4){
             echo "<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0\" width=\"$width2\" height=\"$height2\"><param name=\"movie\" value=\"../cms/upload/".$folder.$db->f("filename")."\"><param name=\"quality\" value=\"high\"><param name=\"bgcolor\" value=\"#DBE3EF\"><embed src=\"../cms/upload/".$folder.$db->f("filename")."\" quality=\"high\" bgcolor=\"#DBE3EF\" width=\"$width2\" height=\"$height2\" type=\"application/x-shockwave-flash\" pluginspace=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\"></embed></object>";
             }
             elseif ($filetype == 5){
             echo "<embed src=\"../cms/upload/".$folder.$db->f("filename")."\" type=\"video/quicktime\" pluginspage=\"http://www.apple.com/quicktime/download/\" width=\"".$width2."\"  height=\"".$height2."\" volume=0>";
             }
             elseif ($filetype == 6){
             echo "<embed src=\"../cms/upload/".$folder.$db->f("filename")."\" type=\"video/x-msvideo\" width=\"".$width2."\"  height=\"".$height2."\" volume=0 showcontrols=\"false\" showstatusbar=\"false\">";
             }

             echo "</td>\n";
             echo "<td style=\"font-family: Arial; font-size: 10pt; border: 0px; border-bottom:1px; border-right:1px; border-color: #747488; border-style: solid\">".$db->f("filename");
             echo "<br>\n";
             echo "<table style=\"font-family: Arial; font-size: 8pt;\">\n";
             echo "<tr><td>Beschreibung:</td><td>".$db->f("description")."</td></tr>\n";
                 if($db->f("size")>=1048576) $size=round($db->f("size")/1048576,2)." MB";
             elseif($db->f("size")>=1024) $size=round($db->f("size")/1024,2)." KB";
             else $size=$db->f("size")." Bytes";
             echo "<tr><td>Dateigrösse:</td><td>".$size."</td></tr>\n";
             echo "<tr><td>Bildgrösse: </td><td>".$width."x".$height."</td></tr>\n";
             echo "</table>\n";

             echo "</td>\n";
             echo "<td style=\"font-family: Arial; font-size: 10pt; border: 0px; border-bottom:1px; border-right:1px; border-color: #747488; border-style: solid\"><a href=\"#\"   onClick=\"opener.tplcfgform.elements['".$form."'].value='".$folder.$db->f("filename")."'; window.close()\"><img src=\"images/but_ok.gif\" alt=\"Bild ausw&auml;hlen\" border=0></a></td>\n";
             echo "</tr>\n";
             echo "</tr>\n";
          }
        }
echo "</table>";

echo "<br><a href=\"#\" onClick=\"opener.tplcfgform.elements['".$form."'].value=''; window.close()\"><img src=\"images/but_cancel.gif\" alt=\"Kein Bild ausw&auml;hlen\" border=0></a>\n";
?>


Schöne Grüße

Robert

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Fr 5. Dez 2003, 00:15

ist das jetzt die aktuellste version oder gibts noch ne neuere ?

chobbert
Beiträge: 371
Registriert: Mo 14. Jul 2003, 10:14
Wohnort: Frankfurt am Main
Kontaktdaten:

Beitrag von chobbert » Fr 5. Dez 2003, 00:35

zumindest die aktuellste Version, die mir selbst vorliegt.

Schöne Grüße
Robert

Gesperrt