* Fix bin/install-wp-tests.sh for wc >= 6.0.0
* Fix php unit test "test_deleted_coupons" for wc >= 6.1.0
* Update WC_Tests_Reports_Coupons test_populate_and_query test
Fix test
* Sentence case all the things
* Update a few more things that were missed on the first round
* update documentation titles to use title case
* Add changelog
* Handle PR feedback
* Revert readme changelog changes
* Revert changes to ALT text in dev documentation
* Revert a change to ALT text in dev documentation
* Fix failing tests
Co-authored-by: David Levin <davidlevin@Davids-MacBook-Pro-2.local>
Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
* Use order item data to match attributes.
Fixes matching on products with "any x" attributes.
* Fix attribute query on variations report.
* Fix variations report item count.
* Add test coverage.
* Add changelog entry.
* Fix non-string query prop warning in SelectControl component.
* Move custom attribute retrieval to a reusable Trait.
* Ensure all custom attribute terms are included in the API response.
* Combine all terms from custom attributes.
When they're split across multiple products.
* Ensure report args are mapped and sanitized before CSV export.
* Add test.
* Fix products query when there are no products in the specified categories.
* Add changelog.
* Include orders without coupons when excluding specific coupon IDs.
* Add changelog entry.
* Fix default Orders before/after query args.
* Specify date range for test query.
* Fixed related orders problem
This commit fixes the related orders problem
* Fixed customer type query
* Fixed get_order_number filtering
* Added a default value to totalResults
This commit adds a default value to totalResults (in order to avoid errors)
* Added testing instructions
# Conflicts:
# TESTING-INSTRUCTIONS.md
* Added changelog
# Conflicts:
# readme.txt
* Fixed orders without products
* Added tests
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
The wc-analytics/reports/orders and /wc-analytics/reports/orders/stats endpoints have inconsistent parameter names for filtering the customer type: customer_type vs customer.
This was affecting the Customer Type filter in the orders analytics, reported in issue woocommerce/woocommerce-admin#5803, where the component expects the parameter names to be the same. This is because it uses a parameter name based on the key in the filter configuration (customer_type).
To resolve this, this PR updates /wc-analytics/reports/orders/stats to accept both customer_type and customer as parameter names for this filter. The customer parameter has however been deprecated in its description to discourage usage.
Co-authored-by: Sam Seay <samueljseay@gmail.com>
* Don't require package tag or file comment inside src
* Removed package tag from files inside src
* Fixed tests directory in phpcs.xml.dist
* Fixed usage of package tag
* Fixed new classes
* Fixed coding standards
* Fixed coding standards in tests
* Fix missing uninstall usage in tests bootstrap.
Update test bootstrap using latest core WC version.
* Fix date offsets for test orders.
* Restore original test lib directory logic.
* Ensure that test runs near the bottom of the hour don't break.
* Update testing instructions in contributing docs.
* Add (failing) test for deleted coupon amounts in reporting.
* Always sync an ID into the order-coupon lookup table.
* Don't remove coupon data from order analytics when the coupon is deleted.
* Fix coupon ID lookup from order item metadata.
* Allow negative coupon_id in the lookup table.
Representing deleted coupons.
* Handle deleted coupons when gathering extended info.
* Add more tests for deleted coupon handling.
* Handle deleted coupons in coupons report table.
* Fix lint errors.
* Count total unique customers instead of new/returning in order stats
* Add customer name to table instead of customer type
* Add customer total to segments
* Update tests for new stats
Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
* Add filter to conditionally disable report caching.
* Disable caching for Orders Stats unit tests.
Fixes the display of the last query when tests fail.
* Relabel Net Revenue to Net Sales, revert previous refund work on Gross revenue and rename to total sales. Update the orer of all the things
* Add gross sales calculation to revenue stats endpoint.
* Restore coupon_total when updating order stats.
* Wire up gross sales to revenue report.
* Fix revenue report refunds calculation when there are no refunds.
* update net sales labels and cases in order, product and category tables
* Subtract refunded shipping and taxes from gross sales.
* pluses to minuses to fix the gross revenue and refund totals when refunding
* Add gross_sales to revenue stats orderby enum.
* Change refund labels to Returns
* Remove usage of defunct coupon_total column.
* Store refunded amount in stats table.
* Rename "gross_total" column to "total_sales".
* Net total for refund orders can be used instead of a new column.
* Rename gross_revenue to total_sales.
* Coalesce coupons total in order stats query.
SUM()ing all nulls gives null, not zero.
* Use segmentation selections to backfill missing data.
Fo when report columns and segmentation columns don't match.
* Remove errant gross_sales from expected interval test data.
* Fix gross sales tests for revenue/stats.
* Move missing segment fills back to their original locations.
* Fix remaining tests failing because of gross sales.
* Fix db upgrade function rename of gross_total column.
* Fix linter errors.
* Add "exportable" report interface for defining CSV export values.
* Define export values for Orders Report.
* Define export values for Products Report.
* Define export values for Categories Report.
* Define export values for Coupons Report.
* Allow commas and double quotes in CSV exported values.
* Fix in-browser export formatting of orders report products.
* Align server-side orders report export formatting with in-browser.
* Cover comma and double quote escaping in CSV export package tests.
* Define export values for Customers Report.
* Embed response links when requesting data for CSV exports.
* Define export values for Downloads Report.
* Move reusable report export functions to a trait.
* Define export values for Stock Report.
* Define export values for Taxes Report.
* Define export values for Variations Report.
* Define export values for Revenue Report.
* Always pass export row data through the filter.
* Fix formatting in test case for CSV coupon export.
* Quote escape CSV headers in client-side export.
Escape values with spaces as well.
* Check if inventory is managed at the product level before using the stock status/quantity.
* Prevent CSV injection in csv-export package.
* Add customer functions to order and refund classes
* Extract shared order and refund methods to trait
* Add refund filter to advanced filters in orders report
* Filter refund types in orders data store
* Extract refunds subquery to parent report data store method
* Add refund subquery filtering to order stats data store
* Add tests around refund type filtering
* Change the default option for the refunds filter
* Sync refunds on order sync
* Separate order and refund class extensions
* Add customer functions to order and refund classes
* Change products store to work with refund amounts
* Return early for refunds in coupon data store
* Allow refund processing in tax data store
* Remove unused refund amounts from tables and data stores
* Change order counts to parse out refund entries
* Include refunded orders in default queried statuses
* Only process order number filter on shop order post types
* Extract shared order and refund methods to trait
* Fix renamed schedule_single_order_import method
* Bump PHP and WP version requirements
* Change coupons sum to distinct coupon count in REST API
* Hook up unique coupon count to orders summary numbers
* Add coupons count to order segmenting
* Add coupons count to expected stats in order test and revenue tests
* Translation call text domain change from “wc-admin” to “woocommerce-admin”.
* Fix .pot file generation.
* Fix errantly closed array item in /revenue/stats controller.
* Rename plugin zip, main file, and repo name to "woocommerce-admin".
* Excluded statuses from customers oldest orders
* Fix tests for returning customer where excluded statuses are used
* Remove save_post hook used for testing
* Extract conditions for first order swapping
* Add get_oldest_orders function to customer data store
* Check if is first order in is_returning_customer()
* Check if the customers first order has changed and update all orders respectively
* Fix check for empty oldest_orders array
* Change avg_items_per_order to number instead of integer
* Fix failing tests for new/returning customers
Only the first orders with product 1 and without coupons should be new per each customer
* Remove sleep functions from tests
* Assign second order to a variable for legibility
* Fix second order assignment and check if set
* Add manage_stock to stock controller response
* Add manage_stock property to stock report tests
* Add changelog entry
* Make stock quantity float instead of int
* Add manage_stock to the products API response
* Check for manage_stock in products table
* Add manage_stock property to product API tests