_mediamosa_browse_asset_page_view_job_list

Versions
mediamosa-21
_mediamosa_browse_asset_page_view_job_list($asset)

Build the job list.

Parameters

array $asset

Code

sites/all/modules/mediamosa/maintenance/browse/mediamosa_maintenance_browse_asset.inc, line 486

<?php
function _mediamosa_browse_asset_page_view_job_list($asset) {

  $asset_id = $asset[mediamosa_asset_db::ID];

  $params = array(
    'user_id' => $asset[mediamosa_asset_db::OWNER_ID],
    'app_id' => $asset[mediamosa_asset_db::APP_ID],
  );

  // Get job list uri.
  $uri = strtr('asset/@asset_id/joblist', array('@asset_id' => $asset_id));

  // Do REST call.
  $result = mediamosa_response_connector::static_do_restcall($uri, 'GET', $params);

  $states = array(mediamosa_job_db::JOB_STATUS_WAITING, mediamosa_job_db::JOB_STATUS_FAILED, mediamosa_job_db::JOB_STATUS_FINISHED);

  // Get Items count.
  $item_count = $result['header']['item_count'];

  if (!$item_count) {
    return '';
  }

  $rows = array();
  foreach ($result['items'] as $item) {
    $delete = (in_array((string)$item['status'], $states)) ? l(t('Delete'), 'admin/mediamosa/asset/'. $asset_id .'/job/'. $item['id'] .'/delete') : '';
    $rows[] = array(
      $item['id'],
      $item['job_type'],
      $item['status'],
      $item['started_unix'] ? format_date($item['started_unix'], 'small') : '',
      (string)$item['progress'] * 100 .'%',
      (string)$item['owner'],
      (string)$item['error_description'],
      $delete,
    );
  }
  $header = array(
    t('ID'),
    t('Type'),
    t('Status'),
    t('Started'),
    t('Progress'),
    t('Owner'),
    t('Description'),
    t('Action'),
  );
  $output[] = '<p><h2>' . t('Jobs (@count)', array('@count' => $item_count)) . '</h2>';
  $output[] = '<div>' . t('Jobs started for this asset.') . '</div>';
  $output[] = theme('table', array('header' => $header, 'rows' => $rows)) . '</p>';

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