Commit Graph

371 Commits

Author SHA1 Message Date
Jeff Stieler b4d71224e6 Remove unnecessary rest API init action. (https://github.com/woocommerce/woocommerce-admin/pull/4691) 2020-06-24 14:10:54 -07:00
Bec Scott 89342be595 Check that the possibly_add_note function exists before calling it (https://github.com/woocommerce/woocommerce-admin/pull/4680)
Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-24 13:38:43 -07:00
Jeff Stieler 32c99fa4ea Add version 1.3.0 option update callback. (https://github.com/woocommerce/woocommerce-admin/pull/4668) 2020-06-24 08:23:35 -04:00
Bec Scott b185b5ae1f Add check that the order being queried is a valid order (https://github.com/woocommerce/woocommerce-admin/pull/4630)
* Add check that the order being queried is a valid query

* Return null instead of an empty string

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-23 08:59:11 +10:00
Daniel Rey López 86d2bc3837 Fix WCPay sometimes not appearing on the task list (https://github.com/woocommerce/woocommerce-admin/pull/4647)
* Fix WCPay sometimes not appearing on the task list

* preload general settings

Co-authored-by: Paul Sealock <psealock@gmail.com>
2020-06-23 10:18:35 +12:00
Jeff Stieler 7c57978c7e Remove duplicate/redundant inbox note after first order received. (https://github.com/woocommerce/woocommerce-admin/pull/4659) 2020-06-22 16:00:39 -04:00
Fernando e0df6fa899 Inbox panel - Actioned inbox notifications now are visible (https://github.com/woocommerce/woocommerce-admin/pull/4621)
* Fix: Actioned inbox notifications now are visible

This commit fixes the actioned inbox notifications, now they are always visible.

* Fixed getUnreadNotes method

This commit fixes the getUnreadNotes method since it was returning the wrong information.

* Added two @todo

This commit adds two @todo referring to a few changes to do after implementing pagination

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2020-06-22 11:53:36 -03:00
Fernando 9a3b68aca9 Added new notification to customize the client store with blocks (https://github.com/woocommerce/woocommerce-admin/pull/4616)
This commit adds a new notification to customize the client store with WooCommerce blocks

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2020-06-22 09:49:24 -03:00
Bec Scott 2f60aeed2f Change the "Deactivate plugin" admin note to be informational (https://github.com/woocommerce/woocommerce-admin/pull/4629)
Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-19 10:39:25 +10:00
Bec Scott 5529156480 Add a 30 day upper limit to the need some inspiration admin note (https://github.com/woocommerce/woocommerce-admin/pull/4623)
Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-19 09:53:53 +10:00
Ron Rennick 8a22576a95 Count total unique customers instead of new/returning in order stats (https://github.com/woocommerce/woocommerce-admin/pull/4430)
* 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>
2020-06-18 20:43:56 +03:00
Jeff Stieler 9794fed139 Disable task list on analytics dashboard when homepage is enabled. (https://github.com/woocommerce/woocommerce-admin/pull/4617)
Regression from 8a2750c973.
2020-06-18 10:56:30 -04:00
Bec Scott d36fdc01d7 Add Insight note (https://github.com/woocommerce/woocommerce-admin/pull/4516)
* Add Insight note

* Change actioned_label to actioned_text

* Move actioned text up a level

* Fix comment

* Rename insight class

* Add deny action to insight first sale and fix the button actions

* fix spacing

* Tweak conditions in the inbox card

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-18 11:28:27 +10:00
Paul Sealock 03db742cdd Currency package: make naming clearer (https://github.com/woocommerce/woocommerce-admin/pull/4560) 2020-06-18 11:33:40 +12:00
Jeff Stieler dd54268ad7 Master -> main. (https://github.com/woocommerce/woocommerce-admin/pull/4618) 2020-06-17 13:39:41 -04:00
Joshua T Flowers 21d65f4bc8 Add pre-launch checklist note on task list completion (https://github.com/woocommerce/woocommerce-admin/pull/4532) 2020-06-16 19:10:49 +03:00
Jeff Stieler f2c8f34d22 Add Tool to Clear/Invalidate Analytics Cache (https://github.com/woocommerce/woocommerce-admin/pull/4580)
* Add "clear cache" button to WooCommerce Tools page.

* Hook up cache clear tool button.

* Add success message to clear cache tool.
2020-06-16 09:47:58 -04:00
Jeff Stieler d591d77a53 Fix deleted products breaking Downloads Report (https://github.com/woocommerce/woocommerce-admin/pull/4582)
* Don't attempt order download information retrieval when the product has been deleted.

* Handle display of download names when product has been deleted.

* Add deleted product test case for download report endpoint.

* Fix date() usage in download report tests.
2020-06-16 09:47:27 -04:00
Jeff Stieler 3085680eb3 Fix column used to JOIN products to their categories. (https://github.com/woocommerce/woocommerce-admin/pull/4570)
Match term_id to category_id after JOINing through the term taxonomy table.
2020-06-16 09:42:54 -04:00
Timmy Crawford 204723caf5 Release 1.3.0-beta.1 (https://github.com/woocommerce/woocommerce-admin/pull/4587)
* Release 1.3.0-beta.1

* udpate changelog with '@'

Co-authored-by: Paul Sealock <psealock@gmail.com>
2020-06-16 19:58:24 +12:00
Jason Conroy 4cf586c4f1 Add Coupon feature (https://github.com/woocommerce/woocommerce-admin/pull/4526)
* Handle new object for posts and recommendations

* Set breadcrumb parent for woocommerce-coupons to be woocommerce-marketing

* Add main coupon wrapping component

* Render coupon wrapper element below coupon table using wp-admin-scripts

* Finish off implementing category param for data store resolvers

* Create a helper trait for legacy coupons

* Add coupon related titles and descriptions

* Add note for the coupons being moved

* Allow for querying by note name in the notes Data Store

* Revamp coupon moved trait

* Add the new note only if we don't have an unactioned note and perform a redirect to ensure menu updates

* set_icon is deprecated

* Move coupon menu, adding a note for customers

* Translate title and descriptions

* Whitespace

* Account for coupon functionality being disabled

* Hide legacy menu before redirect

* Don’t keep adding the note if customer dismisses it from inbox

* Move behind feature flag

* Add note if feature enabled

* Add filter to override coupon feature

* Tweak option name to refer to wc_admin

To help with finding etc.

* use css variables

* Add the new note only if we don't have an unactioned note

* Switch the filter logic so `false` turns off the feature

This is a bit more intuitive when utilizing the filter

* Remove extraneous string and add trailing new lines

* Use correct posts object in tests

* Revert accidental removal of where_types

* Add coupons category to RecommendedExtensions

* Use 1.1 api to get categorized recommendations

* Add missing text domains

* Fix menu handling to point to woocommerce-marketing

* Only load coupon scripts on the coupon page

* Rework marketing menu logic to register pages more properly

* Use correct wc-admin path for marketing page

* Remove separate feature flag

WC Admin has existing feature flags to load enable/disable the feature

* Only set the coupon parent to marketing when the feature is enabled

* Only load coupon feature if marketing feature is enabled

Co-authored-by: Dan Bitzer <danielbitzer@gmail.com>
Co-authored-by: Jeremy Pry <jeremy.pry@gmail.com>
2020-06-16 12:00:41 +09:30
Bec Scott 4a73d136de Onboarding profile rule processor (https://github.com/woocommerce/woocommerce-admin/pull/4498)
# Conflicts:
#	src/RemoteInboxNotifications/GetRuleProcessor.php

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-16 10:26:55 +10:00
Bec Scott e4bc71ffb8 Add product count rule (https://github.com/woocommerce/woocommerce-admin/pull/4334)
* Product count rule

# Conflicts:
#	src/RemoteInboxNotifications/GetRuleProcessor.php

# Conflicts:
#	src/RemoteInboxNotifications/GetRuleProcessor.php

* Use WC class to get products instead of a custom query

* Remove ProductsProvider

* Use total in product query

* Updates to suit parent branch

* Fixed return value

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-16 10:22:35 +10:00
Bec Scott e6a5866690 Add stored state between remote inbox notification runs (https://github.com/woocommerce/woocommerce-admin/pull/4260)
* Fix comment and convert if..elseif to switch

* Take out intermediate function

* make ProductsProvider a non-static class

* Adds RINDS data rule, and set up for woocommerce/woocommerce-admin#4223

# Conflicts:
#	src/RemoteInboxNotifications/EvaluateAndGetStatus.php

* Fix rebase issues

# Conflicts:
#	src/RemoteInboxNotifications/DataRuleProcessor.php

* Split product data setup out, use product query

# Conflicts:
#	src/RemoteInboxNotifications/RemoteInboxNotificationsEngine.php

* Remove RINDS references

* Remove unused products provider

* Add validation to the data rule processor

* Fix some issues that were failing tests

* Remove unused var

* Make data setup for products return the data object

* Rework product query

* Rename $data to $stored_state

* Fix condition in query

* Add time after wcadmin activation rule (https://github.com/woocommerce/woocommerce-admin/pull/4337)

* Add wcadmin active for rule

# Conflicts:
#	src/RemoteInboxNotifications/GetRuleProcessor.php

* Use DAY_IN_SECONDS constant

* Fix logic error

* Fix test naming

Co-authored-by: Rebecca Scott <me@becdetat.com>

* Add order count rule (https://github.com/woocommerce/woocommerce-admin/pull/4335)

* Order count rule

# Conflicts:
#	src/RemoteInboxNotifications/GetRuleProcessor.php

* Use default provider

Co-authored-by: Rebecca Scott <me@becdetat.com>

* Use correct 'return' value

* Move back to using a SQL query to get the product count

as the WC_Product_Query has issues during the product publish lifecycle. The product is initially published with a taxonomy term of uncategorized which isn't accepted by the query's filter.

* Change back to using WC_Product_Query, and do prelim init via admin_init action

* If there are no specs when running the engine, run the poller first then retry

* Fix some failing tests

* Don't perform init if we're feature toggled off

* Move feature check inside RIN engine class because the feature filter isn't ready during FeaturePlugin init

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-16 09:42:35 +10:00
Joshua T Flowers 59bb4e8dbe Add note on first order creation (https://github.com/woocommerce/woocommerce-admin/pull/4531)
* Add note on first order creation

* Add note when first order is created manually
2020-06-15 08:45:06 +03:00
Paul Sealock fea332b5b4 Change homepage to homesceen (https://github.com/woocommerce/woocommerce-admin/pull/4549) 2020-06-15 14:17:12 +12:00
Bec Scott 6ffe5cccf7 Add Home Screen Feedback admin note (https://github.com/woocommerce/woocommerce-admin/pull/4527)
* Add Home Screen Feedback admin note

* Fix the file comment

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-15 09:27:43 +10:00
Bec Scott 2579eb28c3 Add Need some inspiration admin note (https://github.com/woocommerce/woocommerce-admin/pull/4509)
* Add Need some inspiration admin note

* Fix action URL

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-15 09:23:50 +10:00
Jason Conroy 819e81677c Fix wc-admin registered page breadcrumb path (https://github.com/woocommerce/woocommerce-admin/pull/4563) 2020-06-13 07:25:43 +09:30
Daniel Bitzer ca517af7c0 Make it possible (far easier) to add menu items under 'Marketing' (https://github.com/woocommerce/woocommerce-admin/pull/4561)
* Make it possible to add marketing submenu pages

* Always set the parent value for marketing pages

* phpcs

* Add ‘overview’ to breadcrumb and path

* Fix permission check conditional

* Add parent menu at priority of 9, before other items are usually added

* Revert to use `/marketing` as the page path
2020-06-13 07:25:15 +09:30
Fernando 0fc1ec29fb Added new notification to choose a niche (https://github.com/woocommerce/woocommerce-admin/pull/4441)
* Added new notification to choose a niche

This commit adds a new notification to choose a niche

# Conflicts:
#	src/Events.php

* Bugfix: removed wrong validation

* Added validation for onboarding_profile

This commits adds a validation to confirm that the onboarding_profile is set.

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2020-06-12 15:49:41 -03:00
Paul Dechov 1a98cd0dbc Task list: Add more Stripe supported countries (https://github.com/woocommerce/woocommerce-admin/pull/4545)
* Show Stripe task for recently supported countries

* Add Puerto Rico as supported 'country', included in US by Stripe

* Add preview country India to Stripe supported list
2020-06-12 14:03:47 -04:00
Joshua T Flowers 0f4d099b79 Add real time order alerts note for mobile app (https://github.com/woocommerce/woocommerce-admin/pull/4541)
* Add real time order alerts note for mobile app

* Fix typos
2020-06-12 11:01:06 +03:00
Jason Conroy 8f291d2ec3 Refactor marketing components to make more reusable. (https://github.com/woocommerce/woocommerce-admin/pull/4524)
* refactor slider component to be functional

* Refactor RecommendedExtensions

* Refactor KnowledgeBase

* Refactor API to account for component location changes and categories

* Fix missing param description

* Remove unnessary use

* Pass down the category of the received plugins.

* Store the recommended plugins for the different categories separately.

* Pass down the category.

* Add new functions to get by category.

* set categories

* Handle new object for posts and recommendations

* Update tests

* Finish off implementing category param for data store resolvers

* Update js tests

* Fix incorrect reference to kb component

Co-authored-by: Dan Bitzer <danielbitzer@gmail.com>
2020-06-12 16:47:17 +09:30
Joshua T Flowers 046f6c8bd4 Create action for installing and activate plugins (https://github.com/woocommerce/woocommerce-admin/pull/4473)
* Add installAndActivatePlugins method to plugin store

* Use new install/actiate method in Plugins component

* Refactor benefits page to use await

* Refactor business details page to use new install method

* Replace Plugins component in Jetpack CTA

* Format and throw errors in plugin data store

* Add generic response handling function

* Add default error messages to plugin API
2020-06-12 09:38:33 +03:00
Jason Conroy 2aa59bc8e6 Update hubspot-for-woocommerce extension info (https://github.com/woocommerce/woocommerce-admin/pull/4551) 2020-06-12 11:47:25 +09:30
Bec Scott b3692e8ec4 Add Learn more about Product Settings note (https://github.com/woocommerce/woocommerce-admin/pull/4515)
* Add Learn more about Product Settings note

* Fix logic around new merchants vs existing, fix product count

* Refactor to use admin_init action, use WC_Product_Query

* Don't try to count products when recording added product date

* Rename function

* Completely drop recording product add times and just use oldest product date instead

* Remove onboarding update check, checking the profile is sufficient

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-12 11:17:32 +10:00
Bec Scott 1b312186f6 Remove use welcome message statement (merge fail) (https://github.com/woocommerce/woocommerce-admin/pull/4550)
Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-11 09:09:51 -07:00
Bec Scott adce0b4dd1 Admin note for online clothing stores (https://github.com/woocommerce/woocommerce-admin/pull/4508)
* Admin note for online clothing stores

* Refactor identifying if the store is in the fashion industry

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-11 10:48:08 +10:00
Paul Sealock d7aec170f1 Runtime feature config override (https://github.com/woocommerce/woocommerce-admin/pull/4523) 2020-06-11 12:26:20 +12:00
Bec Scott 8854a71d9c Add First product admin note (https://github.com/woocommerce/woocommerce-admin/pull/4525)
* Add First product admin note

* Add "not setting up for client" rule

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-11 10:08:26 +10:00
Jeff Stieler 9be6bdd841 Fix loading of RTL styles in chunks. (https://github.com/woocommerce/woocommerce-admin/pull/4542) 2020-06-10 18:06:17 -05:00
Jeff Stieler 8a2750c973 Migrate user store to wp.data (https://github.com/woocommerce/woocommerce-admin/pull/4505)
* Initial user preferences custom hook (wc meta).

* Organize dependencies.

* Specify dependencies in useSelect() call.

* Remove specifying preference keys.

There's currently no performance benefit to be had.

* Add HoC for hydrating current user data.

* Add user prefs update method.

* Export user prefs hook and HoC in data package.

* Handle error condition when updating user preferences.

* Use closure to get user ID for prefs update.

* Refactor analytics dashboard to use new user hook.

* Refactor ReportTable component to use new user hook.

* Move prop access to top of function component.

* Add todo for potential manual resolution logic.

* Refactor DashboardCharts component to use new user preferences hook.

* Move code out of functional component where possible.

* Fix chart interval query property.

* Refactor Leaderboards component to use new user preferences hook.

* Move code out of functional component where possible.

* Refactor Inbox panel to use user prefs hook.

@todo - updating last read isn't working.

* Use user prefs hook in StatsOverview component.

* Export user preferences store name.

* Use new store for unread inbox indicator.

* Hydrate current user data higher up in the app.

* Update "last read" timestamp in inbox panel.

* Fix StatsOverview test.

* Remove unused dispatch method from StorePerformance component.

* Remove now defunct user methods from wc-api spec.

* Add tests for isRequesting.

* JSON decode WC meta on updated user object.

* Test user prefs retrieval and save.

* Remove todo comment.

* Use user prefs hook in Jetpack install CTA on homepage.
2020-06-10 11:46:46 -05:00
Matt Sherman 369072b7df Inbox: Remove (duplicate) dismiss button on tracking opt-in note (https://github.com/woocommerce/woocommerce-admin/pull/4500)
* Do not add Dismiss button to tracking opt-in note
* Remove `tracking-dismiss` action from DB on upgrade
2020-06-10 10:16:56 -04:00
Fernando 289636abba Modified layout.js withSelect (https://github.com/woocommerce/woocommerce-admin/pull/4480)
* Changed some API responses

This commit adds changes to some API responses

* Changed "woocommerce_task_list_complete" loading in frontend

* Updated "$migrated_options" array

This commit updates "$migrated_options" array and adds a deletion control

* Changed "taskListComplete" in customizable.js

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2020-06-10 10:33:30 -03:00
Fernando d68c80ed15 Added new notification to ask about starting a dropshipping business. (https://github.com/woocommerce/woocommerce-admin/pull/4455)
* Added new notification to ask about starting a dropshipping business.

This commit adds a new notification to ask the client if they are considering starting a dropshipping business.

* Bugfix: corrected some problems in this note's logic

This commit adds a new validation for onboarding_profile, it removes an incorrect validation and changes the action's name

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2020-06-10 10:32:12 -03:00
Fernando e19d3cfbd4 Update version to 1.2.3 and adjust changelog (https://github.com/woocommerce/woocommerce-admin/pull/4435)
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2020-06-10 10:22:28 -03:00
Claudio Sanches 55a9bdbc11 Fixed missing 'items' in collection params (https://github.com/woocommerce/woocommerce-admin/pull/4484) 2020-06-09 15:35:31 -07:00
Jason Conroy 2f6decd15e Correctly set parent path when a wc-admin registered page is used as a breadcrumb parent (https://github.com/woocommerce/woocommerce-admin/pull/4490)
* Correct set parent path when wc-admin registered page is used as a breadcrumb parent

* Add some tests for PageController->get_breadcrumbs()

* Fix typos
2020-06-05 15:56:32 +09:30
Bec Scott a3ae3569c3 Remote inbox notification delivery (https://github.com/woocommerce/woocommerce-admin/pull/4143)
* Poll and persist specs

* Process specs into admin notes

* Add send at time rule processor

* Fix style issues

* Clear actions before recreating them to avoid dupes

* Trigger the RINDS engine when a plugin is activated

* Unit test SendAtTimeRuleProcessor

* Implement plugins activated rule processor

* Don't throw exception for unrecognised rule type. Also unit test around this.

* add url_is_action_query to tell whether to wrap the URL in wc_admin_url() call or not

* Add NOT rule

* revert change to install.php

* Drop unimplemented resend after dismissal rule

* Add OR rule

* Explicitly make "fail" a type of rule that can be applied to a spec

* Add plugin version rule processor

* Tidy up, don't need to pass $spec everywhere

* Remove meta record for action state - not really needed

* Move spec runner into it's own class, add some checks around re-unactioning a note

* Replace if..else with switch

* Just update the option

* Check that the JSON coming in is an array

* Change OR rule to accept an array of operands

* Add Pass rule processor

* Fix specs that are initially not published

* Rename send at rule to publish after

* Add publish before rule

* Remove unused interface

* Can't use PHP7's anonymous classes

* New notification: How to draw attention to your online store

* Add feature flag for rule-base inbox notes

* rename everything to RemoteInboxNotifications from RINDS

* Fix merge fail

* fix test

* Change preunactioned to pending

* Move feature flag check into Events.php

* Refactor reading a data source

* Rename poll_data_sources function

* Refactor EvaluateAndGetStatus::evaluate to take the rule evaluator directly

* Check that the response body exists

* Add validation and defensive checks

* Add rule processor interface

* Update note created time on status change

* Move non-test dependencies into processor constructors

* Update to proposed live URL

* Remove setting icon as it's being deprecated

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-05 11:51:25 +10:00