*/ class Mage_Poll_Model_Resource_Poll_Vote extends Mage_Core_Model_Resource_Db_Abstract { /** * Initialize vote resource * */ protected function _construct() { $this->_init('poll/poll_vote', 'vote_id'); } /** * Perform actions after object save * * @param Varien_Object $object * @return Mage_Poll_Model_Resource_Poll_Vote */ protected function _afterSave(Mage_Core_Model_Abstract $object) { /** * Increase answer votes */ $answerTable = $this->getTable('poll/poll_answer'); $pollAnswerData = array('votes_count' => new Zend_Db_Expr('votes_count+1')); $condition = array("{$answerTable}.answer_id=?" => $object->getPollAnswerId()); $this->_getWriteAdapter()->update($answerTable, $pollAnswerData, $condition); /** * Increase poll votes */ $pollTable = $this->getTable('poll/poll'); $pollData = array('votes_count' => new Zend_Db_Expr('votes_count+1')); $condition = array("{$pollTable}.poll_id=?" => $object->getPollId()); $this->_getWriteAdapter()->update($pollTable, $pollData, $condition); return $this; } }