Exemplo n.º 1
0
 /**
  * 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;
 }