Опубликовано: 26 апреля 201411 г Собственно хотел на сайт выдернуть редактор с IPB путем его интеграции и так тут показана как это делать http://www.invisionpower.com/support/guides/_/advanced-and-developers/api-methods/editor-bbcode-r146Делаю так<?php require_once( '/forum/initdata.php' ); require_once( '/forum/admin/sources/base/ipsRegistry.php' ); $registry=ipsRegistry::instance(); $registry->init(); $classToLoad = IPSLib::loadLibrary( IPS_ROOT_PATH . 'sources/classes/editor/composite.php', 'classes_editor_composite' ); $editor = new $classToLoad(); $html = $editor->show( 'Post', array( 'type' => 'full', 'minimize' => TRUE, 'height' => 300, 'autoSaveKey' => '', 'warnInfo' => NULL, 'modAll' => FALSE, 'recover' => FALSE, 'noSmilies' => FALSE, 'isHtml' => FALSE, 'isRte' => NULL, 'isTypingCallBack' => '', 'delayInit' => FALSE, 'editorName' => NULL ) ); echo "$html"; Но отображает просто поле textarea сам редактор не подгружается хотя в исходном коде страницы он вроде присутствует всеВ чем ошибка что не так сделал?
Опубликовано: 27 апреля 201411 г Автор Смотрите в коде, там добавлено.У меня это $memberData =& $registry->member->fetchMemberData(); вызывает ошибку ну и $settings['emoticons_url'] = str_replace('<#EMO_DIR#>', 'default', $settings['emoticons_url']); не меняет <#EMO_DIR#>Код выглядит у меня вот так<?php require_once( '/forum/initdata.php' ); require_once( '/forum/admin/sources/base/ipsRegistry.php' ); $registry=ipsRegistry::instance(); $registry->init(); $classToLoad = IPSLib::loadLibrary( IPS_ROOT_PATH . 'sources/classes/editor/composite.php', 'classes_editor_composite' ); $editor = new $classToLoad(); $html = $editor->show( 'Post', array( 'type' => 'full', 'minimize' => TRUE, 'height' => 100, 'autoSaveKey' => '', 'warnInfo' => NULL, 'modAll' => FALSE, 'recover' => FALSE, 'noSmilies' => FALSE, 'isHtml' => FALSE, 'isRte' => NULL, 'isTypingCallBack' => '', 'delayInit' => FALSE, 'editorName' => NULL ) ); //echo "$html"; $settings =& $registry->fetchSettings(); $memberData =& $registry->member->fetchMemberData(); $settings['emoticons_url'] = str_replace('<#EMO_DIR#>', 'default', $settings['emoticons_url']); /* Скрипты */ echo <<<FEOF <script type='text/javascript'> jsDebug = 0; /* Must come before JS includes */ DISABLE_AJAX = parseInt(0); /* Disables ajax requests where text is sent to the DB; helpful for charset issues */ inACP = false; var isRTL = false; var rtlIe = ''; var rtlFull = ''; </script> {$registry->output->getTemplate('global')->includeJS(array('textEditor.bbcode' => 1, 'textEditor' => 1))} <script type='text/javascript'> Loader.boot(); </script> <link rel="stylesheet" type="text/css" href="{$settings['board_url']}/public/style_css/css_1/ipb_ckeditor.css" /> FEOF; echo $html;
Опубликовано: 27 апреля 201411 г Автор Да, $registry->member()->fetchMemberData(); Поправил.Ошибки нет, но в самом редакторе не чего не поменялось, смайлы так же через EMO_DIR файлового менеджера нет (((
Опубликовано: 27 апреля 201411 г Строчки $settings =& $registry->fetchSettings(); $memberData =& $registry->member()->fetchMemberData(); $settings['emoticons_url'] = str_replace('<#EMO_DIR#>', 'default', $settings['emoticons_url']); Нужно добавить после $registry->init(); файлового менеджера нет (((А мы о нем и не говорим
Опубликовано: 27 апреля 201411 г Автор Да так смайлы работают, кроме показать все. А файлов менеджер не как не сделать в редактор?
Опубликовано: 27 апреля 201411 г Да так смайлы работают, кроме показать все.перед Loader.boot(); Добавить ipb.vars['base_url'] = '{$settings['base_url']}'; ipb.vars['board_url'] = '{$settings['board_url']}'; ipb.vars['img_url'] = '{$settings['img_url']}'; ipb.vars['upload_url'] = '{$settings['upload_url']}'; А файлов менеджер не как не сделать в редактор?Может и можно, только находится он в другом шаблоне - skin_post (Страница отправки тем/сообщений) -> uploadForm или attachiFrame
Опубликовано: 28 апреля 201411 г Для форумного нужен. Он подключается через объект ipb который инициализируется используя запросы прототайпа. А ТС'у нужен редактор вне оболочки форума.Ну, не грузится же prototype.js на странице, что я давал. И все там работает, включая смайлы, медиабиблиотеку и остальные диалоговые окна.
Опубликовано: 28 апреля 201411 г Ну, не грузится же prototype.js на странице, что я давал.Страницу не смотрел, но в враппере форума $registry->output->sendOutput() он грузится по умолчанию (если используется сжатие minify это - /public/min/index.php?ibv=md5_ver&g=js).
Опубликовано: 18 января 20187 г Прототайп для редактора не нужен. С враппером все нужные скрипты и стили подгружаются автоматом:<?php require_once('initdata.php'); require_once('./admin/sources/base/ipsRegistry.php'); $registry = ipsRegistry::instance(); $registry->init(); $classToLoad = IPSLib::loadLibrary( IPS_ROOT_PATH . 'sources/classes/editor/composite.php', 'classes_editor_composite' ); $editor = new $classToLoad(); $html = $editor->show( 'Post', array('minimize' => FALSE) ); $registry->output->setTitle('My Title'); $registry->output->addContent($html); $registry->output->sendOutput();Нормально работает у меня - http://test.emule-rus.net/ipb346/test.php Если форумный враппер не нужен, то видимо лучше подключить чистый ckeditor, замещающий любое поле textarea. http://www.site-script.ru/articles.php?id=13Работает, но как отправлять содержимое из редактора?
Опубликовано: 18 января 20187 г Работает, но как отправлять содержимое из редактора? Форму создайте c кнопкой отправки.
Собственно хотел на сайт выдернуть редактор с IPB путем его интеграции и так тут показана как это делать http://www.invisionpower.com/support/guides/_/advanced-and-developers/api-methods/editor-bbcode-r146
Делаю так
Но отображает просто поле textarea сам редактор не подгружается хотя в исходном коде страницы он вроде присутствует все
В чем ошибка что не так сделал?