在提到这个问题Is there a CMS (WYSIWYG) Component for Agile Toolkit?时,我试图将elRTE编辑器添加为我安装ATK4的默认RTE。
简单地说,我应该在哪里将elRTE文件放在atk4目录结构中?
TIA PG
其他信息:
有没有人设法让WYSIWYG编辑器工作?
我尝试过使用tinyMCE和elRTE。我已将两个库放在atk4 / templates / js文件夹中,然后通过我的Admin api类加载(我希望所有管理模型都可以使用这些库):
$this->js()
->_load('atk4_univ')
->_load('ui.atk4_notify')
->_load('tiny_mce/tiny_mce')
;
如果我正在尝试elRTE,那么我加载它而不是tinyMCE -
->_load('elrte/js/elrte.min')
然后在我的page_manager类中,我尝试实例化wysiwyg编辑器:
$tabs=$this->add('Tabs');
$crud = $tabs->addTab('listing')->add('CRUD');
$crud->setModel('Listing',array('title','body'),array('title'));
if ($crud->form) {
$f = $crud->form;
$f->getElement('body')->js(true)->tinyMCE.init();
}
我尝试了各种不同的排列取决于我试图调用的库而且没有任何效果 - 我要么只是得到一个空表单进行编辑,要么只是显示加载消息的站点。以下是我尝试的一些不同变体:
$f->getElement('body')->js(true,'tinyMCE.init(mode:"textareas")');
$f->getElement('body')->js(true,'elrte()');
$f->getElement('body')->js(true)->elrte();
在我的智慧结束时,我想要的只是管理员CRUD上的一个简单的所见即所得编辑器
答案 0 :(得分:0)
我无法直接回答,但建议:
通常你应该把js放在templates / js / elrte /下并使用PathFinder。我已经像这样集成了StackOverflow的Markdown UI:
$m=$f->getElement('text');
$m->js(true)->parent()->prepend('<div id="'.$m->name.'-bar"></div>');
$m->js(true)->parent()->append('<div id="'.$m->name.'-preview" class="wmd-panel wmd-preview"></div>');
$m->js(true,' var converter1 = Markdown.getSanitizingConverter(); var editor1 = new Markdown.Editor(converter1,"'.
$m->name.'");editor1.run();');
$this->api->jquery->addStaticInclude('pagedown/Markdown.Converter');
$this->api->jquery->addStaticInclude('pagedown/Markdown.Sanitizer');
$this->api->jquery->addStaticInclude('pagedown/Markdown.Editor');
$this->api->template->append('js_include',
'<link type="text/css" href="'.$this->api->locateURL('js','pagedown/demo/browser/demo.css').'" rel="stylesheet" />'."\n");
我必须对JS文件进行手动更改以支持带前缀的ID字段,但您可以对任何编辑器使用非常类似的方法。完成集成后,将代码粘贴到此处。