2015-04-19 16:46:59 +02:00

49 lines
1.1 KiB
Plaintext

<?php
function cobalttaxonomy_init() {
if (user_access('use cobalt')) {
drupal_add_js(drupal_get_path('module', 'cobalt') . '/js/cobalt.taxonomy.js');
}
}
function cobalttaxonomy_menu() {
$items = array();
$items['cobalt/data/taxonomy_json'] = array(
'title' => 'Serialized taxonomies',
'page callback' => 'cobalttaxonomy_json',
'page arguments' => array('update', 3),
'access arguments' => array('use cobalt'),
'type' => MENU_CALLBACK,
);
return $items;
}
function cobalttaxonomy_json($op, $value) {
global $user;
$vocabularies = taxonomy_get_vocabularies();
$voc_data = array();
foreach ($vocabularies as $vocabulary) {
$voc_data[$vocabulary->vid] = $vocabulary->name;
}
$term_tree = array();
foreach ($vocabularies as $vocabulary) {
$term_tree += taxonomy_get_tree($vocabulary->vid);
}
$term_data = array();
foreach ($term_tree as $term) {
$term_data[$term->tid] = array($term->name, $term->vid);
}
$data = array('vocabularies' => $voc_data, 'terms' => $term_data, 'access' => user_access('administer taxonomy'));
print drupal_json_output($data);
exit;
}