danielebarchiesi@0: t("Taxonomy vocabulary"), danielebarchiesi@0: 'description' => t('A single taxonomy vocabulary object.'), danielebarchiesi@0: 'context' => 'ctools_context_create_vocabulary', danielebarchiesi@0: 'edit form' => 'ctools_context_vocabulary_settings_form', danielebarchiesi@0: 'defaults' => array('vid' => ''), danielebarchiesi@0: 'keyword' => 'vocabulary', danielebarchiesi@0: 'context name' => 'vocabulary', danielebarchiesi@0: // This context is deprecated and should not be usable in the UI. danielebarchiesi@0: 'no ui' => TRUE, danielebarchiesi@0: 'no required context ui' => TRUE, danielebarchiesi@0: 'superceded by' => 'entity:taxonomy_vocabulary', danielebarchiesi@0: ); danielebarchiesi@0: danielebarchiesi@0: /** danielebarchiesi@0: * It's important to remember that $conf is optional here, because contexts danielebarchiesi@0: * are not always created from the UI. danielebarchiesi@0: */ danielebarchiesi@0: function ctools_context_create_vocabulary($empty, $data = NULL, $conf = FALSE) { danielebarchiesi@0: $context = new ctools_context('vocabulary'); danielebarchiesi@0: $context->plugin = 'vocabulary'; danielebarchiesi@0: danielebarchiesi@0: if ($empty) { danielebarchiesi@0: return $context; danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: if ($conf && isset($data['vid'])) { danielebarchiesi@0: $data = taxonomy_vocabulary_load($data['vid']); danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: if (!empty($data)) { danielebarchiesi@0: $context->data = $data; danielebarchiesi@0: $context->title = $data->name; danielebarchiesi@0: $context->argument = $data->vid; danielebarchiesi@0: return $context; danielebarchiesi@0: } danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: function ctools_context_vocabulary_settings_form($form, &$form_state) { danielebarchiesi@0: $conf = $form_state['conf']; danielebarchiesi@0: danielebarchiesi@0: $options = array(); danielebarchiesi@0: foreach (taxonomy_get_vocabularies() as $vid => $vocabulary) { danielebarchiesi@0: $options[$vid] = $vocabulary->name; danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: $form['vid'] = array( danielebarchiesi@0: '#title' => t('Vocabulary'), danielebarchiesi@0: '#type' => 'select', danielebarchiesi@0: '#options' => $options, danielebarchiesi@0: '#default_value' => $conf['vid'], danielebarchiesi@0: '#description' => t('Select the vocabulary for this form.'), danielebarchiesi@0: ); danielebarchiesi@0: danielebarchiesi@0: return $form; danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: function ctools_context_vocabulary_settings_form_submit($form, &$form_state) { danielebarchiesi@0: $form_state['conf']['vid'] = $form_state['values']['vid']; danielebarchiesi@0: }