Ejemplo n.º 1
0
 /**
  * {@inheritdoc}
  */
 public function settingsForm($form, FormStateInterface $form_state)
 {
     $config = $this->getConfiguration();
     $names = taxonomy_vocabulary_get_names();
     $vocabularies = Vocabulary::loadMultiple($names);
     // Should use dependency injection rather.
     $options = array();
     foreach ($vocabularies as $vocabulary) {
         $options[$vocabulary->id()] = $vocabulary->label();
     }
     $settings['vocabulary'] = array('#type' => 'select', '#title' => t('Vocabulary'), '#default_value' => $config['vocabulary'], '#options' => $options);
     return $settings;
 }
Ejemplo n.º 2
0
 /**
  * Overrides \Drupal\views\Plugin\views\Plugin\views\PluginBase::init().
  */
 public function init(ViewExecutable $view, DisplayPluginBase $display, array &$options = NULL)
 {
     parent::init($view, $display, $options);
     // @todo Remove the legacy code.
     // Convert legacy vids option to machine name vocabularies.
     if (!empty($this->options['vids'])) {
         $vocabularies = taxonomy_vocabulary_get_names();
         foreach ($this->options['vids'] as $vid) {
             if (isset($vocabularies[$vid], $vocabularies[$vid]->machine_name)) {
                 $this->options['vocabularies'][$vocabularies[$vid]->machine_name] = $vocabularies[$vid]->machine_name;
             }
         }
     }
 }
 public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property)
 {
     $X = FALSE;
     $vocabularies = taxonomy_vocabulary_get_names();
     $vid = $this->configuration['vid'];
     $tid_qry = db_select('taxonomy_term_field_data', 't')->fields('t', array('tid'))->condition('name', $value)->execute();
     $db_row = $tid_qry->fetchAssoc();
     if ($db_row !== FALSE) {
         return $db_row['tid'];
     } else {
         trigger_error("Missing term '{$value}' under vid '{$vid}'", E_USER_WARNING);
         return '';
     }
 }
 /**
  * Overrides LinkitSearchPluginEntity::fetchResults().
  */
 function fetchResults($search_string)
 {
     // The term entity doesn't use the entity keys bundle definition, its using
     // the vid instead, so lets 'translate' the bundle names to vids.
     if (isset($this->entity_key_bundle) && isset($this->conf['bundles'])) {
         $bundles = array_filter($this->conf['bundles']);
         // Get all vocabularies.
         $vocabularies = taxonomy_vocabulary_get_names();
         // Temp storage for values.
         $tmp_bundles = array();
         foreach ($bundles as $bundle) {
             $tmp_bundles[] = $vocabularies[$bundle]->{$this->entity_key_bundle};
         }
         // Assign the new values as the bundles.
         $this->conf['bundles'] = $tmp_bundles;
     }
     // Call the parent.
     return parent::fetchResults($search_string);
 }
Ejemplo n.º 5
0
function build_json($markerCluster, $options)
{
    $array_types = array();
    $typologies = null;
    if ($options['typology'] != null) {
        $array_types = explode(',', $options['typology']);
        $typologies = taxonomy_term_load_multiple($array_types);
    } else {
        // load taxonomy  'store_typology'
        $taxonomies_vocab = taxonomy_vocabulary_get_names();
        $typoTaxoVID = $taxonomies_vocab['store_typology']->vid;
        // Load store types (taxonomy vid=2)
        $type_options = array();
        $query = new EntityFieldQuery();
        $query->entityCondition('entity_type', 'taxonomy_term', '=')->propertyCondition('vid', $typoTaxoVID, '=');
        $result = $query->execute();
        if (!empty($result)) {
            $typologies = taxonomy_term_load_multiple(array_keys($result['taxonomy_term']));
        }
    }
    $json = array();
    global $base_url;
    $path_icon_cluster = $base_url . '/' . drupal_get_path('module', 'storelocator_ws') . "/images/";
    $index = 0;
    $count = 0;
    if ($options['macro'] != null && $options['macro'] == 'true') {
        foreach ($markerCluster->clusters as $cluster) {
            if (count($cluster->markers) > 1) {
                $json['results'][] = buildClusterMarkers($cluster, $index, $path_icon_cluster);
                $index++;
                $count += count($cluster->markers);
            } else {
                //print_r(count($cluster->getMarkers()));
                $json['results'][] = buildSimpleMarkers(reset($cluster->markers), $typologies);
                $count++;
            }
        }
    } else {
        foreach ($markerCluster->markers as $marker) {
            //print_r(count($cluster->getMarkers()));
            $json['results'][] = buildSimpleMarkers($marker, $typologies);
            $count++;
        }
    }
    $json['count'] = $count;
    return $json;
}
Ejemplo n.º 6
0
 /**
  * Tests for loading multiple vocabularies.
  */
 function testTaxonomyVocabularyLoadMultiple()
 {
     // Delete any existing vocabularies.
     foreach (Vocabulary::loadMultiple() as $vocabulary) {
         $vocabulary->delete();
     }
     // Create some vocabularies and assign weights.
     $vocabulary1 = $this->createVocabulary();
     $vocabulary1->set('weight', 0);
     $vocabulary1->save();
     $vocabulary2 = $this->createVocabulary();
     $vocabulary2->set('weight', 1);
     $vocabulary2->save();
     $vocabulary3 = $this->createVocabulary();
     $vocabulary3->set('weight', 2);
     $vocabulary3->save();
     // Check if third party settings exist.
     $this->assertEqual('bar', $vocabulary1->getThirdPartySetting('taxonomy_crud', 'foo'), 'Third party settings were added to the vocabulary.');
     $this->assertEqual('bar', $vocabulary2->getThirdPartySetting('taxonomy_crud', 'foo'), 'Third party settings were added to the vocabulary.');
     $this->assertEqual('bar', $vocabulary3->getThirdPartySetting('taxonomy_crud', 'foo'), 'Third party settings were added to the vocabulary.');
     // Fetch the names for all vocabularies, confirm that they are keyed by
     // machine name.
     $names = taxonomy_vocabulary_get_names();
     $this->assertEqual($names[$vocabulary1->id()], $vocabulary1->id(), 'Vocabulary 1 name found.');
     // Fetch the vocabularies with entity_load_multiple(), specifying IDs.
     // Ensure they are returned in the same order as the original array.
     $vocabularies = Vocabulary::loadMultiple(array($vocabulary3->id(), $vocabulary2->id(), $vocabulary1->id()));
     $loaded_order = array_keys($vocabularies);
     $expected_order = array($vocabulary3->id(), $vocabulary2->id(), $vocabulary1->id());
     $this->assertIdentical($loaded_order, $expected_order);
     // Test loading vocabularies by their properties.
     $controller = $this->container->get('entity.manager')->getStorage('taxonomy_vocabulary');
     // Fetch vocabulary 1 by name.
     $vocabulary = current($controller->loadByProperties(array('name' => $vocabulary1->label())));
     $this->assertEqual($vocabulary->id(), $vocabulary1->id(), 'Vocabulary loaded successfully by name.');
     // Fetch vocabulary 2 by name and ID.
     $vocabulary = current($controller->loadByProperties(array('name' => $vocabulary2->label(), 'vid' => $vocabulary2->id())));
     $this->assertEqual($vocabulary->id(), $vocabulary2->id(), 'Vocabulary loaded successfully by name and ID.');
 }
Ejemplo n.º 7
0
$form['layout-config']['default-layouts'] = array('#type' => 'details', '#attributes' => array('class' => array('layout-selection')), '#title' => 'Default Layouts', '#group' => 'layout-config', '#states' => $omegaGSon);
$form['layout-config']['default-layouts']['default_layout'] = array('#prefix' => '<div class="default-layout-select">', '#suffix' => '</div>', '#description' => '<p class="description">The Default Layout is used on any/every page rendered by the <strong>' . $theme . '</strong> theme. Additional layouts can be used for other pages/sections as defined in the additional select options below.</p>', '#type' => 'select', '#attributes' => array('class' => array('layout-select', 'clearfix')), '#title' => 'Default: Select Layout', '#options' => $availableLayouts, '#default_value' => isset($defaultLayout) ? $defaultLayout : theme_get_setting('default_layout', $theme), '#tree' => FALSE, '#states' => $omegaGSon);
$homeLayout = isset($form_state->values['home_layout']) ? $form_state->values['home_layout'] : theme_get_setting('home_layout', $theme);
$form['layout-config']['default-layouts']['home_layout'] = array('#prefix' => '<div class="home-layout-select">', '#suffix' => '</div>', '#description' => '<p class="description">The Homepage Layout is used only on the home page rendered by the <strong>' . $theme . '</strong> theme.</p>', '#type' => 'select', '#attributes' => array('class' => array('layout-select', 'clearfix')), '#title' => 'Homepage: Select Layout', '#options' => $availableLayouts, '#default_value' => isset($homeLayout) ? $homeLayout : theme_get_setting('default_layout', $theme), '#tree' => FALSE, '#states' => $omegaGSon);
// Show a select menu for each node type, allowing the selection
// of an alternate layout per node type.
$form['layout-config']['node-layouts'] = array('#type' => 'details', '#attributes' => array('class' => array('layout-selection')), '#title' => 'Node Type Layouts', '#group' => 'layout-config', '#states' => $omegaGSon);
$types = node_type_get_types();
foreach ($types as $ctype => $ctypeData) {
    $layout_name = 'node_type_' . $ctype . '_layout';
    $ctypeLayout = theme_get_setting($layout_name, $theme);
    $form['layout-config']['node-layouts'][$layout_name] = array('#prefix' => '<div class="' . $ctype . '-layout-select">', '#suffix' => '</div>', '#type' => 'select', '#attributes' => array('class' => array('layout-select', 'clearfix')), '#title' => $ctypeData->label() . ': Select Layout', '#description' => '<p class="description">The <strong>' . $ctypeData->label() . '</strong> Layout is used only on pages rendering a full node page of the type "<strong>' . $ctypeData->id() . '</strong>" using the <strong>' . $theme . '</strong> theme.</p>', '#options' => $availableLayouts, '#default_value' => isset($ctypeLayout) ? $ctypeLayout : theme_get_setting('default_layout', $theme), '#tree' => FALSE, '#states' => $omegaGSon);
}
// create layout switching options for taxonomy term pages
$form['layout-config']['taxonomy-layouts'] = array('#type' => 'details', '#attributes' => array('class' => array('layout-selection')), '#title' => 'Taxonomy Term Page Layouts', '#group' => 'layout-config', '#states' => $omegaGSon);
$vocabs = taxonomy_vocabulary_get_names();
foreach ($vocabs as $vocab_id) {
    $vocab = taxonomy_vocabulary_load($vocab_id);
    //dsm($vocab->get('name'));
    $layout_name = 'taxonomy_' . $vocab_id . '_layout';
    $ttypeLayout = theme_get_setting($layout_name, $theme);
    $form['layout-config']['taxonomy-layouts'][$layout_name] = array('#prefix' => '<div class="' . $ttype . '-layout-select">', '#suffix' => '</div>', '#type' => 'select', '#attributes' => array('class' => array('layout-select', 'clearfix')), '#title' => $vocab->get('name') . ' Vocabulary: Select Layout', '#description' => '<p class="description">The <strong>' . $vocab->get('name') . '</strong> Layout is used only on pages rendering a full taxonomy term listing page of the type "<strong>' . $vocab_id . '</strong>" using the <strong>' . $theme . '</strong> theme.</p>', '#options' => $availableLayouts, '#default_value' => isset($ttypeLayout) ? $ttypeLayout : theme_get_setting('default_layout', $theme), '#tree' => FALSE, '#states' => $omegaGSon);
}
$form['layout-config']['views-layouts'] = array('#type' => 'details', '#description' => '<div class="messages messages--warning omega-styles-info">Currently, views layout switches are not available. This is a feature yet to be developed</div>', '#attributes' => array('class' => array('layout-selection')), '#title' => 'Views Page Layouts', '#group' => 'layout-config', '#states' => $omegaGSon);
/*
$view = \Drupal::routeMatch()->getParameter('view_id');
$viewData = Views::getView($view);

$allRouteViews = Views::getApplicableViews('uses_route');
dsm($allRouteViews);
Ejemplo n.º 8
0
function ardent_taxonomy_get_term_by_name($name, $vocabulary = NULL)
{
    $conditions = array('name' => trim($name));
    if (isset($vocabulary)) {
        $vocabularies = taxonomy_vocabulary_get_names();
        if (isset($vocabularies[$vocabulary])) {
            $conditions['vid'] = $vocabularies[$vocabulary]->vid;
        } else {
            // Return an empty array when filtering by a non-existing vocabulary.
            return array();
        }
    }
    return taxonomy_term_load_multiple(array(), $conditions);
}
Ejemplo n.º 9
0
 public static function getTypes()
 {
     return taxonomy_vocabulary_get_names();
 }
Ejemplo n.º 10
0
/**
 * Process an object name to use in a constructed permission string.
 *
 * @param $object_name
 *  The machine name of an object, as
 *
 * @return
 *  The string to use in the constructed permission machine string for the
 *  given object.
 */
function callback_permission_grid_info_object_process($object_name)
{
    $vocabulary_names = taxonomy_vocabulary_get_names();
    return $vocabulary_names[$object_name]->vid;
}