/** * @param AW_Helpdesk3_Model_Ticket_History $event * @param bool $isShort * * @return Mage_Adminhtml_Block_Abstract * @throws Exception */ public function getRendererByEvent(AW_Helpdesk3_Model_Ticket_History $event, $isShort = false) { $rendererList = array(AW_Helpdesk3_Model_Ticket_History_Event_Assignee::TYPE => 'Assignee', AW_Helpdesk3_Model_Ticket_History_Event_Department::TYPE => 'Department', AW_Helpdesk3_Model_Ticket_History_Event_Escalate::TYPE => 'Escalate', AW_Helpdesk3_Model_Ticket_History_Event_Message::TYPE => 'Message', AW_Helpdesk3_Model_Ticket_History_Event_Note::TYPE => 'Note', AW_Helpdesk3_Model_Ticket_History_Event_Priority::TYPE => 'Priority', AW_Helpdesk3_Model_Ticket_History_Event_Status::TYPE => 'Status'); $eventType = (int) $event->getEventType(); if (!array_key_exists($eventType, $rendererList)) { throw new Exception('Unexpected event type'); } $blockName = 'AW_Helpdesk3_Block_Adminhtml_Ticket_Edit_Form_Thread_Renderer_' . $rendererList[$eventType]; $attributes = array('event' => $event, 'is_short' => $isShort); return $this->getLayout()->createBlock($blockName, '', $attributes); }
/** * @param AW_Helpdesk3_Model_Ticket_History $event * * @return string|null */ protected function _getAdditionalTextByEvent(AW_Helpdesk3_Model_Ticket_History $event) { $eventData = $event->getEventData(); $text = null; switch ($event->getEventType()) { case AW_Helpdesk3_Model_Ticket_History_Event_Assignee::TYPE: $agent = Mage::getModel('aw_hdu3/department_agent')->load($eventData['to']); $agentLabel = $agent->getName(); $text = $this->__('Assignee changed to %s', "<b>{$agentLabel}</b>"); break; case AW_Helpdesk3_Model_Ticket_History_Event_Department::TYPE: $department = Mage::getModel('aw_hdu3/department')->load($eventData['to']); $departmentLabel = $department->getTitle(); $text = $this->__('Department changed to %s', "<b>{$departmentLabel}</b>"); break; case AW_Helpdesk3_Model_Ticket_History_Event_Status::TYPE: $status = Mage::getModel('aw_hdu3/ticket_status')->load($eventData['to']); $statusLabel = $status->getTitle(Mage::app()->getStore()->getId()); $text = $this->__('Status changed to %s', "<b>{$statusLabel}</b>"); break; case AW_Helpdesk3_Model_Ticket_History_Event_Priority::TYPE: $priority = Mage::getModel('aw_hdu3/ticket_priority')->load($eventData['to']); $priorityLabel = $priority->getTitle(Mage::app()->getStore()->getId()); $text = $this->__('Priority changed to %s', "<b>{$priorityLabel}</b>"); break; case AW_Helpdesk3_Model_Ticket_History_Event_Escalate::TYPE: $text = $this->__('Ticket has been escalated'); break; } return $text; }