function getImageCache($rex_img_file, $rex_img_type)
 {
     global $REX;
     $imagepath = $REX['HTDOCS_PATH'] . 'files/' . $rex_img_file;
     $cachepath = $REX['INCLUDE_PATH'] . '/generated/files/';
     $image = new rex_image($imagepath);
     $image_cacher = new rex_image_cacher($cachepath);
     // create image with given image_type if needed
     if (!$image_cacher->isCached($image, $rex_img_type)) {
         $image_manager = new rex_image_manager($image_cacher);
         $image_manager->applyEffects($image, $rex_img_type);
         $image->save($image_cacher->getCacheFile($image, $rex_img_type));
     }
     return $image_cacher->getCachedImage($rex_img_file, $rex_img_type);
 }
Esempio n. 2
0
 function image_manager_init()
 {
     global $REX;
     //--- handle image request
     $rex_img_file = rex_get('rex_img_file', 'string');
     $rex_img_type = rex_get('rex_img_type', 'string');
     $rex_img_init = false;
     if ($rex_img_file != '' && $rex_img_type != '') {
         $rex_img_init = true;
     }
     $imagepath = $REX['HTDOCS_PATH'] . $REX['MEDIA_DIR'] . '/' . $rex_img_file;
     $cachepath = $REX['GENERATED_PATH'] . '/files/';
     // REGISTER EXTENSION POINT
     $subject = array('rex_img_type' => $rex_img_type, 'rex_img_file' => $rex_img_file, 'rex_img_init' => $rex_img_init, 'imagepath' => $imagepath, 'cachepath' => $cachepath);
     $subject = rex_register_extension_point('IMAGE_MANAGER_INIT', $subject);
     if (isset($subject['rex_img_file'])) {
         $rex_img_file = $subject['rex_img_file'];
     }
     if (isset($subject['rex_img_type'])) {
         $rex_img_type = $subject['rex_img_type'];
     }
     if (isset($subject['imagepath'])) {
         $imagepath = $subject['imagepath'];
     }
     if (isset($subject['cachepath'])) {
         $cachepath = $subject['cachepath'];
     }
     if ($subject['rex_img_init']) {
         $image = new rex_image($imagepath);
         $image_cacher = new rex_image_cacher($cachepath);
         $image_manager = new rex_image_manager($image_cacher);
         $image = $image_manager->applyEffects($image, $rex_img_type);
         $image_manager->sendImage($image, $rex_img_type);
         exit;
     }
 }
Esempio n. 3
0
// --- /DYN
$REX['ADDON']['image_manager']['classpaths']['effects'] = array();
$REX['ADDON']['image_manager']['classpaths']['effects'][] = dirname(__FILE__) . '/classes/effects/';
require_once dirname(__FILE__) . '/classes/class.rex_image.inc.php';
require_once dirname(__FILE__) . '/classes/class.rex_image_cacher.inc.php';
require_once dirname(__FILE__) . '/classes/class.rex_image_manager.inc.php';
require_once dirname(__FILE__) . '/classes/class.rex_effect_abstract.inc.php';
//--- handle image request
$rex_img_file = rex_get('rex_img_file', 'string');
$rex_img_type = rex_get('rex_img_type', 'string');
if ($rex_img_file != '' && $rex_img_type != '') {
    $imagepath = $REX['HTDOCS_PATH'] . 'files/' . $rex_img_file;
    $cachepath = $REX['INCLUDE_PATH'] . '/generated/files/';
    $image = new rex_image($imagepath);
    $image_cacher = new rex_image_cacher($cachepath);
    $image_manager = new rex_image_manager($image_cacher);
    $image = $image_manager->applyEffects($image, $rex_img_type);
    $image_manager->sendImage($image, $rex_img_type);
    exit;
}
if ($REX['REDAXO']) {
    // delete thumbnails on mediapool changes
    if (!function_exists('rex_image_manager_ep_mediaupdated')) {
        rex_register_extension('MEDIA_UPDATED', 'rex_image_manager_ep_mediaupdated');
        function rex_image_manager_ep_mediaupdated($params)
        {
            rex_image_cacher::deleteCache($params["filename"]);
        }
    }
    // handle backend pages
    $I18N->appendFile($REX['INCLUDE_PATH'] . '/addons/' . $mypage . '/lang/');