Beispiel #1
0
 /**
  * Retrieve an asset from the cache for display
  * @param $id string identifying the item to return
  * @return null|string
  */
 private static function retrieve_cache_asset($cache_id, $asset_id)
 {
     $storage = Amber::get_storage_for_item($cache_id);
     if (is_null($storage)) {
         return NULL;
     }
     $d = $storage->get_asset($cache_id, $asset_id);
     if ($d) {
         $data['data'] = $d;
         // Set the mime-type for certain files
         $last_element = $asset_id;
         $extension = substr($last_element, strrpos($last_element, '.') + 1);
         switch ($extension) {
             case "css":
                 $data['metadata']['type'] = 'text/css';
                 break;
             case "jpg":
                 $data['metadata']['type'] = 'image/jpeg';
                 break;
             case "png":
                 $data['metadata']['type'] = 'image/png';
                 break;
             case "svg":
                 $data['metadata']['type'] = 'image/svg+xml';
                 break;
             case "js":
                 $data['metadata']['type'] = 'application/javascript';
                 break;
         }
     }
     return isset($data) ? $data : NULL;
 }