Example #1
0
 public function ajax_render_images()
 {
     function catablog_shutdown()
     {
         $last_error = error_get_last();
         if ($last_error['type'] === E_ERROR) {
             echo "<strong>" . $_REQUEST['image'] . " Error:</strong> " . $last_error['message'];
         }
     }
     register_shutdown_function('catablog_shutdown');
     check_ajax_referer('catablog-render-images', 'security');
     $name = $_REQUEST['image'];
     $type = $_REQUEST['type'];
     $count = $_REQUEST['count'];
     $total = $_REQUEST['total'];
     if (isset($_REQUEST['key']) && $_REQUEST['key'] == 'id') {
         $id = (int) $name;
         $item = CataBlogItem::getItem($id);
         $image_names = array();
         $image_names[] = $item->getImage();
         foreach ($item->getSubImages() as $image) {
             $image_names[] = $image;
         }
     } else {
         $item = new CataBlogItem();
         $image_names = array();
         $image_names[] = $name;
     }
     foreach ($image_names as $image_name) {
         switch ($type) {
             case 'thumbnail':
                 $success = $item->MakeThumbnail($image_name);
                 break;
             case 'fullsize':
                 $success = $item->MakeFullsize($image_name);
                 break;
             default:
                 $success = __("unsupported image size type", 'catablog');
                 break;
         }
     }
     if ($success !== true) {
         $message = $success;
         echo "{\"success\":false, \"error\":\"{$message}\"}";
     } else {
         $message = sprintf(__('Rendering... %s of %s', 'catablog'), $total - $count, $total);
         if ($count == 0) {
             $message = __('Image rendering is now complete.', 'catablog');
         }
         echo "{\"success\":true, \"message\":\"{$message}\"}";
     }
     exit;
 }