public function render(Varien_Data_Form_Element_Abstract $element) { $html = '<tr>' . "\n"; $countryId = false; if ($country = $element->getForm()->getElement('country_id')) { $countryId = $country->getValue(); } $regionCollection = false; if ($countryId) { if (!isset(self::$_regionCollections[$countryId])) { self::$_regionCollections[$countryId] = Mage::getModel('directory/country')->setId($countryId)->getLoadedRegionCollection(); } $regionCollection = self::$_regionCollections[$countryId]; } $regionId = $element->getForm()->getElement('region_id')->getValue(); if ($regionCollection && $regionCollection->getSize()) { $elementClass = $element->getClass(); $element->setClass(str_replace('input-text', '', $elementClass)); $html .= '<td class="label">' . $element->getLabelHtml() . '</td>'; $html .= '<td class="value"><select id="' . $element->getHtmlId() . '" name="' . $element->getName() . '" ' . $element->serialize($element->getHtmlAttributes()) . '>' . "\n"; foreach ($regionCollection as $region) { $selected = $regionId == $region->getId() ? ' selected' : ''; $html .= '<option value="' . $region->getId() . '"' . $selected . '>' . $region->getName() . '</option>'; } $html .= '</select></td>'; $element->setClass($elementClass); } else { $element->setClass('input-text'); $html .= '<td class="label"><label for="' . $element->getHtmlId() . '">' . $element->getLabel() . ' <span class="required" style="display:none">*</span></label></td>'; $element->setRequired(false); $html .= '<td class="value"><input id="' . $element->getHtmlId() . '" name="' . $element->getName() . '" value="' . $element->getEscapedValue() . '"' . $element->serialize($element->getHtmlAttributes()) . '/></td>' . "\n"; } $html .= '</tr>' . "\n"; return $html; }
/** * @param Varien_Data_Form_Element_Abstract $element * * @return string */ protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) { $element->addClass('select'); $hours = 0; $minutes = 0; if ($value = $element->getValue()) { $values = explode(',', $value); if (is_array($values) && count($values) == 2) { $hours = $values[0]; $minutes = $values[1]; } } $optionTemplate = '<option value="%s" %s>%s</option>'; $html = sprintf('<input type="hidden" id="%s" />', $element->getHtmlId()); $html .= sprintf('<select name="%s" %s style="width:60px">', $element->getName(), $element->serialize($element->getHtmlAttributes())); for ($i = 0; $i < 24; $i++) { $hour = str_pad($i, 2, '0', STR_PAD_LEFT); $html .= sprintf($optionTemplate, $hour, (int) $hours === $i ? 'selected="selected"' : '', $hour); } $html .= '</select> : '; $html .= sprintf('<select name="%s" %s style="width:60px">', $element->getName(), $element->serialize($element->getHtmlAttributes())); for ($i = 0; $i < 60; $i++) { $minute = str_pad($i, 2, '0', STR_PAD_LEFT); $html .= sprintf($optionTemplate, $minute, (int) $minutes === $i ? 'selected="selected"' : '', $minute); } $html .= '</select>'; $html .= $element->getAfterElementHtml(); return $html; }
public function prepareElementHtml(Varien_Data_Form_Element_Abstract $element) { $config = $this->getConfig(); $chooseButton = $this->getLayout()->createBlock('adminhtml/widget_button')->setType('button')->setClass('scalable btn-chooser')->setLabel($config['button']['open'])->setOnclick('MediabrowserUtility.openDialog(\'' . $this->getUrl('*/cms_wysiwyg_images/index', array('target_element_id' => $element->getName())) . '\')')->setDisabled($element->getReadonly()); $text = new Varien_Data_Form_Element_Text(); $text->setForm($element->getForm())->setId($element->getName())->setName($element->getName())->setClass('widget-option input-text'); if ($element->getRequired()) { $text->addClass('required-entry'); } if ($element->getValue()) { $text->setValue($element->getValue()); } $element->setData('after_element_html', $text->getElementHtml() . $chooseButton->toHtml()); return $element; }
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) { $_years = array(null => "Year"); for ($i = 0, $y = (int) date("Y"); $i < 5; $i++, $y++) { $_years[$y] = $y; } $_months = array(null => "Month"); for ($i = 1; $i <= 12; $i++) { $_months[$i] = Mage::app()->getLocale()->date(mktime(null, null, null, $i))->get(Zend_date::MONTH_NAME); } $_days = array(null => "Day"); for ($i = 1; $i <= 31; $i++) { $_days[$i] = $i < 10 ? '0' . $i : $i; } if ($element->getValue()) { $values = explode(',', $element->getValue()); } else { $values = array(); } $element->setName($element->getName() . '[]'); $_yearsHtml = $element->setStyle('width:75px;')->setValues($_years)->setValue(isset($values[0]) ? $values[0] : null)->getElementHtml(); $_monthsHtml = $element->setStyle('width:100px;')->setValues($_months)->setValue(isset($values[1]) ? $values[1] : null)->getElementHtml(); $_daysHtml = $element->setStyle('width:50px;')->setValues($_days)->setValue(isset($values[2]) ? $values[2] : null)->getElementHtml(); return sprintf('%s %s %s', $_yearsHtml, $_monthsHtml, $_daysHtml); }
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) { $res = ''; $divId = $element->getId(); $res .= <<<EOD \t\t<input name="{$element->getName()}" id="{$divId}_date" value="{$element->getValue()}" type="text" style="width:130px !important;" /> <img src="{$this->getSkinUrl('images/grid-cal.gif')}" alt="" id="{$divId}_date_trig" title="{$this->__('Select Date')}" style="" /> \t\t<script type="text/javascript"> \t\t//<![CDATA[ \t\t\t//this example uses dd.MM.yyyy hh:mm format. \t\t\tCalendar.setup({ \t\t\t\tinputField: "{$divId}_date", \t\t\t\tifFormat: "%Y-%m-%d %H:%M:%S", \t\t\t\tshowsTime: true, \t\t\t\tfirstDay: 1, \t\t\t\ttimeFormat: "24", \t\t\t\tbutton: "{$divId}_date_trig", \t\t\t\talign: "Bl", \t\t\t\tsingleClick : true \t\t\t}); \t\t\t \t\t//]]> \t\t</script> EOD; return $res; }
public function render(Varien_Data_Form_Element_Abstract $element) { $element->addClass('element-value-changer'); $valueName = $element->getLabel(); if ($valueName === '' || $valueName === null) { $valueName = '...'; } if ($element->getShowAsText()) { $html = ' <input type="hidden" class="hidden" id="' . $element->getHtmlId() . '" name="' . $element->getName() . '" value="' . $element->getValue() . '"/> ' . htmlspecialchars($valueName) . ' '; } else { $html = ' <span class="rule-param">'; /** @var Mage_Core_Model_Translate_Inline $translate */ $translate = Mage::getSingleton('core/translate_inline'); if ($translate->isAllowed()) { $valueName = Mage::helper('core/string')->truncate($valueName, 33, '...'); } $html .= '<a href="javascript:void(0)" class="label">'; $html .= Mage::helper('core')->escapeHtml($valueName); $html .= '</a>'; $html .= '<span class="element"> '; $html .= $element->getElementHtml(); if ($element->getExplicitApply()) { /** @var Aoe_FraudManager_Helper_Data $helper */ $helper = Mage::helper('Aoe_FraudManager/Data'); $url = $helper->getConditionApplyImageUrl(); $label = $helper->getConditionApplyLabel(); $html .= ' <a href="javascript:void(0)" class="rule-param-apply">'; $html .= '<img src="' . $url . '" class="v-middle" alt="' . $label . '" title="' . $label . '" />'; $html .= '</a> '; } $html .= '</span>'; $html .= '</span> '; } return $html; }
/** * Render element * * @param Varien_Data_Form_Element_Abstract $element * @see Varien_Data_Form_Element_Renderer_Interface::render() * @return string */ public function render(Varien_Data_Form_Element_Abstract $element) { $element->addClass('element-value-changer'); $valueName = $element->getValueName(); if ($element instanceof Varien_Data_Form_Element_Select && $valueName == '...') { $optionValues = $element->getValues(); foreach ($optionValues as $option) { if ($option['value'] === '') { $valueName = $option['label']; } } } if ($valueName === '') { $valueName = '...'; } if ($element->getShowAsText()) { $html = ' <input type="hidden" class="hidden" id="' . $element->getHtmlId() . '" name="' . $element->getName() . '" value="' . $element->getValue() . '"/> ' . htmlspecialchars($valueName) . ' '; } else { $html = ' <span class="rule-param"' . ($element->getParamId() ? ' id="' . $element->getParamId() . '"' : '') . '>' . '<a href="javascript:void(0)" class="label">'; $translate = Mage::getSingleton('core/translate_inline'); $html .= $translate->isAllowed() ? Mage::helper('core')->escapeHtml($valueName) : Mage::helper('core')->escapeHtml(Mage::helper('core/string')->truncate($valueName, 33, '...')); $html .= '</a><span class="element"> ' . $element->getElementHtml(); if ($element->getExplicitApply()) { $html .= ' <a href="javascript:void(0)" class="rule-param-apply"><img src="' . $this->getSkinUrl('M2ePro/images/rule_component_apply.gif') . '" class="v-middle" alt="' . Mage::helper('M2ePro')->__('Apply') . '" title="' . Mage::helper('M2ePro')->__('Apply') . '" /></a> '; } $html .= '</span></span> '; } return $html; }
public function getElementHtml() { $this->addClass('select multiselect'); $html = ''; if ($this->getCanBeEmpty() && empty($this->_data['disabled'])) { $html .= '<input type="hidden" name="' . parent::getName() . '" value="" />'; } $html .= '<select id="' . $this->getHtmlId() . '" name="' . $this->getName() . '" ' . $this->serialize($this->getHtmlAttributes()) . ' multiple="multiple">' . "\n"; $value = $this->getValue(); if (!is_array($value)) { $value = explode(',', $value); } if ($values = $this->getValues()) { foreach ($values as $option) { if (is_array($option['value'])) { $html .= '<optgroup label="' . $option['label'] . '">' . "\n"; foreach ($option['value'] as $groupItem) { $html .= $this->_optionToHtml($groupItem, $value); } $html .= '</optgroup>' . "\n"; } else { $html .= $this->_optionToHtml($option, $value); } } } $html .= '</select>' . "\n"; $html .= $this->getAfterElementHtml(); return $html; }
/** * Inform the user there version will not work * @return string */ private function getCurrencyTableHtml(Varien_Data_Form_Element_Abstract $element) { // Store ID = scope ID $storeId = Mage::getSingleton('adminhtml/config_data')->getScopeId(); // Retrieve the currencies $currencies = Mage::app()->getStore($storeId)->getAvailableCurrencyCodes(); // Retrieve the values $values = $element->getValue(); // Build our response $response = '<input type="hidden" id="payment_gene_braintree_multi_currency_mapping" /> <table width="100%" cellspacing="6" cellpadding="4"> <tr> <th width="35%">' . $this->__('Currency Code') . '</th> <th width="65%">' . $this->__('Merchant Account ID') . '</th> </tr>'; // Loop through each currency and add a value foreach ($currencies as $currency) { $response .= '<tr> <td> ' . $currency . '</td> <td><input class="input-text" type="text" name=" ' . $element->getName() . '[' . $currency . ']" style="width: 100%;" value="' . (isset($values->{$currency}) ? $values->{$currency} : '') . '" /></td> </tr>'; } $response .= '</table>'; return $response; }
/** * Instantiate form and fields * * @return Varien_Data_Form */ protected function _prepareForm() { $form = new Varien_Data_Form(); $form->setFieldsetRenderer($this->getLayout()->createBlock('adminhtml/widget_form_renderer_fieldset')); $form->setFieldsetElementRenderer($this->getLayout()->createBlock('adminhtml/widget_form_renderer_fieldset_element')); $form->setDataObject($this->_parentElement->getForm()->getDataObject()); /** * if there is a parent element defined, it will be replaced by a hidden element with the same name * and overriden by the form elements * It is needed to maintain HTML consistency of the parent element's form */ if ($this->_parentElement) { $form->setHtmlIdPrefix($this->_parentElement->getHtmlId())->setFieldNameSuffix($this->_parentElement->getName()); $form->addField('', 'hidden', array('name' => '')); } $noYes = array(Mage::helper('adminhtml')->__('No'), Mage::helper('adminhtml')->__('Yes')); // initial amount $schedule = $form->addFieldset('initamount_fieldset', array('legend' => Mage::helper('customweb_subscription')->__('Initial Fee/Discount'), 'disabled' => $this->_isReadOnly)); $this->_addField($schedule, 'init_amount'); // schedule $schedule = $form->addFieldset('schedule_fieldset', array('legend' => Mage::helper('customweb_subscription')->__('Schedule'), 'disabled' => $this->_isReadOnly)); $this->_addField($schedule, 'description'); $this->_addField($schedule, 'period_unit', array('options' => $this->_getPeriodUnitOptions(Mage::helper('adminhtml')->__('-- Please Select --'))), 'select'); $this->_addField($schedule, 'period_frequency'); $this->_addField($schedule, 'period_max_cycles'); $this->_addField($schedule, 'cancel_period'); $this->_addField($schedule, 'can_customer_suspend', array('options' => array(1 => Mage::helper('adminhtml')->__('Yes'), 0 => Mage::helper('adminhtml')->__('No'))), 'select'); // shipping $shipping = $form->addFieldset('shipping_fieldset', array('legend' => Mage::helper('customweb_subscription')->__('Shipping'), 'disabled' => $this->_isReadOnly)); $this->_addElementTypes($shipping); $this->_addField($shipping, 'shipping_amount_type', array('options' => array('fixed' => Mage::helper('customweb_subscription')->__('Fixed Shipping'), 'calculated' => Mage::helper('customweb_subscription')->__('Equals initial order'))), 'select'); $this->_addField($shipping, 'shipping_amount', array(), 'price'); return $form; }
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) { $html = ''; $data = Mage::getStoreConfig('auspost/activation/data'); $ele_value = explode(',', str_replace($data, '', Mage::helper('core')->decrypt($element->getValue()))); $ele_name = $element->getName(); $ele_id = $element->getId(); $element->setName($ele_name . '[]'); $data_info = Mage::helper('auspost')->getDataInfo(); if (isset($data_info['dom']) && intval($data_info['c']) > 0 && intval($data_info['suc']) == 1) { foreach (Mage::app()->getWebsites() as $website) { $url = $website->getConfig('web/unsecure/base_url'); $url = Mage::helper('auspost')->getFormatUrl(trim(preg_replace('/^.*?\\/\\/(.*)?\\//', '$1', $url))); foreach ($data_info['dom'] as $web) { if ($web['dom'] == $url && $web['suc'] == 1) { $element->setChecked(false); $id = $website->getId(); $name = $website->getName(); $element->setId($ele_id . '_' . $id); $element->setValue($id); if (in_array($id, $ele_value) !== false) { $element->setChecked(true); } if ($id != 0) { $html .= '<div><label>' . $element->getElementHtml() . ' ' . $name . ' </label></div>'; } } } } } else { $html = sprintf('<strong class="required">%s</strong>', $this->__('Please enter a valid key')); } return $html; }
/** * Output the region element and javasctipt that makes it dependent from country element * * @param Varien_Data_Form_Element_Abstract $element * @return string */ public function render(Varien_Data_Form_Element_Abstract $element) { $country = $element->getForm()->getElement('country_id'); if (!is_null($country)) { $countryId = $country->getValue(); } else { return $element->getDefaultHtml(); } $regionId = $element->getForm()->getElement('region_id')->getValue(); $quoteStoreId = $element->getEntityAttribute()->getStoreId(); $html = '<tr>'; $element->setClass('input-text'); $element->setRequired(true); $html .= '<td class="label">' . $element->getLabelHtml() . '</td><td class="value">'; $html .= $element->getElementHtml(); $selectName = str_replace('region', 'region_id', $element->getName()); $selectId = $element->getHtmlId() . '_id'; $html .= '<select id="' . $selectId . '" name="' . $selectName . '" class="select required-entry" style="display:none">'; $html .= '<option value="">' . $this->_factory->getHelper('customer')->__('Please select') . '</option>'; $html .= '</select>'; $html .= '<script type="text/javascript">' . "\n"; $html .= '$("' . $selectId . '").setAttribute("defaultValue", "' . $regionId . '");' . "\n"; $html .= 'new regionUpdater("' . $country->getHtmlId() . '", "' . $element->getHtmlId() . '", "' . $selectId . '", ' . $this->helper('directory')->getRegionJsonByStore($quoteStoreId) . ');' . "\n"; $html .= '</script>' . "\n"; $html .= '</td></tr>' . "\n"; return $html; }
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) { $element->setStyle('display:block')->setName($element->getName() . '[]'); if ($element->getValue()) { $values = explode(',', $element->getValue()); } else { $values = array(); } $payments = Mage::getSingleton('payment/config')->getActiveMethods(); $allowedDefault = array(); $elementsJs = array(); foreach ($payments as $paymentCode => $paymentModel) { $paymentTitle = Mage::getStoreConfig('payment/' . $paymentCode . '/title'); $methodsAllowed[$paymentCode] = array('label' => $paymentTitle, 'value' => $paymentCode . "_allow"); array_push($allowedDefault, $paymentCode . "_allow"); $elementsJs[] = $element->getId() . '_' . $paymentCode . ""; } foreach ($payments as $paymentCode => $paymentModel) { $paymentTitle = Mage::getStoreConfig('payment/' . $paymentCode . '/title'); $methodsDenied[$paymentCode] = array('label' => $paymentTitle, 'value' => $paymentCode . "_deny"); } if (empty($values)) { $values = $allowedDefault; } $from = $element->setValues($methodsAllowed)->setValue($values)->getElementHtml(); $to = $element->setValues($methodsDenied)->setValue($values)->getElementHtml(); $script = ""; foreach ($elementsJs as $elementj) { $script .= "\n document.getElementById('" . $elementj . "_allow').addEventListener('click', function() {\n if (document.getElementById('" . $elementj . "_deny').checked == true) {\n document.getElementById('" . $elementj . "_deny').checked = false;\n } else {\n document.getElementById('" . $elementj . "_deny').checked = true;\n }\n }, false);\n document.getElementById('" . $elementj . "_deny').addEventListener('click', function() {\n if (document.getElementById('" . $elementj . "_allow').checked == true) {\n document.getElementById('" . $elementj . "_allow').checked = false;\n } else {\n document.getElementById('" . $elementj . "_allow').checked = true;\n\n }\n }, false);\n if (document.getElementById('" . $elementj . "_deny').checked == false && document.getElementById('" . $elementj . "_allow').checked == false) {\n document.getElementById('" . $elementj . "_allow').checked = true;\n }\n "; } return '<div style="white-space: nowrap;"><div style="display:inline-block;padding: 0 5px 0 0; width:50%">' . $from . '</div> <div style="display:inline-block;padding: 0 5px 0 0; width:50%">' . $to . '</div></div><script>' . $script . '</script>'; }
public function render(Varien_Data_Form_Element_Abstract $element) { $element->addClass('element-value-changer'); $valueName = $element->getValueName(); if ($valueName === '') { $valueName = '...'; } $valueLabel = htmlspecialchars(Mage::helper('core/string')->truncate($valueName, 150, '...')); switch ($this->getFormat()) { case 'text': $html = $valueLabel; break; case 'html': $html = '<strong>' . $valueLabel . '</strong>'; break; default: if ($element->getIsMeta()) { $html = '<input type="hidden" class="hidden" id="' . $element->getHtmlId() . '" name="' . $element->getName() . '" value="' . $element->getValue() . '"/>'; $html .= htmlspecialchars($valueName); } else { $html = '<span class="rule-param"' . ($element->getParamId() ? ' id="' . $element->getParamId() . '"' : '') . '>'; $html .= '<a href="javascript:void(0)" class="label">' . $valueLabel . '</a>'; $html .= '<span class="element">'; $html .= $element->getElementHtml(); if ($element->getExplicitApply()) { $html .= '<a href="javascript:void(0)" class="rule-param-apply"><img src="' . $this->getSkinUrl('images/rule_component_apply.gif') . '" class="v-middle" alt="' . $this->__('Apply') . '" title="' . $this->__('Apply') . '" /></a>'; } $html .= '</span></span>'; } } return $html; }
public function render(Varien_Data_Form_Element_Abstract $element) { if ($country = $element->getForm()->getElement('country_id')) { $countryId = $country->getValue(); } else { return $element->getDefaultHtml(); } $regionId = $element->getForm()->getElement('region_id')->getValue(); $html = '<tr>'; $element->setClass('input-text'); $html .= '<td class="label">' . $element->getLabelHtml() . '</td><td class="value">'; $html .= $element->getElementHtml(); $selectName = str_replace('region', 'region_id', $element->getName()); $selectId = $element->getHtmlId() . '_id'; $html .= '<select id="' . $selectId . '" name="' . $selectName . '" class="select required-entry" style="display:none">'; $html .= '<option value="">' . AO::helper('customer')->__('Please select') . '</option>'; $html .= '</select>'; $html .= '<script type="text/javascript"> if ($("' . $country->getHtmlId() . '") != undefined) { new regionUpdater("' . $country->getHtmlId() . '", "' . $element->getHtmlId() . '", "' . $selectId . '", ' . $this->helper('directory')->getRegionJson() . '); } </script>'; $html .= '</td></tr>' . "\n"; return $html; }
public function getName() { $name = parent::getName(); if (strpos($name, '[]') === false) { $name .= '[]'; } return $name; }
public function prepareElementHtml(Varien_Data_Form_Element_Abstract $element) { $tree = Mage::getResourceModel('cms/page_tree')->load(); $element->setData('after_element_html', $tree->toSelectHtml($element->getName(), $element->getValue(), $element->getId())); $element->setValue(); // Not needed because page is already selected in select box return $element; }
/** * Enter description here... * * @param Varien_Data_Form_Element_Abstract $element * @return string */ public function render(Varien_Data_Form_Element_Abstract $element) { $html = '<tr><td class="label">' . $element->getLabel() . '</td>'; $id = $element->getHtmlId(); //$isDefault = !$this->getRequest()->getParam('website') && !$this->getRequest()->getParam('store'); $isMultiple = $element->getExtType() === 'multiple'; // replace [value] with [inherit] $namePrefix = preg_replace('#\\[value\\](\\[\\])?$#', '', $element->getName()); $options = $element->getValues(); $addInheritCheckbox = false; if ($element->getCanUseWebsiteValue()) { $addInheritCheckbox = true; $checkboxLabel = Mage::helper('adminhtml')->__('Use website'); } elseif ($element->getCanUseDefaultValue()) { $addInheritCheckbox = true; $checkboxLabel = Mage::helper('adminhtml')->__('Use default'); } if ($addInheritCheckbox) { $inherit = $element->getInherit() == 1 ? 'checked' : ''; if ($inherit) { $element->setDisabled(true); } } $html .= '<td class="value">'; $html .= $this->_getElementHtml($element); if ($element->getComment()) { $html .= '<div><small>' . $element->getComment() . '</small></div>'; } $html .= '</td>'; if ($addInheritCheckbox) { $defText = $element->getDefaultValue(); if ($options) { $defTextArr = array(); foreach ($options as $k => $v) { if ($isMultiple) { if (is_array($v['value']) && in_array($k, $v['value'])) { $defTextArr[] = $v['label']; } } elseif ($v['value'] == $defText) { $defTextArr[] = $v['label']; break; } } $defText = join(', ', $defTextArr); } // default value $html .= '<td class="default">'; //$html.= '<input id="'.$id.'_inherit" name="'.$namePrefix.'[inherit]" type="checkbox" value="1" class="input-checkbox config-inherit" '.$inherit.' onclick="$(\''.$id.'\').disabled = this.checked">'; $html .= '<input id="' . $id . '_inherit" name="' . $namePrefix . '[inherit]" type="checkbox" value="1" class="input-checkbox config-inherit" ' . $inherit . ' onclick="toggleValueElements(this, Element.previous(this.parentNode))"/>'; $html .= '<label for="' . $id . '_inherit" class="inherit" title="' . htmlspecialchars($defText) . '">' . $checkboxLabel . '</label>'; $html .= '<input type="hidden" name="' . $namePrefix . '[default_value]" value="' . htmlspecialchars($element->getDefaultValue()) . '">'; $html .= '<input type="hidden" name="' . $namePrefix . '[old_value]" value="' . htmlspecialchars($element->getOldValue()) . '">'; $html .= '</td>'; } $html .= '</tr>'; return $html; }
public function render(Varien_Data_Form_Element_Abstract $element) { $html = '<tr>' . "\n"; $countryId = false; if ($country = $element->getForm()->getElement('country_id')) { $countryId = $country->getValue(); } $regionCollection = false; if ($countryId) { if (!isset(self::$_regionCollections[$countryId])) { self::$_regionCollections[$countryId] = Mage::getModel('directory/country')->setId($countryId)->getLoadedRegionCollection()->toOptionArray(); } $regionCollection = self::$_regionCollections[$countryId]; } $regionId = intval($element->getForm()->getElement('region_id')->getValue()); $htmlAttributes = $element->getHtmlAttributes(); foreach ($htmlAttributes as $key => $attribute) { if ('type' === $attribute) { unset($htmlAttributes[$key]); break; } } // Output two elements - for 'region' and for 'region_id'. // Two elements are needed later upon form post - to properly set data to address model, // otherwise old value can be left in region_id attribute and saved to DB. // Depending on country selected either 'region' (input text) or 'region_id' (selectbox) is visible to user $regionHtmlName = $element->getName(); $regionIdHtmlName = str_replace('region', 'region_id', $regionHtmlName); $regionHtmlId = $element->getHtmlId(); $regionIdHtmlId = str_replace('region', 'region_id', $regionHtmlId); if ($regionCollection && count($regionCollection) > 0) { $elementClass = $element->getClass(); $html .= '<td class="label">' . $element->getLabelHtml() . '</td>'; $html .= '<td class="value">'; $html .= '<select id="' . $regionIdHtmlId . '" name="' . $regionIdHtmlName . '" ' . $element->serialize($htmlAttributes) . '>' . "\n"; foreach ($regionCollection as $region) { $selected = $regionId == $region['value'] ? ' selected="selected"' : ''; $value = is_numeric($region['value']) ? (int) $region['value'] : ""; $html .= '<option value="' . $value . '"' . $selected . '>' . Mage::helper('adminhtml')->escapeHtml(Mage::helper('directory')->__($region['label'])) . '</option>'; } $html .= '</select>' . "\n"; $html .= '<input type="hidden" name="' . $regionHtmlName . '" id="' . $regionHtmlId . '" value=""/>'; $html .= '</td>'; $element->setClass($elementClass); } else { $element->setClass('input-text'); $html .= '<td class="label"><label for="' . $element->getHtmlId() . '">' . $element->getLabel() . ' <span class="required" style="display:none">*</span></label></td>'; $element->setRequired(false); $html .= '<td class="value">'; $html .= '<input id="' . $regionHtmlId . '" name="' . $regionHtmlName . '" value="' . $element->getEscapedValue() . '" ' . $element->serialize($htmlAttributes) . "/>" . "\n"; $html .= '<input type="hidden" name="' . $regionIdHtmlName . '" id="' . $regionIdHtmlId . '" value=""/>'; $html .= '</td>' . "\n"; } $html .= '</tr>' . "\n"; return $html; }
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) { $html = ""; $html .= "<input class=' input-text' type='hidden' id='" . $element->getHtmlId() . "' name='" . $element->getName() . "' value='" . $element->getEscapedValue() . "' '" . $element->serialize($element->getHtmlAttributes()) . "/>"; $html .= "\n<script>\n document.observe('dom:loaded', function(){\n \n if(!\$('" . $element->getHtmlId() . "').value.isJSON())\$('" . $element->getHtmlId() . "').value='{\"days\":[],\"hours\":[]}';\n cron=\$('" . $element->getHtmlId() . "').value.evalJSON();\n \n \n cron.days.each(function(d){\n if(\$('d-'+d)){\n \$('d-'+d).checked=true;\n \$('d-'+d).ancestors()[0].addClassName('checked');\n }\n \n })\n cron.hours.each(function(h){\n if( \$('h-'+h.replace(':',''))){\n \$('h-'+h.replace(':','')).checked=true;\n \$('h-'+h.replace(':','')).ancestors()[0].addClassName('checked');\n }\n })\n \n \$\$('.cron-box').each(function(e){\n e.observe('click',function(){\n \n if(e.checked)e.ancestors()[0].addClassName('checked');\n else e.ancestors()[0].removeClassName('checked');\n \n d=new Array\n \$\$('.cron-d-box INPUT').each(function(e){\n if(e.checked) d.push(e.value)\n })\n h=new Array;\n \$\$('.cron-h-box INPUT').each(function(e){\n if(e.checked) h.push(e.value)\n })\n \n \$('" . $element->getHtmlId() . "').value=Object.toJSON({days:d,hours:h})\n \n }) \n })\n })\n \n</script>\n"; $html .= "\n<style>\n .morning .cron-h-box{\n border: 1px solid #AFAFAF;\n border-radius: 3px 3px 3px 3px;\n margin: 2px;\n padding: 0 3px;\n background:#efefef;\n }\n .afternoon .cron-h-box{\n border: 1px solid #AFAFAF;\n border-radius: 3px 3px 3px 3px;\n margin: 2px;\n padding: 0 3px;\n background:#efefef;\n }\n .morning-half .cron-h-box{\n border: 1px solid #AFAFAF;\n border-radius: 3px 3px 3px 3px;\n margin: 2px;\n padding: 0 3px;\n background:#efefef;\n }\n .afternoon-half .cron-h-box{\n\n border: 1px solid #AFAFAF;\n border-radius: 3px 3px 3px 3px;\n margin: 2px;\n padding: 0 3px;\n background:#efefef;\n }\n\n .cron-d-box{\n\n background:#efefef;\n border: 1px solid #AFAFAF;\n border-radius: 3px 3px 3px 3px;\n margin: 2px;\n padding: 0 3px;\n }\n .checked{\n background-color: #EFFFF0!important;\n }\n</style>"; $html .= "<table style='width:600px !important'>\n <thead> \n <tr><th>Days of the week</th><th width='20'></th><th colspan='4'>Hours of the day</th></tr>\n </thead>\n <tr>\n <td width='300'>\n <div class='cron-d-box'><input class='cron-box' value='Monday' id='d-Monday' type='checkbox'/> Monday</div>\n <div class='cron-d-box'><input class='cron-box' value='Tuesday' id='d-Tuesday' type='checkbox'/> Tuesday</div>\n <div class='cron-d-box'><input class='cron-box' value='Wednesday' id='d-Wednesday' type='checkbox'/> Wednesday</div>\n <div class='cron-d-box'><input class='cron-box' value='Thursday' id='d-Thursday' type='checkbox'/> Thursday</div>\n <div class='cron-d-box'><input class='cron-box' value='Friday' id='d-Friday' type='checkbox'/> Friday</div>\n <div class='cron-d-box'><input class='cron-box' value='Saturday' id='d-Saturday' type='checkbox'/> Saturday</div>\n <div class='cron-d-box'><input class='cron-box' value='Sunday' id='d-Sunday' type='checkbox'/> Sunday</div>\n </td>\n <td></td>\n <td width='150' class='morning-half'>\n <div class='cron-h-box'><input class='cron-box' value='00:00' id='h-0000' type='checkbox'/> 00:00 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='01:00' id='h-0100' type='checkbox'/> 01:00 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='02:00' id='h-0200' type='checkbox'/> 02:00 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='03:00' id='h-0300' type='checkbox'/> 03:00 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='04:00' id='h-0400' type='checkbox'/> 04:00 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='05:00' id='h-0500' type='checkbox'/> 05:00 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='06:00' id='h-0600' type='checkbox'/> 06:00 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='07:00' id='h-0700' type='checkbox'/> 07:00 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='08:00' id='h-0800' type='checkbox'/> 08:00 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='09:00' id='h-0900' type='checkbox'/> 09:00 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='10:00' id='h-1000' type='checkbox'/> 10:00 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='11:00' id='h-1100' type='checkbox'/> 11:00 AM</div>\n\n </td>\n <td width='150' class='morning'>\n <div class='cron-h-box'><input class='cron-box' value='00:30' id='h-0030' type='checkbox'/> 00:30 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='01:30' id='h-0130' type='checkbox'/> 01:30 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='02:30' id='h-0230' type='checkbox'/> 02:30 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='03:30' id='h-0330' type='checkbox'/> 03:30 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='04:30' id='h-0430' type='checkbox'/> 04:30 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='05:30' id='h-0530' type='checkbox'/> 05:30 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='06:30' id='h-0630' type='checkbox'/> 06:30 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='07:30' id='h-0730' type='checkbox'/> 07:30 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='08:30' id='h-0830' type='checkbox'/> 08:30 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='09:30' id='h-0930' type='checkbox'/> 09:30 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='10:30' id='h-1030' type='checkbox'/> 10:30 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='11:30' id='h-1130' type='checkbox'/> 11:30 AM</div>\n\n\n\n\n </td>\n <td width='150' class='afternoon-half'>\n <div class='cron-h-box'><input class='cron-box' value='12:00' id='h-1200' type='checkbox'/> 12:00 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='13:00' id='h-1300' type='checkbox'/> 01:00 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='14:00' id='h-1400' type='checkbox'/> 02:00 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='15:00' id='h-1500' type='checkbox'/> 03:00 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='16:00' id='h-1600' type='checkbox'/> 04:00 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='17:00' id='h-1700' type='checkbox'/> 05:00 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='18:00' id='h-1800' type='checkbox'/> 06:00 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='19:00' id='h-1900' type='checkbox'/> 07:00 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='20:00' id='h-2000' type='checkbox'/> 08:00 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='21:00' id='h-2100' type='checkbox'/> 09:00 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='22:00' id='h-2200' type='checkbox'/> 10:00 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='23:00' id='h-2300' type='checkbox'/> 11:00 PM</div>\n\n </td>\n <td width='150' class='afternoon'>\n <div class='cron-h-box'><input class='cron-box' value='12:30' id='h-1230' type='checkbox'/> 12:30 AM</div>\n <div class='cron-h-box'><input class='cron-box' value='13:30' id='h-1330' type='checkbox'/> 01:30 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='14:30' id='h-1430' type='checkbox'/> 02:30 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='15:30' id='h-1530' type='checkbox'/> 03:30 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='16:30' id='h-1630' type='checkbox'/> 04:30 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='17:30' id='h-1730' type='checkbox'/> 05:30 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='18:30' id='h-1830' type='checkbox'/> 06:30 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='19:30' id='h-1930' type='checkbox'/> 07:30 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='20:30' id='h-2030' type='checkbox'/> 08:30 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='21:30' id='h-2130' type='checkbox'/> 09:30 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='22:30' id='h-2230' type='checkbox'/> 10:30 PM</div>\n <div class='cron-h-box'><input class='cron-box' value='23:30' id='h-2330' type='checkbox'/> 11:30 PM</div>\n\n\n </td>\n </tr>\n </table>"; $html .= $element->getAfterElementHtml(); return $html; }
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) { $color = new Varien_Data_Form_Element_Text(); $data = array('name' => $element->getName(), 'html_id' => $element->getId()); $color->setData($data); $color->setValue($element->getValue(), $format); $color->setForm($element->getForm()); $color->addClass('color ' . $element->getClass()); return $color->getElementHtml(); }
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) { $date = new Varien_Data_Form_Element_Date(); $format = Mage::app()->getLocale()->getDateFormat(Mage_Core_Model_Locale::FORMAT_TYPE_SHORT); $data = array('name' => $element->getName(), 'html_id' => $element->getId(), 'image' => $this->getSkinUrl('images/grid-cal.gif')); $date->setData($data); $date->setValue($element->getValue(), $format); $date->setFormat(Mage::app()->getLocale()->getDateFormat(Mage_Core_Model_Locale::FORMAT_TYPE_SHORT)); $date->setForm($element->getForm()); return $date->getElementHtml(); }
public function render(Varien_Data_Form_Element_Abstract $element) { $id = $element->getId(); $name = $element->getName(); $value = $element->getValue(); if (!$value) { $value = time(); } $html = '<input id="' . $id . '" name="' . $name . '" style="display:none;" type="text" value="' . $value . '"/>'; return $html; }
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) { $element->addClass('link'); $id = $element->getHtmlId(); // If there's an inherited checkbox; hide it. This is a read-only property, and the checkbox is superfluous $inheritedCheckbox = $id . '_inherit'; $hideCheckboxJs = 'if ($("' . $inheritedCheckbox . '") != undefined ){$("' . $inheritedCheckbox . '").hide();}'; $html = sprintf('<a id="%s" name="%s" onClick="return false;" href="#">%s</a>', $id, $element->getName(), $element->getEscapedValue()); $html .= Mage::helper('core/js')->getScript('document.observe("dom:loaded", function() {' . $hideCheckboxJs . '});'); return $html; }
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) { $element->setStyle('width:80px;')->setName($element->getName() . '[]'); if ($element->getValue()) { $value = $element->getValue(); } else { $value = 0; } $from = $element->setValue(isset($value) ? $value : null)->getElementHtml(); return $from . ' ' . Mage::helper('adminhtml')->__('X pt'); }
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) { $element->setStyle('width:70px;')->setName($element->getName() . '[]'); if ($element->getValue()) { $values = explode(',', $element->getValue()); } else { $values = array(); } $width = $element->setValue(isset($values[0]) ? $values[0] : null)->getElementHtml(); $height = $element->setValue(isset($values[1]) ? $values[1] : null)->getElementHtml(); return Mage::helper('sales')->__('Width') . ' ' . $width . ' ' . Mage::helper('sales')->__('Height') . ' ' . $height; }
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) { $date = new Varien_Data_Form_Element_Date(); $format = 'M/dd/yy'; $data = array('name' => $element->getName(), 'html_id' => $element->getId(), 'image' => $this->getSkinUrl('images/grid-cal.gif')); $date->setData($data); $date->setValue($element->getValue(), $format); $date->setFormat($format); $date->setClass($element->getFieldConfig()->validate->asArray()); $date->setForm($element->getForm()); return $date->getElementHtml(); }
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) { $element->setStyle('width:70px;')->setName($element->getName() . '[]'); if ($element->getValue()) { $values = explode(',', $element->getValue()); } else { $values = array(); } $from = $element->setValue(isset($values[0]) ? $values[0] : null)->getElementHtml(); $to = $element->setValue(isset($values[1]) ? $values[1] : null)->getElementHtml(); return Mage::helper('adminhtml')->__('from') . ' ' . $from . ' ' . Mage::helper('adminhtml')->__('to') . ' ' . $to; }
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) { $element->setStyle('height:6em;')->setName($element->getName() . '[]'); if ($element->getValue()) { $value = $element->getValue(); } else { $value = ''; } $from = $element->setValue(isset($value) ? $value : null)->getElementHtml(); return $from; //.' '.Mage::helper('adminhtml')->__('items'); }
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) { $elementId = $element->getHtmlId(); /* read configurations from system.xml */ $configarray = $element->getData('field_config')->asArray(); $min = $configarray['parameters']['min']; $max = $configarray['parameters']['max']; $step = $configarray['parameters']['step']; $label = $configarray['parameters']['label']; $skin = $configarray['parameters']['skin']; /* default values when theres no definition in system.xml */ if ($min == '') { $min = '0'; } if ($max == '') { $max = '10'; } if ($step == '') { $step = '1'; } if ($min >= $max) { $min = '0'; $max = '10'; $step = '1'; } if ($label == '') { $label = 'Unit / Maßeinheit'; } //wrong or no entering of a skin switch ($skin) { case 'blue': case 'plastic': case 'round': case 'round_plastic': break; default: $skin = 'plastic'; } //normal Inputfield, wolud hidden by the Slider JS $html = '<input id="' . $elementId . '" name="' . $element->getName() . '" value="' . $element->getEscapedValue() . '" ' . $element->serialize($element->getHtmlAttributes()) . '/>' . "\n"; //additional JS with configurations from system.xml $html .= '<script type="text/javascript" charset="utf-8"> if(typeof jQuery == "function") {//jQuery is a function when the jQuery library was loaded jQuery.noConflict();//get no conflicts with prototype in magento if(typeof jQuery("#' . $elementId . '").slider == "function") {//jQuery.slider is a function when the jQuerySlider library was loaded jQuery("#' . $elementId . '").slider({ from: ' . $min . ', to: ' . $max . ', step: ' . $step . ', dimension: \' ' . $label . '\', skin: "' . $skin . '" }); } } </script>'; $html .= $element->getAfterElementHtml(); return $html; }