Api
Version
mediamosa-30Class
mediamosa_rest_call_get_mediafileCode
File: /sites/all/modules/mediamosa/modules/asset/mediafile/mediamosa_asset_mediafile.rest.class.inc
<?php
/**
* URI: /mediafile/$mediafile_id
* Method: GET
*/
class mediamosa_rest_call_get_mediafile extends mediamosa_rest_call {
// ------------------------------------------------------------------ Consts.
// Rest vars;
const MEDIAFILE_ID = 'mediafile_id';
const SHOW_STILLS = 'show_stills';
// ------------------------------------------------------------------ Public Functions.
public function get_var_setup() {
$a_var_setup = array();
$a_var_setup = array(
self::VARS => array(
self::MEDIAFILE_ID => array(
self::VAR_TYPE => mediamosa_sdk::TYPE_MEDIAFILE_ID,
self::VAR_DESCRIPTION => 'The ID of the mediafile to retrieve.',
self::VAR_IS_REQUIRED => self::VAR_IS_REQUIRED_YES,
),
self::SHOW_STILLS => array(
self::VAR_TYPE => mediamosa_sdk::TYPE_BOOL,
self::VAR_DESCRIPTION => 'Include the stills in the output.',
self::VAR_DEFAULT_VALUE => 'TRUE'
)
)
);
// Enrich with required REST vars.
return self::get_var_setup_default($a_var_setup);
}
public function do_call() {
$mediamosa = mediamosa::get();
$app_ids = $this->get_param_value_app();
// Get the 1st app.
$app_id = reset($app_ids);
$mediafile_id = $this->get_param_value(self::MEDIAFILE_ID);
$show_stills = $this->get_param_value(self::SHOW_STILLS);
// Must exists.
mediamosa_asset_mediafile::must_exists($mediafile_id);
// Must have access.
mediamosa_acl::read_single_object(mediamosa_acl::ACL_TYPE_MEDIAFILE, $mediafile_id, $app_ids);
// Now enrich response with mediafile data.
$items = mediamosa_asset_mediafile::enrich_response_mediafile(array($mediafile_id), $app_ids, FALSE, $show_stills);
// Add to response.
foreach ($items as $item) {
$mediamosa->add_item($item);
}
// Done.
}
}