Ignore:
Timestamp:
04/01/11 15:35:07 (9 years ago)
Author:
gogo
Message:

Reduce roundtrips for image thumbnails.
See:

https://github.com/sleemanj/mootools-filemanager/commit/b39b68cda2d7c9f06cdaaeb2aa6556965ae99604

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/MootoolsFileManager-Update/plugins/MootoolsFileManager/mootools-filemanager/Assets/Connector/FileManager.php

    r1303 r1304  
    555555                        'DestroyIsAuthorized_cb' => null, 
    556556                        'MoveIsAuthorized_cb' => null, 
     557                        'thumbnailsMustGoThroughBackend' => true, // If set true (default) all thumbnail requests go through the backend (onThumbnail), if false, thumbnails will "shortcircuit" if they exist, saving roundtrips when using POST type propagateData 
    557558                        'URIpropagateData' => null 
    558559                ), (is_array($options) ? $options : array())); 
     
    776777                                 * a generic icon image instead). 
    777778                                 */ 
     779                                 
     780                                unset($thumb48, $thumb250); 
     781                                if(!$this->options['thumbnailsMustGoThroughBackend']) 
     782        { 
     783          try 
     784          { 
     785            $thumb48  = $this->getThumb ($legal_url, $file, 48, 48, true); 
     786            $thumb250 = $this->getThumb ($legal_url, $file, 250, 250, true); 
     787          } 
     788          catch(Exception $E) 
     789          { 
     790            // Fallback to event request 
     791          } 
     792        } 
     793                                if(!isset($thumb48)) 
    778794                                $thumb48 = $this->mkEventHandlerURL(array( 
    779795                                                'event' => 'thumbnail', 
     
    784800                                                'filter' => $mime_filter 
    785801                                        )); 
     802                                         
     803        if(!isset($thumb250)) 
    786804                                $thumb250 = $this->mkEventHandlerURL(array( 
    787805                                                'event' => 'thumbnail', 
     
    27982816         *                             thumbnail. 
    27992817         */ 
    2800         public function getThumb($legal_url, $path, $width, $height) 
     2818        public function getThumb($legal_url, $path, $width, $height, $onlyIfExists = FALSE) 
    28012819        { 
    28022820                $thumb = $this->generateThumbName($legal_url, $width); 
     
    28042822                if (!is_file($thumbPath)) 
    28052823                { 
     2824      if($onlyIfExists) return FALSE; 
     2825       
    28062826                        if (!file_exists(dirname($thumbPath))) 
    2807                         { 
     2827                        {         
    28082828                                @mkdir(dirname($thumbPath), $this->options['chmod'], true); 
    28092829                        } 
Note: See TracChangeset for help on using the changeset viewer.