You are here

function biblio_ui_import_biblio in Bibliography Module 7.3

Import biblios.

1 string reference to 'biblio_ui_import_biblio'
biblio_ui_menu in modules/biblio_ui/biblio_ui.module
Implements hook_menu().

File

modules/biblio_ui/biblio_ui.pages.inc, line 11

Code

function biblio_ui_import_biblio($form, &$form_state) {
  $form['data'] = array(
    '#type' => 'textarea',
    '#title' => t('Import text'),
    '#required' => TRUE,
  );
  $options = array(
    '' => '-' . t('Select') . '-',
  );
  foreach (biblio_get_biblio_styles() as $plugin_name => $plugin) {
    if (empty($plugin['import'])) {
      continue;
    }
    $class_name = ctools_plugin_load_class('biblio', 'biblio_style', $plugin_name, 'class');
    if (!class_exists($class_name)) {
      continue;
    }
    $options[$plugin_name] = $plugin['title'];
  }
  $form['plugin_name'] = array(
    '#title' => t('Biblio style'),
    '#description' => t('Select the format of the imported text'),
    '#type' => 'select',
    '#options' => $options,
    '#ajax' => array(
      'callback' => 'biblio_ui_import_settings_ajax_callback',
      'wrapper' => 'biblio-ui-style-settings',
    ),
    '#required' => TRUE,
  );
  $form['style_settings'] = array(
    '#prefix' => '<div id="biblio-ui-style-settings">',
    '#suffix' => '</div>',
    '#parents' => array(
      'style_settings',
    ),
    '#type' => 'container',
    '#tree' => TRUE,
    '#attached' => array(
      // We use Entity-reference classes to indent the handler settings.
      'css' => array(
        drupal_get_path('module', 'entityreference') . '/entityreference.admin.css',
      ),
    ),
    '#attributes' => array(
      'class' => array(
        'entityreference-settings',
      ),
    ),
  );
  if (!empty($form_state['values']['plugin_name'])) {
    $form['style_settings'] += _biblio_ui_add_import_settings($form_state['values']['plugin_name']);
  }
  $form['actions'] = array(
    '#type' => 'actions',
  );
  $form['actions']['submit'] = array(
    '#type' => 'submit',
    '#value' => t('Import'),
  );
  return $form;
}