diff --git a/modules/taxonomy.module b/modules/taxonomy.module index 5e2f343a58f..e6d1b9a791c 100644 --- a/modules/taxonomy.module +++ b/modules/taxonomy.module @@ -603,6 +603,14 @@ function taxonomy_get_term($tid) { function _taxonomy_term_select($title, $name, $value, $vocabulary_id, $description, $multiple, $blank, $exclude = array()) { $tree = taxonomy_get_tree($vocabulary_id); + // We store the last selected ID in a session variable: + if (!$value) { + $value = $_SESSION['vocabulary']["$vocabulary_id"]; + } + else { + $_SESSION['vocabulary']["$vocabulary_id"] = $value; + } + if ($blank) { $options[] = array("tid" => 0, "name" => $blank); } diff --git a/modules/taxonomy/taxonomy.module b/modules/taxonomy/taxonomy.module index 5e2f343a58f..e6d1b9a791c 100644 --- a/modules/taxonomy/taxonomy.module +++ b/modules/taxonomy/taxonomy.module @@ -603,6 +603,14 @@ function taxonomy_get_term($tid) { function _taxonomy_term_select($title, $name, $value, $vocabulary_id, $description, $multiple, $blank, $exclude = array()) { $tree = taxonomy_get_tree($vocabulary_id); + // We store the last selected ID in a session variable: + if (!$value) { + $value = $_SESSION['vocabulary']["$vocabulary_id"]; + } + else { + $_SESSION['vocabulary']["$vocabulary_id"] = $value; + } + if ($blank) { $options[] = array("tid" => 0, "name" => $blank); }