function brightcove_media_list in Brightcove Video Connect 7.2
Same name and namespace in other branches
- 7.7 brightcove_media/brightcove_media.module \brightcove_media_list()
- 7.3 brightcove_media/brightcove_media.module \brightcove_media_list()
- 7.4 brightcove_media/brightcove_media.module \brightcove_media_list()
- 7.6 brightcove_media/brightcove_media.module \brightcove_media_list()
1 string reference to 'brightcove_media_list'
- brightcove_media_menu in brightcove_media/
brightcove_media.module - Implements hook_menu().
File
- brightcove_media/
brightcove_media.module, line 389
Code
function brightcove_media_list() {
global $user;
module_load_include('browser.inc', 'media', 'includes/media');
$default_items_per_page = 20;
$params = drupal_get_query_parameters();
$limit = isset($params['limit']) ? $params['limit'] : $default_items_per_page;
$start = isset($params['start']) ? ceil($params['start'] / $limit) : 0;
$media = array();
$bc = brightcove_initialize();
$bc_find_params = array();
if (isset($params['filter'])) {
switch ($params['filter']['search']) {
case 'tags':
$method = 'find_videos_by_tags';
$bc_find_params = array(
'or_tags' => $params['filter']['keywords'],
);
break;
case 'and_tags':
$method = 'find_videos_by_tags';
$bc_find_params = array(
'and_tags' => $params['filter']['keywords'],
);
break;
case 'name':
default:
$method = 'find_videos_by_text';
$bc_find_params = array(
'text' => join(' ', explode(',', $params['filter']['keywords'])),
);
break;
}
}
else {
$method = 'find_all_videos';
}
$result = NULL;
try {
$bc_find_params['page_size'] = $limit;
$bc_find_params['page_number'] = $start;
$result = $bc
->find($method, $bc_find_params);
if (count($result)) {
foreach ($result as $video) {
$file = (object) array(
'fid' => "v{$video->id}",
'uid' => $user->uid,
'filename' => check_plain($video->name),
'uri' => "brightcove://{$video->id}",
'filemime' => 'media/brightcove',
'filesize' => 0,
'status' => 1,
'type' => 'video',
);
media_browser_build_media_item($file);
$media[] = $file;
}
}
} catch (Exception $e) {
watchdog('brightcove', 'Retrieving media list failed.', array(), WATCHDOG_ERROR);
}
drupal_json_output(array(
'media' => $media,
));
exit;
}