/** * * @param type $template * @param TBT_Rewards_Model_Customer $customer * @param type $pointsString * @return boolean send successful? */ public function sendEmail($customer, $pointsString, $date, $template) { /* @var $translate Mage_Core_Model_Translate */ $translate = Mage::getSingleton('core/translate'); $translate->setTranslateInline(false); /* @var $email Mage_Core_Model_Email_Template */ $email = Mage::getModel('core/email_template'); $sender = array('name' => strip_tags(Mage::helper('rewards/expiry')->getSenderName($customer->getStoreId())), 'email' => strip_tags(Mage::helper('rewards/expiry')->getSenderEmail($customer->getStoreId()))); $email->setDesignConfig(array('area' => 'frontend', 'store' => $customer->getStoreId())); $vars = array('customer_name' => $customer->getName(), 'customer_email' => $customer->getEmail(), 'store_name' => $customer->getStore()->getName(), 'points_transfered' => $pointsString, 'points_balance' => (string) $customer->getPointsSummary()); $email->sendTransactional($template, $sender, $customer->getEmail(), $customer->getName(), $vars); $translate->setTranslateInline(true); return $email->getSentSuccess(); }
/** * * @param TBT_Rewards_Model_Customer $customer * @return boolean */ public function maxLikesReached($customer) { $max_likes = Mage::helper('rewardssocial/facebook_config')->getMaxLikeRewardsPerDay($customer->getStore()); $current_time = time(); $h24 = 60 * 60 * 24; $oldest_req_time = $current_time - $h24; $all_likes_since_time = Mage::getModel('rewardssocial/facebook_like')->getCollection()->addFilter('customer_id', $customer->getId())->addFieldToFilter('UNIX_TIMESTAMP(created_time)', array('gteq' => $oldest_req_time)); if ($all_likes_since_time->count() > $max_likes) { return true; } $like_transfers = Mage::getResourceModel('rewardssocial/facebook_like_transfer_collection')->filterCustomerRewardsSince($customer->getId(), $oldest_req_time); if ($like_transfers->load()->count() > $max_likes) { return true; } return false; }