You are here

function autoupload_form_alter in AutoUpload 7

Implements hook_form_alter().

File

./autoupload.module, line 38
Allows users to upload files without clicking the upload button

Code

function autoupload_form_alter(&$form, &$form_state, $form_id) {
  static $autoupload_form_alter_called;
  if (isset($autoupload_form_alter_called)) {
    return;
  }
  $autoupload_form_alter_called = TRUE;
  drupal_add_js(drupal_get_path('module', 'autoupload') . '/js/autoupload.js');

  /*
   * Add the JavaScript settings
   *   selectors: array of element selectors and settings.
   *   predefined: array of enabled predefined field types.
   *     key: name of predefined file field type
   *     value: 0/1 indicator whether predefined type is enabled
   */
  $settings_userdefined = variable_get('autoupload_userdefined');
  $settings_predefined = variable_get('autoupload_predefined');
  $selectors = array();
  $predefined_types = _autoupload_get_predefined();
  foreach ($settings_predefined as $predefined_type => $predefined_type_enabled) {
    if ($predefined_type_enabled && isset($predefined_types[$predefined_type])) {
      $selectors[$predefined_type] = $predefined_types[$predefined_type];
    }
  }
  $selectors = array_merge($settings_userdefined, $selectors);
  array_walk_recursive($selectors, 'check_plain');
  $autoupload_settings = array(
    'selectors' => $selectors,
    'predefined' => $settings_predefined,
  );
  drupal_add_js(array(
    'autoupload' => $autoupload_settings,
  ), 'setting');
}