Вход Регистрация
Файл: foto/img.php
Строк: 38
<?php 

include_once $_SERVER['DOCUMENT_ROOT'].'/sys/inc/home.php';
include_once 
H.'sys/inc/start.php';
include_once 
H.'sys/inc/sess.php';
include_once 
H.'sys/inc/settings.php';

$p = (int) $_GET['id'];

if (isset(
$_GET['size'])) {
    
$w $z = (int) $_GET['size'];
}

$u = (isset($_SESSION['id_user']) ? $_SESSION['id_user'] : -1);
$pwd = (isset($_SESSION['pass']) ? $_SESSION['pass'] : 0);

$cache = new Cache(600);

// Размеры для кеширования
$cached = array(50128640);

$cacheLv 'photo_access.'.$u.'.'.$p;
$access $cache->read($cacheLv);

if (
$access) {
    
$p $access
}

$cacheId false;

if (isset(
$w) && in_array($w$cached) && $w != 0) {
    
$cacheId 'photo.'.$p.'.'.$w;

    if (
$w == 50) {
        
$w = (int) $set['photo_size_50'];
    } elseif (
$w == 128) {
        
$w = (int) $set['photo_size_128'];
    } elseif (
$w == 640) {
        
$w = (int) $set['photo_size_640'];
    }
}

$imageCache $cache->read($cacheIdfalsetrue);

if (!
$access && $p) {
    include_once 
H.'sys/inc/db_connect.php';

    
$photo mysql_fetch_assoc(mysql_query("
          SELECT ph.id, ph.name, ph.avatar, pg.privat, pg.pass, pg.id_user, pu.group_access, pu.level, ps.privat_str, IF (pf.user, 1, 0) AS frends
          FROM gallery_foto AS ph 
          JOIN gallery AS pg ON ph.id_gallery = pg.id
          JOIN user AS pu ON pu.id = pg.id_user
          LEFT JOIN user_set AS ps ON ps.id_user = pg.id_user
          LEFT JOIN frends AS pf ON (pf.user = '
$u' AND pf.frend = pg.id_user) OR (pf.user = pg.id_user AND pf.frend = '$u')
          WHERE ph.id = '
$p'
    "
));
    
    if (
$u != $photo['id_user'] && $photo['avatar'] == 0) {
        if (
$photo['privat_str'] == || (($photo['privat_str'] == || $photo['privat'] == 1) && !$photo['frends']) || $photo['privat'] == 2) {
            
$p 0;
        }
        
        if (
$photo['privat'] == 3) {
            if (
$pwd != $photo['pass']) {
                
$p 0;
            }
        }
    }    
    
    if (
$u && $p == 0) {
        
$user mysql_fetch_assoc(mysql_query("
              SELECT * FROM user
              WHERE id = '
$u'
        "
));
        
        if (
$user['group_access'] > $photo['group_access']) {
            
$p $photo['id'];
        }
    }
    
    if (!
$access) {
        
$access $cache->write($cacheLv$p);
    }
}

if (
$imageCache) {
    
$file $imageCache;
}

else {
    
$file H.'sys/gallery/foto/' $p '.jpg';
}

$image $foo = new upload($file); 

header('Cache-control: public');
header('Expires: ' gmdate("D, d M Y H:i:s"time() + 60*60*24*7) . ' GMT');
header('Content-type: ' $image->file_src_mime);

if (
$imageCache) {
    die(
$image->Process());
}

if (isset(
$_GET['crop'])) 
{
    
$image->image_resize true;
    
    if (
preg_match('/^([0-9]{1,3}x[0-9]{1,3})$/i'$_GET['crop'])) 
    {
        
$prop explode('x'$_GET['crop']);
        
        if (
$prop[0] > && $image->image_src_x $prop[0]) 
            
$image->image_x = (int) $prop[0];
        
        if (
$prop[1] > && $image->image_src_y $prop[1]) 
            
$image->image_y = (int) $prop[1];
        
        
$image->image_ratio_crop true;
    } 
    
    elseif (
preg_match('/^([0-9]{1,3})$/i'$_GET['crop'])) 
    {
        if (
$image->image_src_x $_GET['crop']) {
            
$image->image_x $_GET['crop'];
            
$image->image_ratio_y true;            
        }
    }
}

elseif (isset(
$w) && $w && $image->image_src_x $w) {
    
$image->image_resize true;
    
$image->image_x $w;
    
    if (
$z == 50) {
        
$image->image_y $w;
        
$image->image_ratio_crop true;
    } else {
        
$image->image_ratio_y true;
    }
}

$output $image->Process(); 

if (!
$imageCache) {
    
$cache->write($cacheId$output);
}

die(
$output);
Онлайн: 0
Реклама