Ticket #1413: ExtendedFileManager.diff

File ExtendedFileManager.diff, 13.1 KB (added by guest, 12 years ago)
  • ../../../

    old new  
    77 * Version: Updated on 29-10-2006 by Raimund Meyer 
    88 * Package: ExtendedFileManager (EFM 1.1.3) 
    99 * http://www.afrusoft.com/htmlarea 
    10  * changes to E_STRIC bei czarnowski  powercms.org 
    1110 */ 
    1211 
    1312/** 
     
    3635     * Manager mode - image | link 
    3736     */ 
    3837        var $mode; 
    39         /** 
    40         placholder of class files 
    41         */ 
    42         var $files: 
    4338 
    4439        /** 
    4540         * Constructor. Create a new Image Manager instance. 
     
    5045                $this->config = $config; 
    5146                 
    5247                $this->mode = empty($mode) ? (empty($config['insert_mode']) ? 'image' : $config['insert_mode']): $mode; 
    53                 $this->files= new Files(); 
    5448        } 
    5549 
    5650        /** 
     
    118112         */ 
    119113        function _dirs($base, $path)  
    120114        { 
    121                 $base = $this->files->fixPath($base); 
     115                $base = Files::fixPath($base); 
    122116                $dirs = array(); 
    123117 
    124118                if($this->isValidBase() == false) 
     
    134128                                && substr($entry,0,1) != '.' 
    135129                                && $this->isThumbDir($entry) == false)  
    136130                        { 
    137                                 $relative = $this->files->fixPath($path.$entry); 
    138                                 $fullpath = $this->files->fixPath($base.$entry); 
     131                                $relative = Files::fixPath($path.$entry); 
     132                                $fullpath = Files::fixPath($base.$entry); 
    139133                                $dirs[$relative] = $fullpath; 
    140134                                $dirs = array_merge($dirs, $this->_dirs($fullpath, $relative)); 
    141135                        } 
     
    166160                if($this->isValidBase() == false) 
    167161                        return array($files,$dirs); 
    168162 
    169                 $path = $this->files->fixPath($path); 
    170                 $base = $this->files->fixPath($this->getImagesDir()); 
    171                 $fullpath = $this->files->makePath($base,$path); 
     163                $path = Files::fixPath($path); 
     164                $base = Files::fixPath($this->getImagesDir()); 
     165                $fullpath = Files::makePath($base,$path); 
    172166 
    173167 
    174168                $d = @dir($fullpath); 
     
    181175                                if(is_dir($fullpath.$entry) 
    182176                                        && $this->isThumbDir($entry) == false) 
    183177                                { 
    184                                         $relative = $this->files->fixPath($path.$entry); 
    185                                         $full = $this->files->fixPath($fullpath.$entry); 
     178                                        $relative = Files::fixPath($path.$entry); 
     179                                        $full = Files::fixPath($fullpath.$entry); 
    186180                                        $count = $this->countFiles($full); 
    187181                                        $dirs[$relative] = array('fullpath'=>$full,'entry'=>$entry,'count'=>$count, 'stat'=>stat($fullpath.$entry)); 
    188182                                } 
     
    194188                    if(in_array($afruext,$valid_extensions)) 
    195189                                        { 
    196190 
    197                                                 $file['url'] = $this->files->makePath($this->config['base_url'],$path).$entry; 
     191                                                $file['url'] = Files::makePath($this->config['base_url'],$path).$entry; 
    198192                                                $file['relative'] = $path.$entry; 
    199193                                                $file['fullpath'] = $fullpath.$entry; 
    200194                                                $img = $this->getImageInfo($fullpath.$entry); 
     
    311305                if($this->config['safe_mode'] == true 
    312306                        || strlen(trim($this->config['thumbnail_dir'])) == 0) 
    313307                { 
    314                         Return $this->files->makeFile($path_parts['dirname'],$thumbnail); 
     308                        Return Files::makeFile($path_parts['dirname'],$thumbnail); 
    315309                } 
    316310                else 
    317311                { 
    318312                        if(strlen(trim($this->config['thumbnail_dir'])) > 0) 
    319313                        { 
    320                                 $path = $this->files->makePath($path_parts['dirname'],$this->config['thumbnail_dir']); 
     314                                $path = Files::makePath($path_parts['dirname'],$this->config['thumbnail_dir']); 
    321315                                if(!is_dir($path)) 
    322                                         $this->files->createFolder($path); 
    323                                 Return $this->files->makeFile($path,$thumbnail); 
     316                                        Files::createFolder($path); 
     317                                Return Files::makeFile($path,$thumbnail); 
    324318                        } 
    325319                        else //should this ever happen? 
    326320                        { 
     
    345339                if($this->config['safe_mode'] == true 
    346340                        || strlen(trim($this->config['thumbnail_dir'])) == 0) 
    347341                { 
    348                         Return $this->files->makeFile($this->getImagesURL(),$thumbnail); 
     342                        Return Files::makeFile($this->getImagesURL(),$thumbnail); 
    349343                } 
    350344                else 
    351345                { 
    352346                        if(strlen(trim($this->config['thumbnail_dir'])) > 0) 
    353347                        { 
    354                                 $path = $this->files->makePath($path_parts['dirname'],$this->config['thumbnail_dir']); 
    355                                 $url_path = $this->files->makePath($this->getImagesURL(), $path); 
    356                                 Return $this->files->makeFile($url_path,$thumbnail); 
     348                                $path = Files::makePath($path_parts['dirname'],$this->config['thumbnail_dir']); 
     349                                $url_path = Files::makePath($this->getImagesURL(), $path); 
     350                                Return Files::makeFile($url_path,$thumbnail); 
    357351                        } 
    358352                        else //should this ever happen? 
    359353                        { 
     
    380374 
    381375                if( strlen(trim($this->config['resized_dir'])) == 0 || $this->config['safe_mode'] == true ) 
    382376                { 
    383                         Return $this->files->makeFile($path_parts['dirname'],$thumbnail); 
     377                        Return Files::makeFile($path_parts['dirname'],$thumbnail); 
    384378                } 
    385379                else 
    386380                { 
    387       $path = $this->files->makePath($path_parts['dirname'],$this->config['resized_dir']); 
     381      $path = Files::makePath($path_parts['dirname'],$this->config['resized_dir']); 
    388382      if($mkDir && !is_dir($path)) 
    389         $this->files->createFolder($path); 
    390       Return $this->files->makeFile($path,$thumbnail); 
     383        Files::createFolder($path); 
     384      Return Files::makeFile($path,$thumbnail); 
    391385                } 
    392386        } 
    393387 
     
    444438        /** 
    445439         * Process upload files. The file must be an  
    446440         * uploaded file. Any duplicate 
    447          * file will be renamed. See $this->files->copyFile for details 
     441         * file will be renamed. See Files::copyFile for details 
    448442         * on renaming. 
    449443         * @param string $relative the relative path where the file 
    450444         * should be copied to. 
     
    462456 
    463457                if(!is_uploaded_file($file['tmp_name'])) 
    464458                { 
    465                         $this->files->delFile($file['tmp_name']); 
     459                        Files::delFile($file['tmp_name']); 
    466460                        Return false; 
    467461                } 
    468462 
     
    472466 
    473467                if(!in_array($afruext, $valid_extensions)) 
    474468                { 
    475                         $this->files->delFile($file['tmp_name']); 
     469                        Files::delFile($file['tmp_name']); 
    476470                        Return 'Cannot upload $extension='.$afruext.'$ Files. Permission denied.'; 
    477471                } 
    478472 
    479473                if($file['size']>($max_size*1024)) 
    480474                { 
    481                         $this->files->delFile($file['tmp_name']); 
     475                        Files::delFile($file['tmp_name']); 
    482476                        Return 'Unble to upload file. Maximum file size [$max_size='.$max_size.'$ KB] exceeded.'; 
    483477                } 
    484478 
    485                 if(!empty($this->config['max_foldersize_mb']) &&  ($this->files->dirSize($this->getImagesDir()))+$file['size']> ($this->config['max_foldersize_mb']*1048576)) 
     479                if(!empty($this->config['max_foldersize_mb']) &&  (Files::dirSize($this->getImagesDir()))+$file['size']> ($this->config['max_foldersize_mb']*1048576)) 
    486480                { 
    487                         $this->files->delFile($file['tmp_name']); 
     481                        Files::delFile($file['tmp_name']); 
    488482                        Return ("Cannot upload. Maximum folder size reached. Delete unwanted files and try again."); 
    489483                } 
    490484 
    491485                //now copy the file 
    492                 $path = $this->files->makePath($this->getImagesDir(),$relative); 
    493                 $result = $this->files->copyFile($file['tmp_name'], $path, $file['name']); 
     486                $path = Files::makePath($this->getImagesDir(),$relative); 
     487                $result = Files::copyFile($file['tmp_name'], $path, $file['name']); 
    494488 
    495489                //no copy error 
    496490                if(!is_int($result)) 
    497491                { 
    498                         $this->files->delFile($file['tmp_name']); 
     492                        Files::delFile($file['tmp_name']); 
    499493                        Return 'File "$file='.$file['name'].'$" successfully uploaded.'; 
    500494                } 
    501495 
    502496                //delete tmp files. 
    503                 $this->files->delFile($file['tmp_name']); 
     497                Files::delFile($file['tmp_name']); 
    504498                Return false; 
    505499 
    506500        } 
     
    511505        if (empty($this->config['max_foldersize_mb'])) 
    512506            return ''; 
    513507             
    514                 $tmpFreeSize=($this->config['max_foldersize_mb']*1048576)-$this->files->dirSize($this->getImagesDir()); 
     508                $tmpFreeSize=($this->config['max_foldersize_mb']*1048576)-Files::dirSize($this->getImagesDir()); 
    515509 
    516510                if(!is_numeric($tmpFreeSize) || $tmpFreeSize<0) $tmpFreeSize=0; 
    517511         
    518                 Return 'Total Size : $max_foldersize_mb='.$this->config['max_foldersize_mb'].'$ MB, Free Space: $free_space='.$this->files->formatSize($tmpFreeSize).'$'; 
     512                Return 'Total Size : $max_foldersize_mb='.$this->config['max_foldersize_mb'].'$ MB, Free Space: $free_space='.Files::formatSize($tmpFreeSize).'$'; 
    519513        } 
    520514 
    521515 
     
    529523         */ 
    530524        function getFileURL($relative)  
    531525        { 
    532                 Return $this->files->makeFile($this->getImagesURL(),$relative); 
     526                Return Files::makeFile($this->getImagesURL(),$relative); 
    533527        } 
    534528 
    535529        /** 
     
    539533         */ 
    540534        function getFullPath($relative)  
    541535        { 
    542                 Return $this->files->makeFile($this->getImagesDir(),$relative);; 
     536                Return Files::makeFile($this->getImagesDir(),$relative);; 
    543537        } 
    544538 
    545539        /** 
     
    562556        */ 
    563557        function checkImageSize($relative) 
    564558        { 
    565                 $fullpath = $this->files->makeFile($this->getImagesDir(),$relative); 
     559                $fullpath = Files::makeFile($this->getImagesDir(),$relative); 
    566560 
    567561                $afruext = strtolower(substr(strrchr($relative, "."), 1)); 
    568562                 
     
    616610        { 
    617611                global $IMConfig; 
    618612                 
    619                 $fullpath = $this->files->makeFile($this->getImagesDir(),$relative); 
     613                $fullpath = Files::makeFile($this->getImagesDir(),$relative); 
    620614 
    621615                //not a file??? 
    622616                if(!is_file($fullpath)) 
     
    694688         */ 
    695689        function _delFile($relative)  
    696690        { 
    697                 $fullpath = $this->files->makeFile($this->getImagesDir(),$relative); 
     691                $fullpath = Files::makeFile($this->getImagesDir(),$relative); 
    698692         
    699693                $afruext = strtolower(substr(strrchr($relative, "."), 1)); 
    700694 
     
    709703                if(is_array($this->getImageInfo($fullpath))) 
    710704                { 
    711705                        $thumbnail = $this->getThumbName($fullpath); 
    712                         $this->files->delFile($thumbnail); 
     706                        Files::delFile($thumbnail); 
    713707                } 
    714708 
    715                 Return $this->files->delFile($fullpath); 
     709                Return Files::delFile($fullpath); 
    716710        } 
    717711 
    718712        /** 
     
    722716         */ 
    723717        function _delDir($relative)  
    724718        { 
    725                 $fullpath = $this->files->makePath($this->getImagesDir(),$relative); 
     719                $fullpath = Files::makePath($this->getImagesDir(),$relative); 
    726720        //      if($this->countFiles($fullpath) <= 0) 
    727                         return $this->files->delFolder($fullpath,true); //delete recursively. 
     721                        return Files::delFolder($fullpath,true); //delete recursively. 
    728722                //else 
    729723                        //Return false; 
    730724        } 
     
    743737                { 
    744738                        $newDir = rawurldecode($_GET['newDir']); 
    745739                        $dir = rawurldecode($_GET['dir']); 
    746                         $path = $this->files->makePath($this->getImagesDir(),$dir); 
    747                         $fullpath = $this->files->makePath($path, $this->files->escape($newDir)); 
     740                        $path = Files::makePath($this->getImagesDir(),$dir); 
     741                        $fullpath = Files::makePath($path, Files::escape($newDir)); 
    748742                        if(is_dir($fullpath)) 
    749743                                Return false; 
    750744 
    751                         Return $this->files->createFolder($fullpath); 
     745                        Return Files::createFolder($fullpath); 
    752746                } 
    753747        } 
    754748 
     
    761755                if(!empty($_GET['rename']) && !empty($_GET['renameTo'])) 
    762756                { 
    763757                        // new file name (without path and extension) 
    764                         $newName = $this->files->escape(rawurldecode($_GET['renameTo'])); 
     758                        $newName = Files::escape(rawurldecode($_GET['renameTo'])); 
    765759                        $newName = str_replace('.', '', $newName); 
    766760 
    767761                        // path to file (from base images directory) 
     
    770764                        // strip parent dir ("..") to avoid escaping from base directiory 
    771765                        $oldName = preg_replace('#\.\.#', '', $oldName); 
    772766 
    773                         if (is_dir($oldPath = $this->files->makeFile($this->getImagesDir(), $_GET['dir'].$oldName))) 
     767                        if (is_dir($oldPath = Files::makeFile($this->getImagesDir(), $_GET['dir'].$oldName))) 
    774768                        { 
    775                                 $newPath = $this->files->makeFile($this->getImagesDir(), $_GET['dir'].$newName); 
    776                                 return $this->files->rename($oldPath,$newPath); 
     769                                $newPath = Files::makeFile($this->getImagesDir(), $_GET['dir'].$newName); 
     770                                return Files::rename($oldPath,$newPath); 
    777771                        } 
    778772                        else  
    779773                        { 
    780774                                // path to old file 
    781                                 $oldPath = $this->files->makeFile($this->getImagesDir(), $oldName); 
     775                                $oldPath = Files::makeFile($this->getImagesDir(), $oldName); 
    782776         
    783                                 $ret = $this->files->renameFile($oldPath, $newName); 
     777                                $ret = Files::renameFile($oldPath, $newName); 
    784778                                if ($ret === true) { 
    785779                                        // delete old thumbnail 
    786                                         $this->files->delFile($this->getThumbname($oldPath)); 
     780                                        Files::delFile($this->getThumbname($oldPath)); 
    787781                                } 
    788782                        } 
    789783                        return $ret; 
     
    797791                switch ($_GET['paste']) 
    798792                { 
    799793                        case 'copyFile': 
    800                                 $src = $this->files->makeFile($this->getImagesDir(), $_GET['srcdir'].$_GET['file']); 
     794                                $src = Files::makeFile($this->getImagesDir(), $_GET['srcdir'].$_GET['file']); 
    801795                                $file = $_GET['file']; 
    802                                 $dest = $this->files->makeFile($this->getImagesDir(), $_GET['dir']); 
    803                                 return $this->files->copyFile($src,$dest,$file); 
     796                                $dest = Files::makeFile($this->getImagesDir(), $_GET['dir']); 
     797                                return Files::copyFile($src,$dest,$file); 
    804798                        break; 
    805799                        case 'copyDir': 
    806800                                $basePath = $this->getImagesDir(); 
    807801                                $src = $_GET['srcdir'].$_GET['file']; 
    808802                                $dest = $_GET['dir'].$_GET['file']; 
    809                                 return $this->files->copyDir($basePath,$src,$dest); 
     803                                return Files::copyDir($basePath,$src,$dest); 
    810804                        break; 
    811805                        case 'moveFile': 
    812                                 $src = $this->files->makeFile($this->getImagesDir(), $_GET['srcdir'].$_GET['file']); 
    813                                 $dest = $this->files->makeFile($this->getImagesDir(), $_GET['dir'].$_GET['file']); 
    814                                 return $this->files->rename($src,$dest); 
     806                                $src = Files::makeFile($this->getImagesDir(), $_GET['srcdir'].$_GET['file']); 
     807                                $dest = Files::makeFile($this->getImagesDir(), $_GET['dir'].$_GET['file']); 
     808                                return Files::rename($src,$dest); 
    815809                        break; 
    816810                        case 'moveDir': 
    817                                 $src = $this->files->makeFile($this->getImagesDir(), $_GET['srcdir'].$_GET['file']); 
    818                                 $dest = $this->files->makeFile($this->getImagesDir(), $_GET['dir'].$_GET['file']); 
    819                                 return $this->files->rename($src,$dest); 
     811                                $src = Files::makeFile($this->getImagesDir(), $_GET['srcdir'].$_GET['file']); 
     812                                $dest = Files::makeFile($this->getImagesDir(), $_GET['dir'].$_GET['file']); 
     813                                return Files::rename($src,$dest); 
    820814                        break; 
    821815                } 
    822816        }