diff -crBN context_original/context.plugins.inc context_with_query_string/context.plugins.inc
*** context_original/context.plugins.inc	2011-06-10 22:41:01.000000000 -0700
--- context_with_query_string/context.plugins.inc	2011-06-10 22:37:10.000000000 -0700
***************
*** 27,32 ****
--- 27,37 ----
        'description' => t('Set this context when any of the paths above match the page path. Put each path on a separate line. You can use the "*" character as a wildcard and <code>~</code> to exclude one or more paths. Use &lt;front&gt; for the site front page.'),
        'plugin' => 'context_condition_path',
      ),
+     'query_string' => array(
+       'title' => t('Query String'),
+       'description' => t('Set this context when any of the query strings above match the page query string. Put each query string on a separate line. You can use the "*" character as a wildcard and <code>~</code> to exclude one or more query strings.'),
+       'plugin' => 'context_condition_query_string',
+     ),
      'user' => array(
        'title' => t('User role'),
        'description' => t('Set this context when the current user has one of the selected role(s).'),
***************
*** 161,166 ****
--- 166,179 ----
        'parent' => 'context_condition',
      ),
    );
+   $plugins['context_condition_query_string'] = array(
+     'handler' => array(
+       'path' => drupal_get_path('module', 'context') .'/plugins',
+       'file' => 'context_condition_query_string.inc',
+       'class' => 'context_condition_query_string',
+       'parent' => 'context_condition_path',
+     ),
+   );
    $plugins['context_condition_user'] = array(
      'handler' => array(
        'path' => drupal_get_path('module', 'context') .'/plugins',
diff -crBN context_original/plugins/context_condition_query_string.inc context_with_query_string/plugins/context_condition_query_string.inc
*** context_original/plugins/context_condition_query_string.inc	1969-12-31 16:00:00.000000000 -0800
--- context_with_query_string/plugins/context_condition_query_string.inc	2011-06-10 22:37:10.000000000 -0700
***************
*** 0 ****
--- 1,29 ----
+ <?php
+ // $Id: context_condition_query_string.inc,v 1.1.2.6 2010/07/30 14:39:06 yhahn Exp $
+ 
+ /**
+  * @file context_condition_query_string.inc
+  *
+  * Similar to context_condition_path but for entire query string.
+  */
+ 
+ /**
+  * Expose query strings as a context condition.
+  */
+ class context_condition_query_string extends context_condition_path {
+ 
+   /**
+    * Execute.
+    */
+   function execute() {
+     if ($this->condition_used()) {
+       $current_query_string = $_SERVER["QUERY_STRING"];
+       foreach ($this->get_contexts() as $context) {
+         $query_strings = $this->fetch_from_context($context, 'values');
+         if ($this->match($current_query_string, $query_strings, TRUE)) {
+           $this->condition_met($context);
+         }
+       }
+     }
+   }
+ }
