'textfield', '#title' => t('Import path'), '#default_value' => variable_get('image_import_path', file_directory_temp() . '/image'), '#description' => t("The directory to import image nodes from. Drupal will need to have write access to this directory so we can move the file.") .'
' . t("Note: a path begining with a / indicates the path is relative to the server's root, one starting without specifies a path relative to Drupal's root. I.e. /tmp/image would be the temp directory off the root while tmp/image would be inside Drupal's directory."), '#required' => TRUE, ); $form['image_import_page_size'] = array( '#type' => 'textfield', '#title' => t('Number of images to list per page'), '#default_value' => variable_get('image_import_page_size', 50), // To set a value longer than 3 digits (i.e., > 999) use settings.php. '#size' => 3, '#maxlength' => 3, '#required' => TRUE, ); $form = system_settings_form($form); // Apply our validation and submit handlers to the submit button. $form['buttons']['submit']['#validate'][] = 'image_import_admin_settings_submit_validate'; $form['buttons']['submit']['#submit'][] = 'image_import_admin_settings_submit_submit'; $form['buttons']['submit']['#submit'][] = 'system_settings_form_submit'; return $form; } /** * Form validation handler for Image Import settings form. * * Checks the existence of the directory specified in $form_element. * * @see system_check_directory() */ function image_import_admin_settings_submit_validate($form, &$form_state) { $import_dir = $form_state['values']['image_import_path']; file_check_directory($import_dir, 0, 'image_import_path'); $image_dir = variable_get('image_file_path', file_directory_path() . '/image'); if (realpath($import_dir) == realpath($image_dir)) { form_set_error('image_import_path', t("You can't import from the image module's directory. The import deletes the original files so you would just be asking for trouble.")); } } /** * Form submit handler for Image Import settings form. */ function image_import_admin_settings_submit_submit($form, &$form_state) { // Ensure that 'image_import_path' variable contains no trailing slash. $form_state['values']['image_import_path'] = rtrim($form_state['values']['image_import_path'], '/'); drupal_set_message(t("Your settings are configured correctly, you can import images here.", array('!image_import_page' => url('admin/content/image_import')))); }