You are here

function kaltura_uploader in Kaltura 7.2

Same name and namespace in other branches
  1. 7.3 kaltura.module \kaltura_uploader()

Kaltura uploader.

Ctools ajax callback function for the KCW.

Parameters

mixed $js: ctools var to see if js is enabled or not

mixed $jvars: JSON encoded parameters

Return value

string

1 string reference to 'kaltura_uploader'
kaltura_menu in ./kaltura.module
Implements hook_menu().

File

./kaltura.module, line 280
Kaltura integration module - core functions.

Code

function kaltura_uploader($js, $jvars) {
  if (!$js) {
    return t('We need javascript make this work please check that you have javascript enabled');
  }
  ctools_include('modal');
  ctools_include('ajax');
  if (!variable_get('kaltura_partner_id')) {
    $error_message = t('You must configure partner\'s details first.') . ' ' . l(t('Click here'), 'admin/config/media/kaltura');
    ctools_modal_render(t('Error'), $error_message);
    exit;
  }
  try {
    $k_helpers = new KalturaHelpers();
    $kaltura_client = $k_helpers
      ->getKalturaClient();
  } catch (Exception $e) {
    watchdog_exception('kaltura', $e);
    drupal_set_message(t('Failed to start Kaltura session. Please check your settings.'), 'error');
    return NULL;
  }
  $vars = drupal_json_decode($jvars);
  drupal_add_js(drupal_get_path('module', 'kaltura') . '/js/swfobject.js');
  drupal_add_js(array(
    'entries-modal-style' => array(
      'modalSize' => array(
        'type' => 'scale',
        'width' => 0.8,
        'height' => 0.8,
      ),
    ),
  ), 'setting');

  // Should be configurable.
  $theme_params['width'] = 680;
  $theme_params['height'] = 360;
  $theme_params['swfurl'] = $k_helpers
    ->getContributionWizardUrl($vars['ui_conf']);
  $flash_vars = $k_helpers
    ->getContributionWizardFlashVars($kaltura_client
    ->getKs(), $vars['kshow_id'], $vars['partner_data'], $vars['type'], FALSE, FALSE, $vars['ui_conf']);
  $theme_params['flashVarsStr'] = $k_helpers
    ->flashVarsToString($flash_vars);
  $theme_vars = array(
    'theme_params' => $theme_params,
    'field_id' => $vars['field_id'],
    'no_collect_entries' => $vars['no_collect_entries'],
    'kshow_id' => $vars['kshow_id'],
    'filter' => $vars['wtype'],
  );
  $output = theme('kaltura_contribution_wizard_field', $theme_vars);
  $b_text = rawurldecode($vars['button_text']);
  ctools_modal_render(t($b_text), $output);
}