Public Member Functions | |
getProduct () | |
getGoogleOptimizer () | |
getTabLabel () | |
getTabTitle () | |
canShowTab () | |
isHidden () | |
Protected Member Functions | |
_prepareForm () |
Definition at line 34 of file Googleoptimizer.php.
_prepareForm | ( | ) | [protected] |
Prepare form before rendering HTML
Reimplemented from Mage_Adminhtml_Block_Widget_Form.
Definition at line 38 of file Googleoptimizer.php.
00039 { 00040 $form = new Varien_Data_Form(); 00041 00042 $fieldset = $form->addFieldset('googleoptimizer_fields', 00043 array('legend'=>Mage::helper('googleoptimizer')->__('Google Optimizer Scripts')) 00044 ); 00045 00046 if ($this->getProduct()->getStoreId() == '0') { 00047 Mage::helper('googleoptimizer')->setStoreId(Mage::app()->getDefaultStoreView()); 00048 } else { 00049 Mage::helper('googleoptimizer')->setStoreId($this->getProduct()->getStoreId()); 00050 } 00051 00052 00053 $disabledScriptsFields = false; 00054 $values = array(); 00055 if ($this->getGoogleOptimizer() && $this->getGoogleOptimizer()->getData()) { 00056 $disabledScriptsFields = true; 00057 $values = $this->getGoogleOptimizer()->getData(); 00058 $checkedUseDefault = true; 00059 if ($this->getGoogleOptimizer()->getStoreId() == $this->getProduct()->getStoreId()) { 00060 $checkedUseDefault = false; 00061 $disabledScriptsFields = false; 00062 $fieldset->addField('code_id', 'hidden', array('name' => 'code_id')); 00063 } 00064 00065 // show 'use default' checkbox if store different for default and product has scripts for default store 00066 if ($this->getProduct()->getStoreId() != '0') { 00067 $fieldset->addField('store_flag', 'checkbox', 00068 array( 00069 'name' => 'store_flag', 00070 'value' => '1', 00071 'label' => Mage::helper('googleoptimizer')->__('Use Default Values'), 00072 'class' => 'checkbox', 00073 'required' => false, 00074 'onchange' => 'googleOptimizerScopeAction()', 00075 ) 00076 )->setIsChecked($checkedUseDefault); 00077 } 00078 } 00079 00080 $fieldset->addField('conversion_page', 'select', 00081 array( 00082 'name' => 'conversion_page', 00083 'label' => Mage::helper('googleoptimizer')->__('Conversion Page'), 00084 'values'=> Mage::getModel('googleoptimizer/adminhtml_system_config_source_googleoptimizer_conversionpages')->toOptionArray(), 00085 'class' => 'select googleoptimizer validate-googleoptimizer', 00086 'required' => false, 00087 'onchange' => 'googleOptimizerConversionPageAction(this)' 00088 ) 00089 ); 00090 00091 if ($this->getProduct()->getStoreId() == '0' && !Mage::app()->isSingleStoreMode()) { 00092 $fieldset->addField('conversion_page_url', 'note', 00093 array( 00094 'name' => 'conversion_page_url', 00095 'label' => Mage::helper('googleoptimizer')->__('Conversion Page URL'), 00096 'text' => Mage::helper('googleoptimizer')->__('Please select store view to see the URL') 00097 ) 00098 ); 00099 } else { 00100 $fieldset->addField('conversion_page_url', 'text', 00101 array( 00102 'name' => 'conversion_page_url', 00103 'label' => Mage::helper('googleoptimizer')->__('Conversion Page URL'), 00104 'class' => 'input-text', 00105 'readonly' => 'readonly', 00106 'required' => false, 00107 'note' => Mage::helper('googleoptimizer')->__('Please copy and paste this value to experiment edit form') 00108 ) 00109 ); 00110 } 00111 00112 $fieldset->addField('export_controls', 'text', array('name' => 'export_controls')); 00113 00114 $fieldset->addField('control_script', 'textarea', 00115 array( 00116 'name' => 'control_script', 00117 'label' => Mage::helper('googleoptimizer')->__('Control Script'), 00118 'class' => 'textarea googleoptimizer validate-googleoptimizer', 00119 'required' => false, 00120 ) 00121 ); 00122 $fieldset->addField('tracking_script', 'textarea', 00123 array( 00124 'name' => 'tracking_script', 00125 'label' => Mage::helper('googleoptimizer')->__('Tracking Script'), 00126 'class' => 'textarea googleoptimizer validate-googleoptimizer', 00127 'required' => false, 00128 ) 00129 ); 00130 $fieldset->addField('conversion_script', 'textarea', 00131 array( 00132 'name' => 'conversion_script', 00133 'label' => Mage::helper('googleoptimizer')->__('Conversion Script'), 00134 'class' => 'textarea googleoptimizer validate-googleoptimizer', 00135 'required' => false, 00136 ) 00137 ); 00138 00139 $attributes = Mage::helper('googleoptimizer')->getProductAttributes($this->getProduct()); 00140 $fieldset->addField('attributes', 'multiselect', 00141 array( 00142 'name' => 'attributes', 00143 'label' => Mage::helper('googleoptimizer')->__('Attributes'), 00144 'class' => 'googleoptimizer validate-googleoptimizer validate-googleoptimizer-attributes', 00145 'values' => $attributes, 00146 'required' => false, 00147 'onchange' => 'googleOptimizerAttributesCheckAction(this)', 00148 'note' => Mage::helper('googleoptimizer')->__('Limit is 8 attributes only.') 00149 ) 00150 ); 00151 00152 if (Mage::helper('googleoptimizer')->getConversionPagesUrl() 00153 && $this->getGoogleOptimizer() 00154 && $this->getGoogleOptimizer()->getConversionPage()) 00155 { 00156 $form->getElement('conversion_page_url') 00157 ->setValue(Mage::helper('googleoptimizer') 00158 ->getConversionPagesUrl()->getData($this->getGoogleOptimizer()->getConversionPage()) 00159 ); 00160 } 00161 00162 if ($disabledScriptsFields) { 00163 foreach ($fieldset->getElements() as $element) { 00164 if ($element->getType() == 'textarea' || $element->getType() == 'select') { 00165 $element->setDisabled($disabledScriptsFields); 00166 } 00167 } 00168 $form->getElement('export_controls')->setDisabled($disabledScriptsFields); 00169 } 00170 00171 $fakeEntityAttribute = Mage::getModel('catalog/resource_eav_attribute'); 00172 00173 foreach ($fieldset->getElements() as $element) { 00174 if ($element->getId() != 'store_flag') { 00175 $element->setEntityAttribute($fakeEntityAttribute); 00176 } 00177 } 00178 00179 $form->getElement('export_controls')->setRenderer( 00180 $this->getLayout()->createBlock('adminhtml/catalog_form_renderer_googleoptimizer_import') 00181 ); 00182 00183 $form->addValues($values); 00184 $form->setFieldNameSuffix('googleoptimizer'); 00185 $this->setForm($form); 00186 00187 return parent::_prepareForm(); 00188 }
canShowTab | ( | ) |
Implements Mage_Adminhtml_Block_Widget_Tab_Interface.
Definition at line 210 of file Googleoptimizer.php.
00211 { 00212 if (Mage::helper('googleoptimizer')->isOptimizerActive($this->getProduct()->getStoreId()) 00213 && $this->getProduct()->getAttributeSetId()) 00214 { 00215 return true; 00216 } 00217 return false; 00218 }
getGoogleOptimizer | ( | ) |
Definition at line 195 of file Googleoptimizer.php.
00196 { 00197 return $this->getProduct()->getGoogleOptimizerScripts(); 00198 }
getProduct | ( | ) |
Definition at line 190 of file Googleoptimizer.php.
00191 { 00192 return Mage::registry('product'); 00193 }
getTabLabel | ( | ) |
Implements Mage_Adminhtml_Block_Widget_Tab_Interface.
Definition at line 200 of file Googleoptimizer.php.
00201 { 00202 return Mage::helper('googleoptimizer')->__('Product View Optimization'); 00203 }
getTabTitle | ( | ) |
Implements Mage_Adminhtml_Block_Widget_Tab_Interface.
Definition at line 205 of file Googleoptimizer.php.
00206 { 00207 return Mage::helper('googleoptimizer')->__('Product View Optimization'); 00208 }
isHidden | ( | ) |
Implements Mage_Adminhtml_Block_Widget_Tab_Interface.
Definition at line 220 of file Googleoptimizer.php.