, * Andreas Oesterreicher and * Rudolf Hangl . */ // Oberflaeche zur Aenderung von Beispielen und Upload von Bildern require_once('../config/vilesci.config.inc.php'); require_once('../include/functions.inc.php'); require_once('../include/person.class.php'); require_once('../include/benutzerberechtigung.class.php'); require_once('../include/akte.class.php'); require_once('../include/fotostatus.class.php'); $PHP_SELF = $_SERVER['PHP_SELF']; echo ""; function resize($filename, $width, $height) { $ext = explode('.',$_FILES['bild']['name']); $ext = mb_strtolower($ext[count($ext)-1]); // Hoehe und Breite neu berechnen list($width_orig, $height_orig) = getimagesize($filename); if ($width && ($width_orig < $height_orig)) { $width = ($height / $height_orig) * $width_orig; } else { $height = ($width / $width_orig) * $height_orig; } $image_p = imagecreatetruecolor($width, $height); $image = imagecreatefromjpeg($filename); //Bild nur verkleinern aber nicht vergroessern if($width_orig>$width || $height_orig>$height) imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig); else $image_p = $image; imagejpeg($image_p, $filename, 80); imagedestroy($image_p); @imagedestroy($image); } $user = get_uid(); $rechte = new benutzerberechtigung(); $rechte->getBerechtigungen($user); if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('assistenz') && !$rechte->isBerechtigt('mitarbeiter')) die('Keine Berechtigung'); //Bei Upload des Bildes if(isset($_POST['submitbild'])) { if(isset($_FILES['bild']['tmp_name'])) { //Extension herausfiltern $ext = explode('.',$_FILES['bild']['name']); $ext = mb_strtolower($ext[count($ext)-1]); $width=101; $height=130; //--check that it's a jpeg if ($ext=='jpg' || $ext=='jpeg') { $filename = $_FILES['bild']['tmp_name']; //groesse auf maximal 827x1063 begrenzen resize($filename, 827, 1063); $fp = fopen($filename,'r'); //auslesen $content = fread($fp, filesize($filename)); fclose($fp); $akte = new akte(); if($akte->getAkten($_GET['person_id'], 'Lichtbil')) { if(count($akte->result)>0) { $akte = $akte->result[0]; $akte->new = false; } else $akte->new = true; } else { $akte->new = true; } $akte->dokument_kurzbz = 'Lichtbil'; $akte->person_id = $_GET['person_id']; $akte->inhalt = base64_encode($content); $akte->mimetype = "image/jpg"; $akte->erstelltam = date('Y-m-d H:i:s'); $akte->gedruckt = false; $akte->titel = "Lichtbild_".$_GET['person_id'].".jpg"; $akte->bezeichnung = "Lichtbild gross"; $akte->updateamum = date('Y-m-d H:i:s'); $akte->updatevon = $user; $akte->insertamum = date('Y-m-d H:i:s'); $akte->insertvon = $user; $akte->uid = ''; if(!$akte->save()) { echo "Fehler: $akte->errormsg"; } //groesse auf maximal 101x130 begrenzen resize($filename, 101, 130); //in DB speichern //File oeffnen $fp = fopen($filename,'r'); //auslesen $content = fread($fp, filesize($filename)); fclose($fp); //in base64 umrechnen $content = base64_encode($content); $person = new person(); if($person->load($_GET['person_id'])) { //base64 Wert in die Datenbank speichern $person->foto = $content; $person->new = false; if($person->save()) { $fs = new fotostatus(); $fs->person_id=$person->person_id; $fs->fotostatus_kurzbz='hochgeladen'; $fs->datum = date('Y-m-d'); $fs->insertamum = date('Y-m-d H:i:s'); $fs->insertvon = $user; $fs->updateamum = date('Y-m-d H:i:s'); $fs->updatevon = $user; if(!$fs->save(true)) echo 'Fehler beim Setzen des Bildstatus'; else { echo "Bild wurde erfolgreich gespeichert
"; } } else echo ''.$person->errormsg.'
'; } else echo ''.$person->errormsg.'
'; } else echo "Derzeit koennen nur Bilder im JPG Format hochgeladen werden
"; } } if(isset($_GET['person_id'])) { echo "
Bild:
"; } else { echo "Es wurde keine Person_id angegeben"; } ?>