Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Download Notes duplicated in email receipt #7415

Closed
dgoldak opened this issue Oct 11, 2019 · 5 comments · Fixed by #8610
Closed

Download Notes duplicated in email receipt #7415

dgoldak opened this issue Oct 11, 2019 · 5 comments · Fixed by #8610

Comments

@dgoldak
Copy link

dgoldak commented Oct 11, 2019

Bug Report

Expected behavior

When multiple variable priced options are purchased for the same core product, {download_list} should only display Download Notes once per core product.

Actual behavior

{download_list} duplicates Download Notes for each variable priced option that is purchased.

Steps to reproduce the behavior

  1. Purchase 2 or more variable options for a single product
  2. {download_list} in the email receipt should only display Download Notes once.

Information (if a specific version is affected):

PHP Version: 5.4.4

EDD Version (or branch): 2.9.17

WordPress Version: 4.9.11

Any other relevant information:
https://secure.helpscout.net/conversation/978365525/134068?folderId=180499

@cklosowski
Copy link
Contributor

I think we should rework this entire process, so that the download notes are not attached directly inline with the product names.

For instance, if you purchase:
Product A - Price 1
Product B
Product A - Price 2

You will end up with:

Product A - Price 1 - <notes>
Product B - <notes>
Product A - Price 2

Instead I think it'd be best to do somethign like the following:

Product A - Price 1
Product B
Product A -Price 2

Notes:
Product A 
<notes>

Product B
<notes>

@cklosowski
Copy link
Contributor

What are your thoughts on this @ashleyfae @robincornett @LisaCee

Before changes:
image

After changes:
image

@robincornett
Copy link
Contributor

Seems like a reasonable approach to me!

@LisaCee
Copy link
Contributor

LisaCee commented Mar 23, 2021

I like it. It more closely resembles the way notes are handled in Invoices.

@ashleyfae
Copy link
Contributor

Yep, I'm happy with it. 👍

@cklosowski cklosowski added this to the 2.11 milestone May 7, 2021
@cklosowski cklosowski self-assigned this May 7, 2021
@cklosowski cklosowski linked a pull request May 7, 2021 that will close this issue
cklosowski added a commit that referenced this issue May 10, 2021
cklosowski added a commit that referenced this issue Aug 19, 2021
* Move Stripe to the frist payment gateway in the Available Gateway Settings when it is found #8499 (#8501)

* Only add notes to the purchase receipt once per product ID #7415

* Let's start the new PayPal

* Finish building out core PayPal Commerce logic.

* Start working on PayPal Connect.

* Connection logic & JS

* Connection flow.

* Error handling when PayPal isn't connected.

* Fix gateway ID

* Make error handling more consistent.

* Buy Now spinner

* Add nonce validation to order capturing.

* Add Fetch & Promise polyfills.

* Support minified JS

* Show connected account information & disconnect process.

* After connection action hook & API cleanup.

* Hide API key fields.

* Use is_ssl() to set cookies to secure

#8037

* Add webhook creation.

* Add webhooks namespace, validator, and handler.

* Partner URL, script loading bug fixes, and token fixes.

* Webhook event handling.

* Use REST API for webhooks.

* Pass WP_REST_Request to hooks; response cleanup.

* Register event handlers via get_webhook_events()

* Rework payment retrievals.

* Maybe correct resource object.

* Webhook unit tests.

* Better debug logging.

* Fix build errors.

* Use EDD_VERSION & load PayPal Standard from main EDD file.

* Split payment matching logic into new method to avoid code duplication.

* Save webhook ID if found via list.

* Check for 'publish' and 'complete' statuses.

* Send JSON error.

* Introduce filters for Recurring to override create method & approval actions.

* Fix recurring checks.

* Use expectedException annotation for older phpunits.

* Use WP core polyfills if available.

* Delete token cache key when disconnecting.

* Change createFunc default & append subscriptionID to form if available.

* Don't translate debug error messages.

* Move redirect URL inside array.

* Change refundable order statuses & success note.

* Update function description.

Co-authored-by: Robin Cornett <[email protected]>

* Fix typo in comment.

Co-authored-by: Robin Cornett <[email protected]>

* Use https for docs URL

Co-authored-by: Robin Cornett <[email protected]>

* Use https for docs URL

Co-authored-by: Robin Cornett <[email protected]>

* Fix incorrect reference to total

Co-authored-by: Robin Cornett <[email protected]>

* Default mode to current store mode.

* Fix double indenting.

* Fix indenting.

* Rebuild.

* Update includes/emails/class-edd-email-tags.php

Co-authored-by: Robin Cornett <[email protected]>

* Make notes a UL #7415

* Check total_plain when discount is applied.

* Add amount breakdown if there's tax.

* Start of admin notice.

* Show note if PayPal is set up but not enabled.

* Add button styles & filter.

* Disable card funding.

* Disable all funding sources.

* Adjust admin notice wording.

* Remove false check on , as it will never trigger.

* Check if  is an array before using as such.

* Correct comment.

* Add Partner attribution ID.

* Error handling for PayPal account info.

* Fix double indenting.

* Remove is-dismissible class, as we'll handle that separately.

* Use primary button for CTA

* Load promise polyfill first.

* Add promise polyfill as a dependency to fetch.

* Enqueue wp-polyfill & add wp-polyfill polyfill lol.

* Image optimisation with ImageAlpha (png8+alpha) and ImageOptim.

* SVG optimization with svgo

* Add documentation links.

* Move namespace to EDD\Gateways\PayPal.

* Remove partner client ID constant.

* Build assets.

* Show error if SSL is not enabled.

* Regenerate tokens 10 minutes early, just in case.

* Set return URL to PayPal settings page.

* Add data attributes to SDK <script> tag.

* Add edd_paypal_after_button_container hook.

* Save PayPal order ID in meta.

* Set data attribute with original button value.

* Trigger custom event when PayPal buttons are mounted.

* Change button styling on non-checkout pages.

* Handle funding source errors.

* Remove mock header.

* Delete webhook when disconnecting PayPal.

* Add redirect handler with status checking.

* Delete merchant details & errors on disconnect.

* Add some debug logging.

* Introduce AccountStatusValidator for checking all connect requirements & rework Connection Status UI to use it.

* Set webhook object.

* Rebuild assets.

* Adjust error message & fix webhook_missing check.

* Do not unset the discount query arg during an API request

#8711

* Introduce Tokenizer to replace some nonce verifications #8714

* Add test covering signing key. #8714

* Update merchant status check & add refresh button.

* Filter out empty values.

* Adjust tests to account for new MerchantAccount changes.

* Delete connection error functions, as they are no longer used.

* Adjust docblock comment to reflect new process.

* Adjust error messages & comments; remove unnecessary hook.

* Re-add missing promo notice CSS.

* Rename property to avoid conflicts with PayPal array.

* Update enable PayPal message.

Co-authored-by: Robin Cornett <[email protected]>

* No change is okay in this case.

* Do not replace the cart contents if the ajax response is empty

#8719

* Only add item to needs_notes array if it has notes

#7415

* Add EDD text domain.

Co-authored-by: Robin Cornett <[email protected]>

* Fix webhook namespace.

* Pass country & currency to connect & persist partner details.

* Delete partner connect information on disconnect.

* Remove identity API request.

* #8585 Copy missing check for iterable from SL plugin updater.

* Customize funding failure message.

* #8585 Replace SL Plugin Updater with newly updated file

* Fetch status from Sandhills Connect.

* Rebuild.

* Set error object after setting properties.

* Remove page title from System Info report

There is no need for the front page title to be in the report and it can break sometimes.

* Update PayPal descriptions.

* Include plugin URI in System Info

Include the Plugin URI or Author URI in the plugins list

* Updated PluginURI check

* Use Plugin Author if all other headers are missing

* Add dash if URL exists if not display nothing

* Change author conditional check to elseif

* Missing check for Author in elseif clause

* Update PayPal Standard transaction URL

#8598

* Add captions for two new screenshots.

* Update EDD_SL_Plugin_Updater class to 1.9.0

#8790

* Add the EDD version to the API parameters

#8790

* Remove 'new' indicator from Stripe label

Co-authored-by: Chris Klosowski <[email protected]>

* Use h3 for settings header.

* Use placeholders for opening and closing anchor tags.

* Send nonce when doing merchant status check.

* Adjust invalid details error message to make it more useful to end users.

* Fix live merchant ID

* Version bump to 2.11-beta1

* Show error message if we think the modal didn't open #8811

* Adjust error message to use strong tags #8811

* Add EDD 3.0 rollback handling #8805 (#8807)

* Add EDD 3.0 rollback handling #8805

* Delete flag after downgrade #8805

* Move all downgrade logic to new file & check edd_version_upgraded_from #8805

* Add downgraded_from option #8805

* Correct column name #8805

* Trigger downgrade from inside install & stop table creation if it ran #8805

* Escape HTML #8805

Co-authored-by: Robin Cornett <[email protected]>

* Make downgrade perform automatically #8805

* Add debug log for downgrade #8805

* Update docblock to better reflect new logic #8805

Co-authored-by: Robin Cornett <[email protected]>

* Fix version_compare for multisite in plugin updater class (#8821)

#8820

* minifying scripts for build

* update tags in readme based on dev metrics reporting

* Version bumps, changelog, and pot files

Co-authored-by: Chris Klosowski <[email protected]>
Co-authored-by: Chris Klosowski <[email protected]>
Co-authored-by: Robin Cornett <[email protected]>
Co-authored-by: Robin Cornett <[email protected]>
Co-authored-by: Victor Laplace <[email protected]>
Co-authored-by: LisaCee <[email protected]>
Co-authored-by: Mihai Joldis <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants