diff --git a/Makefile b/Makefile
index bded0bce815150f31516ef3476054cf22f51bc75..87a0f1b72e278688f3f1df61decd99830f49d447 100644
--- a/Makefile
+++ b/Makefile
@@ -2,7 +2,7 @@ BASE=rules_shipping
 BASE_ADV=rules_shipping_advanced
 PLUGINTYPE=vmshipment
 ZIPBASE=opentools_vm
-VERSION=6.1.5
+VERSION=6.1.6
 
 PLUGINFILES=$(BASE).php $(BASE)_base.php $(BASE)_framework_joomla.php $(BASE).script.php $(BASE).xml index.html
 PLUGINFILES_ADV=$(BASE_ADV).php $(BASE)_base.php $(BASE)_framework_joomla.php $(BASE_ADV).script.php $(BASE_ADV).xml index.html
diff --git a/library/rules_shipping_framework.php b/library/rules_shipping_framework.php
index 4e8c7c408b906d491084ae1b3d7130a19431d9d8..93fd054f7c672a3928cc1e8fc3984ac2dad059d8 100644
--- a/library/rules_shipping_framework.php
+++ b/library/rules_shipping_framework.php
@@ -275,6 +275,10 @@ class RulesShippingFramework {
 		return array();
 	}
 	
+	protected function getOrderUser ($cart, $method) {
+		return array();
+	}
+	
 	protected function getOrderAddress ($cart, $method) {
 		return array();
 	}
@@ -354,6 +358,8 @@ class RulesShippingFramework {
 			$this->getOrderListProperties ($cart, $products, $method),
 			// Add country / state variables:
 			$this->getOrderAddress ($cart, $method),
+			// Add Customer information:
+			$this->getOrderUser ($cart, $method),
 			// Add Total/Min/Max weight and dimension variables:
 			$this->getOrderWeights ($cart, $products, $method),
 			$this->getOrderDimensions ($cart, $products, $method),
@@ -425,7 +431,7 @@ class RulesShippingFramework {
 			}
 		}
 		// None of the rules matched, so return NULL, but keep the evaluated results;
-		$this->match[$id] = $result;
+		$this->match[$id] = NULL;
 		return NULL;
 	}
 
@@ -453,7 +459,7 @@ class RulesShippingFramework {
 			$this->parseMethodRules($method);
 		// TODO: This needs to be redone sooner or later!
 		$match = $this->evaluateMethodRules ($cart, $method);
-		if ($match && !is_null ($match['rule'])) {
+		if ($match && isset($match['rule']) && !is_null ($match['rule'])) {
 			$this->setMethodCosts($method, $match, null);
 			// If NoShipping is set, this method should NOT offer any shipping at all, so return FALSE, otherwise TRUE
 			// If the rule has a name, print it as warning (otherwise don't print anything)
@@ -484,7 +490,7 @@ class RulesShippingFramework {
 		if (!isset($this->rules[$id])) 
 			$this->parseMethodRules($method);
 		$match = $this->evaluateMethodRules ($cart, $method);
-		if ($match) {
+		if ($match && isset($match['rule']) && !is_null ($match['rule'])) {
 			if ($this->handleNoShipping($match, $method)) {
 				return $results;
 			}
diff --git a/releases/plg_opentools_vm_rules_shipping_advanced_v6.1.6.zip b/releases/plg_opentools_vm_rules_shipping_advanced_v6.1.6.zip
new file mode 100644
index 0000000000000000000000000000000000000000..11668520503b2380d321a5bc6f53a7a408095e32
Binary files /dev/null and b/releases/plg_opentools_vm_rules_shipping_advanced_v6.1.6.zip differ
diff --git a/releases/plg_opentools_vm_rules_shipping_v6.1.6.zip b/releases/plg_opentools_vm_rules_shipping_v6.1.6.zip
new file mode 100644
index 0000000000000000000000000000000000000000..fbf96fcdadf2643a6b35cc4232edeb0aade67712
Binary files /dev/null and b/releases/plg_opentools_vm_rules_shipping_v6.1.6.zip differ
diff --git a/rules_shipping.xml b/rules_shipping.xml
index 97a8f0e352fed1c2b4eb786ca4bf4bcff9227dc5..808875637429553baecdcec577b2338e6e585985 100644
--- a/rules_shipping.xml
+++ b/rules_shipping.xml
@@ -6,7 +6,7 @@
     <authorUrl>http://www.open-tools.net</authorUrl>
     <copyright>Copyright (C) 2013-2014, Reinhold Kainhofer</copyright>
     <license>GPL v3+</license>
-    <version>6.1.5</version>
+    <version>6.1.6</version>
     <description>OTSHIPMENT_RULES_DESC</description>
     <files>
         <filename plugin="rules_shipping">rules_shipping.php</filename>
diff --git a/rules_shipping_advanced.xml b/rules_shipping_advanced.xml
index 16d6fab234e427267ebf286af6a801c6c90a71a8..b6ddf9e122ac994c2b55006d947dc0ff30fe6338 100644
--- a/rules_shipping_advanced.xml
+++ b/rules_shipping_advanced.xml
@@ -6,7 +6,7 @@
     <authorUrl>http://www.open-tools.net</authorUrl>
     <copyright>Copyright (C) 2013-2014, Reinhold Kainhofer</copyright>
     <license>GPL v3+</license>
-    <version>6.1.5</version>
+    <version>6.1.6</version>
     <description>OTSHIPMENT_RULES_ADV_DESC</description>
     <files>
         <filename plugin="rules_shipping_advanced">rules_shipping_advanced.php</filename>
diff --git a/rules_shipping_framework_joomla.php b/rules_shipping_framework_joomla.php
index ff29c9eb6e58d0d64928e53783577d7001dab69c..72232dc4250e536430a0c5b65cc7541be987aae5 100644
--- a/rules_shipping_framework_joomla.php
+++ b/rules_shipping_framework_joomla.php
@@ -211,6 +211,21 @@ class RulesShippingFrameworkJoomla extends RulesShippingFramework {
 		);
 	}
 	
+	protected function getOrderUser ($cart, $method) {
+		$user = $cart->user;
+		$uinfo = array(
+			'shoppergroups' => $user->shopper_groups,
+			'groups' => $user->JUser->groups,
+			'userid' => $user->virtuemart_user_id,
+			'username' => $user->JUser->name,
+			'isguest' => $user->JUser->guest,
+			'isvendor' => $user->user_is_vendor,
+			'customernumber' => $user->customer_number,
+		);
+
+		return $uinfo;
+	}
+	
 	protected function getOrderAddress ($cart, $method) {
 		$address = (($cart->ST == 0 || $cart->STsameAsBT == 1) ? $cart->BT : $cart->ST);
 		$zip = isset($address['zip'])?trim($address['zip']):'';