You are here

function shadowbox_global_settings_validate in Shadowbox 6.2

Same name and namespace in other branches
  1. 5.2 shadowbox.module \shadowbox_global_settings_validate()
  2. 6.4 shadowbox.admin.inc \shadowbox_global_settings_validate()
  3. 6.3 shadowbox.admin.inc \shadowbox_global_settings_validate()
  4. 7.4 shadowbox.admin.inc \shadowbox_global_settings_validate()
  5. 7.3 shadowbox.admin.inc \shadowbox_global_settings_validate()

Validate admin settings form inputs.

File

./shadowbox.module, line 459
Shadowbox, a JavaScript media viewer application for displaying content in a modal dialogue.

Code

function shadowbox_global_settings_validate($form, &$form_state) {
  $flv_formats = array_values($form_state['values']['shadowbox_supported_flv']);
  $flv_player = $form_state['values']['shadowbox_flv_player'];
  $color = $form_state['values']['shadowbox_overlay_color'];
  $opacity = $form_state['values']['shadowbox_overlay_opacity'];
  $flash_background = $form_state['values']['shadowbox_flash_background'];
  $slideshow_delay = $form_state['values']['shadowbox_slideshow_delay'];
  $resize_duration = $form_state['values']['shadowbox_resize_duration'];
  $fade_duration = $form_state['values']['shadowbox_fade_duration'];
  $viewport_padding = $form_state['values']['shadowbox_viewport_padding'];
  $initial_height = $form_state['values']['shadowbox_initial_height'];
  $initial_width = $form_state['values']['shadowbox_initial_width'];
  $counter_limit = $form_state['values']['shadowbox_counter_limit'];
  if (count(array_intersect($flv_formats, shadowbox_get_types('flv'))) != 0) {
    if (!preg_match('!^([a-z0-9_\\-\\.]+/)*[a-z0-9_\\-]+\\.swf$!i', $flv_player)) {
      form_set_error('shadowbox_flv_player', t('You must enter a valid path to an SWF Flash Player in the form <code>flvplayer.swf</code>.'));
    }
    elseif (!file_exists($flv_player)) {
      form_set_error('shadowbox_flv_player', t('The FLV player does not exist.'));
    }
  }
  if (!is_numeric($resize_duration) || $resize_duration < 0 || $resize_duration > 10) {
    form_set_error('shadowbox_resize_duration', t('You must enter a number between 0 and 10.'));
  }
  if (!is_numeric($fade_duration) || $fade_duration < 0 || $fade_duration > 10) {
    form_set_error('shadowbox_fade_duration', t('You must enter a number between 0 and 10.'));
  }
  if (!is_numeric($initial_height)) {
    form_set_error('shadowbox_initial_height', t('You must enter a number.'));
  }
  else {
    $form_state['values']['shadowbox_initial_height'] = floor($initial_height);
  }
  if (!is_numeric($initial_width)) {
    form_set_error('shadowbox_initial_width', t('You must enter a number.'));
  }
  else {
    $form_state['values']['shadowbox_initial_width'] = floor($initial_width);
  }
  if (!_validate_hex_color($color)) {
    form_set_error('shadowbox_overlay_color', t('You must enter a properly formed hex value (e.g. 000 or 000000 for black.)'));
  }
  if ($opacity == '' || floor($opacity) != 0 && $opacity != 1) {
    form_set_error('shadowbox_overlay_opacity', t('You must enter a decimal number between 0 and 1.'));
  }
  if (!_validate_hex_color($flash_background, TRUE)) {
    form_set_error('shadowbox_flash_background', t('You must enter a 6 digit hex value (e.g. 000000 for black.)'));
  }
  if (!is_numeric($viewport_padding) || $viewport_padding < 0 || $viewport_padding > 200) {
    form_set_error('shadowbox_viewport_padding', t('You must enter a number between 0 and 200.'));
  }
  else {
    $form_state['values']['shadowbox_viewport_padding'] = (int) $viewport_padding;
  }
}