diff --git a/flag_terms.inc b/flag_terms.inc
index f258ade..cb3ff78 100644
--- a/flag_terms.inc
+++ b/flag_terms.inc
@@ -4,19 +4,21 @@
  * flag_terms.inc
  * Written by Graham Taylor.
  */
- 
+
 /**
  * Implements a term flag.
  */
 class flag_term extends flag_flag {
-  function options() {
-    $options = parent::options();
+  function default_options() {
+    $options = parent::default_options();
     $options += array(
       'show_on_term_page' => TRUE,
+      'vocabs' => '1',
     );
+    
     return $options;
   }
-
+  
   function options_form(&$form) {
     parent::options_form($form);
 
@@ -24,14 +26,14 @@ class flag_term extends flag_flag {
     foreach (taxonomy_get_vocabularies() as $vocab) {
       $options[$vocab->vid] = check_plain($vocab->name);
     }
-    $form['access']['types'] = array(
+    $form['access']['vocabs'] = array(
       '#type' => 'checkboxes',
       '#title' => t('The vocabularies whose terms will be flaggable'),
       '#options' => $options,
-      '#default_value' => $this->types,
+      '#default_value' => $this->vocabs,
       '#required' => TRUE,
       '#weight' => 10,
-      '#access' => empty($flag->locked['types']),
+      '#access' => empty($flag->locked['vocabs']),
     );
     $form['display']['show_on_term_page'] = array(
       '#type' => 'checkbox',
@@ -39,6 +41,7 @@ class flag_term extends flag_flag {
       '#default_value' => $this->show_on_term_page,
       '#access' => empty($this->locked['show_on_term_page']),
     );
+        
   }
 
   function _load_content($content_id) {
@@ -46,8 +49,15 @@ class flag_term extends flag_flag {
   }
 
   function applies_to_content_object($term) {
-    if ($term && in_array($term->vid, $this->types)) {
-      return TRUE;
+    if (is_string($this->vocabs)) {
+      if ($term && $term == $this->vocabs) {
+        return TRUE;
+      }
+    }
+    else {
+      if ($term && in_array($term->vid, $this->vocabs)) {
+        return TRUE;
+      }
     }
     return FALSE;
   }
diff --git a/flag_terms.module b/flag_terms.module
index b302779..0a9c4c9 100644
--- a/flag_terms.module
+++ b/flag_terms.module
@@ -1,4 +1,5 @@
 <?php
+// $Id: flag_terms.module,v 1.2 2009/11/19 13:09:02 tayzlor Exp $
 /**
  * @file
  * Flag Terms.
@@ -57,4 +58,16 @@ function theme_flag_terms_flags($tid, $variables) {
   $variables['content'] = join('', $links) . $variables['content']; 	
   
   return $variables;
+}
+
+/**
+ * Implementation of hook_init()
+ */
+function flag_terms_init(){
+  //If we're on the taxonomy/term page, include flag's js and css
+  if (arg(0) == 'taxonomy' && arg(1) == 'term'){
+    $path = drupal_get_path('module', 'flag');
+    drupal_add_css($path . '/theme/flag.css');
+    drupal_add_js($path . '/theme/flag.js');
+  }
 }
\ No newline at end of file
