This repository has been archived by the owner on Jun 1, 2018. It is now read-only.
if not an order email, send using core send function #161
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Situation
A third party extension is adding non-order emails to the core_email_queue. We now have around 150 emails queued and ready to send in this table, with some order emails at the end.
Problem
When Ebizmarts_Mandrill_Model_Email_Queue is ran on the cron it is loading in the first 100 emails and processing them, on line 33 the script checks if $message->getEntityId == 'order' with no else statement to capture non-order emails. None of these 100 emails in the queue have that entity_id so they are all skipped. The next time the cron runs it loads the same 100 emails (because they haven't been processed) and proceeds to skip them all again. The loop continues.
Solution
Added an else to capture and send non-order emails using Mage_Core_Model_Email_Queue default send() function.