_mediamosa_browse_collection_page_view

Versions
mediamosa-21
_mediamosa_browse_collection_page_view($coll_id)

View the details of an collection.

Code

sites/all/modules/mediamosa/maintenance/browse/mediamosa_maintenance_browse_collection.inc, line 344

<?php
function _mediamosa_browse_collection_page_view($coll_id) {
  // If we are set as Home page, the breadcrumb isnt set, lets do it here.
  $breadcrumb = array();
  $breadcrumb[] = l(t('Home'), NULL);
  $breadcrumb[] = l(t('Administer'), 'admin');
  $breadcrumb[] = l(t('MediaMosa'), 'admin/mediamosa');
  $breadcrumb[] = l(t('Browse'), 'admin/mediamosa/browse');
  $breadcrumb[] = l(t('Collection browser'), 'admin/mediamosa/browse/collection');
  drupal_set_breadcrumb($breadcrumb);

  // Get the collection.
  $response =  mediamosa_response_connector::static_do_restcall_drupal(strtr('collection/@coll_id', array('@coll_id' => rawurlencode($coll_id))) , 'GET');

  if ($response['header']['request_result_id'] != 601) {
    return '<h1>Collection not found</h1>';
  }

  $collection = reset($response['items']);

  $variables = array(
    'description' => t('Details for this collection are shown below.'),
    'properties' => array(
      t('Title') => $collection[mediamosa_collection_db::TITLE],
      t('Description') => $collection[mediamosa_collection_db::DESCRIPTION],
      t('App ID') => $collection[mediamosa_collection_db::APP_ID],
      t('Owner ID') => $collection[mediamosa_collection_db::OWNER_ID],
      t('Group ID') => $collection[mediamosa_collection_db::GROUP_ID],
    ),
  );

  $page = isset($_GET['page']) ? $_GET['page'] : 0;

  // Get the possible assets in this collection.
  $params = array('limit' => 10, 'offset' => $page * 10);
  $response =  mediamosa_response_connector::static_do_restcall_drupal(strtr('collection/@coll_id/asset', array('@coll_id' => rawurlencode($coll_id))) , 'GET', $params);

  if (in_array($response['header']['request_result_id'], array(mediamosa_error::ERRORCODE_OKAY, mediamosa_error::ERRORCODE_EMPTY_RESULT))) {
    $variables['collection_assets']['title'] = t('Assets (@total)', array('@total' => $response['header']['item_count_total']));
    $variables['collection_assets']['coll_id'] = $coll_id;

    if ($response['header']['item_count_total'] > 0) {
      $variables['collection_assets']['description'] = t('Collection <em>@name</em> contains the following assets.', array('@name' => $collection[mediamosa_collection_db::TITLE]));

      $variables['collection_assets']['item_count_total'] = $response['header']['item_count_total'];
      $variables['collection_assets']['item_offset'] = $response['header']['item_offset'];
      $variables['collection_assets']['page'] = $page;
      $variables['collection_assets']['assets'] = array();

      foreach ($response['items'] as $asset) {
        $variables['collection_assets']['assets'][] = $asset;
      }
    }
    else {
      $variables['collection_assets']['empty'] = t('Collection <em>@name</em> does not contain any assets.', array('@name' => $collection[mediamosa_collection_db::TITLE]));
    }
  }

  $build['properties'] = theme('mediamosa_maintenance_browse_properties', $variables);

  return implode('', $build);
}
?>