'select', '#title' => t('Node type'), '#options' => jquery_gallery_view_types(), '#default_value' => variable_get('jquery_gallery_view_node_type', array()), '#description' => t('Select node type to import images. For CCK, if node type contains more than one filefield, make sure that the imagefield is the first one.'), ); $form['submit'] = array( '#type' => 'submit', '#value' => t('Save'), ); return $form; } /** * Return the existing content types. * * @return * Content types. */ function jquery_gallery_view_types() { $node_types = node_get_types(); $node_codes = array(); foreach ($node_types as $item) { $node_codes[$item->type] = $item->name; } return $node_codes; } /** * Implementation of hook_validate(). */ function jquery_gallery_view_form_validate($form, $form_state) { if (!isset($form_state['values']['node_type'])) { form_set_error('node_type', t('Please choose a content type')); } else { $type = $form_state['values']['node_type']; $types = node_get_types(); if (!isset($types[$type])) { form_set_error('node_type', t('Invalid content type')); } } }