00001 <?php
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035 class Mage_Adminhtml_Block_Newsletter_Queue_Edit_Form extends Mage_Adminhtml_Block_Widget_Form
00036 {
00037 protected function _prepareForm()
00038 {
00039 $queue = Mage::getSingleton('newsletter/queue');
00040
00041 $form = new Varien_Data_Form();
00042
00043 $fieldset = $form->addFieldset('base_fieldset', array(
00044 'legend' => Mage::helper('newsletter')->__('Queue Information')
00045 ));
00046
00047 $outputFormat = Mage::app()->getLocale()->getDateTimeFormat(Mage_Core_Model_Locale::FORMAT_TYPE_MEDIUM);
00048
00049 if($queue->getQueueStatus() == Mage_Newsletter_Model_Queue::STATUS_NEVER) {
00050 $fieldset->addField('date', 'date',array(
00051 'name' => 'start_at',
00052 'time' => true,
00053 'format' => $outputFormat,
00054 'label' => Mage::helper('newsletter')->__('Queue Date Start'),
00055 'image' => $this->getSkinUrl('images/grid-cal.gif')
00056 ));
00057
00058 if (!Mage::app()->isSingleStoreMode()) {
00059 $fieldset->addField('stores','multiselect',array(
00060 'name' => 'stores[]',
00061 'label' => Mage::helper('newsletter')->__('Subscribers From'),
00062 'image' => $this->getSkinUrl('images/grid-cal.gif'),
00063 'values' => Mage::getSingleton('adminhtml/system_store')->getStoreValuesForForm(),
00064 'value' => $queue->getStores()
00065 ));
00066 }
00067 else {
00068 $fieldset->addField('stores', 'hidden', array(
00069 'name' => 'stores[]',
00070 'value' => Mage::app()->getStore(true)->getId()
00071 ));
00072 }
00073 } else {
00074 $fieldset->addField('date','date',array(
00075 'name' => 'start_at',
00076 'time' => true,
00077 'disabled' => 'true',
00078 'format' => $outputFormat,
00079 'label' => Mage::helper('newsletter')->__('Queue Date Start'),
00080 'image' => $this->getSkinUrl('images/grid-cal.gif')
00081 ));
00082
00083 if (!Mage::app()->isSingleStoreMode()) {
00084 $fieldset->addField('stores','multiselect',array(
00085 'name' => 'stores[]',
00086 'label' => Mage::helper('newsletter')->__('Subscribers From'),
00087 'image' => $this->getSkinUrl('images/grid-cal.gif'),
00088 'required' => true,
00089 'values' => Mage::getSingleton('adminhtml/system_store')->getStoreValuesForForm(),
00090 'value' => $queue->getStores()
00091 ));
00092 }
00093 else {
00094 $fieldset->addField('stores', 'hidden', array(
00095 'name' => 'stores[]',
00096 'value' => Mage::app()->getStore(true)->getId()
00097 ));
00098 }
00099 }
00100
00101 if ($queue->getQueueStartAt()) {
00102 $form->getElement('date')->setValue(
00103 Mage::app()->getLocale()->date($queue->getQueueStartAt(), Varien_Date::DATETIME_INTERNAL_FORMAT)
00104 );
00105 }
00106
00107 $fieldset->addField('subject', 'text', array(
00108 'name' =>'subject',
00109 'label' => Mage::helper('newsletter')->__('Subject'),
00110 'required' => true,
00111 'value' => $queue->getTemplate()->getTemplateSubject()
00112 ));
00113
00114 $fieldset->addField('sender_name', 'text', array(
00115 'name' =>'sender_name',
00116 'label' => Mage::helper('newsletter')->__('Sender Name'),
00117 'title' => Mage::helper('newsletter')->__('Sender Name'),
00118 'required' => true,
00119 'value' => $queue->getTemplate()->getTemplateSenderName()
00120 ));
00121
00122 $fieldset->addField('sender_email', 'text', array(
00123 'name' =>'sender_email',
00124 'label' => Mage::helper('newsletter')->__('Sender Email'),
00125 'title' => Mage::helper('newsletter')->__('Sender Email'),
00126 'class' => 'validate-email',
00127 'required' => true,
00128 'value' => $queue->getTemplate()->getTemplateSenderEmail()
00129 ));
00130
00131 if (in_array($queue->getQueueStatus(), array(
00132 Mage_Newsletter_Model_Queue::STATUS_NEVER,
00133 Mage_Newsletter_Model_Queue::STATUS_PAUSE))) {
00134
00135 $fieldset->addField('text','editor', array(
00136 'name' => 'text',
00137 'wysiwyg' => !$queue->getTemplate()->isPlain(),
00138 'label' => Mage::helper('newsletter')->__('Message'),
00139 'state' => 'html',
00140 'theme' => 'advanced',
00141 'required' => true,
00142 'value' => $queue->getTemplate()->getTemplateTextPreprocessed(),
00143 'style' => 'width:98%; height: 600px;',
00144 ));
00145 } else {
00146 $fieldset->addField('text','text', array(
00147 'name' => 'text',
00148 'label' => Mage::helper('newsletter')->__('Message'),
00149 'value' => $this->getUrl('*/newsletter_template/preview', array(
00150 'id' => $queue->getTemplate()->getId()
00151 ))
00152 ));
00153
00154 $form->getElement('text')->setRenderer(Mage::getModel('adminhtml/newsletter_renderer_text'));
00155 $form->getElement('subject')->setDisabled('true');
00156 $form->getElement('sender_name')->setDisabled('true');
00157 $form->getElement('sender_email')->setDisabled('true');
00158 $form->getElement('stores')->setDisabled('true');
00159 }
00160
00161
00162
00163
00164
00165
00166
00167
00168 $this->setForm($form);
00169 return parent::_prepareForm();
00170 }
00171 }