You are here

function kaltura_settings_form_validate in Kaltura 6.2

Validation handler for kaltura_settings_form()

File

includes/kaltura.admin.inc, line 340

Code

function kaltura_settings_form_validate($form, &$form_state) {
  if (empty($form_state['values']['kaltura_partner_cms_password'])) {
    $form_state['values']['kaltura_partner_cms_password'] = variable_get('kaltura_partner_cms_password', '');
  }
  if (!valid_url($form_state['values']['kaltura_partner_url2'], TRUE)) {
    form_set_error('kaltura_partner_url2', t('Notification URL should be a valid URL, but %partner_url is not.', array(
      '%partner_url' => $form_state['values']['kaltura_partner_url2'],
    )));
  }
  try {

    // test access credentials
    $config = Kalturahelpers::getServiceConfiguration();

    // we're still in validate, so the changed values aren't
    // committed to $form_state['storage'] yet
    $config->partnerId = variable_get('kaltura_partner_id', '');
    $config->serviceUrl = variable_get('kaltura_server_url', '');
    $client = new KalturaClient($config);
    $result = $client->partner
      ->getSecrets($config->partnerId, $form_state['values']['kaltura_partner_cms_email'], $form_state['values']['kaltura_partner_cms_password']);
    drupal_set_message(t('Kaltura credentials verified against !kaltura_url.', array(
      '!kaltura_url' => $config->serviceUrl,
    )));
  } catch (Exception $ex) {
    $targs = array(
      '%message' => $ex
        ->getMessage(),
      '%file' => $ex
        ->getFile(),
      '%line' => $ex
        ->getLine(),
      '%code' => $ex
        ->getCode(),
    );
    form_set_error('', t('Kaltura credentials failed login: %message', $targs));
    watchdog('kaltura', 'Unable to verify Kaltura credentials: %message', $targs, WATCHDOG_ERROR);
  }
}