- Timestamp:
- Dec 21, 2011, 2:51:44 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
extensions/derivatives/include/derivative_std_params.inc.php
r12770 r12775 1 1 <?php 2 2 3 define('IMG_ TINY', 'tiny');3 define('IMG_SQUARE', 'square'); 4 4 define('IMG_THUMB', 'thumb'); 5 5 define('IMG_SMALL', 'small'); … … 12 12 final class ImageStdParams 13 13 { 14 private static $all_types = array(); 14 private static $all_types = array(IMG_SQUARE,IMG_THUMB,IMG_SMALL,IMG_MEDIUM,IMG_LARGE,IMG_XLARGE,IMG_XXLARGE); 15 private static $all_type_map = array(); 15 16 private static $type_map = array(); 17 private static $undefined_type_map = array(); 16 18 17 19 static function get_all_types() … … 20 22 } 21 23 24 static function get_all_type_map() 25 { 26 return self::$all_type_map; 27 } 28 29 static function get_defined_type_map() 30 { 31 return self::$type_map; 32 } 33 34 static function get_undefined_type_map() 35 { 36 return self::$undefined_type_map; 37 } 38 22 39 static function get_by_type($type) 23 40 { 24 return self::$ type_map[$type];41 return self::$all_type_map[$type]; 25 42 } 26 43 … … 28 45 { 29 46 self::make_default(); 47 self::build_maps(); 30 48 } 31 49 … … 33 51 { 34 52 self::make_default(); 53 self::build_maps(); 35 54 } 36 55 … … 38 57 { 39 58 //todo 40 self::$type_map[IMG_ TINY] = new ImageParams( SizingParams::square(100,100) );59 self::$type_map[IMG_SQUARE] = new ImageParams( SizingParams::square(100,100) ); 41 60 self::$type_map[IMG_THUMB] = new ImageParams( SizingParams::classic(144,144) ); 42 61 self::$type_map[IMG_SMALL] = new ImageParams( SizingParams::classic(240,240) ); 43 62 self::$type_map[IMG_MEDIUM] = new ImageParams( SizingParams::classic(432,432) ); 44 63 self::$type_map[IMG_LARGE] = new ImageParams( SizingParams::classic(864,648) ); 45 self::$ all_types = array_keys(self::$type_map);64 self::$type_map[IMG_XLARGE] = new ImageParams( SizingParams::classic(1200,900) ); 46 65 } 66 67 private static function build_maps() 68 { 69 foreach (self::$type_map as $type=>$params) 70 { 71 $params->type = $type; 72 } 73 self::$all_type_map = self::$type_map; 74 75 for ($i=0; $i<count(self::$all_types); $i++) 76 { 77 $tocheck = self::$all_types[$i]; 78 if (!isset(self::$type_map[$tocheck])) 79 { 80 for ($j=$i-1; $j>=0; $j--) 81 { 82 $target = self::$all_types[$j]; 83 if (isset(self::$type_map[$target])) 84 { 85 self::$all_type_map[$tocheck] = self::$type_map[$target]; 86 self::$undefined_type_map[$tocheck] = $target; 87 break; 88 } 89 } 90 } 91 } 92 } 93 47 94 } 48 95
Note: See TracChangeset
for help on using the changeset viewer.