В моем модуле конфигурации у меня есть кнопка.Когда эта кнопка нажата, я открываю окно, которое собирает дополнительные данные.Этот файл является просто html-файлом, но где он должен находиться в структуре каталогов модуля?
Чтобы дать немного больше информации - просто чтобы увидеть что-то работающее, я определил свое поле следующим образом:
<button_url_test_window_open><![CDATA[/px.html]]></button_url_test_window_open>
<frontend_model>mymodule/adminhtml_system_config_testWindowOpenDialog</frontend_model>
и я помещаю файл px.html в мою папку htdocs / magento.Когда я нажимаю кнопку, открывается /px.html, но это не так.Я не уверен, как сформулировать вопрос, но я чувствую, что должен сделать что-то более похожее на «открыть файл с именем px.html для моего модуля», и тогда magento будет искать в правильном месте.Извините за терминологию, я все еще сталкиваюсь с Magento / PHP / Apache.
Просто чтобы завершить картину того, что у меня сейчас есть, блок frontend_model:
protected function _prepareLayout()
{
parent::_prepareLayout();
if (!$this->getTemplate()) {
$this->setTemplate('mypackage/system/config/test_window_open_dialog.phtml');
}
return $this;
}
public function render(Varien_Data_Form_Element_Abstract $element)
{
$element->unsScope()->unsCanUseWebsiteValue()->unsCanUseDefaultValue();
return parent::render($element);
}
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element)
{
$originalData = $element->getOriginalData();
$this->addData(array(
'button_label_test_window_open' => Mage::helper('mymodule')->__($originalData['button_label_test_window_open']),
'button_url_test_window_open' => $originalData['button_url_test_window_open'],
'html_id' => $element->getHtmlId(),
));
return $this->_toHtml();
}
и файл test_window_open_dialog.phtml содержит:
<table>
<tr>
<td>
<button style="" onclick="javascript:window.open('<?php echo $this->getButtonUrlTestWindowOpen()?>', 'testing','toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, ,left=100, top=100, width=600, height=470'); return false;" class="scalable" type="button" id="<?php echo $this->getHtmlId() ?>">
<span><?php echo $this->escapeHtml($this->getButtonLabelTestWindowOpen()); ?></span>
</button>
</td>
</tr>
</table>