diff --git a/.gitignore b/.gitignore
index 3ec0a7b42c4d69066870c9dfc2a353e57bbef426..1d35b627128bcacaa1e07b1e03212cd4df46b545 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
 sync.sh
 Material
 .build
+wordpress-plugin-svn/
diff --git a/Makefile b/Makefile
index ea839e0a72f2a71d23282194358ec61f60df46cf..f3ca866ab7f2d7e45090558d54803c3412b78db4 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
 BASE=shipping-by-rules
 PLATTFORM=woocommerce
 VENDOR=opentools
-VERSION=1.0
+VERSION=1.1
 DIR = $(shell pwd)
 SVNDIR=wordpress-plugin-svn
 
diff --git a/Screenshots/OpenTools_AdvancedShippingByRules_WooCommerce_Logo_100x100.png b/Screenshots/OpenTools_AdvancedShippingByRules_WooCommerce_Logo_100x100.png
new file mode 100644
index 0000000000000000000000000000000000000000..5f2c50e3a161fba5a2d10ebe925744f93136680a
Binary files /dev/null and b/Screenshots/OpenTools_AdvancedShippingByRules_WooCommerce_Logo_100x100.png differ
diff --git a/Screenshots/OpenTools_AdvancedShippingByRules_WooCommerce_Logo_200x200.png b/Screenshots/OpenTools_AdvancedShippingByRules_WooCommerce_Logo_200x200.png
new file mode 100644
index 0000000000000000000000000000000000000000..fb5164144a54b0fc211802591117319bd2cb9deb
Binary files /dev/null and b/Screenshots/OpenTools_AdvancedShippingByRules_WooCommerce_Logo_200x200.png differ
diff --git a/Screenshots/OpenTools_AdvancedShippingByRules_WooCommerce_Logo_400x400.png b/Screenshots/OpenTools_AdvancedShippingByRules_WooCommerce_Logo_400x400.png
new file mode 100644
index 0000000000000000000000000000000000000000..1de89884b49ea899a8bb2646d20490a4233e7728
Binary files /dev/null and b/Screenshots/OpenTools_AdvancedShippingByRules_WooCommerce_Logo_400x400.png differ
diff --git a/Screenshots/OpenTools_ShippingByRules_WooCommerce_Logo_100x100.png b/Screenshots/OpenTools_ShippingByRules_WooCommerce_Logo_100x100.png
new file mode 100644
index 0000000000000000000000000000000000000000..363f044c005f2517f7bb99418fc8a72014322e3d
Binary files /dev/null and b/Screenshots/OpenTools_ShippingByRules_WooCommerce_Logo_100x100.png differ
diff --git a/Screenshots/OpenTools_ShippingByRules_WooCommerce_Logo_128x128.png b/Screenshots/OpenTools_ShippingByRules_WooCommerce_Logo_128x128.png
new file mode 100644
index 0000000000000000000000000000000000000000..2fa509150025125b63b98d696a8c8174296d36e2
Binary files /dev/null and b/Screenshots/OpenTools_ShippingByRules_WooCommerce_Logo_128x128.png differ
diff --git a/Screenshots/OpenTools_ShippingByRules_WooCommerce_Logo_200x200.png b/Screenshots/OpenTools_ShippingByRules_WooCommerce_Logo_200x200.png
new file mode 100644
index 0000000000000000000000000000000000000000..2c5c18fb8a0613e0b8fe385c040cefa98b0c9771
Binary files /dev/null and b/Screenshots/OpenTools_ShippingByRules_WooCommerce_Logo_200x200.png differ
diff --git a/Screenshots/OpenTools_ShippingByRules_WooCommerce_Logo_256x256png b/Screenshots/OpenTools_ShippingByRules_WooCommerce_Logo_256x256png
new file mode 100644
index 0000000000000000000000000000000000000000..5d7cc66d4f9d97f2206abd4911d1b51a4fef4e49
Binary files /dev/null and b/Screenshots/OpenTools_ShippingByRules_WooCommerce_Logo_256x256png differ
diff --git a/Screenshots/OpenTools_ShippingByRules_WooCommerce_Logo_400x400.png b/Screenshots/OpenTools_ShippingByRules_WooCommerce_Logo_400x400.png
new file mode 100644
index 0000000000000000000000000000000000000000..10faa32bca673cfa0d33de73503576340da347e5
Binary files /dev/null and b/Screenshots/OpenTools_ShippingByRules_WooCommerce_Logo_400x400.png differ
diff --git a/Screenshots/Opentools_Woocommerce_ShippingRules_CartUpdated.png b/Screenshots/Opentools_Woocommerce_ShippingRules_CartUpdated.png
new file mode 100644
index 0000000000000000000000000000000000000000..0cfc82f33e06058eeb3ed1d3726ab3b47bcea06e
Binary files /dev/null and b/Screenshots/Opentools_Woocommerce_ShippingRules_CartUpdated.png differ
diff --git a/Screenshots/Opentools_Woocommerce_ShippingRules_Config_new.png b/Screenshots/Opentools_Woocommerce_ShippingRules_Config_new.png
new file mode 100644
index 0000000000000000000000000000000000000000..33842083666b5ecee38f293e7f4eb2db663dfd6c
Binary files /dev/null and b/Screenshots/Opentools_Woocommerce_ShippingRules_Config_new.png differ
diff --git a/Screenshots/screenshot-1.png b/Screenshots/screenshot-1.png
new file mode 100644
index 0000000000000000000000000000000000000000..485b21aef52f16f63be295de325dc3500f79dd3a
Binary files /dev/null and b/Screenshots/screenshot-1.png differ
diff --git a/Screenshots/screenshot-2.png b/Screenshots/screenshot-2.png
new file mode 100644
index 0000000000000000000000000000000000000000..462649dd5494fbf4546938445e561f089e6718c9
Binary files /dev/null and b/Screenshots/screenshot-2.png differ
diff --git a/Screenshots/screenshot-3.png b/Screenshots/screenshot-3.png
new file mode 100644
index 0000000000000000000000000000000000000000..9354d629314b06efaedeab9ef36c1eb7f8a46f7d
Binary files /dev/null and b/Screenshots/screenshot-3.png differ
diff --git a/Screenshots/screenshot-4.png b/Screenshots/screenshot-4.png
new file mode 100644
index 0000000000000000000000000000000000000000..9084f2388435f26b9d782a9184b8b79d0f1c81a3
Binary files /dev/null and b/Screenshots/screenshot-4.png differ
diff --git a/Screenshots/screenshot-5.png b/Screenshots/screenshot-5.png
new file mode 100644
index 0000000000000000000000000000000000000000..8124cd7665633d16163992641148ea1848c3e8b0
Binary files /dev/null and b/Screenshots/screenshot-5.png differ
diff --git a/includes/rules_shipping_framework_woocommerce.php b/includes/rules_shipping_framework_woocommerce.php
index 79ea7b8b1d9ef33d82b97d46328ec82fd0160ca1..ae3a4aaa407a24abc29f9d6a318c34ddd6d350f1 100644
--- a/includes/rules_shipping_framework_woocommerce.php
+++ b/includes/rules_shipping_framework_woocommerce.php
@@ -113,12 +113,20 @@ class RulesShippingFrameworkWooCommerce extends RulesShippingFramework {
 	 */
 	/** Functions to calculate all the different variables for the given cart and given (sub)set of products in the cart */
 	protected function getOrderCounts ($cart, $products, $method) {
-		$counts = array('products' => count($products));
-		$articles = 0;
+		$counts = array(
+			'articles'    => 0,
+			'products'    => count($products),
+			'quantity'    => 0,
+			'minquantity' => 9999999999,
+			'maxquantity' => 0,
+		);
+
 		foreach ($products as $product) {
-			$articles += $product['quantity'];
+			$counts['articles']   += $product['quantity'];
+			$counts['maxquantity'] = max ($counts['maxquantity'], $product['quantity']);
+			$counts['minquantity'] = min ($counts['minquantity'], $product['quantity']);
 		}
-		$counts['articles'] = $articles;
+		$counts['quantity'] = $counts['articles'];
 		return $counts;
 	}
 
diff --git a/library/rules_shipping_framework.php b/library/rules_shipping_framework.php
index d2bcb008e49f566233e7d1d30ee8057740c09ef0..7ec0ecf8b3fb2875417e4a21eab193fee0527d33 100644
--- a/library/rules_shipping_framework.php
+++ b/library/rules_shipping_framework.php
@@ -58,7 +58,7 @@ class RulesShippingFramework {
 	var $custom_functions = array ();
 	
 	function __construct() {
-		// $this->registerCallback('addCustomCartValues',	array($this, 'addCustomCartValues'));
+// 		$this->registerCallback('addCustomCartValues',	array($this, 'addCustomCartValues'));
 	}
 	
 	
@@ -217,7 +217,33 @@ class RulesShippingFramework {
 	 */
 	/** Functions to calculate all the different variables for the given cart and given (sub)set of products in the cart */
 	protected function getOrderCounts ($cart, $products, $method) {
-		return array('articles' => 0, 'products' => count($products));
+		return array(
+			'articles' => 0, 
+			'products' => count($products),
+			'minquantity' => 9999999999,
+			'maxquantity' => 0,
+		);
+	}
+	
+	protected function getDateTimeVariables($cart, $products, $method) {
+		$utime = microtime(true);
+		$milliseconds = (int)(1000*($utime - (int)$utime));
+		$millisecondsstring = sprintf('%03d', $milliseconds);
+		return array(
+			'year'        => date("Y", $utime),
+			'year2'       => date("y", $utime),
+			'month'       => date("m", $utime),
+			'day'         => date("d", $utime),
+			'weekday'     => date("N", $utime),
+			'hour'        => date("H", $utime),
+			'hour12'      => date("h", $utime),
+			'ampm'        => date("a", $utime),
+			'minute'      => date("i", $utime),
+			'second'      => date("s", $utime),
+			'decisecond'  => $millisecondsstring[0],
+			'centisecond' => substr($millisecondsstring, 0, 2),
+			'millisecond' => $millisecondsstring,
+		);
 	}
 
 	protected function getOrderDimensions ($cart, $products, $method) {
@@ -292,6 +318,7 @@ class RulesShippingFramework {
 	
 	public function getCartValues ($cart, $products, $method) {
 		$cartvals = array_merge (
+			$this->getDateTimeVariables($cart, $products, $method),
 			$this->getOrderCounts($cart, $products, $method),
 			// Add the prices, optionally calculated from the products subset of the cart
 			$this->getOrderPrices ($cart, $products, $method),
@@ -598,6 +625,7 @@ class ShippingRule {
 
 		// Split at all operators:
 		$atoms = $this->tokenize_expression ($rulepart);
+		
 		/* Starting from here, the advanced plugin is different! */
 		$operators = array('<', '<=', '=', '>', '>=', '=>', '=<', '<>', '!=', '==');
 		if (count($atoms)==1) {
@@ -748,7 +776,7 @@ class ShippingRule {
 			"evaluate_for_products" =>      'products',
 			"evaluate_for_skus" =>      'products',
 			"evaluate_for_vendors" =>       'vendors',
-			"evaluate_for_manufacturers" => 'manufacturers'
+			"evaluate_for_manufacturers" => 'manufacturers',
 		);
 		
 		$conditions = array();
diff --git a/readme-adv.txt b/readme-adv.txt
index c92c6ba3ce3ae343d13087210dd61209a5072c74..9b9e80d1eba65affd7e3c3de101cb1354c0a8cf9 100644
--- a/readme-adv.txt
+++ b/readme-adv.txt
@@ -1,9 +1,9 @@
-=== WooCommerce Basic Ordernumbers ===
+=== Advanced Shipping by Rules for WooCommerce ===
 Contributors: opentools
 Tags: WooCommerce, Shipment, Shipping
 Requires at least: 4.0
 Tested up to: 4.4.1
-Stable tag: 1.0
+Stable tag: 1.1
 License: GPLv3 or later
 License URI: http://www.gnu.org/licenses/gpl.html
 
@@ -23,9 +23,9 @@ The plugin exists in two different versions, this free version, which supports f
 
 Each rule is described as one line of text with an easy structure (semicolons separate the parts of the rule). For example:
 
-    Name=Free Shipping; 100<=Amount; 0
-    Name=Domestic Small; Articles<5; Amount<100; Shipping=1.50
-    Name=Domestic Standard; Amount<100; Shipping=3.50
+`Name=Free Shipping; 100<=Amount; 0
+Name=Domestic Small; Articles<5; Amount<100; Shipping=1.50
+Name=Domestic Standard; Amount<100; Shipping=3.50`
 
 This set of rules describes three shipping costs: Orders of 100€ and more are free, otherwise orders with less than five articles have shipping costs of 1.5€, all others 3.50€.
 
@@ -60,9 +60,18 @@ The Advanced Ordernumbers for WooCommerce plugin supports some invoicing plugins
 
 == Screenshots ==
 
+1. The shipping method configuration page. Here you can set up multiple shipping methods (think carriers) using the Shipping by Rules plugin. Each method can have an arbitrary number of rulesets and rules. Each method can independently offer a shipping rate.
+2. The shipping method edit page. Give the shipping method a title that will be shown in the cart and the invoice. You can add an arbitrary number of rulesets, each applying to different countries. Each ruleset can have an arbitrary number of rules of the form 'Name="Name to be displayed to the user"; Amount<14; Weight>5; Shipping=9.9'. Do not forget to press "Update" to save your changes. The rulesets can be reordered by simply dragging them.
+3. An example of two shipping methods offered in the cart. Notice that the displayed shipping name has the form "Shipping Method name (Optional Rule name)".
+4. If a matching rule has NoShipping set as shipping costs, its name will be displayed as a warning message to the user and the method will not offer any shipping.
+5. The plugin's entry in  WordPress' plugin management page contains direct links to the configuration page, to the documentation and to the support forum.
+
 
 == Changelog ==
 
+= 1.1 =
+* Add time variables, Quantity/MaxQuantity/MinQuantity
+
 = 1.0 =
 * Initial release
 
diff --git a/readme.txt b/readme.txt
index 001705850aa2052f0f843f08aab55e88591ba263..122db4c566c7fef3e56fa1f1c63654d1db18b7ef 100644
--- a/readme.txt
+++ b/readme.txt
@@ -3,7 +3,7 @@ Contributors: opentools
 Tags: WooCommerce, Shipment, Shipping, Rules shipping
 Requires at least: 4.0
 Tested up to: 4.4.1
-Stable tag: 1.0
+Stable tag: 1.1
 License: GPLv3 or later
 License URI: http://www.gnu.org/licenses/gpl.html
 
@@ -24,9 +24,9 @@ The plugin exists in two different versions, this free version, which supports f
 
 Each rule is described as one line of text with an easy structure (semicolons separate the parts of the rule). For example:
 
-    Name=Free Shipping; 100<=Amount; 0
-    Name=Domestic Small; Articles<5; Amount<100; Shipping=1.50
-    Name=Domestic Standard; Amount<100; Shipping=3.50
+`Name=Free Shipping; 100<=Amount; 0
+Name=Domestic Small; Articles<5; Amount<100; Shipping=1.50
+Name=Domestic Standard; Amount<100; Shipping=3.50`
 
 This set of rules describes three shipping costs: Orders of 100€ and more are free, otherwise orders with less than five articles have shipping costs of 1.5€, all others 3.50€.
 
@@ -61,10 +61,17 @@ Please see our support forum at http://open-tools.net/forum/. It might also be a
 
 == Screenshots ==
 
-* 
+1. The shipping method configuration page. Here you can set up multiple shipping methods (think carriers) using the Shipping by Rules plugin. Each method can have an arbitrary number of rulesets and rules. Each method can independently offer a shipping rate.
+2. The shipping method edit page. Give the shipping method a title that will be shown in the cart and the invoice. You can add an arbitrary number of rulesets, each applying to different countries. Each ruleset can have an arbitrary number of rules of the form 'Name="Name to be displayed to the user"; Amount<14; Weight>5; Shipping=9.9'. Do not forget to press "Update" to save your changes. The rulesets can be reordered by simply dragging them.
+3. An example of two shipping methods offered in the cart. Notice that the displayed shipping name has the form "Shipping Method name (Optional Rule name)".
+4. If a matching rule has NoShipping set as shipping costs, its name will be displayed as a warning message to the user and the method will not offer any shipping.
+5. The plugin's entry in  WordPress' plugin management page contains direct links to the configuration page, to the documentation and to the support forum.
 
 == Changelog ==
 
+= 1.1 =
+* Add time variables, Quantity/MaxQuantity/MinQuantity
+
 = 1.0 =
 * Initial release
 
diff --git a/woocommerce-advanced-shipping-by-rules.php b/woocommerce-advanced-shipping-by-rules.php
index 1289b65379a355244de5b6f5c69c094361b71617..05aa0bcd00751aaa598946bc9a62d5e19c41d7f6 100644
--- a/woocommerce-advanced-shipping-by-rules.php
+++ b/woocommerce-advanced-shipping-by-rules.php
@@ -3,7 +3,7 @@
  * Plugin Name: WooCommerce Advanced Shipping By Rules
  * Plugin URI: http://open-tools.net/woocommerce/advanced-shipping-by-rules-for-woocommerce.html
  * Description: Define Shipping cost by very general and flexible (text-based) rules. The advanced version also provides mathematical expressions and functions
- * Version: 1.0.0
+ * Version: 1.1.0
  * Author: Open Tools, Reinhold Kainhofer
  * Author URI: http://open-tools.net
  * Text Domain: woocommerce-advanced-shipping-by-rules
diff --git a/woocommerce-shipping-by-rules.php b/woocommerce-shipping-by-rules.php
index a86c09965804582e31150c47c7684dd86c7ce65b..53b4e25611b455636649323c82bcd385f1d0c54f 100644
--- a/woocommerce-shipping-by-rules.php
+++ b/woocommerce-shipping-by-rules.php
@@ -3,7 +3,7 @@
  * Plugin Name: WooCommerce Shipping By Rules
  * Plugin URI: http://open-tools.net/woocommerce/advanced-shipping-by-rules-for-woocommerce.html
  * Description: Define Shipping cost by very general and flexible (text-based) rules.
- * Version: 1.0.0
+ * Version: 1.1.0
  * Author: Open Tools, Reinhold Kainhofer
  * Author URI: http://open-tools.net
  * Text Domain: woocommerce-shipping-by-rules