diff --git a/README.txt b/README.txt
index 7bdf186..79c28b1 100644
--- a/README.txt
+++ b/README.txt
@@ -1,3 +1,4 @@
+$Id: README.txt,v 1.2.2.2 2010/10/25 20:27:58 brynbellomy Exp $
 
 Many thanks to Dave Kopecek (http://drupal.org/user/33578) for writing the first version of this README.
 
@@ -15,6 +16,7 @@ Say you have a CCK content type called 'department' and have told Drupal to rend
 
 mysite_helper.info file:
 
+; $Id: README.txt,v 1.2.2.2 2010/10/25 20:27:58 brynbellomy Exp $
 name = Mysite Helper
 description = Provides helper functions for My Site
 dependencies[] = views
@@ -27,6 +29,7 @@ mysite_helper.module file:
 
 
 <?php
+// $Id: README.txt,v 1.2.2.2 2010/10/25 20:27:58 brynbellomy Exp $
 
 /**
 * Set the context argument for context module using views_arg_context module
diff --git a/plugins/views_plugin_argument_default_context.inc b/plugins/views_plugin_argument_default_context.inc
index 287d695..1bc183c 100644
--- a/plugins/views_plugin_argument_default_context.inc
+++ b/plugins/views_plugin_argument_default_context.inc
@@ -1,4 +1,5 @@
 <?php
+// $Id: views_plugin_argument_default_context.inc,v 1.1.2.1 2010/10/25 20:27:58 brynbellomy Exp $
 /**
  * @file
  * Contains the active context argument default plugin.
@@ -9,29 +10,25 @@
  */
 class views_plugin_argument_default_context extends views_plugin_argument_default {
   var $option_name = 'views_arg_context';
+  
+  function option_definition() {
+    $options = parent::option_definition();
+    $options['namespace'] = array('default' => '');
+    $options['attribute'] = array('default' => '');
 
-  function argument_form(&$form, &$form_state) {
+    return $options;
+  }
+
+  function options_form(&$form, &$form_state) {
     $form['namespace'] = array(
       '#type' => 'textfield',
       '#title' => t('Namespace'),
-      '#default_value' => $this->argument->options['namespace'],
-      '#process' => array('views_process_dependency'),
-      '#dependency' => array(
-        'radio:options[default_action]' => array('default'),
-        'radio:options[default_argument_type]' => array($this->id)
-      ),
-      '#dependency_count' => 2,
+      '#default_value' => $this->options['namespace'],
     );
     $form['attribute'] = array(
       '#type' => 'textfield',
       '#title' => t('Attribute'),
-      '#default_value' => $this->argument->options['attribute'],
-      '#process' => array('views_process_dependency'),
-      '#dependency' => array(
-        'radio:options[default_action]' => array('default'),
-        'radio:options[default_argument_type]' => array($this->id)
-      ),
-      '#dependency_count' => 2,
+      '#default_value' => $this->options['attribute'],
     );
     $this->check_access($form);
   }
@@ -47,6 +44,6 @@ class views_plugin_argument_default_context extends views_plugin_argument_defaul
   }
 
   function get_argument() {
-    return context_get($this->argument->options['namespace'], $this->argument->options['attribute']);
+    return context_get($this->options['namespace'], $this->options['attribute']);
   }
 }
\ No newline at end of file
diff --git a/views_arg_context.info b/views_arg_context.info
index e072eb2..c353a42 100644
--- a/views_arg_context.info
+++ b/views_arg_context.info
@@ -1,12 +1,12 @@
+; $Id: views_arg_context.info,v 1.1.2.1 2010/02/18 15:33:21 brynbellomy Exp $
 name = Views Default Argument from Context
 description = Allows the default value for a Views argument to be specified through Context module data set using context_set.
-core = 6.x
-project = "Views"
+core = 7.x
+files[] = views_arg_context.module
+files[] = plugins/views_plugin_argument_default_context.inc
+
+package = Views
 dependencies[] = views
 dependencies[] = context
-; Information added by drupal.org packaging script on 2011-02-25
-version = "6.x-1.x-dev"
-core = "6.x"
-project = "views_arg_context"
-datestamp = "1298620640"
+
 
diff --git a/views_arg_context.module b/views_arg_context.module
index f9329af..6a2555e 100644
--- a/views_arg_context.module
+++ b/views_arg_context.module
@@ -1,41 +1,42 @@
 <?php
+// $Id: views_arg_context.module,v 1.1.2.3 2010/10/25 20:27:58 brynbellomy Exp $
 
 /**
- * Implementation of hook_views_api().
+ * Implements of hook_views_api().
  */
 function views_arg_context_views_api() {
   return array(
-    'api' => 2,
-    'path' => drupal_get_path('module', 'views_arg_context'),
+    'api' => 2.0,
   );
 }
 
 /**
- * Implementation of hook_views_plugins
+ * Implements of hook_views_plugins
  */
 function views_arg_context_views_plugins() {
+  $path = drupal_get_path('module', 'views_arg_context') . '/includes';
   return array(
-    'module' => 'views_arg_context',
+    'module' => 'views_arg_context', // This just tells our themes are elsewhere.
     'argument default' => array(
       'context' => array(
         'title' => t('Active context'),
         'handler' => 'views_plugin_argument_default_context',
-        'path' => drupal_get_path('module', 'views_arg_context') . '/plugins',
-        'parent' => 'fixed', // so that the parent class is included
+        'path' => $path,
+        'parent' => 'fixed',
       ),
     ),
   );
 }
 
 /**
- * Implementation of hook_nodeapi
+ * Implements of hook_node_view
  *
  * (courtesy of sethcohn)
  * Provides some out-of-the-box data to Views, and can be used as a template for 
  * exposing other data to Views via Context
  */
-function views_arg_context_nodeapi(&$node, $op, $teaser = NULL, $page = NULL) {
-  if ($op == 'view' && $page){
+function views_arg_context_node_view($node, $view_mode, $langcode) {
+  if ($view_mode == 'full') {
     context_set('node', 'type', $node->type);
     context_set('node', 'nid', $node->nid);
 
@@ -49,11 +50,11 @@ function views_arg_context_nodeapi(&$node, $op, $teaser = NULL, $page = NULL) {
     context_set('node', 'name', $node->name);
     context_set('node', 'title', $node->title);
     
+
     // taxonomy related items
-    $tids = array_keys($node->taxonomy);
+    $tids = array_keys(views_arg_content_node_get_terms($node));
     context_set('taxonomy', 'tids-or', join('+', $tids));
-    context_set('taxonomy', 'tids-and', join(',', $tids));
-  }
+    context_set('taxonomy', 'tids-and', join(',', $tids));  }
 }
 
 /**
@@ -66,4 +67,31 @@ function views_arg_context_user($op, &$edit, &$account, $category = NULL) {
     context_set('user', 'email', $account->mail);
     context_set('user', 'language', $account->language);
   }
+}
+
+/**
+ * Implements hook_user_view
+ */
+function views_arg_context_user_view($account, $view_mode, $langcode) {
+  if ($view_mode == 'full') {
+    context_set('user', 'uid', $account->uid);
+    context_set('user', 'name', $account->name);
+  }
+}
+
+function views_arg_content_node_get_terms($node, $key = 'tid') {
+static $terms;
+  if (!isset($terms[$node->vid][$key])) {
+    $query = db_select('taxonomy_index', 'r');
+    $t_alias = $query->join('taxonomy_term_data', 't', 'r.tid = t.tid');
+    $v_alias = $query->join('taxonomy_vocabulary', 'v', 't.vid = v.vid');
+    $query->fields( $t_alias );
+    $query->condition("r.nid", $node->nid);
+    $result = $query->execute();
+    $terms[$node->vid][$key] = array();
+    foreach ($result as $term) {
+      $terms[$node->vid][$key][$term->$key] = $term;
+      }
+  }
+return $terms[$node->vid][$key];
 }
\ No newline at end of file
