From 9cb07ef8e788bb2c233b7c0f1ae13ef3ea0662c4 Mon Sep 17 00:00:00 2001
From: Reinhold Kainhofer <reinhold@kainhofer.com>
Date: Sun, 7 Aug 2016 00:55:24 +0200
Subject: [PATCH] Finish extension template; implement UserOrderCount variable

---
 plugins/template/Makefile                     |  13 +--------
 plugins/template/YOUR_PLUGIN_NAME.php         |   6 ++---
 plugins/template/readme.txt                   |   2 +-
 .../ordernumbers-extension-template-v1.0.zip} | Bin 14194 -> 14482 bytes
 plugins/user_order_count/Makefile             |  18 -------------
 .../LICENSE.txt                               |   0
 .../Makefile                                  |  24 +++++++++++++++++
 .../readme.txt                                |  16 +++++------
 ...mmerce-ordernumber-userordercount-v1.0.zip | Bin 0 -> 14490 bytes
 ...oocommerce-ordernumber-userordercount.php} |  25 +++++++-----------
 10 files changed, 46 insertions(+), 58 deletions(-)
 rename plugins/{user_order_count/woocommerce-user_order_count-v1.0.zip => template/releases/ordernumbers-extension-template-v1.0.zip} (81%)
 delete mode 100644 plugins/user_order_count/Makefile
 rename plugins/{user_order_count => woocommerce-ordernumber-userordercount}/LICENSE.txt (100%)
 create mode 100644 plugins/woocommerce-ordernumber-userordercount/Makefile
 rename plugins/{user_order_count => woocommerce-ordernumber-userordercount}/readme.txt (66%)
 create mode 100644 plugins/woocommerce-ordernumber-userordercount/woocommerce-ordernumber-userordercount-v1.0.zip
 rename plugins/{user_order_count/user_order_count.php => woocommerce-ordernumber-userordercount/woocommerce-ordernumber-userordercount.php} (53%)

diff --git a/plugins/template/Makefile b/plugins/template/Makefile
index 5793133..c4f8a96 100644
--- a/plugins/template/Makefile
+++ b/plugins/template/Makefile
@@ -9,21 +9,10 @@ BUILDDIR=.build/
 PLUGINFILES=$(BASE).php readme.txt LICENSE.txt
 
 TRANSLATIONS=
-ZIPFILE=$(PLATTFORM)-$(BASE)-v$(VERSION).zip
+ZIPFILE=$(BASE)-v$(VERSION).zip
 
 all: zip
 
-zip: $(PLUGINFILES) $(TRANSLATIONS) $(ADVANCEDFILES) $(INDEXFILES)
-	@echo "Packing all files into distribution file $(ZIPFILE):"
-	@zip -r $(ZIPFILE) $(PLUGINFILES) $(TRANSLATIONS) $(INDEXFILES) $(FIELDS)
-
-clean:
-	rm -f $(ZIPFILE)
-
-	
-	
-	
-
 zip: $(PLUGINFILES) $(TRANSLATIONS)
 	@echo "Packing plugin into distribution file $(ZIPFILE):"
 	@mkdir -p $(BUILDDIR)/$(BASE)
diff --git a/plugins/template/YOUR_PLUGIN_NAME.php b/plugins/template/YOUR_PLUGIN_NAME.php
index 744fab2..b4a2ab2 100644
--- a/plugins/template/YOUR_PLUGIN_NAME.php
+++ b/plugins/template/YOUR_PLUGIN_NAME.php
@@ -1,6 +1,6 @@
 <?php
 /**
- * Plugin Name: YOUR_PLUGIN_NAME extension plugin for OpenTools Basic/Advanced Ordernumbers for WooCommerce
+ * Plugin Name: YOUR_PLUGIN_NAME Ordernumber extension for WC
  * Plugin URI: http://open-tools.net/woocommerce/advanced-ordernumbers-for-woocommerce.html
  * Description: A sample template for an extension plugin for the OpenTools Basic / Advanced Ordernumber for WooCommerce plugin. This extension plugin can provide additional variables, modify existing variables and post-process the generated numbers.
  * Version: 1.0
@@ -29,12 +29,12 @@ if ( ! defined( 'ABSPATH' ) ) {
  */
 add_filter('opentools_ordernumber_replacements', "ordernumber_replacements_YOUR_PLUGIN_NAME", 10, 3);
 
-ordernumber_replacements_YOUR_PLUGIN_NAME($reps, $details, $nrtype) {
+function ordernumber_replacements_YOUR_PLUGIN_NAME($reps, $details, $nrtype) {
     $userid = $details->get_user_id();
 
     // Case 1: Return the number of orders this user has already posted (+1, 
     //         because the current order is not yet registered with WC!)
-    $reps['[userordercount]'] = wc_get_customer_order_count($userid)+1;
+    $reps['[userordercount]'] = wc_get_customer_order_count($userid);
 
     // Case 2: Add a [Type] variable that holds either "ordernumber" or "invoice"
     $reps['[type]'] = $nrtype;
diff --git a/plugins/template/readme.txt b/plugins/template/readme.txt
index 6debd4a..7761ba4 100644
--- a/plugins/template/readme.txt
+++ b/plugins/template/readme.txt
@@ -1,4 +1,4 @@
-=== YOUR_PLUGIN_NAME extension for OpenTools Ordernumbers for WooCommerce ===
+=== YOUR_PLUGIN_NAME Ordernumber extension for WC ===
 Plugin Name: YOUR_PLUGIN_NAME extension for OpenTools Ordernumbers for WooCommerce
 Contributors: opentools
 Tags: WooCommerce, Order numbers, orders
diff --git a/plugins/user_order_count/woocommerce-user_order_count-v1.0.zip b/plugins/template/releases/ordernumbers-extension-template-v1.0.zip
similarity index 81%
rename from plugins/user_order_count/woocommerce-user_order_count-v1.0.zip
rename to plugins/template/releases/ordernumbers-extension-template-v1.0.zip
index 82603c22b8140090dba6f7eac3399c5e361d5684..0006f0b7fe63b0eafec1f1dfc24a12df82bd0b18 100644
GIT binary patch
delta 2278
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

delta 2013
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
OX86s(z>sJLavlIuh=-{F

diff --git a/plugins/user_order_count/Makefile b/plugins/user_order_count/Makefile
deleted file mode 100644
index 3d23ad3..0000000
--- a/plugins/user_order_count/Makefile
+++ /dev/null
@@ -1,18 +0,0 @@
-BASE=user_order_count
-PLATTFORM=woocommerce
-VENDOR=opentools
-VERSION=1.0
-
-PLUGINFILES=$(BASE).php readme.txt LICENSE.txt
-
-TRANSLATIONS=
-ZIPFILE=$(PLATTFORM)-$(BASE)-v$(VERSION).zip
-
-all: zip
-
-zip: $(PLUGINFILES) $(TRANSLATIONS) $(ADVANCEDFILES) $(INDEXFILES)
-	@echo "Packing all files into distribution file $(ZIPFILE):"
-	@zip -r $(ZIPFILE) $(PLUGINFILES) $(TRANSLATIONS) $(INDEXFILES) $(FIELDS)
-
-clean:
-	rm -f $(ZIPFILE)
diff --git a/plugins/user_order_count/LICENSE.txt b/plugins/woocommerce-ordernumber-userordercount/LICENSE.txt
similarity index 100%
rename from plugins/user_order_count/LICENSE.txt
rename to plugins/woocommerce-ordernumber-userordercount/LICENSE.txt
diff --git a/plugins/woocommerce-ordernumber-userordercount/Makefile b/plugins/woocommerce-ordernumber-userordercount/Makefile
new file mode 100644
index 0000000..8ef2bfd
--- /dev/null
+++ b/plugins/woocommerce-ordernumber-userordercount/Makefile
@@ -0,0 +1,24 @@
+BASE=woocommerce-ordernumber-userordercount
+PLATTFORM=woocommerce
+VENDOR=opentools
+VERSION=1.0
+
+DIR = $(shell pwd)
+BUILDDIR=.build/
+
+PLUGINFILES=$(BASE).php readme.txt LICENSE.txt
+
+TRANSLATIONS=
+ZIPFILE=$(BASE)-v$(VERSION).zip
+
+all: zip
+
+zip: $(PLUGINFILES) $(TRANSLATIONS)
+	@echo "Packing plugin into distribution file $(ZIPFILE):"
+	@mkdir -p $(BUILDDIR)/$(BASE)
+	@cp --parents -r $(PLUGINFILES) $(TRANSLATIONS) $(BUILDDIR)/$(BASE)/
+	cd $(BUILDDIR) && zip -r $(DIR)/$(ZIPFILE) $(BASE)
+	cd $(DIR)
+
+clean:
+	rm -rf $(ZIPFILE) $(BUILDDIR)
diff --git a/plugins/user_order_count/readme.txt b/plugins/woocommerce-ordernumber-userordercount/readme.txt
similarity index 66%
rename from plugins/user_order_count/readme.txt
rename to plugins/woocommerce-ordernumber-userordercount/readme.txt
index 7fb61cc..1d48b80 100644
--- a/plugins/user_order_count/readme.txt
+++ b/plugins/woocommerce-ordernumber-userordercount/readme.txt
@@ -1,5 +1,5 @@
-=== User_order_count extension for OpenTools Ordernumbers for WooCommerce ===
-Plugin Name: User_order_count extension for OpenTools Ordernumbers for WooCommerce
+=== UserOrderCount Ordernumber extension for WC ===
+Plugin Name: UserOrderCount extension for OpenTools Ordernumbers for WooCommerce
 Contributors: opentools
 Tags: WooCommerce, Order numbers, orders
 Requires at least: 4.0
@@ -8,15 +8,15 @@ Stable tag: 1.0
 License: GPLv3 or later
 License URI: http://www.gnu.org/licenses/gpl.html
 
-Extension plugin for the OpenTools Basic/Advanced Ordernumbers for WooCommerce.
-Custom variables can be provided.
-
+An extension plugin for the OpenTools Basic / Advanced Ordernumber for WooCommerce 
+plugin that adds the number of orders the user has already posted in the 
+variable UserOrderCount.
 
 == Description ==
 
-This extension plugin is a template to show how custom plugins can add new variables
-for use in the order/invoice numbers generated by the OpenTools Basic/Advanced 
-Ordernumbers plugin for WooCommerce.
+An extension plugin for the OpenTools Basic / Advanced Ordernumber for WooCommerce 
+plugin that adds the number of orders the user has already posted in the 
+variable UserOrderCount.
 
 For the full documentation of both the basic and the advanced ordernumbers plugin for WooCommerce, see:
 http://open-tools.net/documentation/advanced-order-numbers-for-woocommerce.html
diff --git a/plugins/woocommerce-ordernumber-userordercount/woocommerce-ordernumber-userordercount-v1.0.zip b/plugins/woocommerce-ordernumber-userordercount/woocommerce-ordernumber-userordercount-v1.0.zip
new file mode 100644
index 0000000000000000000000000000000000000000..91688a07d61f25b2bd4326db94e5fe14460dacf0
GIT binary patch
literal 14490
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

literal 0
HcmV?d00001

diff --git a/plugins/user_order_count/user_order_count.php b/plugins/woocommerce-ordernumber-userordercount/woocommerce-ordernumber-userordercount.php
similarity index 53%
rename from plugins/user_order_count/user_order_count.php
rename to plugins/woocommerce-ordernumber-userordercount/woocommerce-ordernumber-userordercount.php
index 1bac401..249917d 100644
--- a/plugins/user_order_count/user_order_count.php
+++ b/plugins/woocommerce-ordernumber-userordercount/woocommerce-ordernumber-userordercount.php
@@ -1,12 +1,14 @@
 <?php
 /**
- * Plugin Name: User_order_count extension plugin for OpenTools Basic/Advanced Ordernumbers for WooCommerce
+ * Plugin Name: UserOrderCount Ordernumber extension for WC
  * Plugin URI: http://open-tools.net/woocommerce/advanced-ordernumbers-for-woocommerce.html
- * Description: A sample template for an extension plugin for the OpenTools Basic / Advanced Ordernumber for WooCommerce plugin. This extension plugin can provide additional variables, modify existing variables and post-process the generated numbers.
+ * Description: An extension plugin for the OpenTools Basic / Advanced Ordernumber
+ * for WooCommerce plugin that adds the number of orders the user has already
+ * posted in the variable UserOrderCount.
  * Version: 1.0
  * Author: Open Tools
  * Author URI: http://open-tools.net
- * Text Domain: woocommerce-ordernumbers-extension-User_order_count
+ * Text Domain: woocommerce-ordernumbers-extension-Woocommerce-ordernumber-userordercount
  * License: GPL2+
  * Network: true
 */
@@ -27,20 +29,11 @@ if ( ! defined( 'ABSPATH' ) ) {
  *
  *  Returns the new array of variables (even if unmodified!)
  */
-add_filter('opentools_ordernumber_replacements', "ordernumber_replacements_User_order_count", 10, 3);
+add_filter('opentools_ordernumber_replacements', "ordernumber_replacements_userordercount", 10, 3);
 
-ordernumber_replacements_User_order_count($reps, $details, $nrtype) {
+function ordernumber_replacements_userordercount($reps, $details, $nrtype) {
+    // Return the number of orders this user has already posted
     $userid = $details->get_user_id();
-
-    // Case 1: Return the number of orders this user has already posted (+1, 
-    //         because the current order is not yet registered with WC!)
-    $reps['[userordercount]'] = wc_get_customer_order_count($userid)+1;
-
-    // Case 2: Add a [Type] variable that holds either "ordernumber" or "invoice"
-    $reps['[type]'] = $nrtype;
-
-    // Case 3: Modify an existing variable:
-        $reps['[second]'] = $reps['[second]'] + 15;
-
+    $reps['[userordercount]'] = wc_get_customer_order_count($userid);
     return $reps;
 }
-- 
GitLab