Changeset 1154


Ignore:
Timestamp:
10/18/11 15:53:09 (7 months ago)
Author:
roosit
Message:

Менеджер файлов: загрузка файлов в глобальное хранилище

File:
1 edited

Legend:

Unmodified
Added
Removed
  • modules/filemanager/includes/uploadfile.php

    r1049 r1154  
    105105         * @var boolean default false 
    106106         */ 
    107         private $outUserProfile = false; // временно отключено 
     107        public $outUserProfile = false; // временно отключено 
    108108         
    109109        /** 
     
    234234                 
    235235                // есть ли свободное место в профиле пользователя? 
    236                 if (!$this->ignoreFreeSpace){ 
     236                if (!$this->outUserProfile && !$this->ignoreFreeSpace){ 
    237237                        $freespace = $this->manager->GetFreeSpaceMethod($this->userid); 
    238238                        // TODO: возможно есть смысл делать эту проверку после того, как картинка будет сжата    
     
    318318                $db = CMSRegistry::$instance->db; 
    319319                 
    320                 // а вдруг этот файл грузят второй раз? 
    321                 $finfo = CMSQFileManager::FileInfoByName($db, $this->userid, $this->folderid, $fName); 
    322                 if (!empty($finfo)){ // точно! так оно и есть. 
    323                         // а может быть этот файл тот же самый? 
    324                         if (intval($fSize) == intval($finfo['fs'])){ // размеры совпадают, нужно сравнить побайтно 
    325                                 if ($this->manager->FilesCompare($fPath, $finfo['fh'])){ 
    326                                         $this->uploadFileHash = $finfo['fh']; 
    327                                         @unlink($fPath); 
    328                                         return UploadError::NO_ERROR; 
     320                if ($userid > 0){ 
     321                        // а вдруг этот файл грузят второй раз? 
     322                        $finfo = CMSQFileManager::FileInfoByName($db, $userid, $this->folderid, $fName); 
     323                        if (!empty($finfo)){ // точно! так оно и есть. 
     324                                // а может быть этот файл тот же самый? 
     325                                if (intval($fSize) == intval($finfo['fs'])){ // размеры совпадают, нужно сравнить побайтно 
     326                                        if ($this->manager->FilesCompare($fPath, $finfo['fh'])){ 
     327                                                $this->uploadFileHash = $finfo['fh']; 
     328                                                @unlink($fPath); 
     329                                                return UploadError::NO_ERROR; 
     330                                        } 
    329331                                } 
    330                         } 
    331                         // у этих файлов одинаковое только имя 
    332                         // TODO: необходимо создавать новое имя файла, и делать повторно попытку его загрузки 
     332                                // у этих файлов одинаковое только имя 
     333                                // TODO: необходимо создавать новое имя файла, и делать повторно попытку его загрузки 
     334                        } 
    333335                } 
    334336                // все нормально, теперь можно загружать файл в базу 
     
    346348                                $first = false; 
    347349                                $filehash = CMSQFileManager::FileUpload( 
    348                                         CMSRegistry::$instance->db, $this->userid, $this->folderid,  
     350                                        CMSRegistry::$instance->db, $userid, $this->folderid,  
    349351                                        $fName, $data, $fSize, $fExt,  
    350352                                        ($upload->file_is_image ? 1 : 0),  
Note: See TracChangeset for help on using the changeset viewer.