You are here

function imagepicker_upload_form_validate in Image Picker 7

Same name and namespace in other branches
  1. 5.2 imagepicker.module \imagepicker_upload_form_validate()
  2. 5 imagepicker.module \imagepicker_upload_form_validate()
  3. 6.2 imagepicker.upload.inc \imagepicker_upload_form_validate()

Validate form

File

./imagepicker.upload.inc, line 178

Code

function imagepicker_upload_form_validate($form, &$form_state) {
  $max_uploads = imagepicker_variable_get('imagepicker_max_uploads', 1);
  for ($ct = 1; $ct <= $max_uploads; $ct++) {
    foreach ($form_state['values'] as $name => $value) {
      if ($ct == 1 && $name == 'file_upload_' . $ct) {
        if (empty($_FILES['files']['name'][$name])) {
          form_set_error($name, t('File upload field is required.'));
        }
        elseif (!isset($_FILES['files']['tmp_name'][$name]) || !file_exists($_FILES['files']['tmp_name'][$name])) {
          form_set_error($name, t('Error while uploading file.'));
        }
        elseif (!imagepicker_get_uploaded_file_extension($name)) {
          form_set_error($name, t('Illegal file.'));
        }
      }
      else {
        if ($name == 'file_upload_' . $ct && !empty($_FILES['files']['name'][$name])) {
          if (!isset($_FILES['files']['tmp_name'][$name]) || !file_exists($_FILES['files']['tmp_name'][$name])) {
            form_set_error($name, t('Error while uploading file.'));
          }
          elseif (!imagepicker_get_uploaded_file_extension($name)) {
            form_set_error($name, t('Illegal file.'));
          }
        }
      }
      if ($name == 'thumb_' . $ct) {
        if (!preg_match('/^[0-9]{1,3}$/', $value) || $value <= 0) {
          form_set_error($name, t('Thumbnail size should be an integer between 1 and 999.'));
        }
      }
      if ($name == 'scale_' . $ct) {
        if (drupal_strlen($value) && (!is_numeric($value) || $value < 1)) {
          form_set_error($name, t("Scale value should be an integer greater than 0 or leave it empty if you don't want to scale your image."));
        }
      }
      if ($name == 'watermark_perc_' . $ct) {
        if (!is_numeric($value) || $value < 0 || $value > 100) {
          form_set_error($name, t("JPEG quality value should be an integer between 0 and 100."));
        }
      }
      if ($name == 'description_' . $ct) {
        if (drupal_strlen($value) > 254) {
          form_set_error($name, t("Description is too long, max. 254 characters."));
        }
      }
    }
  }
}