You are here

function shs_node_count_shs_term_get_children_alter in Simple hierarchical select 7

Implements hook_shs_term_get_children_alter().

File

modules/shs_node_count/shs_node_count.module, line 43
Node count functionality for Simple hierarchical select.

Code

function shs_node_count_shs_term_get_children_alter(&$terms, &$alter_options) {
  if (empty($alter_options['settings']['node_count']) || empty($alter_options['settings']['language']) || !isset($alter_options['parent'])) {

    // Nothing to do here.
    return;
  }
  $langcode = $alter_options['settings']['language']->language;
  $term = (object) array(
    'vid' => $alter_options['vid'],
    'tid' => 0,
  );
  $format = variable_get('shs_node_count_format', '%s (%d)');
  foreach ($terms as &$item) {
    array_walk($item[$langcode][$alter_options['parent']], function (&$name, $key) use ($term, $format) {
      $term->tid = $key;
      $count = shs_node_count_term_get_node_count($term, TRUE);
      $name = sprintf($format, $name, $count);
    });
  }
}