private function getResponseBody(Ess_M2ePro_Model_Accounts $account) { if ($account->isFeedbacksAutoResponseCycled()) { $lastUsedId = 0; if ($account->getFeedbacksLastUsedId() != null) { $lastUsedId = (int) $account->getFeedbacksLastUsedId(); } $feedbackTemplatesIds = Mage::getModel('M2ePro/FeedbacksTemplates')->getCollection()->addFieldToFilter('account_id', $account->getId())->setOrder('id', 'ASC')->getAllIds(); if (!count($feedbackTemplatesIds)) { return ''; } $feedbackTemplate = Mage::getModel('M2ePro/FeedbacksTemplates'); if (max($feedbackTemplatesIds) > $lastUsedId) { foreach ($feedbackTemplatesIds as $templateId) { if ($templateId <= $lastUsedId) { continue; } $feedbackTemplate->load($templateId); break; } } else { $feedbackTemplate->load(min($feedbackTemplatesIds)); } if (!$feedbackTemplate->getId()) { return ''; } $account->setData('feedbacks_last_used_id', $feedbackTemplate->getId())->save(); return $feedbackTemplate->getBody(); } if ($account->isFeedbacksAutoResponseRandom()) { $feedbackTemplatesIds = Mage::getModel('M2ePro/FeedbacksTemplates')->getCollection()->addFieldToFilter('account_id', $account->getId())->getAllIds(); if (!count($feedbackTemplatesIds)) { return ''; } $index = rand(0, count($feedbackTemplatesIds) - 1); $feedbackTemplate = Mage::getModel('M2ePro/FeedbacksTemplates')->load($feedbackTemplatesIds[$index]); if (!$feedbackTemplate->getId()) { return ''; } return $feedbackTemplate->getBody(); } return ''; }