/** * Prepares template for saving, validates input data * * @param Mage_Core_Model_Email_Template $template * @return array */ protected function _prepareSave(Mage_Core_Model_Email_Template $template) { $data = array(); $data['template_code'] = $template->getTemplateCode(); $data['template_text'] = $template->getTemplateText(); $data['template_type'] = (int) $template->getTemplateType(); $data['template_subject'] = $template->getTemplateSubject(); $data['template_sender_name'] = $template->getTemplateSenderName(); $data['template_sender_email'] = $template->getTemplateSenderEmail(); if (!$template->getAddedAt()) { $template->setAddedAt(AO::getSingleton('core/date')->gmtDate()); $template->setModifiedAt(AO::getSingleton('core/date')->gmtDate()); } $data['modified_at'] = $template->getModifiedAt(); $data['added_at'] = $template->getAddedAt(); if ($this->checkCodeUsage($template)) { AO::throwException(AO::helper('core')->__('Duplicate Of Template Code')); } $validators = array('template_code' => array(Zend_Filter_Input::ALLOW_EMPTY => false), 'template_type' => 'Alnum'); $validateInput = new Zend_Filter_Input(array(), $validators, $data); if (!$validateInput->isValid()) { $errorString = ''; foreach ($validateInput->getMessages() as $message) { if (is_array($message)) { foreach ($message as $str) { $errorString .= $str . "\n"; } } else { $errorString .= $message . "\n"; } } AO::throwException($errorString); } return $data; }