$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);
}
if(isset($_POST['person_idValue']))
{
$benutzer = new benutzer();
$benutzer->load($user);
if($benutzer->person_id!=$_POST['person_idValue'])
die($p->t('global/keineBerechtigungFuerDieseSeite'));
$fs = new fotostatus();
if($fs->akzeptiert($benutzer->person_id))
die($p->t('profil/profilfotoUploadGesperrt'));
}
else
die($p->t('global/fehlerBeiDerParameteruebergabe'));
//file als png und jpg abspeichern
$tmpfname = tempnam(sys_get_temp_dir(), 'FHC');
file_put_contents($tmpfname, base64_decode(preg_replace('#^data:image/\w+;base64,#i', '', $src)));
$imageTmp=imagecreatefrompng($tmpfname);
imagejpeg($imageTmp, $tmpfname, 100);
$person_id = $_POST['person_idValue'];
//profilbild speichern
if(file_exists($tmpfname))
{
$width=101;
$height=130;
//groesse auf maximal 827x1063 begrenzen
resize($tmpfname, 827, 1063);
$fp = fopen($tmpfname,'r');
//auslesen
$content = fread($fp, filesize($tmpfname));
fclose($fp);
$akte = new akte();
if($akte->getAkten($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 = $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_".$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($tmpfname, 101, 130);
//in DB speichern
//File oeffnen
$fp = fopen($tmpfname,'r');
//auslesen
$content = fread($fp, filesize($tmpfname));
fclose($fp);
//in base64-Werte umrechnen
$content = base64_encode($content);
$person = new person();
if($person->load($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.'
';
}
}
//temporäre files löschen
unlink($tmpfname);
?>