Просмотр файла 2/3020.ru/files/download/file.php

Размер файла: 2.6Kb
<?php
  
/*
------------------------------------------------
3020.ru - скрипты тут
------------------------------------------------
*/
  
FOREACH (ARRAY('config', 'connect', 'users') AS $connect) {
  
  INCLUDE_ONCE ("../../system/connections/global/$connect.php"); 
  
}
  
/*
------------------------------------
Отдача файлов на просмотр/скачивание
------------------------------------
*/

$id = INTVAL(GET('id'));
$dir2 = INTVAL(GET('dir'));

IF ($dir2 == 0){
  
  $dir = 0;
  
}ELSE{
  
  $dir3 = DB::GET_STRING("SELECT `ID`,`PRIVATE`,`USER_ID`,`PASSWORD` FROM `FILES_DIR` WHERE `ID` = '".$dir2."' LIMIT 1");
  
  IF (!$dir3['ID']){
    
    $dir = 0;
    
  }ELSE{
    
    $dir = $dir3['ID'];
    
  }

}

$files = DB::GET_STRING("SELECT `ID`,`NAME`,`EXT`,`USER_ID` FROM `FILES` WHERE `ID` = '".$id."' AND `ID_DIR` = '".$dir."' LIMIT 1");

//Если данные не опознаны
IF (!IS_FILE(ROOT.'/files/upload/files/source/'.$files['ID'].'.'.$files['EXT']) || !ISSET($files['ID'])){
  
  EXIT;

}

IF ($dir > 0){
  
  IF (MANAGEMENT == 0){
    
    IF (ACCESS('files_private_show', NULL, 1) == FALSE){
      
      IF (DB::GET_COLUMN("SELECT COUNT(*) FROM `FILES_SHOW` WHERE `FILE_ID` = '".$files['ID']."' AND `USER_ID` = '".$files['USER_ID']."' LIMIT 1") == 0){
        
        //Если в закрытом альбоме
        IF ($dir3['PRIVATE'] == 3 && $dir3['USER_ID'] != $user['ID']){
          
          EXIT;
        
        }
        
        //Если только для владельца альбома
        IF ($dir3['PRIVATE'] == 2 && $dir3['USER_ID'] != $user['ID']){

          EXIT;
        
        }
        
        //Если только по паролю
        IF ($dir3['PRIVATE'] == 4 && STR($dir3['PASSWORD']) > 0 && $dir3['USER_ID'] != $user['ID'] && !ISSET($_SESSION['DIR_PASSWORD'])){

          EXIT;
        
        }
        
        //Если только друзьям
        IF ($dir3['PRIVATE'] == 1 && DB::GET_COLUMN("SELECT COUNT(*) FROM `FRIENDS` WHERE `USER_ID` = '".$user['ID']."' AND `MY_ID` = '".$files['USER_ID']."' AND `ACT` = '0' LIMIT 1") == 0 && $dir3['USER_ID'] != $user['ID']){

          EXIT;
        
        }
      
      }
    
    }
    
  }
  
}

IF (GET('type') == "show"){
  
  READFILE(ROOT.'/files/upload/files/source/'.$id.'.'.$files['EXT']);
  
}ELSE{
  
  //Отдаем файл браузеру если всё хорошо
  FILE::DOWNLOAD(ROOT.'/files/upload/files/source/'.$files['ID'].'.'.$files['EXT'], HTTP_HOST.'_'.TEXT_ABSOLUTE($files['NAME']).'.'.$files['EXT'], FILE::MIME($files['EXT']));
  
}

EXIT;
  
?>