Commit Graph

589 Commits

Author SHA1 Message Date
Jeff Stieler 6860773fb4 Refactor first two order milestones to behave the same as the others.
Prevents order count queries from being issues on every request.
2019-05-13 16:34:51 -06:00
Jeff Stieler 93085fe268 Add documentation on using the new page controller functions. 2019-05-13 15:14:18 -06:00
Jeff Stieler 8cab7c047e Add filters to page controller. 2019-05-13 15:14:17 -06:00
Jeff Stieler 742a1aa049 Move existing page connection to a separate file. 2019-05-13 15:14:17 -06:00
Jeff Stieler 0028fc0ffe Use WC_Emails class to dynamically connect email settings pages. 2019-05-13 15:14:17 -06:00
Jeff Stieler 635f9faca7 Restore hardcoded “WooCommerce” root breadcrumb logic and remove “full” path requirement. 2019-05-13 15:14:16 -06:00
Jeff Stieler 3dff00a9a0 Refactor connecting existing admin pages and breadcrumb generation. 2019-05-13 15:14:16 -06:00
Jeff Stieler 6b12d3e1b4 Refactor “is admin page” logic to use page controller. 2019-05-13 15:14:15 -06:00
Jeff Stieler 9fdf2cfb47 Refactor app entry page and dashboard page registration. 2019-05-13 14:30:26 -06:00
Jeff Stieler 7506201571 Refactor analytics page registration. 2019-05-13 14:19:26 -06:00
Jeff Stieler 19bfd01599 Add new page controller class, replace page registration function. 2019-05-13 14:19:26 -06:00
Ron Rennick 85e82f07f5 fix warning for string shipping tax meta value 2019-05-13 15:01:05 -03:00
Ron Rennick 33919a652d phpcs sniff fixes 2019-05-13 13:48:22 -03:00
Ron Rennick 28b10f2eb6 restrict customer import to customer role with filter 2019-05-13 13:47:16 -03:00
Joshua T Flowers fb91cd8788 Add import status endpoint and progress options (https://github.com/woocommerce/woocommerce-admin/pull/2189)
* Update import progress during batches

* Add import status route for querying import progress

* Update import totals before import start

* Move wc admin notes to separate action scheduler group

* Add import totals route to query customer and order totals

* Add wc helper queue job processing method

* Add import status and total tests

* Separate action type clearing for imports and notes

* Typecast action types as array in clear_pending_wcadmin_actions()
2019-05-13 10:30:07 +08:00
Joshua T Flowers c6a6e737c4 Add refund filtering to order reports (https://github.com/woocommerce/woocommerce-admin/pull/2179)
* 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
2019-05-10 14:56:57 +08:00
Joshua T Flowers 3382fb7011 Record refunds separate from order entries (https://github.com/woocommerce/woocommerce-admin/pull/2083)
* 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
2019-05-10 14:39:25 +08:00
Ron Rennick 41a341f690 Merge pull request woocommerce/woocommerce-admin#2190 from woocommerce/fix/2180
fix customer name logic on populating customer lookup data
2019-05-09 09:39:49 -03:00
Joshua T Flowers 1df54fdae5 Check for page suffix to fix blank pages with WC Branding (https://github.com/woocommerce/woocommerce-admin/pull/2187) 2019-05-09 10:39:11 +08:00
Timmy Crawford d51845930a Dashboard: Rename class/feature to remove conflict with legacy dashboard widget (https://github.com/woocommerce/woocommerce-admin/pull/2138)
* Dashboard: Rename class/feature to remove conflict with legacy dashboard class

* Updates per feedback, and fixes.
2019-05-08 09:10:05 -07:00
Ron Rennick 0f2788ed1c fix customer name logic on populating customer lookup data 2019-05-08 10:01:12 -03:00
Albert Juhé Lluveras cab0e38c30 Save section/block preferences in user data (https://github.com/woocommerce/woocommerce-admin/pull/2148)
* Save section/block preferences in user data

* Optimize updateSection code

* Remove no longer used prop

* Refactor dashboard blocks to make them extendable

* Check that defaultSection exists before merging

* Rename 'sectionsDefinion' to 'defaultSections'

* Add Dashboard README

* Update README with new props

* Update settings when moving/removing dashboard sections

* Add missing props to README example

* Move 'section.js' inside 'components' folder

* Fix README sentence
2019-05-07 09:21:34 +02:00
Albert Juhé Lluveras 46d3be23dd Add Historical Data Import Screen (https://github.com/woocommerce/woocommerce-admin/pull/2073)
* Add Historical Data Import Screen

* Fix date picker not being accessible

* Cleanup

* Fix period selector typo

Co-Authored-By: Aljullu <aljullu@gmail.com>

* Move state to props

* Add filter to status labels

* Get rid of 'step' state property

* Format 'importDate' as YYYY-MM-DD

* Minor improvements

* Hardcode control height

* Use dateValidationMessages when possible

* Update imported all data actions

* Update filter name
2019-05-07 09:18:48 +02:00
Jeff Stieler a36e3cd024 Merge pull request woocommerce/woocommerce-admin#2034 from woocommerce/add/1850-import-endpoint
Add import endpoint and controller
2019-05-01 13:29:00 -06:00
Jeff Stieler cda1645672 Review feedback changes.
Incorrect comment and unused function argument.
2019-05-01 08:30:27 -06:00
Joshua Flowers 0a229e3654 Add delete batch actions for orders and customers 2019-04-30 17:37:20 -06:00
Joshua Flowers a4d1256292 Add customer deletion method to customers data store 2019-04-30 17:37:20 -06:00
Joshua Flowers fe0dea6373 Add delete imports endpoint 2019-04-30 17:37:19 -06:00
Joshua Flowers cad94415c5 Add endpoint route to cancel all pending import actions 2019-04-30 10:17:08 -06:00
Jeff Stieler a3fdd72ba5 Merge pull request woocommerce/woocommerce-admin#1907 from woocommerce/fix/1615-order-number-filter
Support Sequential Order Numbers in Downloads Report order number filter
2019-04-30 10:10:39 -06:00
Jeff Stieler 3bfc53c9cf Reintroduce the customer lookup init to report regeneration.
With the new date range and “skip existing” logic.
2019-04-30 09:17:12 -06:00
Jeff Stieler e350cfc898 Remove strict comparison from “is valid customer” logic.
Needed for the function to work in scheduled actions.
2019-04-30 09:09:35 -06:00
Ron Rennick 4ceb3f3c2d add check for woocommerce submenu item array 2019-04-29 06:57:33 -03:00
Timmy Crawford 2aaf0ee4b5 Add check for wp_set_script_translations. (https://github.com/woocommerce/woocommerce-admin/pull/2117)
* Add check for wp_set_script_translations.

* Update admin alert to show correct required WooCommerce version.

* Few more 3.6 text changes.
2019-04-26 11:39:37 -07:00
Joshua T Flowers 53a4098de1 Fix missing leaderboard schema options (https://github.com/woocommerce/woocommerce-admin/pull/2059)
* Add missing schema properties

* Add missing leaderboard schema tests
2019-04-26 10:43:52 -07:00
Joshua T Flowers c17baa02cd Encode and decode persited query as JSON string in the leaderboards controller (https://github.com/woocommerce/woocommerce-admin/pull/2100)
* Encode and decode persited query as JSON string in leaderboards controller

* Update peristed query tests to use JSON string
2019-04-24 04:38:49 +08:00
Joshua T Flowers 8bc3d8622e Add order date filter to customers data store (https://github.com/woocommerce/woocommerce-admin/pull/2094)
* Add before and after params to customers controller

* Map before and after order params to order creation date filter

* Hook up customer date filter params in leaderboards controller
2019-04-23 10:01:36 +08:00
Jeff Stieler ba69a634f5 Document why the order number field should be a string. 2019-04-19 11:41:39 +02:00
Albert Juhé Lluveras 19500daad9 Add wcAdminAssetUrl property back (https://github.com/woocommerce/woocommerce-admin/pull/2075) 2019-04-18 10:38:42 +02:00
Joshua Flowers eecedfdba8 Set orders date to midnight before if days is set 2019-04-17 15:57:51 +08:00
Joshua Flowers 44e8c56d88 Run count query early to maybe skip order id query 2019-04-17 15:50:46 +08:00
Paul Sealock 9c8e0ff666 Merge pull request woocommerce/woocommerce-admin#2018 from woocommerce/try/extension-build-env
Try: Extension Examples
2019-04-17 15:12:42 +12:00
Ajay Ghaghretiya 4dddb62195 Fix-woocommerce/woocommerce-admin#1982 (https://github.com/woocommerce/woocommerce-admin/pull/2019)
* Fix-woocommerce/woocommerce-admin#1982

* Fix-woocommerce/woocommerce-admin#1982 #Tabs replaced with spaces

* woocommerce/woocommerce-admin#1982

* Fix-woocommerce/woocommerce-admin#1982 Resolved Inline comments must end in full-stops, exclamation marks, or question marks.

* update with tabs 

fixes formatting

* update woocommerce-admin.php

tab formatting fixes.

* Update woocommerce-admin.php

Update

Co-Authored-By: Mr-AjayM <32254909+Mr-AjayM@users.noreply.github.com>

* Update woocommerce-admin.php

remove leading /

Co-Authored-By: Mr-AjayM <32254909+Mr-AjayM@users.noreply.github.com>
2019-04-16 10:11:34 +02:00
Albert Juhé Lluveras d38b888a2e Check if welcome message notice exists before creating it (https://github.com/woocommerce/woocommerce-admin/pull/2063) 2019-04-16 09:31:50 +02:00
Albert Juhé Lluveras dab7cf7dff Respect manual offsets in default before/after params (https://github.com/woocommerce/woocommerce-admin/pull/2042) 2019-04-15 19:28:19 +02:00
ronakganatra9 efb6bba9bd woocommerce/woocommerce-admin#1981 Fix/1981 welcome note added (https://github.com/woocommerce/woocommerce-admin/pull/2005)
* Added new admin note on plugin install. Fix-1981

* fix phpcs errors

* cbf change

* changes in phpcs error.

* Update includes/notes/class-wc-admin-notes-welcome-message.php

Co-Authored-By: ronakganatra9 <ronakganatra9@gmail.com>

* Changes implemented as per suggestion.

* suggestions apply of condition check and note name change.

* phpcs changes.

* mistake solved.
2019-04-15 09:34:27 +02:00
Jeff Stieler ef0fd73f2c Merge pull request woocommerce/woocommerce-admin#1998 from woocommerce/add/247-stock-panel
Hook up Stock panel
2019-04-12 09:19:21 -06:00
Joshua Flowers fcf0994276 Fix missing batch action arguments 2019-04-12 16:50:43 +08:00
Joshua Flowers f213f5cb66 Make customer name empty string by default instead of null 2019-04-12 16:50:43 +08:00
Joshua Flowers 0a42757628 Process customer during order update instead of pre-processing all 2019-04-12 16:50:42 +08:00
Joshua Flowers 780c9da3d2 Hook up regenerate UI setting to new import endpoint 2019-04-12 16:50:42 +08:00
Joshua Flowers 1f016b5418 Add days and skip options to regenerate reports function 2019-04-12 16:50:42 +08:00
Joshua Flowers 4180b48346 Add reports import controller and endpoint 2019-04-12 16:50:42 +08:00
Justin Shreve 7fc70157c9 WC_Admin_Loader/PHP Refactor + Method to publish core ready features (https://github.com/woocommerce/woocommerce-admin/pull/1863)
* Try: Setup plugin to publish core library on npm

* Documentation clean up.

* Handle PR Feedback: Fix notices from happening in WC Core from API usage, fix sidebar dashboard ordering in menu, remove preload function check since we are supporting WP 5+, add a filter for preloading data and move usage to respective feature code, move features to a specific folder for bundiling, fix script translations.

* Fix code comment on analytics preload

* Continue refactoring code, and make it possible to launch 'embedded' features via the process as well.

* Fix note hook

* Fix note load order

* Address PR feedback: Fix class name, load leaderboard endpoint

* Remove example code prior to merge
2019-04-11 14:31:31 -04:00
Joshua T Flowers eb0b137020 Hook up leaderboards endpoint to dashboard (https://github.com/woocommerce/woocommerce-admin/pull/2004)
* Add allowed leaderboards endpoint to prefetch list

* Hook up leadboards endpoint to dashboard

* Skip data fetch for leaderboard if per page is less than 1

* Add tests to check for rendered html display
2019-04-11 10:53:05 +08:00
Jeff Stieler 4b2ac14994 Merge pull request woocommerce/woocommerce-admin#2015 from woocommerce/notes-queue-group
add WCA queue group to the unsnooze notes scheduled action
2019-04-10 10:21:39 -06:00
Justin Shreve 4727417746 Add a mobile app note (https://github.com/woocommerce/woocommerce-admin/pull/2008) 2019-04-10 11:49:02 -04:00
Albert Juhé Lluveras 5ae9ee65b0 PHP Lint fixes (https://github.com/woocommerce/woocommerce-admin/pull/2023) 2019-04-10 10:49:00 +02:00
Joshua T Flowers e31be343e2 Make customer name extendable (https://github.com/woocommerce/woocommerce-admin/pull/1976)
* Make customer name extendable

* Update get_customer_name to favor user profile information

* Update customer name on profile update

* Add tests around customer name getting and setting

* Prefix customer name filter with woocommerce_reports_
2019-04-09 11:39:39 +08:00
Joshua T Flowers f682fe76be Add leaderboard controller and endpoint (https://github.com/woocommerce/woocommerce-admin/pull/1995)
* Add leaderboard controller and endpoint

* Add existing leaderboard stats to leaderboard endpoint

* Add persisted query to leaderboard params

* Add leaderboard endpoint tests

* Check if extended_info params are set before assigning

* Change number param input format to mixed inside wc_admin_number_format
2019-04-09 11:34:56 +08:00
Jeff Stieler 2ec3e9843a Merge pull request woocommerce/woocommerce-admin#1872 from woocommerce/add/1831-order-milestone-notifications
Add order milestone notifications.
2019-04-08 16:04:07 -06:00
Jeff Stieler f734f01598 Clear recurring order milestones event on plugin deactivation. 2019-04-08 13:10:39 -06:00
Ron Rennick 870f7ddfcf add WCA queue group to the unsnooze notes scheduled action 2019-04-08 16:04:56 -03:00
Joshua T Flowers 753780bf7b Onboarding: Add levels REST API (https://github.com/woocommerce/woocommerce-admin/pull/1938)
* Add levels rest controller

* Add default levels

* Add onboarding level API tests

* Drop all since tags

* Make pre-response levels array associative for easier formatting

* Fix level tests for associative array
2019-04-05 10:35:30 +08:00
Ron Rennick 14d0d24762 phpcs lint fixes for /data-stores/ folder 2019-04-03 16:19:43 -03:00
Jeff Stieler 9bcbda0f98 Add expected (missing) properties to product variation API response.
Parent product ID, name, and product type.
2019-04-03 12:35:18 -06:00
Joshua T Flowers 0c5c1c3db4 Remove coupon_total from order stats table (https://github.com/woocommerce/woocommerce-admin/pull/1975)
* Remove coupons_total from order stats table

* Replace discount amount with coupon objects in stat tests
2019-04-03 09:37:17 +08:00
Ron Rennick c061bfd925 Merge pull request woocommerce/woocommerce-admin#1977 from woocommerce/fix/1783
lookup product title in order meta if product has been deleted
2019-04-02 16:13:47 -03:00
Ron Rennick 1d0e78e626 code alignment for linter 2019-04-02 15:20:23 -03:00
Jeff Stieler 18a2dd01cb Add variations to low stock query. 2019-04-02 11:37:24 -06:00
Jeff Stieler 6f2c11270b Clear cache when checking order count for the first two milestones. 2019-04-02 08:35:28 -06:00
Jeff Stieler e6e905919d Fix conditional for hooking the first two milestones action. 2019-04-02 08:34:22 -06:00
Ron Rennick 3a8ddbe3aa lookup product title in order meta if product has been deleted 2019-04-02 09:24:52 -03:00
Joshua T Flowers b03362da68 Cast order totals as floats when calculating net total (https://github.com/woocommerce/woocommerce-admin/pull/1945) 2019-04-02 13:43:12 +08:00
Jeff Stieler 632e4fd09d Add filter for order milestone statuses. 2019-04-01 16:37:55 -06:00
Jeff Stieler b9e02d0b61 Change 100+ order milestone message and CTA. 2019-04-01 16:37:54 -06:00
Jeff Stieler f610223708 Check for new order milestones every hour.
Only show one notification at a time.
2019-04-01 16:37:54 -06:00
Jeff Stieler 0893198f37 Add more orders count milestone notifications.
Also avoid notifications for thresholds passed before the plugin was activated.
2019-04-01 16:37:53 -06:00
Jeff Stieler e5a4a45ae5 Add milestone note for the store’s first 10 orders. 2019-04-01 16:37:53 -06:00
Jeff Stieler a31d0114cb Add first order milestone notification. 2019-04-01 16:37:53 -06:00
Jeff Stieler 57957633f4 Fix WC_Admin_Note default content data.
Arrays get serialized differently and object is required for successful retrieval.
2019-04-01 16:32:38 -06:00
Ron Rennick f730a8ec5d Only check for unsnooze note scheduled action in admin_init 2019-04-01 11:31:28 -03:00
Albert Juhé Lluveras 17141cd4d8 Update Variations controller filter names (https://github.com/woocommerce/woocommerce-admin/pull/1949) 2019-04-01 10:09:53 +02:00
Albert Juhé Lluveras 458f3ed065 Fix SKU sorting in the Variations report when a comparison is active (https://github.com/woocommerce/woocommerce-admin/pull/1952)
* make is sortable true.

* Variations endpoint: Fix sorting by SKU when there is an active comparison

* Cleanup

* Extract FROM parameter logic to 'get_from_sql_params'

* Remove unnecessary 'get_order_by_sql_params' from Products and Variations data stores
2019-04-01 10:09:45 +02:00
Joshua T Flowers 9c3faea12f Refactor notes controller and add ordering params (https://github.com/woocommerce/woocommerce-admin/pull/1878)
* Separate notes controller request args and add collection params

* Fix page param var

* Fix collection params sanitization

* Allow array of note types to be queried

* Add order and orderby collection params to notes controller

* Allow sorting by order and orderby params in notes data store

* Make sure notes are ordered by date and unread matches inbox note types

* Allow status or type params to use an array of items

* Add tests for notes ordering

* Remove unnecessary query arg assignment in the notes data store

* Update get_notes_count to use array for status and type
2019-04-01 10:53:34 +08:00
Joshua T Flowers 5324f223b6 Check for existence of orders before adding historical data note (https://github.com/woocommerce/woocommerce-admin/pull/1943)
* Check for existence of orders before adding historical data note

* Don't add historical data note on version upgrade
2019-04-01 10:25:53 +08:00
Joshua T Flowers 42ddfc0108 Add coupons count to data store and hook up to summary numbers in orders report (https://github.com/woocommerce/woocommerce-admin/pull/1912)
* 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
2019-04-01 10:16:57 +08:00
ronakganatra9 3cddc714c6 issue fix woocommerce/woocommerce-admin#1801 SKU filter issue fixed. (https://github.com/woocommerce/woocommerce-admin/pull/1837)
* issue fix woocommerce/woocommerce-admin#1801 SKU filter issue fixed.

* make is sortable true.

* phpcs error fix.

* Fix PHPCS errors and warnings.

* Fix PHPCS errors and warnings.

* Update client/analytics/report/products/table-variations.js

Co-Authored-By: ronakganatra9 <ronakganatra9@gmail.com>

* Update includes/data-stores/class-wc-admin-reports-variations-data-store.php

Co-Authored-By: ronakganatra9 <ronakganatra9@gmail.com>

* changed postmeta.meta_value to meta_value
2019-03-31 20:53:48 +02:00
Joshua T Flowers 6ff9d0673a Add low product stock indicator (https://github.com/woocommerce/woocommerce-admin/pull/1866)
* Move product low stock count to controller param instead of data store

* Add totalCount to items API

* Extract unread indicators to separate file and add unread stock

* Trim initial search variable in wp_query

* Parse low stock option as an absolute integer

* Fix low stock meta comparison with product specific low stock amount

* Make group by query function static

* Check for empty strings and null values for product low_stock_amount
2019-03-29 10:45:19 +08:00
Paul Sealock 3dd99108fa Customers API: fix exact match params 2019-03-29 11:40:37 +13:00
Paul Sealock 0c4e4717d9 Merge pull request woocommerce/woocommerce-admin#1936 from woocommerce/fix/rebuild-inifinite-loop
Sync: Avoid infinite loop when REPLACE-ing SQL rows
2019-03-29 09:36:39 +13:00
Paul Sealock f9ab21e745 Sync: Avoid infinite loop when REPLACE-ing SQL rows 2019-03-28 16:19:11 +13:00
Joshua T Flowers 929ad8bf63 Remove unused categories in orders data store (https://github.com/woocommerce/woocommerce-admin/pull/1928) 2019-03-28 10:25:00 +08:00
Joshua T Flowers 896a790d8f Check if customer creation date is not null before formatting (https://github.com/woocommerce/woocommerce-admin/pull/1926) 2019-03-27 11:46:47 +08:00
Jeff Stieler 0013495fff Orders endpoint: add LIMIT clause to the order number query. 2019-03-26 11:22:50 -06:00
Joshua T Flowers ebac101b51 Don't query products all products for empty categories (https://github.com/woocommerce/woocommerce-admin/pull/1911) 2019-03-26 13:21:46 +08:00
ronakganatra9 ce6fcdabbe woocommerce/woocommerce-admin#1830 Fix/1830 move all note php files to subfolder (https://github.com/woocommerce/woocommerce-admin/pull/1879)
* added notes/ folder and moved notes file in it..

* Path changes according to new folder.

* typo correct
2019-03-26 00:18:34 +01:00
Joshua T Flowers f5568b905b Automatically update versions on build (https://github.com/woocommerce/woocommerce-admin/pull/1877)
* Get plugin file version for version compare

* Add version update script before build

* Replace version getter with a defined version constant
2019-03-25 14:43:26 +08:00
Jeff Stieler 2d8f8f9137 Merge pull request woocommerce/woocommerce-admin#1848 from woocommerce/add/1756-snooze-admin-notes
Add "remind me later" functionality to StoreAlert component.
2019-03-21 08:41:44 -06:00
Albert Juhé Lluveras 1cf134d1fa Fix PHP notices on orders data store (https://github.com/woocommerce/woocommerce-admin/pull/1870) 2019-03-21 15:35:25 +01:00