New caching system for photos
This commit is contained in:
parent
5635fe250c
commit
46c5a97a20
4 changed files with 29 additions and 5 deletions
|
@ -7,6 +7,7 @@ function photo_init(&$a) {
|
|||
global $_SERVER;
|
||||
|
||||
$prvcachecontrol = false;
|
||||
$file = "";
|
||||
|
||||
switch($a->argc) {
|
||||
case 4:
|
||||
|
@ -20,6 +21,7 @@ function photo_init(&$a) {
|
|||
break;
|
||||
case 2:
|
||||
$photo = $a->argv[1];
|
||||
$file = $photo;
|
||||
break;
|
||||
case 1:
|
||||
default:
|
||||
|
@ -42,7 +44,6 @@ function photo_init(&$a) {
|
|||
exit;
|
||||
}
|
||||
|
||||
|
||||
$default = 'images/person-175.jpg';
|
||||
|
||||
if(isset($type)) {
|
||||
|
@ -94,7 +95,7 @@ function photo_init(&$a) {
|
|||
foreach( Photo::supportedTypes() as $m=>$e){
|
||||
$photo = str_replace(".$e",'',$photo);
|
||||
}
|
||||
|
||||
|
||||
if(substr($photo,-2,1) == '-') {
|
||||
$resolution = intval(substr($photo,-1,1));
|
||||
$photo = substr($photo,0,-2);
|
||||
|
@ -115,6 +116,8 @@ function photo_init(&$a) {
|
|||
intval($resolution)
|
||||
);
|
||||
|
||||
$public = ($r[0]['allow_cid'] == '') AND ($r[0]['allow_gid'] == '') AND ($r[0]['deny_cid'] == '') AND ($r[0]['deny_gid'] == '');
|
||||
|
||||
if(count($r)) {
|
||||
$data = $r[0]['data'];
|
||||
$mimetype = $r[0]['type'];
|
||||
|
@ -198,6 +201,12 @@ function photo_init(&$a) {
|
|||
header("Cache-Control: max-age=31536000");
|
||||
}
|
||||
echo $data;
|
||||
|
||||
// If the photo is public and there is an existing photo directory store the photo there
|
||||
if ($public and ($file != ""))
|
||||
if (is_dir($_SERVER["DOCUMENT_ROOT"]."/photo"))
|
||||
file_put_contents($_SERVER["DOCUMENT_ROOT"]."/photo/".$file, $data);
|
||||
|
||||
killme();
|
||||
// NOTREACHED
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue