function taxonomy_machine_name_taxonomy_term_presave in Taxonomy Machine Name 7
Same name and namespace in other branches
- 8 taxonomy_machine_name.module \taxonomy_machine_name_taxonomy_term_presave()
Implements hook_taxonomy_term_presave().
File
- ./
taxonomy_machine_name.module, line 107
Code
function taxonomy_machine_name_taxonomy_term_presave($term) {
// Set default value based on current name term.
if (empty($term->machine_name)) {
$term->machine_name = taxonomy_machine_name_clean_name($term->name);
watchdog('taxonomy', 'Add default machine name for term: %name => %machine_name', array(
'%name' => $term->name,
'%machine_name' => $term->machine_name,
), WATCHDOG_DEBUG);
}
else {
// Clean by security.
$term->machine_name = taxonomy_machine_name_clean_name($term->machine_name);
}
// If the alias already exists, generate a new,
// hopefully unique, variant.
$original_machine_name = $machine_name = $term->machine_name;
taxonomy_machine_name_uniquify($machine_name, $term);
if ($original_machine_name != $machine_name) {
$term->machine_name = $machine_name;
// Alert the user why this happened.
watchdog('taxonomy', 'Duplicate machine name for term: %original_machine_name => %machine_name', array(
'%original_machine_name' => $original_machine_name,
'%machine_name' => $term->machine_name,
), WATCHDOG_DEBUG);
}
}