Api
Version
mediamosa-21Class
mediamosa_rest_call_asset_createCode
File: /sites/all/modules/mediamosa/modules/asset/mediamosa_asset.rest.inc
<?php
/**
* URI: /asset/create
* Method: POST
*
* Create asset.
*
* 1.x: media_management_create_asset
*/
class mediamosa_rest_call_asset_create extends mediamosa_rest_call {
// ------------------------------------------------------------------ Consts.
// Rest vars;
const USER_ID = 'user_id';
const GROUP_ID = 'group_id';
const REFERENCE_ID = 'reference_id';
const PROVIDER_ID = 'provider_id';
const PARENT_ID = 'parent_id';
// ------------------------------------------------------------------ Get Var Setup.
public function get_var_setup() {
$a_var_setup = array();
$a_var_setup = array(
self::VARS => array(
self::USER_ID => array(
self::VAR_TYPE => mediamosa_type::TYPE_USER_ID,
self::VAR_DESCRIPTION => 'The user ID.',
self::VAR_IS_REQUIRED => self::VAR_IS_REQUIRED_YES,
),
self::GROUP_ID => array(
self::VAR_TYPE => mediamosa_type::TYPE_GROUP_ID,
self::VAR_DESCRIPTION => 'The user group ID.',
),
self::REFERENCE_ID => array(
self::VAR_TYPE => mediamosa_type::TYPE_STRING,
self::VAR_DESCRIPTION => 'The reference ID.',
),
self::PROVIDER_ID => array(
self::VAR_TYPE => mediamosa_type::TYPE_ALPHA_NUM,
self::VAR_DESCRIPTION => 'The provider ID.',
),
self::PARENT_ID => array(
self::VAR_TYPE => mediamosa_type::TYPE_ALPHA_NUM,
self::VAR_DESCRIPTION => 'The parent ID. Is deprecated, do not supply, value will be ignored.',
self::VAR_IS_INTERNAL_ONLY => self::VAR_IS_INTERNAL_ONLY_YES,
),
)
);
// Include default.
return self::get_var_setup_default($a_var_setup);
}
// ------------------------------------------------------------------ Do Call.
public function do_call() {
$mediamosa = mediamosa::get();
$app_ids = $this->get_param_value_app();
$app_id = reset($app_ids);
$is_app_admin = $this->get_param_value(self::IS_APP_ADMIN);
$owner_id = $this->get_param_value(self::USER_ID);
$group_id = $this->get_param_value(self::GROUP_ID);
$reference_id = $this->get_param_value(self::REFERENCE_ID);
$provider_id = $this->get_param_value(self::PROVIDER_ID);
assert($this->get_param_value(self::PARENT_ID) == NULL); // Not allowed anymore.
$parent_id = NULL; // $this->get_param_value(self::PARENT_ID);
// Test webservice.
mediamosa_webservice_app::webservice_must_be_active(mediamosa_webservice_app::HANDLE_MEDIA_MANAGEMENT, $app_ids);
// Create the asset.
$asset_id = mediamosa_asset::create($app_id, $owner_id, $group_id, $reference_id, $provider_id, $parent_id);
$mediamosa->add_item(array('asset_id' => $asset_id));
}
}