Commit Graph

771 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
Bec Scott b4c735f0de Jetpack stats on home page (https://github.com/woocommerce/woocommerce-admin/pull/4481)
* Get Jetpack stats appearing on the home page

* Update hidden stats in stats overview test

* Make jetpack stats appear by default

* Add reportUrlType to dashboard store performance area

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-05 09:14:55 +10:00
Paul Sealock 7f8149563b Homescreen: Add option to disable (https://github.com/woocommerce/woocommerce-admin/pull/4450)
* Add homescreen option

* change opt name to homescreen
2020-06-04 08:42:30 +12:00
Fernando aefbafea9b Inbox notification: layout changes (https://github.com/woocommerce/woocommerce-admin/pull/4218)
* Inbox notification: Added layout changes (https://github.com/woocommerce/woocommerce-admin/pull/4256)

* Added notes layout and image to the API

Added note layout and note image to the API and the DB

* Unit test modified

Unit test where modified to adapt them to the new elements

* Changed the frontend following the new designs.

The fronted was changed to follow the new inbox messages design.

* Changed default layout type in DB

* Added all the requested visual element

Changed the cards' js, css and actions to achieve the visual requirements

* Added "layout" and "image" to inboxQuery

* Modal confirmation buttons repaired

* Added "layout" and "image" to docs examples.

* Removed "updateNote" from action.js

Removed "updateNote" from action.js, I left it by mistake.

* Spelling error corrected

The button text "Dismiss all message" was corrected

* noteName removed and icon added to make code reviewing easier

This commit removes the "noteName" from card.js and adds the icon to make code reviewing easier

* Dismiss action button refactor

Refactor of the dismiss action button in the InboxNoteCard class

* Removed unnecessary control

* Destructured all the note properties

* Colors replaced by existing variable

* Removed setting of layout and image in the creation of the notes

* Removed blank lines added by mistake

* Close dismiss dropdown when clicking away from the  popover.

* Prevented the closing of the inbox panel with an action in the modal

* Added small design changes

* Removed unused "Gridicon" import

* Prevent showing the image tag when the layout is blank

* The method name getDismissButton was changed to getDismissConfirmationButton

* Removed unnecessary vendor-prefixed properties

* Improved note filtering in unreadNotes method

* Update client/header/activity-panel/panels/inbox/style.scss

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Update client/header/activity-panel/panels/inbox/style.scss

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Update client/header/activity-panel/panels/inbox/style.scss

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Update client/header/activity-panel/panels/inbox/style.scss

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Inbox notification: Remove icons (https://github.com/woocommerce/woocommerce-admin/pull/4258)

* Info icon removed from inbox notifications

The info icon was removed from inbox notifications

# Conflicts:
#	src/Notes/DataStore.php

* Removed "icon" from inboxQuery

* Tests repeared

Some problems with the unit tests were repaired in this commit

# Conflicts:
#	docs/examples/activity-panel-inbox.md

# Conflicts:
#	tests/api/admin-notes.php

* Removed icon from card.js

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>

* Inbox notification: Add dismiss functionality (https://github.com/woocommerce/woocommerce-admin/pull/4262)

* Added is_deleted param to soft delete

# Conflicts:
#	src/API/Notes.php
#	src/Install.php
#	src/Notes/DataStore.php
#	src/Notes/WC_Admin_Note.php
#	src/Notes/WC_Admin_Notes.php
#	tests/api/admin-notes.php

* Added the Dismiss functionality

# Conflicts:
#	client/header/activity-panel/panels/inbox/action.js

* Where clause repeared

* Added Snackbar after action.

* API modified to dismiss notes

* Small refactor in "get_item" method

This commit adds a small refactor in "get_item" method to use "prepare_note_data_for_response"

* Added missing logic to Dismiss note

This commit adds missing client logic to Dismiss note.

# Conflicts:
#	client/header/activity-panel/panels/inbox/action.js
#	client/header/activity-panel/panels/inbox/card.js

* Moved the delete action to WC_Admin_Notes.php

The delete action was moved to WC_Admin_Notes.php to follow the pattern.

* Added changes to dismiss messages

This commit addeds changes to the  messages soft delete.

* DataStore.php repaired

This commits adds some code that was deleted by mistake and the param "is_deleted" has been escaped.

* Spelling error corrected

The button text "Dismiss all message" was corrected

* Repaired "get_notes_where_clauses" method

A problem with the deleted notes was repaired

* Added a comment to DataStore.php

* Stopped sending the "dismissType" to action.js

The "dismissType" is not sent to action.js anymore.

* Bugfix: now the method get_notes_with_name also returns deleted notes

* Bugfix: repaired empty notification list

This commit repairs a bug that happens when there isn't anything in the inbox notification list

* Small refactor to not use "some" Lodash method anymore

* Small refactor in rednderNotes method

* Added check to set_layout

* Added small refactor to delete_all_notes method

* Fixed code comment error

* Bugfix: repaired the "delete_note" call

* Inbox notification: Added layout changes (https://github.com/woocommerce/woocommerce-admin/pull/4256)

* Added notes layout and image to the API

Added note layout and note image to the API and the DB

* Unit test modified

Unit test where modified to adapt them to the new elements

* Changed the frontend following the new designs.

The fronted was changed to follow the new inbox messages design.

* Changed default layout type in DB

* Added all the requested visual element

Changed the cards' js, css and actions to achieve the visual requirements

* Added "layout" and "image" to inboxQuery

* Modal confirmation buttons repaired

* Added "layout" and "image" to docs examples.

* Removed "updateNote" from action.js

Removed "updateNote" from action.js, I left it by mistake.

* Spelling error corrected

The button text "Dismiss all message" was corrected

* noteName removed and icon added to make code reviewing easier

This commit removes the "noteName" from card.js and adds the icon to make code reviewing easier

* Dismiss action button refactor

Refactor of the dismiss action button in the InboxNoteCard class

* Removed unnecessary control

* Destructured all the note properties

* Colors replaced by existing variable

* Removed setting of layout and image in the creation of the notes

* Removed blank lines added by mistake

* Close dismiss dropdown when clicking away from the  popover.

* Prevented the closing of the inbox panel with an action in the modal

* Added small design changes

* Removed unused "Gridicon" import

* Prevent showing the image tag when the layout is blank

* The method name getDismissButton was changed to getDismissConfirmationButton

* Removed unnecessary vendor-prefixed properties

* Improved note filtering in unreadNotes method

* Update client/header/activity-panel/panels/inbox/style.scss

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Update client/header/activity-panel/panels/inbox/style.scss

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Update client/header/activity-panel/panels/inbox/style.scss

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Update client/header/activity-panel/panels/inbox/style.scss

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Inbox notification: Remove icons (https://github.com/woocommerce/woocommerce-admin/pull/4258)

* Info icon removed from inbox notifications

The info icon was removed from inbox notifications

# Conflicts:
#	src/Notes/DataStore.php

* Removed "icon" from inboxQuery

* Tests repeared

Some problems with the unit tests were repaired in this commit

# Conflicts:
#	docs/examples/activity-panel-inbox.md

# Conflicts:
#	tests/api/admin-notes.php

* Removed icon from card.js

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>

* Improved error handling for the set_layout method

* Bugfix: fixed error handling clicks inside dropdowns

* Bugfix: repaired dropdown onBlur handler

This commit repairs a weird behavior that the dropdown onBlur handler method had sometimes.

* Text error changed

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Inbox notification: Add undo snackbar button after deletion (https://github.com/woocommerce/woocommerce-admin/pull/4281)

* Added undo snakbar button for a single note

# Conflicts:
#	client/wc-api/notes/mutations.js
#	src/Notes/DataStore.php
#	src/Notes/WC_Admin_Notes.php

* Added a button to undo the deletion of all notes

# Conflicts:
#	client/wc-api/notes/operations.js
#	src/API/Notes.php

* Code adapted to make code reviewing easier

There was some code that also was present in another PR, that code was removed to make code reviewing easier.

* UnitTest added

This commit adds some unit tests

* Added verification for API response

* Added casting to $note_id

* Inbox notification: Added layout changes (https://github.com/woocommerce/woocommerce-admin/pull/4256)

* Added notes layout and image to the API

Added note layout and note image to the API and the DB

* Unit test modified

Unit test where modified to adapt them to the new elements

* Changed the frontend following the new designs.

The fronted was changed to follow the new inbox messages design.

* Changed default layout type in DB

* Added all the requested visual element

Changed the cards' js, css and actions to achieve the visual requirements

* Added "layout" and "image" to inboxQuery

* Modal confirmation buttons repaired

* Added "layout" and "image" to docs examples.

* Removed "updateNote" from action.js

Removed "updateNote" from action.js, I left it by mistake.

* Spelling error corrected

The button text "Dismiss all message" was corrected

* noteName removed and icon added to make code reviewing easier

This commit removes the "noteName" from card.js and adds the icon to make code reviewing easier

* Dismiss action button refactor

Refactor of the dismiss action button in the InboxNoteCard class

* Removed unnecessary control

* Destructured all the note properties

* Colors replaced by existing variable

* Removed setting of layout and image in the creation of the notes

* Removed blank lines added by mistake

* Close dismiss dropdown when clicking away from the  popover.

* Prevented the closing of the inbox panel with an action in the modal

* Added small design changes

* Removed unused "Gridicon" import

* Prevent showing the image tag when the layout is blank

* The method name getDismissButton was changed to getDismissConfirmationButton

* Removed unnecessary vendor-prefixed properties

* Improved note filtering in unreadNotes method

* Update client/header/activity-panel/panels/inbox/style.scss

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Update client/header/activity-panel/panels/inbox/style.scss

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Update client/header/activity-panel/panels/inbox/style.scss

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Update client/header/activity-panel/panels/inbox/style.scss

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Inbox notification: Remove icons (https://github.com/woocommerce/woocommerce-admin/pull/4258)

* Info icon removed from inbox notifications

The info icon was removed from inbox notifications

# Conflicts:
#	src/Notes/DataStore.php

* Removed "icon" from inboxQuery

* Tests repeared

Some problems with the unit tests were repaired in this commit

# Conflicts:
#	docs/examples/activity-panel-inbox.md

# Conflicts:
#	tests/api/admin-notes.php

* Removed icon from card.js

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>

* Inbox notification: Add dismiss functionality (https://github.com/woocommerce/woocommerce-admin/pull/4262)

* Added is_deleted param to soft delete

# Conflicts:
#	src/API/Notes.php
#	src/Install.php
#	src/Notes/DataStore.php
#	src/Notes/WC_Admin_Note.php
#	src/Notes/WC_Admin_Notes.php
#	tests/api/admin-notes.php

* Added the Dismiss functionality

# Conflicts:
#	client/header/activity-panel/panels/inbox/action.js

* Where clause repeared

* Added Snackbar after action.

* API modified to dismiss notes

* Small refactor in "get_item" method

This commit adds a small refactor in "get_item" method to use "prepare_note_data_for_response"

* Added missing logic to Dismiss note

This commit adds missing client logic to Dismiss note.

# Conflicts:
#	client/header/activity-panel/panels/inbox/action.js
#	client/header/activity-panel/panels/inbox/card.js

* Moved the delete action to WC_Admin_Notes.php

The delete action was moved to WC_Admin_Notes.php to follow the pattern.

* Added changes to dismiss messages

This commit addeds changes to the  messages soft delete.

* DataStore.php repaired

This commits adds some code that was deleted by mistake and the param "is_deleted" has been escaped.

* Spelling error corrected

The button text "Dismiss all message" was corrected

* Repaired "get_notes_where_clauses" method

A problem with the deleted notes was repaired

* Added a comment to DataStore.php

* Stopped sending the "dismissType" to action.js

The "dismissType" is not sent to action.js anymore.

* Bugfix: now the method get_notes_with_name also returns deleted notes

* Bugfix: repaired empty notification list

This commit repairs a bug that happens when there isn't anything in the inbox notification list

* Small refactor to not use "some" Lodash method anymore

* Small refactor in rednderNotes method

* Added check to set_layout

* Added small refactor to delete_all_notes method

* Fixed code comment error

* Bugfix: repaired the "delete_note" call

* Inbox notification: Added layout changes (https://github.com/woocommerce/woocommerce-admin/pull/4256)

* Added notes layout and image to the API

Added note layout and note image to the API and the DB

* Unit test modified

Unit test where modified to adapt them to the new elements

* Changed the frontend following the new designs.

The fronted was changed to follow the new inbox messages design.

* Changed default layout type in DB

* Added all the requested visual element

Changed the cards' js, css and actions to achieve the visual requirements

* Added "layout" and "image" to inboxQuery

* Modal confirmation buttons repaired

* Added "layout" and "image" to docs examples.

* Removed "updateNote" from action.js

Removed "updateNote" from action.js, I left it by mistake.

* Spelling error corrected

The button text "Dismiss all message" was corrected

* noteName removed and icon added to make code reviewing easier

This commit removes the "noteName" from card.js and adds the icon to make code reviewing easier

* Dismiss action button refactor

Refactor of the dismiss action button in the InboxNoteCard class

* Removed unnecessary control

* Destructured all the note properties

* Colors replaced by existing variable

* Removed setting of layout and image in the creation of the notes

* Removed blank lines added by mistake

* Close dismiss dropdown when clicking away from the  popover.

* Prevented the closing of the inbox panel with an action in the modal

* Added small design changes

* Removed unused "Gridicon" import

* Prevent showing the image tag when the layout is blank

* The method name getDismissButton was changed to getDismissConfirmationButton

* Removed unnecessary vendor-prefixed properties

* Improved note filtering in unreadNotes method

* Update client/header/activity-panel/panels/inbox/style.scss

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Update client/header/activity-panel/panels/inbox/style.scss

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Update client/header/activity-panel/panels/inbox/style.scss

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Update client/header/activity-panel/panels/inbox/style.scss

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Inbox notification: Remove icons (https://github.com/woocommerce/woocommerce-admin/pull/4258)

* Info icon removed from inbox notifications

The info icon was removed from inbox notifications

# Conflicts:
#	src/Notes/DataStore.php

* Removed "icon" from inboxQuery

* Tests repeared

Some problems with the unit tests were repaired in this commit

# Conflicts:
#	docs/examples/activity-panel-inbox.md

# Conflicts:
#	tests/api/admin-notes.php

* Removed icon from card.js

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>

* Improved error handling for the set_layout method

* Bugfix: fixed error handling clicks inside dropdowns

* Bugfix: repaired dropdown onBlur handler

This commit repairs a weird behavior that the dropdown onBlur handler method had sometimes.

* Text error changed

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Stopped sending the "dismissType" to action.js

The "dismissType" is not sent to action.js anymore.

# Conflicts:
#	client/header/activity-panel/panels/inbox/card.js

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Bugfix: solved problem when a note was undismissed

There was a problem with the undismiss functionality. When a note was undismissed, it always was recovered with "plain" layout. This commit solves this problem.

* Inbox notification: add event recording (https://github.com/woocommerce/woocommerce-admin/pull/4320)

* Added events recording

This commit adds events recording to the inbox notifications

# Conflicts:
#	client/header/activity-panel/panels/inbox/index.js

* Added 'home_screen' verification

Changed recorded name, now when the client is in the WooCommerce 'home' page we record 'home_screen' instead of 'wc-admin'.

* Added a naming fix and a new prop to the recordEvent

* bugfix: added control before interaction with bodyNotificationRef

* Added more unit tests for new endpoints

This commit adds tests for deleting a single note and for deleting all the notes, both without permission.

* Modified variable name

* Refactor: prop rename and small logic change

* Screen name getter moved into the InboxNoteCard

This commit moves the screen name getter inside the InboxNoteCard.

# Conflicts:
#	client/header/activity-panel/panels/inbox/index.js

* Removed "screen" from state

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>

* Refactor in admin-notes unit tests

Some unnecessary controls were removed from the admin-notes unit tests

* Indentation fixed in Install.php. Replaced spaces with tabs.

* Inbox notification: added new placeholder and empty card (https://github.com/woocommerce/woocommerce-admin/pull/4379)

* Added a new placeholder and an empty card

This commit adds a new placeholder and a new empty card to the inbox panel

# Conflicts:
#	client/header/activity-panel/panels/inbox/index.js
#	client/header/activity-panel/panels/inbox/style.scss

* Added border to read notes

* Improved note filtering in unreadNotes method and validNotes

# Conflicts:
#	client/header/activity-panel/panels/inbox/index.js

* Actions render refactored

The actions render was refactored in InboxNoteCard component

* Refactor of InboxPanel component

The methods getUnreadNotesCount and hasValidNotes were separated from the InboxPanel component

# Conflicts:
#	client/header/activity-panel/panels/inbox/index.js

* Refactor inbox panel subtitle classes

* Added changes for when a note is undismissed

This commit adds the requested changes in behavior and design for when a note is dismissed.

# Conflicts:
#	client/header/activity-panel/panels/inbox/index.js

* Bugfix: Added key to itemlist

The InboxNotePlaceholder is shown as an itemlist but it didn't have a key. This commit adds it.

* Removed unnecessary validation

* Refactored actionList map

This commit adds a refactor to the actionList map

* Changes to the getUndoDismissRequesting functionality

This commit adds a few changes to the getUndoDismissRequesting functionality

* Changed className prop

* Changed other className prop

* Modified InboxPanel rendering

* Removed unnecessary method in placeholder.js

* Simplified the card.js renderActions method

* Change renderActions return in card.js

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>

* Inbox notification: add client unit tests (https://github.com/woocommerce/woocommerce-admin/pull/4386)

* Added client unit tests

* Added test cases for getUnreadNotesCount and hasValidNotes

* Corrected typo error

* Removed Enzyme and added React Testing Library

* Removed unnecessary param

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>

* Resolved some conflicts with master

* Marketing note test repaired

This commit repairs the marketing note test

* Added note type 'marketing' to delete all functionality

* Removed set_icon method from some notes and docs

* Added set_icon method as deprecated to prevent errors.

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
2020-06-03 08:43:35 -03:00
Joshua T Flowers 9149b0cce6 Add WooCommerce Subscriptions note (https://github.com/woocommerce/woocommerce-admin/pull/4451)
* Add WooCommerce Subscriptions note

* Update note type to marketing
2020-06-03 13:04:36 +03:00
Fernando fd020a2f4c Added new notification to ask about migrating from Shopify. (https://github.com/woocommerce/woocommerce-admin/pull/4465)
* Added new notification to ask about migrating from Shopify.

This commit adds a new notification to ask the client if they want to migrate from Shopify to WooCommerce.

* Modified action's name

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2020-05-31 11:52:30 -03:00
Joshua T Flowers f132e35c7b Add EU VAT extension note (https://github.com/woocommerce/woocommerce-admin/pull/4452)
* Add EU VAT extension note

* Add note types to default notes query
2020-05-28 11:52:25 +03:00
Joshua T Flowers 77992029da Add method to send WC profile data after profiler completion (https://github.com/woocommerce/woocommerce-admin/pull/4177)
* Add method to send WC profile data after profiler completion

* Send profiler data if complete on a newly connected site

* Check for put method existence before using the helper API

* Only send wc profile data if opted into tracking
2020-05-28 11:50:38 +03:00
Jeff Stieler cd146b388e Update TaskList design (https://github.com/woocommerce/woocommerce-admin/pull/4434)
* Update task list to closer match new designs.

* Update TaskList placeholder to match the new design.

* Hook up store details task click.

* Don't show "skip" prompt for task list on new home screen.

* Update time estimates for tasks.

* Add progress indicator to TaskList.

* Use null container for store details task.

* Fix progress bar styling.

* Just use card menu for TaskList dismissal.

* Don't show TaskList on analytics overview if homepage feature is enabled.

* Initial refactor of TaskList to use WP card.

* Style TaskList items and card header.

* Style "hide" button for TaskList.

* Don't show TaskList after it's completion.

* Don't show TaskList placeholder when options are still loading.

Avoid a potential flash of the placeholder without showing the TaskList.

* Fix border radius on progress bar.

* Fix TaskList header style with homepage feature disabled.

* Remove defunct function.

* Remove unnecessary import.

* Some minor color tweaks (https://github.com/woocommerce/woocommerce-admin/pull/4436)

* Colors

* Only show time estimation for incomplete tasks

* Don't show chevron on completed tasks.

Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>

* Preload task list completed option, show placeholder when loading.

* Fix alignment of "hide this" button.

Co-authored-by: James Koster <james@jameskoster.co.uk>
2020-05-27 10:08:39 -06:00
Joshua T Flowers 53dde217f6 Handle multiple plugin installs in a single request (https://github.com/woocommerce/woocommerce-admin/pull/4411)
* Allow plugins API to install multiple plugins at once

* Update wpdata to handle installing multiple plugins and errors

* Remove client-side error message switch

* Update plugin tests for multiple plugins param

* Update plugins API to WP standards

* Add error for non-allowed plugins instead of silently failing

* Allow error handling for individual plugins

* Fix up js tests for new API response

* Add installed plugin to response on successful install
2020-05-27 10:28:13 +03:00
Joshua T Flowers cbc96b0253 Refactor notes and conditions for adding notes (https://github.com/woocommerce/woocommerce-admin/pull/4340)
* Add note traits to check for existence and generic conditions

* Add new note type for marketing notes

* Delete marketing notes when opted out

* Add tests for marketing notes
2020-05-22 16:48:40 +03:00
Joshua T Flowers 3a88b6f980 Add setting to see if WcPay is configured (https://github.com/woocommerce/woocommerce-admin/pull/4145) 2020-05-22 13:40:10 +03:00
Daniel Bitzer c6371c32db Fix in app purchase back link for recommend marketing extensions card (https://github.com/woocommerce/woocommerce-admin/pull/4301)
* Add getInAppPurchaseUrl lib function

* Implement getInAppPurchaseUrl for marketing tab

* Include the directory with the wccom-site param

* use getInAppPurchaseUrl helper function in onboarding CartModal component

* Fix 'addQueryArgs' is defined but never used

* Fix Missing JSDoc @return description

* Make connectNonce setting a global setting rather than a marketing once

Co-authored-by: Jason Conroy <jason@findingsimple.com>
2020-05-20 15:03:58 +09:30
Paul Sealock 9b3b420e1a 1.2.2 version bump (https://github.com/woocommerce/woocommerce-admin/pull/4395)
* 1.2.2 changelog

* version bump 1.2.2

* tested up to 5.4.1
2020-05-20 12:24:33 +12:00
Timmy Crawford e6c13a4a02 Release: 1.2.0 (https://github.com/woocommerce/woocommerce-admin/pull/4328)
* Release: 1.2.0

* Updates per feedback.

* Get installed plugins from new plugin settings object. (https://github.com/woocommerce/woocommerce-admin/pull/4357)

* Bumping version numbers

* synch package-lock.json with master

Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
2020-05-15 12:30:02 -07:00
Claudio Sanches 392b69ee21 Fixed PHP notice about undefined index of items (https://github.com/woocommerce/woocommerce-admin/pull/4377)
Notice caused by the missing 'items' param required for 'array' types
2020-05-14 14:12:59 -06:00
Joshua T Flowers 6fd251bfe4 Adds Jetpack stats to performance indicator endpoints (https://github.com/woocommerce/woocommerce-admin/pull/4291)
* Move allowed report analytics data to separate function

* Add function to retrieve allowed Jetpack module endpoints

* Fix API urls

* Add number format as default for jetpack modules

* Add module permissions and format to array

* Add filter for returned data from performance indicators API

* Filter jetpack stats by queried dates

* Fix empty date query filtering

* Mock the Jetpack API response

* Add tests for Jetpack stats in allowed endpoints

* Add tests for filtering Jetpack stats based on time

* Add tests for default args
2020-05-13 14:52:32 +03:00
Bec Scott 5ae18fea04 Add back giving feedback note with some changes (https://github.com/woocommerce/woocommerce-admin/pull/4317)
* Add back giving feedback note with some changes

* Use unique name for new note

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-05-11 16:14:37 +10:00
Bec Scott 563a9deb68 New notification: How to draw attention to your online store (https://github.com/woocommerce/woocommerce-admin/pull/4318)
* New notification: How to draw attention to your online store

# Conflicts:
#	src/FeaturePlugin.php

* Get the option from the arguments

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-05-11 16:13:49 +10:00
Joshua T Flowers d08a788756 Only migrate options on version change (https://github.com/woocommerce/woocommerce-admin/pull/4324) 2020-05-08 15:26:46 -07:00
Joshua T Flowers dd8a625e90 Update wcadmin db version after db callback (https://github.com/woocommerce/woocommerce-admin/pull/4323) 2020-05-08 12:35:06 -07:00
Jason Conroy 1f0307e8b0 Fix/amazon plugin slug (https://github.com/woocommerce/woocommerce-admin/pull/4297)
* Use WCCOM plugin slug for amazon integration

* Use default create a ticket url
2020-05-08 11:09:39 +09:30
Jeff Stieler 4f48ae9fb7 Fix Dashboard flash before OBW chunk loads. (https://github.com/woocommerce/woocommerce-admin/pull/4259)
* Document the `woocommerce_admin_is_loading` filter.

* Prevent dashboard from being visible during ProfileWizard chunk load.

* Delay removing loading class rather than adding full screen class prematurely.
2020-05-06 06:56:23 -06:00
Matt Sherman f639d4a32e Remove obsolete inbox messages (https://github.com/woocommerce/woocommerce-admin/pull/4182)
* Remove welcome note
* Remove store notice setting note
* Remove review your experience note
* Add tests for delete_notes_with_name
* Add filter support so that other code can add notes to be deleted on upgrade.
2020-05-05 15:38:16 -04:00
Paul Sealock 3fc69b9739 Homepage: Add stats overview selection (https://github.com/woocommerce/woocommerce-admin/pull/4264)
* Homwpage: add stats overview stat toggle

* toggle stats

* fix

* tests

* better hook name

* clean up

* add back in Fragment

* remove extra prop

* better test name
2020-05-05 10:58:39 +12:00
Joshua T Flowers 53ee282331 Don't reschedule imports on failed imports (https://github.com/woocommerce/woocommerce-admin/pull/4263) 2020-05-04 14:55:33 +03:00
Joshua T Flowers 586760c561 Adds the onboarding payments note (https://github.com/woocommerce/woocommerce-admin/pull/4157)
* Save payment skipped and event timestamp to options

* Add payments note

* Convert payments task timestamp to seconds

* Skip payments note if skip timestamp is not set
2020-05-04 14:33:11 +03:00
Kʜᴀɴ 92d7b18b1b Use PAGE_ROOT to reduce redundancy (https://github.com/woocommerce/woocommerce-admin/pull/4238) 2020-05-01 09:56:54 +12:00
Timmy Crawford b07d69ddf8 Update version to 1.1.1 and adjust changelog (https://github.com/woocommerce/woocommerce-admin/pull/4242)
* Update version to 1.1.1 and adjust changelog

* Love that we have a test that caught this.
2020-04-30 10:57:05 -07:00
David Stone 8ebd33fe6b Use Route based code splitting to optimize bundle size (https://github.com/woocommerce/woocommerce-admin/pull/4094)
* Use lazy loading to split up the size of the js downloaded

* Use lazy loading to split up the size of the js downloaded

* Add Moment Timezone plugin to reduce size of data file.

* Lazy load header panels and use Dashicons for faster loading

* Load assets from the correct publicPath

* Load assets from the correct publicPath

* PHP cs fixes

* Fix missing quotes on string literal.

* Fix PropType warning for lazy loaded component.

* Separate the task list and dashboard chunks.

* Lazy load dashboard sections.

* Restore original icons and reduce size by importing only the icons needed

* Lazy load alerts to save more Kb on initial load

* Minify built JS in production mode.

* Add preload tags for WC Admin assets. (https://github.com/woocommerce/woocommerce-admin/pull/4162)

* Fix linting errors.

* Add modified UnminifiedWebpackPlugin.

* Produce minified and unminified bundles for all builds.

* Remove unused variable from webpack config.

* Run unminify after sourcemap generation.

* Only hook after optimization if we're using a devtool.

* Add minification suffix in Loader::get_url().

* Lazy load OBW on new home screen.

* Move OBW style up a level to layout.

* Hydrate ProfileWizard independently of withSelect and withDispatch

* Fix order of composition and fallback function when using hydration.

Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
Co-authored-by: Paul Sealock <psealock@gmail.com>
2020-04-29 12:01:27 -06:00
Joshua T Flowers ea2c2f7707 Fix sorting to push Storefront to the top of the theme list (https://github.com/woocommerce/woocommerce-admin/pull/4187)
* Fix sorting to push Storefront to the top of the theme list

* Add test to ensure Storefront is sorted in get_themes()

* copy paste cleanup

* Refactor sorting logic.

* Fix linting errors

* Updates per feedback.

* Add check for products property

* Fix for 5.6 CI.

* Oh hey another CI fix

Co-authored-by: Timmy Crawford <timmydcrawford@gmail.com>
2020-04-28 14:47:05 -07:00
Chris Shultz 8fa6180dee Make sure woocommece-services is an allowed plugin on for shipping prompt. (https://github.com/woocommerce/woocommerce-admin/pull/4233) 2020-04-28 07:25:11 -07:00
Ron Rennick 5b201365dd POC store navigation (https://github.com/woocommerce/woocommerce-admin/pull/3202)
* Add base nav component

* Check if current screen is WC registered page

* Add core menu items

* Add param for menu items to migrate and hide old menu items

* Add body classes for wc navigation

* Check capability before adding menu items

* Add submenu items to frontend component

* Hide wc nav behind option

Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
2020-04-27 12:30:32 +03:00
Daniel Bitzer 16fdae3d06 Hide Marketing Tab Recomended Extensions card if marketing suggestions are disabled (https://github.com/woocommerce/woocommerce-admin/pull/4194)
* Add allowMarketplaceSuggestions to woocommerce_shared_settings

* Convert to functional component

* Hide ReccomendedExtensions card if opted out from marketing suggestions
2020-04-24 15:41:57 -07:00
Joshua T Flowers 320712fb2c Reset profiler when visiting old obw URL (https://github.com/woocommerce/woocommerce-admin/pull/4166) 2020-04-23 21:01:38 +03:00
Chris Shultz 65f7a0cf7d Remove A/B testing from order page shipping prompt. (https://github.com/woocommerce/woocommerce-admin/pull/4180) 2020-04-23 10:33:42 -07:00
Fernando 7dc87c0492 Changed email marketing note and the old filter was removed (https://github.com/woocommerce/woocommerce-admin/pull/4167)
* Changed email marketing note and the old filter was removed

The email marketing note was modified. Also, the old filter was removed.

* This note is not using NoteTraits anymore.

The NoteTraits reference was removed because the note is not using it anymore.

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2020-04-22 18:40:19 -03:00
Paul Sealock 2f8ba63ec0 Homepage: Add Hello World, routing, and feature flag (https://github.com/woocommerce/woocommerce-admin/pull/4169)
* Homepage: Add hello world

* check feature flag

* homepage folder

* whitespace
2020-04-23 09:32:44 +12:00
Jeff Stieler 267c95e8d5 Reduce queries in Inbox Panel. (https://github.com/woocommerce/woocommerce-admin/pull/3977)
* Notes panel: only request fields needed for render.

* Avoid retrieving post meta for WC_Admin_Note objects.

It's an ID collision anyhow.
2020-04-22 10:05:11 -06:00
Timmy Crawford 0e94da6160 Bump versions and revise changelog (https://github.com/woocommerce/woocommerce-admin/pull/4158) 2020-04-21 12:12:18 -07:00
Paul Sealock 28c85668fb Plugins: Move API out of Onboarding (https://github.com/woocommerce/woocommerce-admin/pull/4093)
* Plugins DataStore: decouple from onboarding (https://github.com/woocommerce/woocommerce-admin/pull/4048)

* Plugins DataStore: Add client side store

* change active_plugins to public static function

* don't change shape of allowed plugins
2020-04-20 14:04:13 +12:00
Daniel Bitzer bceb25ba0f Improve layout of Installed Extensions marketing card for tablet and mobile screens (https://github.com/woocommerce/woocommerce-admin/pull/4063)
* Set a max word length for the installed extension descriptions

* Improve InstalledExtensions layout for tablet and mobile

Mobile still needs work…

* Align product icon to top

* Tweak WelcomeCard mobile appearance

* Fix alignment
2020-04-17 11:27:22 -07:00
Paul Sealock c500d3fa98 Plugins DataStore: decouple from onboarding (https://github.com/woocommerce/woocommerce-admin/pull/4048)
* Plugins DataStore: Add client side store
2020-04-17 11:58:36 +12:00
Daniel Bitzer ae526f7e1e Fix confusing UX when knowledge base card fails to retreive posts (https://github.com/woocommerce/woocommerce-admin/pull/4133)
* Use EmptyContent component when there are no knowledge base posts

* Reduce transient timeout to 15 mins when remote get fails

* Satisfy phpcs

* Satisfy jslint
2020-04-16 10:19:20 +09:30
Bec Scott 7f1481604c woocommerce/woocommerce-admin#3793 Tweak: Create admin note if Jetpack plugin doesn't get installed due to an error during OBW (https://github.com/woocommerce/woocommerce-admin/pull/3888)
* woocommerce/woocommerce-admin#3793 create admin note if Jetpack plugin doesn't work during OBW

* Move slug logic into the note creator class

* Also allow WooCommerce Services plugin when creating note

* rename possibly_add

* Rename note service class for jetpack/woocommerce services

* Remove (by actioning) notes when the Jetpack or WooCommerce Services plugins are activated

* Add todo around using a filter to make onboarding plugin API more generic

* Create admin note if activation fails

* Fix callback, don't know how that got through...

* Install from the note using a callback fn rather than redirecting back to the OBW

* Remove .orig file

* Move WC_Admin_Notes_Filters action hooks into WC_Admin_Notes_Install_Jetpack_And_WooCommerce_Services_Plugin

* Remove return values from plugin install function

* Simplify how plugin installation triggers actioning the note

* Use better icon in Jetpack/WooCommerce Services note

* Add space to note copy

* Shorten some names

* Only action the note if both plugins are activated

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-04-14 10:54:43 +10:00
Jeff Stieler cf2185eaaa Fix usage of WP_Error in non-global namespaces. (https://github.com/woocommerce/woocommerce-admin/pull/4115) 2020-04-13 08:33:22 -06:00
Jeff Stieler 9973e7e36f Handle orphaned order statuses in analytics settings. (https://github.com/woocommerce/woocommerce-admin/pull/4090)
* Add method to retrieve all synced order statuses.

* Determine what unregistered order statuses we have and add to client-side settings object.

* Stop filtering out unregistered statuses from analytics settings.

* Add unregistered statuses to analytics settings fields.
2020-04-10 08:42:03 -06:00
Fernando 866487ee27 Bugfix on payments step in CBD flow (https://github.com/woocommerce/woocommerce-admin/pull/4061)
* Bugfix on payments step in CBD flow

The `array_search` method was changed to `in_array`

* After pressing Connect a new tab opens with the Square webpage

* Updated behavior for non CBD Square payment connection

* Square option's name updated

* Replaced <p> tag with a <div> tag

Since there was a `validateDOMNesting` warning because we weren't adding only text inside a <p> tag, the `p` tag was changed to a `div`.

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2020-04-08 16:17:32 -07:00
Jason Conroy fa873892dd Add missing prompts to installed extensions (https://github.com/woocommerce/woocommerce-admin/pull/4060)
* Add support for additional partner extensions to installed extensions

* Use correct variable name

* Add codisto support url

* Fix hubspot svg

- Fixes orange color as per brand guide
- Reduces file size from 120kb to 1kb

* Replace Google logo with vector SVG

* Fix AutomateWoo icon

* Fix Amazon Ebay svg icon

Co-authored-by: Daniel Bitzer <danielbitzer@gmail.com>
2020-04-09 08:43:34 +09:30
Timmy Crawford acfae2c356 Setup Checklist: Remove Setup Menu Item and I'll Do This Later link (https://github.com/woocommerce/woocommerce-admin/pull/4085)
* Remove  menu item

* Remove 'do this later' link
2020-04-08 14:27:24 -07:00
Steve Grunwell 27704012a6 Enable the default homepage template to be filtered (https://github.com/woocommerce/woocommerce-admin/pull/4072)
This commit adds the "woocommerce_admin_onboarding_homepage_template" filter, enabling themes/plugins to filter the default homepage template created by the WooCommerce onboarding process.
2020-04-09 09:26:03 +12:00
Jason Conroy 05cf7b010e Marketing inbox note (https://github.com/woocommerce/woocommerce-admin/pull/4030)
* Add Marketing Note Provider Class

* Add marketing note intro to events

* Include Market Notes with feature plugin

* Change marketing into note title

* Remove facebook extension inbox note

* Remove onboarding completed (market my store) inbox note

* Add inline comment back in

* Remove constructor

Install method doesn’t exist

* Remove unnecessary use of WC_Admin_Notes_Marketing

* Change marketing hub note to use speaker gridicon

* Remove facebook note on update to 1.1.0
2020-04-09 05:55:59 +09:30
Ron Rennick cd9ee95c32 remove use of undefined QUEUE_GROUP (https://github.com/woocommerce/woocommerce-admin/pull/3994)
* remove use of undefined QUEUE_GROUP

* remove unsnooze action from both queue groups
2020-04-08 15:38:15 -03:00
Joshua T Flowers 94eec721c0 Fix double prefixed wcadmin events (https://github.com/woocommerce/woocommerce-admin/pull/4065) 2020-04-08 14:35:16 +03:00
Barry Hughes 801cd357a0 Cast to float, to avoid performing arithmetic with strings (https://github.com/woocommerce/woocommerce-admin/pull/4042) 2020-04-01 16:09:38 -03:00
Jason Conroy e78a4bc2db Update marketing hub recommended plugins API url. (https://github.com/woocommerce/woocommerce-admin/pull/4036)
* Update recommended plugins WCCOM url

* Remove todo.

Co-authored-by: Timmy Crawford <timmydcrawford@gmail.com>
2020-04-01 08:37:01 -07:00
Matt Sherman 3037eb6f35 Show admin notices on embedded pages. (https://github.com/woocommerce/woocommerce-admin/pull/4019) 2020-03-31 19:38:42 -04:00
Jeff Stieler f8bc173cfb Only query requested stat totals in reports. (https://github.com/woocommerce/woocommerce-admin/pull/4009)
* Pass specified totals/intervals fields parameter to the Order Stats Query.

* Only request stats used in render for report summaries and charts.

Implement Orders as an example.

* Specify stats fields for all report requests.

* Add 'fields' parameter handling to all stats endpoint controllers.

* Reduce stats fields requested by dashboard charts.
2020-03-31 09:08:40 -06:00
Fernando 5242560972 Added hook to delete woocommerce_onboarding_homepage_post_id (https://github.com/woocommerce/woocommerce-admin/pull/4015)
* Added hook to delete woocommerce_onboarding_homepage_post_id

Added hook to delete woocommerce_onboarding_homepage_post_id when the homepage is deleted.

* Moved post type check further up in the method

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2020-03-31 11:57:01 -03:00
Brent Shepherd 44af89a12e Add WooCommerce Payments Inbox note (https://github.com/woocommerce/woocommerce-admin/pull/4013)
* Add WC Pay to allowed plugins

* Add WC Pay Note to Inbox

* Don't update WC Pay note content

Actioned notes are hidden from the Inbox it turns out, so there's
no need to update the content to reflect that the WC Pay plugin
has been installed.

* Add WC pay note only after April 14

Instead of only adding the Install Now button in April. Only
add the note so that the Install now button is always available
and generally, the note is more useful and actionable because
the plugin is actually available.

* Fix WC Pay note install action

* Check if WC Pay is active or installed

Not just if the plugin files are available. This addresses both the
case where the plugin may be active an in a different folder name,
and where the plugin may have been installed but is not active,
likely because it's been deactivated.
2020-03-31 05:59:48 -07:00
Jason Conroy e5bd8f3184 Marketing Tab MVP (https://github.com/woocommerce/woocommerce-admin/pull/3953)
* Add Marketing feature flag

* Add marketing page and menu item

* Register marketing page with layout controller

* Add initial marketing cards

* Add max-width to marketing overview page

* Add initial marketing WelcomeCard component

* Make marketing welcome card permanently dismiss

* Add a readme for the marketing page components

* Record tracks event when marketing welcome dismissed

* Match design width

* Add welcome image and initial styles

* Use gridicon for close button

* Fix whitespace

* Add PluginsHelper::get_plugin_data()

* Add initial Marketing\InstalledExtensions class

* Preload installed marketing extensions data

* Tweak extension statuses

* Add InstalledExtensionRow component

* Add initial extension data to InstalledExtensions card

* Refactor PluginsHelper::get_plugin_data method

Using the new get_plugin_path_from_slug method

* Ensure get_plugins() function is available for PluginsHelper

* Simplify using PluginsHelper method

* Add MailChimp configured status logic

* Add links to InstalledExtensionRow component

* Add key prop to extensions list

* Setup styles for InstalledExtensions card

* Display nothing if no installed extensions

* Add InstalledExtensions::get_allowed_plugins()

* Setup Marketing Overview API controller

* Add /activate-plugin marketing endpoint

* Add more extensions URL props

* Add Facebook extension configured status logic

* Update Facebook extension URL props

* Fix extenion data logic

* Move component into it’s own directory

* Setup /marketing/overview/recommended endpoint

* Initial marketing page card header styles

* Add basic extension data to RecommendedExtensions

* Use color as variable

* Tweak card header padding for design

* Add basic styling to RecommendedExtensions card

* settingsUrl is not available if the plugin is not active

* Add /marketing/overview/installed-plugins REST endpoint

* Add basic activation functionality to InstalledExtensions component

* Don’t throw error on success

* Add MVP data store for installed extensions card

* Add core dark blue color variable

* Add styles for installed extensions card

* Move knowledge-base component to its own directory

* Pull recommended marketing plugins from remote test site

* Hide description when configured

As per design

* Tweak colors based on design

* Finish off styling for RecommendedExtensions

* Limit recommended extensions to 6 items

* Add error handling to RecommendedExtensions card

* Rename ‘copy’ extension prop

* Add marketing button component to match design

* Create ProductIcon component for marketing

* Add InstalledExtension icons

* Fix icon image paths

* Add ProductIcon to InstallExtensionRow

* Final styling to installed extensions card row

* Knowledge base card placeholders

* Fix missing icons when plugin not activated

* Remove logging

* Tweak array structure to ensure we have an array in JS

and not an object

* Refactor KnowledgeBase marketing component

- We don’t need loop through every post when rendering, just pick the posts we need
- Remove unused classes

* Move padding from each slide to the container

* Improve slider animations by absolute positioning the slides

* Reduce the slider animation timeout and add a note

* Add in-app purchase flow url params for recommended extensions

* Fix slider animation

* Reset slider height on window resize

* Short slider animation, fix double margin on smaller screens

* Add initial marketing/knowledge-base endpoint

* Pull knowledge base posts from API

* Rename welcome card dismiss tracks event

* Record event on recommended product click

* Recond onclick events for installed extensions card

* Record event when carousel navigation clicked

* img elements must have an alt prop

* Remove import that is never used

* use camelCase

* Decode HTML entities from API call

* Remove unused container div

* Add card loading state

* Add images to knowledge base card

* Link knowledge base posts

* Use the Pagination component rather than duplicate it’s functionality

* Clean up and rename knowledge base slider

* Clean knowledge base CSS and update responsive styles for single post slide

* Add a README for button component

* Add README for product icon component

* Add initial readme for Slider component

* Add correct image sizes to knowledge base slider, finalize styles

* Fix extension link urls

* Resolve some code formatting issue

* Bind class click methods to this

* Wrap nodes in Fragment

* Fix wccom-back path

* Add placeholder author and gravatar

Default avatar url size returned from the API is currently set to 96 so I’ve done a simple replace with 16

* Fix style-lint expected new line

* Add docblock for get_knowledge_base_posts()

* Setup data store for marketing to handle installedExtensions card

* Fix function names

“Activating” not “installing”

* Move welcome card component to its own dir

* IconButton component is going to be deprecated

ref: https://github.com/WordPress/gutenberg/pull/19299

* Support multiple activating plugins in the data store

* Rename extension to plugin for consistency

* Add propTypes to component

* Rename data-store/ to data/

* Fix import paths

* Extract isActivatingPlugin logic into datastore

* Move data store selectors into own file

* POST requests are not cached

* Export apiFetch action

* Don’t wrap API response in object

* Implement data store for recommended extensions

* Implement data store for marketing knowledge base

* Tidy getRecommendedPlugins resolver

* Try a cross browser cover/crop image effect to fit proposed design

And help fit longer titles in

* Add caught errors to handler

* Adjust positioning so watermater is displayed

* InstalledExtensions phpcs fixes

* Marketing phpcs fixes

* Alignment fix

* MarketingOverview phpcs fixes

* Missing full stop

* Update breadcrumbs to use new approach

* Fix style lint issues

* Record `marketing_knowledge_article` track event on knowledge base post click

* Import apiFetch and controls from @wordpress/data-controls

* Hex color to lowercase

* Remove duplicate method after rebase

* Use new showPageArrowsLabel rather than hide with CSS

* Fix blurry avatars on hidpi displays

* Hide avatar if URL is falsy

* Replace test author data with live data

* Combine conditionals into ternary

* Combine conditionals into ternary

* Simplify class column logic

* Only preload option and component settings in the admin

* Fix isActivatingPlugin not updating

Component was not re-rendeding.

* Use querySelector over getElementsByClassName

* Hide Marketing Welcome Card immediately on click

* Use create-a-ticket url for supportUrl and make that the default

* Add getInstalledPlugins resolver with preloaded data

* Revert "Add getInstalledPlugins resolver with preloaded data"

This reverts commit b8b127ec6411bef15616576b3bb189dc31777c13.

* Load plugin data in a separate request after activation

* Update welcome image

* Don’t return plugin data in the activation request.

* A space is required before closing bracket

* Update Jest config to gracefully handle static assets

Ref: https://jestjs.io/docs/en/webpack#handling-static-assets

* Remove unused onExit property

* Remove placeholder README

* Use prop directly

* yield createNotice

* Add note to indicate which Category

* Increase transient time to 3 days

* Use $gap-small

* Add proptype

* Add debounce to slider height resize listener

* Clean up isLoading logic

* Dont show image elements if image data is empty

* Open knowledge base posts in a new window

* Add “noreferrer”

* Turn the tab on in all env

Co-authored-by: Daniel Bitzer <danielbitzer@gmail.com>
2020-03-28 06:48:27 -07:00
Allen Snook 078de3e9c0 Merge add/wc-pay to master, enabled for development only (https://github.com/woocommerce/woocommerce-admin/pull/4022)
* Add feature flag for wcpay (https://github.com/woocommerce/woocommerce-admin/pull/3958)

* Add card to payments task for WooCommerce Payments (https://github.com/woocommerce/woocommerce-admin/pull/3978)

* Add card to payments task for WooCommerce Payments

* Add missing plugin and settings PHP constants for woocommerce payments

* Add endpoint to return url to kick off wcpay

* Fix incorrect option name

* I can haz purple with white text, plz

* Linkify TOS, settings

* Recommend wcpay when visible; move wcpay to list top

* Test for wcpay feature flag

* Improved handling of feature flag

* If the user is an agency, include wcpay docs link on card

* Reverse agency logic, LOL

* Camel case fillRule etc

* Turn off wcpay for core and plugin for now
2020-03-27 16:24:32 -07:00
Jeff Stieler 85f5a7c927 Avoid making redundant requests for performance indicators. (https://github.com/woocommerce/woocommerce-admin/pull/3997) 2020-03-27 17:16:32 -06:00
Fernando Espinosa b71bc861fb WooCommerce Shipping order page prompt (https://github.com/woocommerce/woocommerce-admin/pull/3955)
Co-authored-by: David Stone <david@nnucomputerwhiz.com>
Co-authored-by: Chris Shultz <chris.shultz@automattic.com>
Co-authored-by: Harris Wong <harris.wong@a8c.com>
2020-03-27 13:42:58 -07:00
Jeff Stieler f13b9f334f Reduce queries in Orders Panel. (https://github.com/woocommerce/woocommerce-admin/pull/3969)
* Allow on-demand retrieval of order line items in REST API.

* Orders Panel: reduce response fields from orders endpoint.
2020-03-27 13:01:19 -06:00
Jason Conroy d237256aa9 Abstract onboarding plugin code into a PluginsHelper class (https://github.com/woocommerce/woocommerce-admin/pull/3999)
* Abstract WP plugin code into a PluginsHelper class

We plan to use these methods in the Marketing tab.

* Add PluginsHelper::is_plugin_active()

* Add PluginsHelper::is_plugin_installed()

* Add PluginsHelper::get_plugin_data()

* Add PluginsHelper::get_plugin_path_from_slug()

* Refactor PluginsHelper::get_plugin_data method

Using the new get_plugin_path_from_slug method

* Refactor is_plugin_installed and is_plugin_active

Also adds support for plugin slugs or paths as parameters.

* Ensure get_plugins() function is available for PluginsHelper

* Ensure plugin path is a string before checking if installed/active

* PHPCS fixes

* Add initial unit tests for PluginsHelper

* Check plugin data array keys rather than all values

Will make it less fragile when Woo plugin data changes

* Fix typos

Co-authored-by: Daniel Bitzer <danielbitzer@gmail.com>
2020-03-27 11:28:59 +10:30
Fernando 5264523d87 "Personalize your store" reminder: new inbox notification (https://github.com/woocommerce/woocommerce-admin/pull/3895)
* Added note to Personalize Store

Added note to Personalize Store, 5 days after registration or when the user completes the task list.

* Lint repeared

Lint error repeared.

* Moved homepage_id < 0 check to OnboardingTasks.php

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2020-03-26 17:07:54 -03:00
Jeff Stieler 9bbe5f1907 Verify coupon dates are DateTime instances before trying to format them. (https://github.com/woocommerce/woocommerce-admin/pull/3984) 2020-03-25 08:18:44 -06:00
Darren Ethier 783f613815 wp.data Settings refactor
add data store for settings using wp.data

add use-select-with-refresh example

replace fresh-data usage with new settings data store for settings page

Add data package

move to packages

Fix isDirty after save

Add isBusy to primary button when saving

update Readme

remove comment

readme to use useSelect

Revert "update Readme"

This reverts commit 7402fd49b8f384fde5878e0bee0616f0a87bb4f6.

Data Layer: Settings page to use Settings store (https://github.com/woocommerce/woocommerce-admin/pull/3430)

* Data Layer: Settings store as source of truth for settings page

This reverts commit 7402fd49b8f384fde5878e0bee0616f0a87bb4f6.

* fixup

* save on reset

* non mutable constants

* add set/getSettings

* save using setSettings

* separate HOC

* cleanup

* remove settingsToData

* withHydration

* remove withSettings HOC

* renmove useSettins for now

* withSettingsHydration updates

* Revert "withSettingsHydration updates"

This reverts commit f2adf108fbe19b574978fea5925a1a18e7ed3007.

* rename withSettingsHydration

* redo withSettingsHydration simplification

* restore

* useSettings

* render using useSettings

* handleInputChange working

* get setIsDirty working

* saving works

* reset and cleanup

* cleanup

* use snake case on hook files

* use clearIsDirty

* Avoid mutation on setting update

* remove @todo

* persiting -> isPersisting

* better reducer ternaries

* add wcSettings as arg to withSettingsHydration

reset package-lock

Settings: split out mutable wcAdminSettings (https://github.com/woocommerce/woocommerce-admin/pull/3675)

Settings: handle async settings groups (https://github.com/woocommerce/woocommerce-admin/pull/3707)
2020-03-25 16:20:17 +13:00
Jahidur Rahman Nadim 57f8cbf3e8 Fix undefined variable slug on theme activation error (https://github.com/woocommerce/woocommerce-admin/pull/3942) 2020-03-24 16:26:02 +13:00
Paul Sealock 6582975f98 Made the data store reading of content_data more resilient (https://github.com/woocommerce/woocommerce-admin/pull/3926) (https://github.com/woocommerce/woocommerce-admin/pull/3961)
Before 0.10.0 notes had a default content_data of array(). If stored in the database, these notes would be unable to be loaded. This adds some resiliency to the loading so that invalid content_data fields don't break WC_Admin_Note::set_content_data().

Co-authored-by: Christopher Allford <christopher.allford@automattic.com>
2020-03-24 13:10:33 +13:00
Bec Scott dd279a5cc1 Make WooCommerce breadcrumbs use WooCommerce branding if it is installed (https://github.com/woocommerce/woocommerce-admin/pull/3798)
* Make WooCommerce breadcrumbs use WooCommerce branding if it is installed

* Undo everything

* Whoops, add missing reverted code

* Push 'WooCommerce' out to breadcrumbs from the server except for where it is built up on the client

* Pass translated 'WooCommerce' down from the server to the front end

* Fix comment

* Use `admin_url` to build up the URL

Co-Authored-By: Ron Rennick <ron@ronandandrea.com>

* Use admin_url()

Co-Authored-By: Ron Rennick <ron@ronandandrea.com>

* Show WooCommerce breadcrumb on analytics pages

* Stop double appending the admin URL to the root WooCommerce breadcrumb url

Co-authored-by: Rebecca Scott <me@becdetat.com>
Co-authored-by: Ron Rennick <ron@ronandandrea.com>
2020-03-24 08:57:16 +10:00
Joshua T Flowers 1088a0ce8c Onboarding: Add task completion and task list completion tracks (https://github.com/woocommerce/woocommerce-admin/pull/3967)
* Refactor logic for showing dashboard reports and tasklist

* Check for complete option status instead of visible tasks in dashboard

* Update task list status on task list completion

* Track task completion event server-side on option add

* Add option to track previousdly completed events

* Track previously untracked tasks on option update
2020-03-23 13:47:12 -07:00
Joshua T Flowers 66e8525d89 Add WooCommerce support if store is using default theme (https://github.com/woocommerce/woocommerce-admin/pull/3908)
* Add WooCommerce support if store is using default theme

* Check if wc_is_wp_default_theme_active exists before calling it
2020-03-23 13:07:43 -07:00
Fernando cbf0405b95 Onboarding - payments task: filter payment gateways if the user selects CBD (https://github.com/woocommerce/woocommerce-admin/pull/3745)
* Added redirect for the specified conditions

Added redirect to "https://squareup.com/t/f_partnerships/d_referrals/p_woocommerce/c_general/o_none/l_us/dt_alldevice/pr_payments/?route=/solutions/cbd" for the specified conditions

* Added control for CBD payments gateways

Added control for CBD payments gateways. Now only Square is available for CBD

* Changed CBD industry control

* Added 'hasCbdIndustry' declaration in methods.js

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2020-03-20 15:33:18 -03:00
Jeff Stieler 9dbd45e1d7 Bump version and add changelog entries. (https://github.com/woocommerce/woocommerce-admin/pull/3945) 2020-03-19 13:05:58 -06:00
Ron Rennick 43a941ad16 remove replace_actionscheduler_store_class function (https://github.com/woocommerce/woocommerce-admin/pull/3936)
* remove replace_actionscheduler_store_class function from master

* remove AS store class file

* reuse variable

* Fix test helper queue action cancellation for AS 2.x.x.

* Remove WPPostStore logic from SchedulerTraits.

* Remove dead queue code from WC_Admin_Notes.

Missed in https://github.com/woocommerce/woocommerce-admin/pull/3662.

Co-authored-by: Paul Sealock <psealock@gmail.com>
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
2020-03-19 10:34:09 -06:00
Paul Sealock ee111539bd 🍒 pick 3851 and 3938 into master (https://github.com/woocommerce/woocommerce-admin/pull/3940)
* fix undefined const WC_ADMIN_VERSION_NUMBER when WP < 5.3 (https://github.com/woocommerce/woocommerce-admin/pull/3851)

* Fix calling protected has_satisfied_dependencies on outdated plugin (https://github.com/woocommerce/woocommerce-admin/pull/3938)

* Fix calling protected has_satisfied_dependencies on outdated plugin

* Update src/Package.php

Co-Authored-By: Ron Rennick <ron@ronandandrea.com>

Co-authored-by: Ron Rennick <ron@ronandandrea.com>

Co-authored-by: Ron Rennick <ron@ronandandrea.com>
2020-03-19 14:52:07 +13:00
Jeff Stieler 581e483890 Don't clear WCCOM note when clicking the action button. (https://github.com/woocommerce/woocommerce-admin/pull/3909) 2020-03-17 14:32:27 -06:00
Joshua T Flowers 8b667d2169 Onboarding: Add offline payment methods (https://github.com/woocommerce/woocommerce-admin/pull/3832)
* Add on Cash on Delivery method to payment methods

* Add direct bank transfer method

* Update enabled paymet methods in markConfigured

* Add missing bacs property

* Add bacs styling
2020-03-16 12:57:23 +01:00
Joshua T Flowers 6c4c8fb7c1 Onboarding: Add toggles to configured payments in task list (https://github.com/woocommerce/woocommerce-admin/pull/3801)
* Add isConfigured property to all payment methods

* Remove payment configuration checks from server side

* Add isEnabled flags to all payment methods

* Add payment method toggle methods

* Extract payment methods

* Fix update options selectors

* Add error handling for payment method updates

* Remove configured from saved option

* Add event when payment is toggled

* Check if payment option exists before checking config

* Only fetch PayPal connection URL when plugin is active

* Only fetch Stripe connection URL when plugin is active
2020-03-16 12:09:29 +01:00
Bec Scott b8aee0f93b Onboarding: business step: add Google Ads extension install (https://github.com/woocommerce/woocommerce-admin/pull/3725)
* Onboarding: business step: add Google Ads extension install

* Updated extension slug etc to match the extension

* Fix a couple of slugs that were missed

* Remove extra div that was breaking because of an unrelated change (reused class name)

Co-authored-by: Bec Scott <me@becdetat.com>
2020-03-16 16:12:30 +10:00
Joshua T Flowers da6f113d18 Onboarding: Update payments task flow (https://github.com/woocommerce/woocommerce-admin/pull/3782)
* Add new payment method cards

* Refactor payment methods

* Track payment configuration and completion client-side

* Record tasklist_payment_connect_method event in markConfigured

* Record event on payment setup

* Add recommended payment method ribbon

* Return to payments task even when previously configured
2020-03-15 22:45:19 +01:00
Timmy Crawford 7266042b79 Create database tables earlier - like core. (https://github.com/woocommerce/woocommerce-admin/pull/3899)
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
2020-03-13 12:42:01 -06:00
Bec Scott 893aecfa4b Improve focus on task list (https://github.com/woocommerce/woocommerce-admin/pull/3796)
* Script that hides or shows menu items

* Hook up buttons to task list, hook up options to onboarding-experience to set up the menu

* Fix some little code style issues

* Remove LinkButton in favour of the existing Button in @wordpress/components

* Remove reference to removed style file

* Move menu experience script to /client/wp-admin-scripts to match current style

* Only load the onboarding menu experience script if onboarding is enabled

* Localise some strings

* Separate the "Setup" link from the existing items to avoid conflicts with extensions that modify the menu

* Use the item key instead of title to report back completed tasks

* Change from skip_option to reason to make this easier to grok

* Use existing woocommerce_task_list_hidden option instead of creating a new one

* Tweak options to get menu experience working again

* Simplify skip actions logic

* Preload woocommerce_task_list_do_this_later option

* Nicer event key names

* Clean  up the styling

* Remove wcSettings.onboarding check from the task items list in `customizable`

* Remove spinner from customizable

* Fix translated string for WooCommerce menu setup anchor

* Use predef color instead of a hard-coded hex code

* Remove superfluous ={ true } from markup

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-03-13 14:34:53 +10:00
Bec Scott 296ef085dd Remove add first product note (https://github.com/woocommerce/woocommerce-admin/pull/3876)
Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-03-13 08:58:08 +10:00
Timmy Crawford 276f3d2ced Don't attempt to create an inbox note before the tables exist. (https://github.com/woocommerce/woocommerce-admin/pull/3884)
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
2020-03-12 12:59:38 -07:00
Timmy Crawford 8a94703276 Fix feature plugin use on multisites. (https://github.com/woocommerce/woocommerce-admin/pull/3883)
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
2020-03-12 10:57:57 -07:00
Joshua T Flowers da3d5359a6 Fix failing tests after WC 4.0 merge (https://github.com/woocommerce/woocommerce-admin/pull/3870)
* Manually call on_plugins_loaded after loading plugins for testing

* Update import tests to cancel all pending actions in new AS tables

* Fix deprecated next method in AS

* Remove priority queue test for unused priority in AS 3.0

* Check only for pending status actions in batch queue tests

* Add cancel_actions_by_group method to WPPostStore

* Add method to check for next blocking job time

* Force delete scheduled actions on older versions of AS
2020-03-12 14:46:13 +01:00
Joshua T Flowers 8a83e62905 Use full width template for homepage in stores using Storefront (https://github.com/woocommerce/woocommerce-admin/pull/3846) 2020-03-10 10:14:18 +01:00
Timmy Crawford f5d0da0b19 Merge final `version/1.0` branch with `master` (https://github.com/woocommerce/woocommerce-admin/pull/3848)
* Try: Moving Customers to main Woo Menu (https://github.com/woocommerce/woocommerce-admin/pull/3632)

* Only add onboarding settings on wc-admin pages when task list should be shown. (https://github.com/woocommerce/woocommerce-admin/pull/3722)

* Use cron for unsnoozing admin notes (https://github.com/woocommerce/woocommerce-admin/pull/3662)

* Use wp-cron for admin note snoozing.

* Remove "unsnooze" scheduled action.

* Use correct version.

* Avoid using deprecated method for unscheduling actions.

* Onboarding: Fix toggle tracking events (https://github.com/woocommerce/woocommerce-admin/pull/3645)

* Fix errant wcadmin prefix on event name

* Track the onboarding toggle on the option in case enable_onboarding isn't used

* Move toggle actions to separate function

* Move onboarding actions

* Move onboarding filters

* Move help tab updates to add_toggle_actions

* Only run onboarding actions when enabled

* Onboarding: Add tracks events when profiler steps are completed (https://github.com/woocommerce/woocommerce-admin/pull/3726)

* Add tracks for store profiler step completion

* Record event when profiler is completed

* Ensure continue setup loads the onboarding profiler (https://github.com/woocommerce/woocommerce-admin/pull/3646)

* 'All that include' option removed when input field is empty (https://github.com/woocommerce/woocommerce-admin/pull/3700)

* 'All that include' option removed when input field is empty

Added a control to check that when the input field 'Search by customer name' is empty, the 'All that include' option is not appearing.

* Const name improved

The constant name hasValues was changed to optionsHaveValues (more descriptive)

* Fix select text alignment (https://github.com/woocommerce/woocommerce-admin/pull/3723)

* Stock panel indicator - cache and use lookup tables. (https://github.com/woocommerce/woocommerce-admin/pull/3729)

* Stock panel indicator - cache and use lookup tables.

* Revise query, clear transient on product update.

* Fix error, ht Josh.

* Checklist: Remove sideloaded images to reduce build size, take 2 (https://github.com/woocommerce/woocommerce-admin/pull/3731)

* Remove homepage template images.

* Use other-small on all industries, adjust text color.

* Remove background dim and opacity set to 0

* Fix/3631 (https://github.com/woocommerce/woocommerce-admin/pull/3730)

* Added CBD as an industry type

CBD was added as an industry type in API

* Industries options modified

Modified the industries options. Now we are able to choose if we will use an input or not in the option.

* API control changed for industries.

API control changed for industries. Now it accepts the data type we need.

* Added input in Industries list for the option "Other"

Added an input for the option "Other" in the industries list

* Added suggested changes in review comments.

* Added data preparation for recordEvent

* Changed variable to snake_case

The variable "industriesWithDetail" was changed to "industries_with_detail" (snake_case)

* Onboarding: Create homepage without redirect (https://github.com/woocommerce/woocommerce-admin/pull/3727)

* Add link to edit homepage instead of redirect

* Add busy state to homepage creation button

* Publish homepage on create via API

* Update homepage notice to show on first post update

* Update homepage creation notice per design

* Record event on customize homepage

* Set homepage to frontpage on creation

* Add deactivation note for feature plugin (https://github.com/woocommerce/woocommerce-admin/pull/3687)

* Add version deactivation note

* Add the note to deactivate if the version is older than the current WC version

* Deactivate wc admin feature plugin on action click

* Add notes version hooks

* change the Package class namespace to exclude from standalone autoloader

* add use statement for FeaturePlugin

* add note explaining namespace

* use wc-admin-deactivate-plugin note name

* Rename file and class to WC_Admin_Notes_Deactivate_Plugin

Co-authored-by: Ron Rennick <ron@ronandandrea.com>
Co-authored-by: Paul Sealock <psealock@gmail.com>

* Add Travis tests on GH for release branch (https://github.com/woocommerce/woocommerce-admin/pull/3751)

* Add Travis tests on GH for release branch

* fix linter errors

* ActivityPanels.php -> use public static functions

* Remove free text Search option when no query exists (https://github.com/woocommerce/woocommerce-admin/pull/3755)

* Revert changes in woocommerce/woocommerce-admin#3700

* Don't add free text search if no query exists

* Add tests for Search without query

* Add test for showing free text search option

* Fix image sideloading for store industries. (https://github.com/woocommerce/woocommerce-admin/pull/3743)

* Fix image sideloading for store industries.

Data format changed in https://github.com/woocommerce/woocommerce-admin/pull/3730

* Fix industry image sideload in cases where the count is less than requested.

* Be backwards compatible with the old industry data format.

* Added event props to identify stores with WCS and Jetpack installed (https://github.com/woocommerce/woocommerce-admin/pull/3750)

* Added event props to identify stores with WCS and Jetpack installed

Also, added Jeckpack connected status

* Improved variable name

* Simplified method

Simplified method. "intersection" check was removed

* Tests errors repeared

The method "clear_low_out_of_stock_count_transient" now is static.

* OBW: fix sideloading image test error (https://github.com/woocommerce/woocommerce-admin/pull/3762)

* Release 0.26.0 changes (https://github.com/woocommerce/woocommerce-admin/pull/3753)

* add deactivation hook to Package.php (https://github.com/woocommerce/woocommerce-admin/pull/3770)

* Add active version functions (https://github.com/woocommerce/woocommerce-admin/pull/3772)

* add active version functions to Package.php

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* 0.26.1 changes (https://github.com/woocommerce/woocommerce-admin/pull/3773)

* Customers Report: fix missing report param in search (https://github.com/woocommerce/woocommerce-admin/pull/3778)

* Product titles include encoded entities (https://github.com/woocommerce/woocommerce-admin/pull/3765)

* Stripped HTML from product titles and decoded before displaying them

Stripped html from product titles and entities are decoded before displaying them

* Stripped HTML from product titles and decoded in Stock report

Stripped html from product titles and entities are decoded before displaying them. Now in Stock report

* Added support for HTML tags and encoded entities on product titles

Added support for HTML tags and encoded entities on filtered product list, dropdown menus and tag names.
Also, strip_tags() function was replaced with wp_strip_all_tags() instead.

* strip_tags() function was replaced with wp_strip_all_tags() instead.

* Added control for a variable

Added control for "item->data" before applying wp_strip_all_tags method.

* pre-commit changes

* Test text corrected

* Enable taxes on automatic tax setup (https://github.com/woocommerce/woocommerce-admin/pull/3795)

* Update Country Labeling to Match Core (https://github.com/woocommerce/woocommerce-admin/pull/3790)

* Updated country labeling

Country labeling on Customer Report was updated

* Updated country labeling in other files

* remove .jitm-card notice padding (https://github.com/woocommerce/woocommerce-admin/pull/3814)

* OBW Connect: Fix requesting state (https://github.com/woocommerce/woocommerce-admin/pull/3786)

* OBW Connect: Fix requesting state

* pass down setIsPending

* setIspending propType

* defaultProps

* test

* Revert "test"

This reverts commit e921092b19401931cc1aec8ee84fa53c53b67f36.

* better comparison for redirect

* Fixes Taxes Report search bug and adds initial documentation. (https://github.com/woocommerce/woocommerce-admin/pull/3816)

* Initial Taxes Report documentation.

* Fix taxes endpoint search parameter.

* OBW: Fix retry plugin install button disappearing (https://github.com/woocommerce/woocommerce-admin/pull/3787)

* OBW: Fix retry plugin install btn disappearing

* try suggestion

* Revert "try suggestion"

This reverts commit 5b9386957a501ac3e729e5f16b0ee71c9d792859.

* Fix special character escaping in search. (https://github.com/woocommerce/woocommerce-admin/pull/3826)

* Properly prepare/escape special characters in Product search.

* Properly prepare/escape special characters in Coupon search.

* Properly prepare/escape special characters in Tax code search.

* Fix tracking on migrated options (https://github.com/woocommerce/woocommerce-admin/pull/3828)

* Don't track onboarding toggle if migrating options

* Prevent WC_Tracks from recording event post types not yet registered

* Activity Panels: Remove W Panel (https://github.com/woocommerce/woocommerce-admin/pull/3827)

* Remove W Notif Panel.

* Add back in trapping logic, and hide on non-embed pages.

* add npm run test:zip command (https://github.com/woocommerce/woocommerce-admin/pull/3823)

* add npm run test:zip command

* 1.0.0 release changes🎉 (https://github.com/woocommerce/woocommerce-admin/pull/3831)

* 1.0.0 release changes🎉

* changelog

* 0.26.1 changelog

* Add Report Extension Example: Add default props to ReportFilters (https://github.com/woocommerce/woocommerce-admin/pull/3830)

* ReportFilters component: Add sane defaults

* styles

* add required column

* add left join to sku ordering (https://github.com/woocommerce/woocommerce-admin/pull/3845)

* Deal with lint errors, and improperly merged files

* regenerate package-lock.json

* attempting to resolve package lock conflict.

Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
Co-authored-by: Ron Rennick <ron@ronandandrea.com>
Co-authored-by: Fernando <ultimoround@gmail.com>
Co-authored-by: edmundcwm <edmundcwm@gmail.com>
Co-authored-by: Paul Sealock <psealock@gmail.com>
2020-03-10 15:47:39 +13:00
Fernando 5946e8c855 Onboarding - business step: add more options in the competitors list and other fixes (https://github.com/woocommerce/woocommerce-admin/pull/3812)
* Modified question in the business step of the onboarding

* Added more options in the competitors list

Onboarding - Business step -> Add more options in the competitors list.

* Added an option input field to Onboarding, business step

To the Onboarding's business step added an input field when the user selects "Other".

* Added suggested improvements

* Added new param to "test_schema" test

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2020-03-06 16:20:54 -03:00
Joshua T Flowers cb3fcbcf08 Onboarding: Remove old development flags (https://github.com/woocommerce/woocommerce-admin/pull/3809)
* Remove old onboarding flags

* Remove flag from onboarding docs

* Enable onboarding in tests
2020-03-04 09:46:02 +01:00
Ron Rennick 54d58ed13e Version/1.0 master merge (https://github.com/woocommerce/woocommerce-admin/pull/3797)
* Try: Moving Customers to main Woo Menu (https://github.com/woocommerce/woocommerce-admin/pull/3632)

* Only add onboarding settings on wc-admin pages when task list should be shown. (https://github.com/woocommerce/woocommerce-admin/pull/3722)

* Use cron for unsnoozing admin notes (https://github.com/woocommerce/woocommerce-admin/pull/3662)

* Use wp-cron for admin note snoozing.

* Remove "unsnooze" scheduled action.

* Use correct version.

* Avoid using deprecated method for unscheduling actions.

* Onboarding: Fix toggle tracking events (https://github.com/woocommerce/woocommerce-admin/pull/3645)

* Fix errant wcadmin prefix on event name

* Track the onboarding toggle on the option in case enable_onboarding isn't used

* Move toggle actions to separate function

* Move onboarding actions

* Move onboarding filters

* Move help tab updates to add_toggle_actions

* Only run onboarding actions when enabled

* Onboarding: Add tracks events when profiler steps are completed (https://github.com/woocommerce/woocommerce-admin/pull/3726)

* Add tracks for store profiler step completion

* Record event when profiler is completed

* Ensure continue setup loads the onboarding profiler (https://github.com/woocommerce/woocommerce-admin/pull/3646)

* 'All that include' option removed when input field is empty (https://github.com/woocommerce/woocommerce-admin/pull/3700)

* 'All that include' option removed when input field is empty

Added a control to check that when the input field 'Search by customer name' is empty, the 'All that include' option is not appearing.

* Const name improved

The constant name hasValues was changed to optionsHaveValues (more descriptive)

* Fix select text alignment (https://github.com/woocommerce/woocommerce-admin/pull/3723)

* Stock panel indicator - cache and use lookup tables. (https://github.com/woocommerce/woocommerce-admin/pull/3729)

* Stock panel indicator - cache and use lookup tables.

* Revise query, clear transient on product update.

* Fix error, ht Josh.

* Checklist: Remove sideloaded images to reduce build size, take 2 (https://github.com/woocommerce/woocommerce-admin/pull/3731)

* Remove homepage template images.

* Use other-small on all industries, adjust text color.

* Remove background dim and opacity set to 0

* Fix/3631 (https://github.com/woocommerce/woocommerce-admin/pull/3730)

* Added CBD as an industry type

CBD was added as an industry type in API

* Industries options modified

Modified the industries options. Now we are able to choose if we will use an input or not in the option.

* API control changed for industries.

API control changed for industries. Now it accepts the data type we need.

* Added input in Industries list for the option "Other"

Added an input for the option "Other" in the industries list

* Added suggested changes in review comments.

* Added data preparation for recordEvent

* Changed variable to snake_case

The variable "industriesWithDetail" was changed to "industries_with_detail" (snake_case)

* Onboarding: Create homepage without redirect (https://github.com/woocommerce/woocommerce-admin/pull/3727)

* Add link to edit homepage instead of redirect

* Add busy state to homepage creation button

* Publish homepage on create via API

* Update homepage notice to show on first post update

* Update homepage creation notice per design

* Record event on customize homepage

* Set homepage to frontpage on creation

* Add deactivation note for feature plugin (https://github.com/woocommerce/woocommerce-admin/pull/3687)

* Add version deactivation note

* Add the note to deactivate if the version is older than the current WC version

* Deactivate wc admin feature plugin on action click

* Add notes version hooks

* change the Package class namespace to exclude from standalone autoloader

* add use statement for FeaturePlugin

* add note explaining namespace

* use wc-admin-deactivate-plugin note name

* Rename file and class to WC_Admin_Notes_Deactivate_Plugin

Co-authored-by: Ron Rennick <ron@ronandandrea.com>
Co-authored-by: Paul Sealock <psealock@gmail.com>

* Add Travis tests on GH for release branch (https://github.com/woocommerce/woocommerce-admin/pull/3751)

* Add Travis tests on GH for release branch

* fix linter errors

* ActivityPanels.php -> use public static functions

* Remove free text Search option when no query exists (https://github.com/woocommerce/woocommerce-admin/pull/3755)

* Revert changes in woocommerce/woocommerce-admin#3700

* Don't add free text search if no query exists

* Add tests for Search without query

* Add test for showing free text search option

* Fix image sideloading for store industries. (https://github.com/woocommerce/woocommerce-admin/pull/3743)

* Fix image sideloading for store industries.

Data format changed in https://github.com/woocommerce/woocommerce-admin/pull/3730

* Fix industry image sideload in cases where the count is less than requested.

* Be backwards compatible with the old industry data format.

* Added event props to identify stores with WCS and Jetpack installed (https://github.com/woocommerce/woocommerce-admin/pull/3750)

* Added event props to identify stores with WCS and Jetpack installed

Also, added Jeckpack connected status

* Improved variable name

* Simplified method

Simplified method. "intersection" check was removed

* Tests errors repeared

The method "clear_low_out_of_stock_count_transient" now is static.

* OBW: fix sideloading image test error (https://github.com/woocommerce/woocommerce-admin/pull/3762)

* Release 0.26.0 changes (https://github.com/woocommerce/woocommerce-admin/pull/3753)

* add deactivation hook to Package.php (https://github.com/woocommerce/woocommerce-admin/pull/3770)

* Add active version functions (https://github.com/woocommerce/woocommerce-admin/pull/3772)

* add active version functions to Package.php

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* 0.26.1 changes (https://github.com/woocommerce/woocommerce-admin/pull/3773)

* Customers Report: fix missing report param in search (https://github.com/woocommerce/woocommerce-admin/pull/3778)

* Product titles include encoded entities (https://github.com/woocommerce/woocommerce-admin/pull/3765)

* Stripped HTML from product titles and decoded before displaying them

Stripped html from product titles and entities are decoded before displaying them

* Stripped HTML from product titles and decoded in Stock report

Stripped html from product titles and entities are decoded before displaying them. Now in Stock report

* Added support for HTML tags and encoded entities on product titles

Added support for HTML tags and encoded entities on filtered product list, dropdown menus and tag names.
Also, strip_tags() function was replaced with wp_strip_all_tags() instead.

* strip_tags() function was replaced with wp_strip_all_tags() instead.

* Added control for a variable

Added control for "item->data" before applying wp_strip_all_tags method.

* pre-commit changes

* Test text corrected

* fix linting issues

* fix mis-merged changes

* Update jsdoc

Co-Authored-By: Paul Sealock <psealock@gmail.com>

Co-authored-by: Timmy Crawford <timmyc@users.noreply.github.com>
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
Co-authored-by: Fernando <ultimoround@gmail.com>
Co-authored-by: edmundcwm <edmundcwm@gmail.com>
Co-authored-by: Paul Sealock <psealock@gmail.com>
2020-03-03 11:22:32 +13:00
Bec Scott 1cc7e0288f Add PayFast payment gateway option for sites in South Africa (https://github.com/woocommerce/woocommerce-admin/pull/3738)
* Add PayFast payment gateway option for sites in South Africa

* Fix PayFast extension in the whitelist

* Configure PayFast from within the task list

* Triggering hook

* Show PayFast payment method at the bottom of the options

* When configuring the PayFast extension set the store currency to ZAR

* Remove withSelect from compose function

* Only do one call to update the settings
2020-02-24 13:54:46 +10:00
Alex Kirk 8d08616a87 Typo (https://github.com/woocommerce/woocommerce-admin/pull/3757) 2020-02-21 16:16:00 -08:00
Ron Rennick 952b70774f Merge Version/1.0 to master (https://github.com/woocommerce/woocommerce-admin/pull/3740)
* Try: Moving Customers to main Woo Menu (https://github.com/woocommerce/woocommerce-admin/pull/3632)

* Only add onboarding settings on wc-admin pages when task list should be shown. (https://github.com/woocommerce/woocommerce-admin/pull/3722)

* Use cron for unsnoozing admin notes (https://github.com/woocommerce/woocommerce-admin/pull/3662)

* Use wp-cron for admin note snoozing.

* Remove "unsnooze" scheduled action.

* Use correct version.

* Avoid using deprecated method for unscheduling actions.

* Onboarding: Fix toggle tracking events (https://github.com/woocommerce/woocommerce-admin/pull/3645)

* Fix errant wcadmin prefix on event name

* Track the onboarding toggle on the option in case enable_onboarding isn't used

* Move toggle actions to separate function

* Move onboarding actions

* Move onboarding filters

* Move help tab updates to add_toggle_actions

* Only run onboarding actions when enabled

* Onboarding: Add tracks events when profiler steps are completed (https://github.com/woocommerce/woocommerce-admin/pull/3726)

* Add tracks for store profiler step completion

* Record event when profiler is completed

* Ensure continue setup loads the onboarding profiler (https://github.com/woocommerce/woocommerce-admin/pull/3646)

* 'All that include' option removed when input field is empty (https://github.com/woocommerce/woocommerce-admin/pull/3700)

* 'All that include' option removed when input field is empty

Added a control to check that when the input field 'Search by customer name' is empty, the 'All that include' option is not appearing.

* Const name improved

The constant name hasValues was changed to optionsHaveValues (more descriptive)

* Fix select text alignment (https://github.com/woocommerce/woocommerce-admin/pull/3723)

Co-authored-by: Timmy Crawford <timmyc@users.noreply.github.com>
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
Co-authored-by: Fernando <ultimoround@gmail.com>
Co-authored-by: edmundcwm <edmundcwm@gmail.com>
2020-02-20 07:59:02 -04:00
Bec Scott 2a7e4f0c97 Make analytics tables use the site's date format setting (https://github.com/woocommerce/woocommerce-admin/pull/3715)
* Make analytics tables use the site's date format setting

* Use getSetting instead of the wcSettings global

* Use configured date format in coupons analytics table

* Use default date format as fallback in analytics

* Rename downloads table class name
2020-02-17 11:12:35 +10:00
Fernando d0a557df96 Added link to "go shopping" button (https://github.com/woocommerce/woocommerce-admin/pull/3712)
* Added link to "go shopping" button

Onboarding - added a link to the shop page in the "go shopping" button

* Now using core's helper method

* Added esc_url function to shop_url

* woocommerce_get_page_id was replaced by wc_get_page_id
2020-02-14 14:24:31 -03:00
Ron Rennick db8a3ed88c tag version 0.25.1 (https://github.com/woocommerce/woocommerce-admin/pull/3681) 2020-02-07 11:15:00 -08:00
Ron Rennick 8e0a6a18fd cast tax amount to float (https://github.com/woocommerce/woocommerce-admin/pull/3656) 2020-02-05 07:50:02 -08:00
Ron Rennick 64f9cd733b tag version 0.25 (https://github.com/woocommerce/woocommerce-admin/pull/3641) 2020-02-05 13:18:28 +13:00
Timmy Crawford 02540f3b89 Fix for onboarding in 25.0 (https://github.com/woocommerce/woocommerce-admin/pull/3651) 2020-01-30 15:23:02 -08:00
Joshua T Flowers 243901a38f Onboarding: Mark profiler complete on WC update (https://github.com/woocommerce/woocommerce-admin/pull/3590)
* Mark profiler as complete if previous onboarding install has been handled

* Load features before WC updated hooks

* Add todo note about updating core install check
2020-01-29 11:47:04 -03:00
Joshua T Flowers 761a67f18b Onboarding: Mark payments task complete when payment configured (https://github.com/woocommerce/woocommerce-admin/pull/3576)
* Mark payments task complete when payment configured

* Only mark complete when all payments configured

* Only mark payments complete if all payments configured
2020-01-28 09:12:04 -08:00
Joshua T Flowers fcd2d517cd Onboarding: Allow any uploaded theme to be activated (https://github.com/woocommerce/woocommerce-admin/pull/3620)
* Allow installed themes to be installed and activated

* Filter themes on client-side by WC support and currently active

* Run transient deletion hook during REST requests

* Delete transient on theme switch for non-admin requests
2020-01-24 10:11:36 +08:00
Joshua T Flowers b0b79e8968 Redirect old onboarding wizard to profiler when active (https://github.com/woocommerce/woocommerce-admin/pull/3593) 2020-01-21 20:05:10 +08:00
Paul Sealock 127ede4fd7 Dashboard: fix usermeta prefix (https://github.com/woocommerce/woocommerce-admin/pull/3586) 2020-01-21 08:06:38 +13:00
Jeff Stieler 25c09563a1 Don't modify the document title on existing WooCommerce pages. (https://github.com/woocommerce/woocommerce-admin/pull/3585) 2020-01-20 10:34:24 -07:00
Ron Rennick 0169dd26bb fix strict standards in Scheduler classes (https://github.com/woocommerce/woocommerce-admin/pull/3583) 2020-01-20 08:19:53 -04:00
Jeff Stieler 3c93bc7b98 Remove defunct hook removals. (https://github.com/woocommerce/woocommerce-admin/pull/3584) 2020-01-17 17:16:02 -07:00
Joshua T Flowers 69525f70df Onboarding: Mark payments task complete on updating payment gateways (https://github.com/woocommerce/woocommerce-admin/pull/3579)
* Mark payments task complete on Stripe settings update

* Check for Paypal completion

* Update payments task to complete on setting Square tokens

* Update Paypal settings to check ppec settings
2020-01-17 09:11:04 +08:00
Paul Sealock afd4573f4d Re-add stockStatuses to wcSettings (https://github.com/woocommerce/woocommerce-admin/pull/3573) 2020-01-17 13:42:02 +13:00
Jeff Stieler d57b99e6c7 Revamp uninstallation when WooCommerce Admin is in core. (https://github.com/woocommerce/woocommerce-admin/pull/3546)
* Don't truncate table data on uninstall if WooCommerce Admin is in core.

* DROP tables on uninstall (like core does).

* Migrate wc_ prefix options to woocommerce_.

This allows core WC to clean up when uninstalled.

* Migrate wc_ prefixed user meta fields to woocommerce_.

This allows core WC to clean up when uninstalled.

* Fix use of date().

* Update comment describing the option value filter.
2020-01-16 17:08:29 -07:00
Jeff Stieler 3b609cf19f Avoid redundant/unnecessary cleanup. (https://github.com/woocommerce/woocommerce-admin/pull/3580)
The feature plugin doesn't need to clean up when the core package exists.
2020-01-16 11:46:05 -07:00
Ron Rennick d192e55dda fix SQL error in category sort (https://github.com/woocommerce/woocommerce-admin/pull/3521)
* fix SQL error in category sort

Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
2020-01-15 16:26:28 -04:00
Jeff Stieler c15bbc9e4b Make package-based load inert when plugin is active. (https://github.com/woocommerce/woocommerce-admin/pull/3555) 2020-01-14 08:13:58 -07:00
Joshua T Flowers d29d674768 Onboarding: Add reminder to complete profiler (https://github.com/woocommerce/woocommerce-admin/pull/3524)
* Add note to complete profiler

* Add note actions

* Update note to actioned when profiler is marked complete

* Update note to actioned client-side when completing profiler
2020-01-10 09:36:30 +08:00
Ron Rennick d657613888 add privacy erasure via woocommerce hook (https://github.com/woocommerce/woocommerce-admin/pull/3511)
* add privacy erasure via woocommerce hook

Co-Authored-By: Joshua T Flowers <joshuatf@gmail.com>
2020-01-09 09:07:16 -04:00
Joshua T Flowers 90112354b1 Update historical data notice to actioned on import (https://github.com/woocommerce/woocommerce-admin/pull/3539)
* Add hook for regenerating data init

* Set note to actioned on data import

* Update note status on client-side import start
2020-01-09 10:11:39 +08:00
Joshua T Flowers d96a8b88b4 Update broken note action hooks (https://github.com/woocommerce/woocommerce-admin/pull/3535)
* Update action hooks to use new prefix

* Update error prefixes for notes
2020-01-09 10:10:29 +08:00
Joshua T Flowers da9421692f Onboarding: Add option to track appearance completion (https://github.com/woocommerce/woocommerce-admin/pull/3503)
* Add option to track appearance completion

* Disable proceed button if no logo and not dirty state
2020-01-09 10:05:03 +08:00
Ron Rennick d1f198b21f Sync refactor tweaks (https://github.com/woocommerce/woocommerce-admin/pull/3504)
* add check for in progress actions

* add check for AS get_date() function

* incorporate review feedback

* remove unnecessary else
2020-01-08 09:53:05 -04:00
Jeff Stieler 76e5483cf2 Release 0.24.0 (https://github.com/woocommerce/woocommerce-admin/pull/3520)
* Bump version.

* Add changelog entries.

* Update tested to.
2020-01-07 10:54:05 -05:00
Timmy Crawford 41986bd8f0 Analytics: Change Refunds to Returns (https://github.com/woocommerce/woocommerce-admin/pull/3514)
* Change Refunds to Returns

* Also rename the chart

* Rename dashboard chart
2020-01-03 15:12:53 -08:00
Joshua T Flowers af5022c3d1 Reports sync refactor (https://github.com/woocommerce/woocommerce-admin/pull/3285) 2020-01-03 00:00:37 +08:00
Joshua T Flowers a2bff95a4a Onboarding: Redirect the user to the task list if referer is wccom checkout (https://github.com/woocommerce/woocommerce-admin/pull/3495) 2020-01-02 10:30:12 +08:00
Jeff Stieler e93a2abcf9 Tag version 0.23.3 (https://github.com/woocommerce/woocommerce-admin/pull/3475)
* Bump plugin version.

* Add changelog entry.
2019-12-31 11:18:36 -08:00
Joshua T Flowers 700cf7bb2d Onboarding: Add purchase products task list item (https://github.com/woocommerce/woocommerce-admin/pull/3472)
* Add an array of installed plugins to wcSettings

* Don't include already installed plugins in cart items

* Move cart modal component

* Add purchase task and modal to task list

* Rename ambiguous task getter method

* Remove modal purchase later prop

* Show completed product purchase task item after purchase

* Don't show cart modal if all items previously purchased
2019-12-31 16:50:45 +08:00
Joshua T Flowers 52c81230c3 Onboarding: Install free themes during profiler (https://github.com/woocommerce/woocommerce-admin/pull/3484)
* Add theme name to theme activation response

* Install and activate theme on choose in profiler

* Only auto install free themes and not currently active themes

* Move getPriceValue to dashboard utils

* Don't add free themes to the cart
2019-12-30 18:11:50 +08:00
Joshua T Flowers 3da148156e Onboarding: Add theme install and activation endpoints (https://github.com/woocommerce/woocommerce-admin/pull/3482)
* Add API endpoint to install themes

* Add API endpoint to activate a theme

* Add an array of allowed themes and sanitize slugs

* Limit allowed themes to already installed or free themes

* Add theme installation tests

* Add tests for theme activation

* Add onboarding theme installation and activation tests

* Remove unused argument in onboarding plugins API
2019-12-30 15:47:15 +08:00
Timmy Crawford 44748bb16e Onboarding: Add another option to platforms. (https://github.com/woocommerce/woocommerce-admin/pull/3471)
* Onboarding: Add another option to platforms.

* Add revenue question for other woo store.

* Add new option value to REST enum.
2019-12-27 08:30:59 -08:00
Joshua T Flowers 986703686e Onboarding: Add in tracks for failed plugin installation (https://github.com/woocommerce/woocommerce-admin/pull/3483) 2019-12-27 07:20:52 +08:00
Jeff Stieler b742c132da Invalidate API caches when updating analytics settings. (https://github.com/woocommerce/woocommerce-admin/pull/3465) 2019-12-26 17:50:30 -05:00
Paul Sealock 402294c500 DataStores: normalize contexts to plural (https://github.com/woocommerce/woocommerce-admin/pull/3419)
* DataStores: normalize contexts to plural

* downloads_stats
2019-12-26 11:50:52 +13:00
Jeff Stieler c28b6d9f2c Fix DB version retrieval default value. (https://github.com/woocommerce/woocommerce-admin/pull/3473)
Value should be null if not set.
2019-12-24 13:19:08 -05:00
Justin Shreve 5068282b7b Add purchase modal at the end of the profile wizard (https://github.com/woocommerce/woocommerce-admin/pull/3444)
* Add purchase modal to confirm intent before cart redirect

* Handle PR feedback: Fix comment on getProductIdsForCart, move cart modal to open on theme page (which rewrites the mark completed functionality), fix CSS display, Add busy stsate to redirect to cart button

* Fix some minor naming issues and add a busy state on thee later link
2019-12-20 07:58:38 -05:00
Jeff Stieler 747618cb2d Bump version to 0.23.2. (https://github.com/woocommerce/woocommerce-admin/pull/3453)
* Update version to 0.23.2.

* Add changelog entries.
2019-12-20 07:24:49 -05:00
Jeff Stieler 162a8cd550 Allow report caching layer to be filtered off. (https://github.com/woocommerce/woocommerce-admin/pull/3434)
* Add filter to conditionally disable report caching.

* Disable caching for Orders Stats unit tests.

Fixes the display of the last query when tests fail.
2019-12-17 16:21:44 -05:00
Jeff Stieler 79ad163a3a Fix user data fields filter name. (https://github.com/woocommerce/woocommerce-admin/pull/3428)
Missed in woocommerce/woocommerce-admin#3339.
2019-12-17 08:36:22 -05:00
Jeff Stieler 7804d010ed Add moment dependency to script registration. (https://github.com/woocommerce/woocommerce-admin/pull/3429)
Our app and packages expect momentjs as an external.
2019-12-17 08:35:51 -05:00
Paul Sealock 9a4369d984 Bump minimum WP version to 5.3 (https://github.com/woocommerce/woocommerce-admin/pull/3393)
* Bump minimum WP version

* Bump min WP version in main README.
2019-12-13 10:05:41 -05:00
Ron Rennick 4f71ae79a9 update customer rest controller for last active date in local time (https://github.com/woocommerce/woocommerce-admin/pull/3388) 2019-12-10 16:46:17 -04:00
Justin Shreve 1acd567e76 Default the Calypso environment to production (https://github.com/woocommerce/woocommerce-admin/pull/3347) 2019-12-10 14:36:45 -05:00
Justin Shreve a0e47e8dfd Add a button to continue setup after importing products (https://github.com/woocommerce/woocommerce-admin/pull/3402) 2019-12-10 14:28:19 -05:00
Ron Rennick d1b356919c don't load analytics dashboard for users without needed capability (https://github.com/woocommerce/woocommerce-admin/pull/3386)
* don't load analytics dashboard for users without needed capability

* add helper function
2019-12-10 10:04:39 -04:00
Joshua T Flowers df172f4592 Onboarding: Reduce number of queries needed to update logo (https://github.com/woocommerce/woocommerce-admin/pull/3397)
* Add stylesheet and themeMods to settings and remove customLogo

* Remove queries to get current stylesheet and thememods
2019-12-10 11:08:44 +07:00
Paul Sealock 6a92ccb932 Release/0.23.1 (https://github.com/woocommerce/woocommerce-admin/pull/3395)
* release changes 0.23.0

* check onboarding function

* version bumps

* fix package.json typo

* fix version typo
2019-12-10 08:02:09 +13:00
Paul Sealock 557cf0fbc4 release changes 0.23.0 (https://github.com/woocommerce/woocommerce-admin/pull/3371) 2019-12-10 07:30:38 +13:00
Ron Rennick fe0aaaa8ab Add/disable plugin filter (https://github.com/woocommerce/woocommerce-admin/pull/3361)
* add filter to allow WC Admin to be disabled

* update filter name
2019-12-06 13:13:28 -04:00
Ron Rennick ba30224098 Stardardize hooks (https://github.com/woocommerce/woocommerce-admin/pull/3339)
* rename woocommerce_reports_* hooks/filters to woocommerce_analytics_*

* introduce woocommerce_navigation_ filter prefix

* update remaining wc_admin_* filters/hooks

* phpcs sniff fixes for notes data store

* standardize woocommerce_note_ hook prefix

* one of filter renames

* update contributing readme, onboarding unit test

* missed _notes_ -> _note_ filter

* update ext example hooks
2019-12-06 12:06:11 +13:00
Paul Sealock 8205112732 Add currency extension (https://github.com/woocommerce/woocommerce-admin/pull/3328)
* Add currency extension

* use wcSettings

* save

* get revenue working

* all reports

* remove error log

* better rename

* add column

* persist queries

* go back to individual hooks

* comments

* address feedback
2019-12-06 11:38:26 +13:00
Ron Rennick 0c5c0f1571 add filter to allow WC Admin to be disabled (https://github.com/woocommerce/woocommerce-admin/pull/3350) 2019-12-04 19:44:49 -04:00
Ron Rennick cd6c81ae22 account for time change when calculating next day start (https://github.com/woocommerce/woocommerce-admin/pull/3333) 2019-12-04 19:44:20 -04:00
Justin Shreve 4e4d6b265a Remove extra debug information (https://github.com/woocommerce/woocommerce-admin/pull/3336) 2019-12-04 08:16:20 -05:00
Joshua T Flowers 81599c5178 Check if extended_info is set for order report items (https://github.com/woocommerce/woocommerce-admin/pull/3315) 2019-11-29 09:22:18 +08:00
Paul Sealock 3f13793e66 DB Updates: invalidate cache after update (https://github.com/woocommerce/woocommerce-admin/pull/3299) 2019-11-29 09:55:23 +13:00
Ron Rennick d6c77de3cd make customer order count consistent between customer and stats (https://github.com/woocommerce/woocommerce-admin/pull/3290)
* make customer order count consistent between customer and stats

* add phpcs ignore for date()

* move reused SQL logic to variables
2019-11-28 12:58:46 -04:00
Joshua T Flowers deeeacd3a5 Include out of stock products in low_in_stock product filter (https://github.com/woocommerce/woocommerce-admin/pull/3310) 2019-11-28 13:41:58 +08:00
Justin Shreve 50cc3edaed Update onboarding filters with a consistent prefix (https://github.com/woocommerce/woocommerce-admin/pull/3295)
* Update onboarding filters with a consistent prefix

* Rename woocommerce_onboarding_payments to match the other task list options
2019-11-25 11:15:22 -05:00
Justin Shreve c8f9d7673c Fix notices and display issues that can occur when a WCCOM product api request fails (https://github.com/woocommerce/woocommerce-admin/pull/3291) 2019-11-25 10:35:35 -05:00
David Levin 52cb35f4de Correcting and clarifying analytics terms and calculations (https://github.com/woocommerce/woocommerce-admin/pull/3104)
* 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.
2019-11-22 10:06:14 -05:00
Justin Shreve 631ffe240f Onboarding - Add extra plugin debug to plugin installation (https://github.com/woocommerce/woocommerce-admin/pull/3272)
* Add extra plugin debug to plugin installation

* Add additional debug
2019-11-21 10:22:49 -05:00
Paul Sealock 1f4e2fcdfe Use same wp-components version in bundle (https://github.com/woocommerce/woocommerce-admin/pull/3253)
* Use same wp-components version in bundle

* turn off short array rule
2019-11-21 09:36:44 +13:00
Joshua T Flowers 6bb8015cf2 Filter invalid statuses from saved statuses (https://github.com/woocommerce/woocommerce-admin/pull/3268) 2019-11-20 22:52:24 +08:00
Paul Sealock 790e5f59d3 Allow core inclusion via Package.php (https://github.com/woocommerce/woocommerce-admin/pull/3196)
* Create GH tag release process

Add core to the release

no need to re-run docs

simplify build command

add gh release script

fix errant comment

fix errant comment

force add feature-config.php

gitattributes

moar attributes

add language files

* Make sure initalization via Core is working
2019-11-20 12:23:27 +13:00
Jeff Stieler f8fa7b6bc7 Fetch autocomplete countries from the API rather than wcSettings object. (https://github.com/woocommerce/woocommerce-admin/pull/3262) 2019-11-19 14:17:15 -05:00
Ron Rennick 915953e1a6 use a filter to set default locale (https://github.com/woocommerce/woocommerce-admin/pull/3273) 2019-11-19 13:49:18 -04:00
Ron Rennick 2b8b1e4c1c rename DS get_* to add_* where function does not return values (https://github.com/woocommerce/woocommerce-admin/pull/3275)
* rename DS get_* to add_* where function does not return values

* phpcs fixes on coupons, products data stores
2019-11-19 13:48:35 -04:00
Ron Rennick 241fad75cc PHPCS fixes for onboarding files (https://github.com/woocommerce/woocommerce-admin/pull/3269) 2019-11-18 11:17:48 -04:00
Ron Rennick 634a4edc13 return a value from create pages API call (https://github.com/woocommerce/woocommerce-admin/pull/3261) 2019-11-18 08:37:16 -04:00
Justin Shreve 03c3251a2a Onboarding - Add tracks queue and fix busted tracks events/add missing event (https://github.com/woocommerce/woocommerce-admin/pull/3220)
* Fix busted tracks events and add missing continue setup event

* Move appearance check to next page load to avoid the event not firing

* Add a tracks queue to delay event recording & log embed page views (https://github.com/woocommerce/woocommerce-admin/pull/3250)

* Add a tracks queue to delay event recording

* Add emebedded page view tracking, and queue the tax skip event
2019-11-15 08:32:02 -05:00
Joshua T Flowers ee747d2869 Onboarding: Skip homepage step when classic editor is in use (https://github.com/woocommerce/woocommerce-admin/pull/3244) 2019-11-15 08:17:48 +08:00
Ron Rennick 4987b7a1a7 add REST routes for customers, handler for single customer (https://github.com/woocommerce/woocommerce-admin/pull/3174)
* add REST routes for customers, handler for single customer

* use customer id vs user_id, add collection link
2019-11-14 11:25:29 -04:00
Joshua T Flowers 91b8ed366d Onboarding: Add the ability to toggle on or off the new onboarding (https://github.com/woocommerce/woocommerce-admin/pull/3230)
* Add on option to toggle on the new onboarding experience

* Add an option to toggle off the new onboarding experience

* Update todo comment to remove option on merge to core
2019-11-14 13:12:37 +08:00
Joshua T Flowers f2d41e8fd7 Onboarding: Remove notice to run the old setup wizard (https://github.com/woocommerce/woocommerce-admin/pull/3232) 2019-11-14 13:11:28 +08:00
Joshua T Flowers 87edceabf3 Fix header error in homepage template (https://github.com/woocommerce/woocommerce-admin/pull/3231) 2019-11-14 13:05:28 +08:00
Paul Sealock 360b0f1651 Release 0.22.0 changes (https://github.com/woocommerce/woocommerce-admin/pull/3221) 2019-11-14 09:09:17 +13:00
Joshua T Flowers 6d9c37215a Add email marketing note if profiler is complete (https://github.com/woocommerce/woocommerce-admin/pull/3213) 2019-11-13 11:25:12 +08:00
Joshua T Flowers 000d666096 Add tax filtering to orders data (https://github.com/woocommerce/woocommerce-admin/pull/3197)
* Add tax rates filter to orders report

* Add tax rate filters to orders data store

* Add tax rate query filters to order stats data store

* Add tax rate orders link to taxes table
2019-11-13 11:22:06 +08:00
Ron Rennick fe3f819ee8 add order status filter to tax stats queries (https://github.com/woocommerce/woocommerce-admin/pull/3158) 2019-11-12 16:54:55 -04:00
Ron Rennick b2b1934eea remove deleted products, coupons from stats when order edited (https://github.com/woocommerce/woocommerce-admin/pull/3103)
* remove deleted products, couponsfrom stats when order edited

* sync with datastore refactor
2019-11-12 15:07:14 -04:00
Justin Shreve d29f93999a Update the Jetpack WooCommerce onboarding parameter, so that we can split test the new UI against the existing setup wizard flow. (https://github.com/woocommerce/woocommerce-admin/pull/3207) 2019-11-12 13:24:27 -05:00
Ron Rennick f78c143f3b Move in-house rest endpoints to private namespace (https://github.com/woocommerce/woocommerce-admin/pull/3204)
* move in-house rest endpoints to private namespace

* PHPCS sniff fixes
2019-11-12 14:15:55 -04:00
Ron Rennick 8ad869e643 move stock stats suny functions to ReportsSync (https://github.com/woocommerce/woocommerce-admin/pull/3186) 2019-11-12 11:34:07 -04:00
Justin Shreve 4b7263df14 Onboarding - Fix homepage notice on Gutenberg save (https://github.com/woocommerce/woocommerce-admin/pull/3206)
* Fix homepage notice

* Update class name used to check for publish success
2019-11-12 10:31:44 -05:00
Joshua T Flowers 4fb1945917 Onboarding: Use ShipStation for AU, GB, and CA (https://github.com/woocommerce/woocommerce-admin/pull/3200)
* Add shipstation to allowed plugins list

* Use shipstation for qualifying countries

* Add default value for onError prop in Plugins component
2019-11-12 10:44:39 +08:00
Joshua T Flowers 642b17c1aa Onboarding: Update return to task list notices (https://github.com/woocommerce/woocommerce-admin/pull/3192)
* Use core/notices for product creation notices

* Only show task list return notice on first save of taxes

* Update tax completion notice

* Check if tax task is complete before loading script
2019-11-12 09:17:36 +08:00
Justin Shreve 473ba88c59 Select the stripe checkbox by default (https://github.com/woocommerce/woocommerce-admin/pull/3189) 2019-11-11 14:57:08 -05:00
Justin Shreve 5b80e321ba Enable onboarding in the plugin build for those who have opted-in (https://github.com/woocommerce/woocommerce-admin/pull/3184)
* Enable onboarding in the plugin build for those who have opted-in

* Update constant andd option value
2019-11-07 13:31:02 -05:00
Jeff Stieler 27cf52c31c Fix PHP linter errors. (https://github.com/woocommerce/woocommerce-admin/pull/3188) 2019-11-07 11:18:05 -07:00
Ron Rennick afed4fba36 Data store refactor (https://github.com/woocommerce/woocommerce-admin/pull/2961)
* Base Report data store utility functions - 1

Standardizing the data store classes will be easier if the base class contains simple utility functions
that can replace logic implemented in multiple data stores.

- set_db_table_name() assigns a WP DB table name class variable for the data store
- get_db_table_name() retrieves the WP DB table name
- prepend_table_name() prepends a field in a query fragment with the data store table name

* add context, clause handling, and filters to reports data store

* add generated SQL clauses to class properties

* reduce id getter logic to single function with filter, add phpdocs to new filters

* update table_name to private string for use in constructor

* extract SQL query clause handling to its own class

- Will allow for use in subquery processing without creating a get_data stub
- Swap parameter order in add_sql_clause for readability
- Add support for clearing multple clauses in one call

* add context var to SqlQuery class

* implement SqlQuery in Categories data store

* implement subquery in categories data store

* coupons data stores, more underlying refactor

- fix warnings
- make filtered id functions static
- add limit parameter handling
- update coupons data store
- update coupon stats data store

* refactor coupon stats data store

* refactor customers and customer stats data stores

* add context to subqueries

* add missed prepend table name call

* refactor downloads data store, fix some warnings

* fix warnings, add separator parameter to filtered IDs

* refactor taxes and tax stats data stores

* refactor variations data store

* refactor product and product stats data stores

* make table_name static throughout for compat with static hook functions

* refactor order and order stats datastores

- use consistent visibility on initialize_queries()
- update db_table_name logic to use static keyword instead of self

* fix missed whitespace

* fix segmenting query, add SqlQuery join clause

* DRY data store constructors, class properties

* prefix table name when not yet assigned

* fix unit tests, interpolations, WPDB delete calls

* DRY get_object_where_filter()

* remove redundant table prefix from unit test init

* fix refactored SQL queries

* restore product paging

* remove unused query param arrays

* add first pass on data docs readme

* remove debug code, errant SQL spacing

* refactor out outer_from query element

* merge wheres, joins before filtering

* move all report column definitions to assign_report_columns

* fix data readme markdown

* small code formating fixes from review

* remove static from query/datastore context

* missed self:: in previous, add comments, small code moves

* rename get_statement() to get_query_statement()

* remove temporary query references

* static reference, remove reference parameter, fix coupon compare

* add todo reminders

* use correct query parameter in coupon data stores
2019-11-07 10:28:37 -07:00
Jeff Stieler 9a9d812e60 Add inbox note prompting to opt in to tracking (https://github.com/woocommerce/woocommerce-admin/pull/3112)
* Leave wc-admin install timestamp intact once set.

* Add inbox note for opting in to usage tracking.

* Remove markup from translated string.

* Allow tracking opt in note to be dismissed.

* Remove whitespace.
2019-11-07 09:29:36 -07:00
Jeff Stieler 810cef19f3 Show "add a product" notice to stores without published products (https://github.com/woocommerce/woocommerce-admin/pull/3119)
* Show "add a product" notice to stores without products.

* Fix primary inbox card action button style.
2019-11-07 09:00:38 -07:00
Joshua T Flowers 4ae34a2fd5 Allow WP 5.2 to satisfy dependencies (https://github.com/woocommerce/woocommerce-admin/pull/3182) 2019-11-07 15:37:35 +08:00
Joshua T Flowers c25c91126c Check if official TaxJar plugin exists before enabling WCS integration (https://github.com/woocommerce/woocommerce-admin/pull/3183) 2019-11-07 15:37:17 +08:00
Joshua T Flowers 73b11a1338 Onboarding: Add return to task list after saving taxes (https://github.com/woocommerce/woocommerce-admin/pull/3170) 2019-11-07 08:17:46 +08:00
Justin Shreve 2af8e7c656 Onboarding: Pass connection parameters to install extensions (https://github.com/woocommerce/woocommerce-admin/pull/3173)
* Generate the WooCommerce cart URL with connection params so installing extensions work

* Build cart URL client side

* Fix alignment
2019-11-06 09:41:38 -05:00
Joshua T Flowers 6520493738 Onboarding: Pre-fill profiler fields with data (https://github.com/woocommerce/woocommerce-admin/pull/3165) 2019-11-05 08:05:20 +08:00
Justin Shreve 4a59cb9b09 Create store pages during onboarding (https://github.com/woocommerce/woocommerce-admin/pull/3159) 2019-11-04 10:50:37 -05:00
Justin Shreve 8983c435df Onboarding industry labels - Update & to and per style guide (https://github.com/woocommerce/woocommerce-admin/pull/3161) 2019-11-04 10:48:43 -05:00
Justin Shreve d04b8a0fc1 Add images to homepage template and a new layout for sites with more than 4 products (https://github.com/woocommerce/woocommerce-admin/pull/3140)
* Switch templates for sites with more than 4 products

* Update homepage template depending on number of products, and add industry images to templates.

* Slight refactor of the update post template logic
2019-11-01 08:49:04 -04:00
Joshua T Flowers a3224ce65a Onboarding: Add task list welcome modal (https://github.com/woocommerce/woocommerce-admin/pull/3142) 2019-11-01 12:00:57 +08:00
Paul Sealock ec450264af 0.21.0 changes (https://github.com/woocommerce/woocommerce-admin/pull/3128) 2019-10-31 11:24:55 +13:00
Justin Shreve 2c81932702 Add currency defaults based on country (https://github.com/woocommerce/woocommerce-admin/pull/3110)
* Base currency defaults on selected country

* Save currency settings

* Move getCurrencyInfo to the currency package
2019-10-29 14:34:04 -04:00
Justin Shreve af10516b8f Make minor text fixes to onboarding (https://github.com/woocommerce/woocommerce-admin/pull/3116)
* Make minor text fixes to onboarding

* Fix it typo and use oxford commas
2019-10-29 14:15:36 -04:00
Justin Shreve 1aea9d7bd7 Update payments task based on feebback (https://github.com/woocommerce/woocommerce-admin/pull/3099)
* Mark stripe as enabled by default in supported countries, and link completed task to payment settings

* Update stripe supported code to pull from server side list

* Remove dependence on core method
2019-10-29 14:03:07 -04:00
Jeff Stieler 2271ff1db9 Always update DB version when plugin is updated. (https://github.com/woocommerce/woocommerce-admin/pull/3113) 2019-10-29 10:12:10 -06:00
Ron Rennick c3c790591f Address revenue discrepancies (https://github.com/woocommerce/woocommerce-admin/pull/3095)
* exclude wc-auto-draft orders from import

* round amounts for tax inclusive pricing

* differentiate between product and overall revenue

* use correct total when importing product line item

* update product revenue labels to "net sales"
2019-10-25 09:29:09 -03:00
Joshua T Flowers c6bee42514 Onboarding: Sort WC themes by ID (https://github.com/woocommerce/woocommerce-admin/pull/3097) 2019-10-25 08:39:56 +08:00
Jeff Stieler 26f23def50 Add Inbox note action indication (https://github.com/woocommerce/woocommerce-admin/pull/3039)
* Move inbox note actions to a bespoke component.

* Set busy state on action buttons on click.

* Allow for Note actions to be deleted.

* Update FB extension note after installation is complete.

* Link actions don't get busy treatment.

* Re-fetch note actions after updating.

Get new action IDs from the database.

* Add tracking to inbox note views. (https://github.com/woocommerce/woocommerce-admin/pull/3096)

* Move inbox note content to its own component.

* Send a tracks event when inbox notes are in the viewport.

Uses react-visibility-sensor.

* Match event data to `inbox_action_click`.
2019-10-24 10:13:05 -07:00
Jeff Stieler 1ac8577fc2 Match server-side CSV export format to client-side (https://github.com/woocommerce/woocommerce-admin/pull/2987)
* 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.
2019-10-24 09:41:16 -07:00
Joshua T Flowers 38c9e38e28 Add no product option to product count dropdown (https://github.com/woocommerce/woocommerce-admin/pull/3092) 2019-10-24 07:33:10 +08:00
Justin Shreve e9f4d45274 Install business extensions on the business details page (https://github.com/woocommerce/woocommerce-admin/pull/3084)
* Install Facebook & MailChimp plugins on the business details page

* Handle PR feedback: Add missing plugin name constants, and improve plugin component error handling
2019-10-23 11:17:38 -04:00
Joshua T Flowers 13f775eb98 Onboarding: Don't skip start step if TOS not accepted (https://github.com/woocommerce/woocommerce-admin/pull/3068)
* Don't skip start step if TOS not accepted

* Show WCS benefits even when installed
2019-10-23 07:55:57 +08:00
Justin Shreve f888079fe7 Add notices to return to task list on product and homepage tasks. (https://github.com/woocommerce/woocommerce-admin/pull/3061)
* Add notices to return to task list on product and homepage tasks.

* Handle PR feedback, simplifiy check.
2019-10-21 14:13:25 -04:00
Justin Shreve 973acde227 Fix asset image URL (https://github.com/woocommerce/woocommerce-admin/pull/3062) 2019-10-21 11:07:45 -04:00
Joshua T Flowers 8b1e263709 Onboarding: Add task list extensibility and example plugin (https://github.com/woocommerce/woocommerce-admin/pull/3060)
* Add task list filter

* Add task example plugin
2019-10-21 11:11:21 +08:00
Joshua T Flowers 7b39e9f68c Onboarding: Add store is ready for launch note (https://github.com/woocommerce/woocommerce-admin/pull/3058)
* Add option to mark task list completed

* Add note when task list completed option is true

* Add note on task list complete option added
2019-10-21 08:33:46 +08:00
Justin Shreve 8fe0f93c03 Add the ability to create custom plugin builds (https://github.com/woocommerce/woocommerce-admin/pull/3044)
* Add the ability to create custom plugin builds

* Use $_ENV instead of $_SERVER inside the generate-feature-config CLI script.
2019-10-17 14:00:20 -04:00
Justin Shreve e31e115e93 Update proceed without Jetpack/WCS to go to store details step (https://github.com/woocommerce/woocommerce-admin/pull/3040)
* Update proceed without Jetpack/WCS to go to store details step

* Adjust how we track the start/plugins step
2019-10-17 10:57:29 -04:00
Joshua T Flowers 181c02bbc8 Onboarding: Add redirect URL option to jetpack connection URL (https://github.com/woocommerce/woocommerce-admin/pull/3052)
* Add redirect_url as rest param to jetpack connection

* Add query param to jetpack connection URL in wc-api

* Add redirect URL to connection and plugin steps
2019-10-17 06:00:47 +08:00
Justin Shreve 5ee318064a Remove the Onboarding Levels API (https://github.com/woocommerce/woocommerce-admin/pull/3041) 2019-10-15 10:46:12 -04:00
Paul Sealock e07800d75b Release/0.20.1 (https://github.com/woocommerce/woocommerce-admin/pull/3033)
* Prepare for 0.20.0

* Fix Facebook extension install from inbox (https://github.com/woocommerce/woocommerce-admin/pull/3010)

* Restore FB extension to installation whitelist.

Errantly removed in fe585aa2.

* Fix FB extension installation from inbox.

APIs have diverged.

* Update order stats table status index length. (https://github.com/woocommerce/woocommerce-admin/pull/3022)

* Add per-version DB upgrade routine.

Update order stats index length as well.

* Use globally namespaced methods for DB updates.

* Avoid creating duplicate DB update actions.

* use category lookup id instead of term taxonomy id (https://github.com/woocommerce/woocommerce-admin/pull/3027)

* Release 0.20.1
2019-10-15 14:21:19 +13:00
Justin Shreve 0785f3c97b Add Task List Completed Functionality (https://github.com/woocommerce/woocommerce-admin/pull/3021)
* Task list completed functionality

* Hook up banner functionality

* Handle PR feedback: Add pointer/arrow, adjust banner hide behavior, some minor code changes.
2019-10-11 08:55:35 -04:00
Jeff Stieler c8b94836df Update order stats table status index length. (https://github.com/woocommerce/woocommerce-admin/pull/3022)
* Add per-version DB upgrade routine.

Update order stats index length as well.

* Use globally namespaced methods for DB updates.

* Avoid creating duplicate DB update actions.
2019-10-10 13:54:44 -07:00
Ron Rennick 0d664fdd87 use category lookup id instead of term taxonomy id (https://github.com/woocommerce/woocommerce-admin/pull/3027) 2019-10-10 14:15:25 -03:00
Justin Shreve d8132942f3 Change usage tracking prompt to modal (https://github.com/woocommerce/woocommerce-admin/pull/2968)
* Move tracking usage question to modal

* Fix PHPCS errors

* Adjust button alignment, update PHPCS version.

* Fix options check

* Handle PR feedback
2019-10-10 10:05:13 -04:00
Paul Sealock ae413cb03e Prepare for 0.20.0 (https://github.com/woocommerce/woocommerce-admin/pull/3006) 2019-10-10 12:12:55 +13:00
Joshua T Flowers 37fbdaf5c0 Add options REST API permission checks (https://github.com/woocommerce/woocommerce-admin/pull/3004) 2019-10-09 06:39:40 +08:00
Jeff Stieler e53d5daa94 Hook up download button to export endpoint. (https://github.com/woocommerce/woocommerce-admin/pull/2900)
* Move TableCard actions from packaged component to ReportTable.

* Build an IE stylesheet for the main app.

* Remove defunct TableCard download test.

* Update components changelog.

* Fix pagination.

Pull query from table data instead of ReportTable props.

* Initiate report export from download button (https://github.com/woocommerce/woocommerce-admin/pull/2951)

* Add report export operations to API spec.

* Initiate a report export job when there is more than one page of report data.

* Add report download "type" to Tracks event.

* Ensure WC_Emails class is hooked in before sending report download emails.

* Set email parameter for background CSV download requests.
2019-10-08 15:02:26 -07:00
Jeff Stieler ba28e41ee5 Fix Facebook extension install from inbox (https://github.com/woocommerce/woocommerce-admin/pull/3010)
* Restore FB extension to installation whitelist.

Errantly removed in fe585aa2.

* Fix FB extension installation from inbox.

APIs have diverged.
2019-10-08 12:32:44 -07:00
Joshua T Flowers 431e465893 Hide shipping step for stores without physical products (https://github.com/woocommerce/woocommerce-admin/pull/3005) 2019-10-08 06:42:57 +08:00
Justin Shreve 30a31c8fdf Fix onboarding linter errors (https://github.com/woocommerce/woocommerce-admin/pull/3000) 2019-10-03 15:53:10 -04:00
Justin Shreve c2a340da55 Add Stripe, PayPal, Klarna, and Square Connection Flows to the Payments Task (https://github.com/woocommerce/woocommerce-admin/pull/2897)
* Add payment method configuration

* Add stripe connection code

* Finish stripe connection logic

* Add PayPal Connection Flows

* Handle PR feedback: Enable methods when configuring via manual mode, update error modal to just rely on the errorMessage state, add TOS link and acceptance to the profile wizard, update optionsIsRequesting usage, and update docblocks.

* Update TOS message / display

* Add missing success messages on manual save

* Add Square & Klarna to Payments Task (https://github.com/woocommerce/woocommerce-admin/pull/2960)

* Add Square to payments task

* Add logos to payment task

* Add Klarna configuration, and fix assetUrl usage
2019-10-03 12:03:29 -04:00
Justin Shreve 9a48461921 Catch notices earlier than priority 10 (https://github.com/woocommerce/woocommerce-admin/pull/2981) 2019-10-02 09:25:31 -04:00
Mike Jolley edcfc161fa Category Lookup Table - Fix Category Segments (https://github.com/woocommerce/woocommerce-admin/pull/2253)
* Look table class and installer

* New table + stats

* Working reports/initial population

* Remove test

* Refactor, remove depth

* Unused table

* Update todo

* Add docblocks and reorder get_insert_sql params for consistency

* Adjust css braces

* clear hook on deactivation

* PSR-4 category lookup

* linting CSS closing brace last char on line

* initialize category lookup table in unit tests

* missed linting fixes

* revert move of run_all_pending call

* use consistent reference for term_relationships in queries
2019-10-02 12:35:37 +13:00
Jeff Stieler ac9f3f4680 Use version number for cache invalidation (https://github.com/woocommerce/woocommerce-admin/pull/2970)
* Refactor report datastore cache key generation.

* Add transient-backed Cache class for Report DataStores.

* Bump reports cache version when data changes.

* Rollover cache version number after a limit and expire report transients every day.

* Use caching strategy like WC core.

Store cache version in value, not in key. Increase expiration to 1 week.
2019-10-01 09:36:05 -07:00
Kʜᴀɴ 202fde95b5 Simplified intervals_missing method of TimeInterval (https://github.com/woocommerce/woocommerce-admin/pull/2919) 2019-10-01 10:15:41 +13:00
Kʜᴀɴ 1673e3f01f Simplified intervals_missing method of DataStore class (https://github.com/woocommerce/woocommerce-admin/pull/2920)
* Simplified intervals_missing method of DataStore class

* Fixed a little typo
2019-10-01 10:14:12 +13:00
Jeff Stieler 485af8576f Add ability to receive an emailed download link to report export endpoint. (https://github.com/woocommerce/woocommerce-admin/pull/2899)
* Add ability to receive an emailed download link to report export endpoint.

* Use WC_Email to send report download links.
2019-09-26 13:38:32 -07:00
Paul Sealock bc8127bd33 0.19.0 release changes (https://github.com/woocommerce/woocommerce-admin/pull/2946) 2019-09-27 07:42:24 +12:00
Mike Jolley 1d8d0df790 Prevent fatal in pageController if get_current_screen is not available (https://github.com/woocommerce/woocommerce-admin/pull/2846) 2019-09-25 13:59:11 -04:00
Jeff Stieler 0be875d898 Reduce size of bundled JS, and overall plugin file size. (https://github.com/woocommerce/woocommerce-admin/pull/2933)
* Remove embed-page-specific Webpack entry.

* Stop @woocommerce/components from being bundled with the app code.
2019-09-24 08:55:39 -07:00
Darren Ethier d728d38219 Refactor: Alternative approach to implementing extendable settings from the server (https://github.com/woocommerce/woocommerce-admin/pull/2917)
* integrate with new asset data registration (php side)

- includes back-compatibility.

* update js configuration and implement settings alias

- this aliases `@woocommerce/wc-admin-settings` to the settings api exposed via blocks (either the blocks plugin or core) and all the settings provided via the server.
- Adds fallback for back-compat if `wc.wcSettings` is not available in the environment (fallsback to `wcSettings`).

* initial pass to update all wcSettings direct usage to the new api

- this is just an initial pass, more can be done in separate pulls.

* missed one spot for adding new filter implementation

* fix incorrect jest config

* Avoid unnecessary assignment and directly return.

* Remove unnecessary defaults

* Fix inline comment text case.

Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com>

* Remove unnecessary inline comment.

* use @todo instead of TODO

Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com>

* fix incorrect reference in webpack config.

* add missing import and slightly delay dependency injection for scripts

* update get-setting and set-setting callbacks

* disable lint rule for console.error on dev doc builds
2019-09-23 17:47:08 -04:00
Ron Rennick 5a66f70d21 Merge pull request woocommerce/woocommerce-admin#2819 from woocommerce/add/notes-where-clause-filters
Add filter to notes datastore where clauses
2019-09-23 10:46:59 -03:00
Paul Sealock c1280b5f0f Merge pull request woocommerce/woocommerce-admin#2916 from codemascot/fix/typo-FeaturePlugin.php
Removed extra semicolon and line end whitespaces
2019-09-22 22:14:50 -04:00
Jeff Stieler d2b02db128 Merge pull request woocommerce/woocommerce-admin#2898 from woocommerce/cleanup/end-of-class-files
indent cleanup, remove blank line before class closing brace
2019-09-19 11:10:30 -07:00
Albert Juhé Lluveras 3406bd85e0 Fix variable name typo (https://github.com/woocommerce/woocommerce-admin/pull/2922) 2019-09-13 18:39:51 +02:00
Khan Mohammad R 5f5b319f6a Removed extra semicolon and line end whitespaces 2019-09-11 16:11:07 +06:00
Joshua T Flowers f095466442 Onboarding: Add create homepage logic to "Customize Appearance" step (https://github.com/woocommerce/woocommerce-admin/pull/2889) 2019-09-06 22:18:44 +08:00
Joshua T Flowers 52c295b820 Onboarding: Add "Import products" step (https://github.com/woocommerce/woocommerce-admin/pull/2868) 2019-09-06 10:06:29 +08:00
Ron Rennick d186ec7dc3 indent cleanup, remove blank line before class closing brace 2019-09-05 16:49:06 -03:00
Ron Rennick d9000f4b23 add filter PHPDocs 2019-09-04 14:15:21 -03:00
Ron Rennick e2d326b236 remove redundant filter 2019-09-04 14:08:52 -03:00
Jeff Stieler ef313fcc6c Merge pull request woocommerce/woocommerce-admin#2881 from cojennin/fix/customer-analytics-date
Fix: persist date_last_active for customer reports 👏 @cojennin
2019-09-04 09:25:39 -07:00
Ron Rennick d74503642d Merge pull request woocommerce/woocommerce-admin#2874 from woocommerce/fix/task-list-imports
use correct path for NAMESPACE import in task-list
2019-09-04 13:03:24 -03:00
Jeff Stieler 2546a3faec Merge pull request woocommerce/woocommerce-admin#2832 from woocommerce/fix/2702-queue-customer-updates
Queue customer lookup updates.
2019-09-04 08:49:40 -07:00
Jeff Stieler b6c34109f0 Look for `title` properties when using JSON schema for indicator labels.
Fix the dashboard labels at the same time.
2019-09-04 07:49:37 -07:00
Connor Jennings f660f22c5e Fix: persist date_last_active 2019-09-04 09:44:05 -04:00
Ron Rennick d89a975dbc remove whitespace added in woocommerce/woocommerce-admin#2862 2019-09-03 17:15:50 -03:00
Ron Rennick 24d3104eca fix merge conflicts 2019-09-03 14:08:02 -03:00
Justin Shreve d8a0364c61 Onboarding - add quick testing links for Calypso flows (https://github.com/woocommerce/woocommerce-admin/pull/2863)
* Add help tab for task list toggling

* Redirect after resetting profiler to remove get params

* Onboarding - add quick testing links for Calypso flows

* Handle PR feedback
2019-09-03 09:42:00 -04:00
Joshua T Flowers c4edf4305d Onboarding: Add task list toggle option (https://github.com/woocommerce/woocommerce-admin/pull/2862) 2019-09-02 11:52:47 +08:00
Joshua T Flowers 7bce0b710f Onboarding: Add "Customize Appearance" task (https://github.com/woocommerce/woocommerce-admin/pull/2857)
* Add initial Customize Appearance task

* Add options wc endpoint

* Add wc-api specs to manage options
2019-09-02 11:45:56 +08:00
Justin Shreve e156605bfa Onboarding Task List - Install selected payment methods (https://github.com/woocommerce/woocommerce-admin/pull/2858)
* Onboarding Task List - Install selected payment methods

* Don't pass formData to render functions
2019-08-30 13:04:11 -04:00
Paul Sealock dfc428e176 Merge branch 'master' into release/0.18.0 2019-08-30 20:53:47 +12:00
Justin Shreve e5b4606047 Add base payments task & jetpack connection status method (https://github.com/woocommerce/woocommerce-admin/pull/2853)
* Add a base for the payments task, with the ability to choose methods. Also adds Jetpack connection status.

* Handle PR feedback
2019-08-29 12:41:04 -04:00
Paul Sealock a71ae8c934 release 0.18.0 2019-08-28 16:01:13 +12:00
Joshua T Flowers fbcd38acea Update the product types to use IDs (https://github.com/woocommerce/woocommerce-admin/pull/2841) 2019-08-27 11:24:19 +08:00
Joshua T Flowers 547b771cdf Onboarding: Add tax task. (https://github.com/woocommerce/woocommerce-admin/pull/2830) 2019-08-26 13:49:04 +08:00
Justin Shreve fe585aa2ee Onboarding - Profile Wizard: Update plugin installation step to deal with previously installed plugins (https://github.com/woocommerce/woocommerce-admin/pull/2825)
* Handle previously installed plugins during the onboarding wizard

* Allow the activate endpoint to activate multiple plugins at once, avoiding a race condition.

* Handle PR feedback

* Add the ability to fetch active plugins via wc-api
2019-08-23 08:56:57 -04:00
Jeff Stieler f5b46ec037 Fix cleanup of customer import jobs. 2019-08-21 09:34:05 -07:00
Jeff Stieler 0659049629 Hook up customer updates in the sync class. 2019-08-21 09:00:00 -07:00
Ron Rennick 8e9a96259e Merge pull request woocommerce/woocommerce-admin#2824 from woocommerce/remove/PSR-4-missed-constant
remove constant eliminated by PSR-4
2019-08-21 12:26:47 -03:00
Jeff Stieler 4ea5732097 Merge pull request woocommerce/woocommerce-admin#2817 from woocommerce/fix/2650-refunded-orders-gross-total
Ignore refunded amounts when calculating gross total.
2019-08-21 08:13:09 -07:00
Ron Rennick bb8d5f64e4 remove constant eliminated by PSR-4 2019-08-21 12:07:47 -03:00
Joshua T Flowers f4d7936b17 Onboarding: Add shipping rate base task (https://github.com/woocommerce/woocommerce-admin/pull/2760) 2019-08-21 13:58:47 +08:00
Ron Rennick b770ccb987 add filters to notes datastore where clauses 2019-08-20 20:48:11 -03:00
Jeff Stieler b3ab0c4eab Add method to schedule customer data updates. 2019-08-20 15:56:54 -07:00
Jeff Stieler bfefb2d647 Ignore refunded amounts when calculating gross total. 2019-08-20 11:41:28 -07:00
Ron Rennick dd9948aa1a Merge pull request woocommerce/woocommerce-admin#2784 from woocommerce/fix/2766
Allow action scheduler custom data store migration
2019-08-20 13:36:14 -03:00
Jeff Stieler 8a19d586af Include a segment label for the variation parent when segmenting a single product report by variations. 2019-08-19 10:47:09 -07:00
Ron Rennick effb5b8219 Merge branch 'master' into fix/2243 2019-08-19 11:34:05 -03:00
Jeff Stieler 150feee517 Base variation report endpoint extended info off of the parent product if variation ID is 0. 2019-08-17 10:23:24 -07:00
Jeff Stieler 60ff4fc067 Include "variation = 0" orders in variation report data.
This catches simple products with sales that have been converted to variable.
2019-08-17 10:21:33 -07:00
Jeff Stieler e5554a5f7b Merge pull request woocommerce/woocommerce-admin#2798 from woocommerce/add/2538-facebook-inbox-note
Add inbox notice promoting the Facebook extension.
2019-08-16 08:17:37 -07:00
Ron Rennick 16591e5941 use cancel_actions_by_group if action scheduler is >=3.0 2019-08-16 11:35:49 -03:00
Jeff Stieler ed17b3f951 Refactor Note "has plugin been installed for" login into reusable trait. 2019-08-15 09:19:33 -07:00
Jeff Stieler bece81b757 Add inbox notice promoting the Facebook extension. 2019-08-14 19:32:59 -07:00
Paul Sealock 42bba7b376 release 0.17.0 2019-08-15 13:43:22 +12:00
Ron Rennick d2b48f0fcd scroll import action to import section of settings page 2019-08-14 14:35:28 -03:00
Ron Rennick 0d45811e73 fix warnings in chart segmenting 2019-08-14 12:50:11 -03:00
Jeff Stieler d3c1d34a60 Fix category report comparison chart render. (https://github.com/woocommerce/woocommerce-admin/pull/2710)
* Restrict product stats category comparison queries, fix LIMIT clause, and avoid adding dates outside of the initial interval query to response.
2019-08-14 08:02:06 -07:00
Jeff Stieler 37e849221b Fix namespace on helper class usage. 2019-08-12 15:27:12 -07:00
Jeff Stieler 953427bea5 Remove defunct filename prefix from remaining files.
Excluding the note classes for third party compatibility.
2019-08-12 15:06:36 -07:00
Jeff Stieler 9bc54b3344 Remove defunct filename prefix from API init class. 2019-08-12 15:03:24 -07:00
Jeff Stieler 4356eef13d Remove defunct filename prefix from feature classes. 2019-08-12 15:03:23 -07:00
Jeff Stieler d4d0a31486 Flatten includes/ directory. 2019-08-12 15:03:23 -07:00
Jeff Stieler c73325c312 PSR-4ify the loader class. 2019-08-12 15:03:22 -07:00
Jeff Stieler 13878db9ac PSR-4ify the feature plugin and install classes. 2019-08-12 15:03:21 -07:00
Jeff Stieler 7dd4d2b791 PSR-4ify the reports time interval class. 2019-08-12 15:03:21 -07:00
Jeff Stieler a61d292c67 PSR-4ify the report parameter exception class. 2019-08-12 15:03:20 -07:00
Jeff Stieler 57ece077a6 Fix daily cron notes task class. 2019-08-12 15:03:19 -07:00
Jeff Stieler 88f6fd9d06 PSR-4ify report query classes. 2019-08-12 15:03:19 -07:00
Jeff Stieler 8f61462328 PSR-4ify the report stats segmenter classes. 2019-08-12 15:03:18 -07:00
Jeff Stieler 3e9ef793a7 PSR-4ify the reports data store interface class. 2019-08-12 15:03:17 -07:00
Jeff Stieler b7912bc579 PSR4-ify the Reports data store classes. 2019-08-12 15:03:17 -07:00
Jeff Stieler a67d577ad2 PSR-4ify all Report Controller classes. 2019-08-12 15:03:16 -07:00
Jeff Stieler b71d8c23c8 PSR4-ify core API subclasses. 2019-08-12 15:03:15 -07:00
Jeff Stieler fe3dc0dd7c Reorganize API classes. 2019-08-12 15:03:14 -07:00
Jeff Stieler 9d2757f1b2 PSR4-ify the API init class and Notes controllers. 2019-08-12 15:03:13 -07:00
Jeff Stieler f871c96070 PSR-4ify the theme upgrader subclasses. 2019-08-12 15:03:12 -07:00
Jeff Stieler 416ab09653 PSR-4ify the action schedule post store subclass. 2019-08-12 15:03:12 -07:00
Jeff Stieler e509e51552 PSR-4ify the sync class. 2019-08-12 15:03:11 -07:00
Jeff Stieler 55400474ee PSR-4ify the feature loading classes. 2019-08-12 15:03:11 -07:00
Jeff Stieler ce7267b198 PSR-4ify the report exporter classes. 2019-08-12 15:03:10 -07:00
Jeff Stieler ca68769205 Update admin notes classes to PSR-4. 2019-08-12 15:03:09 -07:00
Jeff Stieler 782bbe8891 PSR-4ify the WC_Admin_Page_Controller class. 2019-08-12 15:03:09 -07:00
Jeff Stieler 24555e0e02 PSR-4 ify the WC_Admin_Order_Trait class. 2019-08-12 15:03:08 -07:00
Jeff Stieler 8602c03671 PSR-4 ify WC_Admin_Order_Refund class. 2019-08-12 15:03:08 -07:00
Jeff Stieler 54d0768892 PSR-4ify WC_Admin_Order class. 2019-08-12 15:03:07 -07:00