r2745 - stuffInRackspace(): sayonara, this data is in rack structure already
[racktables] / render_image.php
index 38ac387eac691a8dbd2177bf36a6bf7762100478..5f67d47af5c73356092d961b4a78fbfc90c62223 100644 (file)
@@ -62,28 +62,31 @@ function renderRackThumb ($rack_id = 0)
 {
        // Don't call DB extra times, hence we are most probably not the
        // only script wishing to acces the same data now.
-       header("Content-type: image/png");
-       $thumbcache = loadThumbCache ($rack_id);
-       if ($thumbcache !== NULL)
+       if (NULL !== ($thumbcache = loadThumbCache ($rack_id)))
+       {
+               header("Content-type: image/png");
                echo $thumbcache;
-       else
+               return;
+       }
+       ob_start();
+       if (FALSE !== generateMiniRack ($rack_id))
        {
-               ob_start();
-               generateMiniRack ($rack_id);
-               $capture = ob_get_contents();
-               ob_end_flush();
+               $capture = ob_get_clean();
+               header("Content-type: image/png");
+               echo $capture;
                saveThumbCache ($rack_id, $capture);
+               return;
        }
+       // error text in the buffer
+       ob_end_flush();
 }
 
-// Output a binary string containing the PNG minirack.
-function generateMiniRack ($rack_id = 0)
+// Output a binary string containing the PNG minirack. Indicate error with return code.
+function generateMiniRack ($rack_id)
 {
-       if (($rackData = getRackData ($rack_id, TRUE)) == NULL)
-       {
-               renderError();
-               return;
-       }
+       if (NULL === ($rackData = spotEntity ('rack', $rack_id)))
+               return FALSE;
+       amplifyCell ($rackData);
        markupObjectProblems ($rackData);
        global $rtwidth;
        $rtdepth = 9;
@@ -123,6 +126,7 @@ function generateMiniRack ($rack_id = 0)
        }
        imagepng ($img);
        imagedestroy ($img);
+       return TRUE;
 }
 
 function renderProgressBarImage ($done)