Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
avgaz

API или как выдернуть редактор

Рекомендованные сообщения

Собственно хотел на сайт выдернуть редактор с 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 сам редактор не подгружается хотя в исходном коде страницы он вроде присутствует все

В чем ошибка что не так сделал?

Поделиться сообщением


Ссылка на сообщение

Для редактора нужны еще стили. Нормально он будет работать только в среде форума

 

$registry->output->addContent($html);

$registry->output->sendOutput();

(вместо echo "$html")

Поделиться сообщением


Ссылка на сообщение

Для редактора нужны еще стили. Нормально он будет работать только в среде форума

 

$registry->output->addContent($html);

$registry->output->sendOutput();

(вместо echo "$html")

Блин обломно, мне как бы оболочка форума не нужна, без этого форумный редактор не как не выдернуть?

Поделиться сообщением


Ссылка на сообщение

Форумный редактор вы выдернули - стилей нету. Подключайте стили которые требуются для редактора и будет счастье.

Поделиться сообщением


Ссылка на сообщение

Форумный редактор вы выдернули - стилей нету. Подключайте стили которые требуются для редактора и будет счастье.

Да вот что то не выходит, подключаю все стили css которые на странице с редактором когда в оболочке форума

		<link rel="stylesheet" type="text/css" media='screen,print' href="http://111.ru/forum/public/min/index.php?ipbv=a7d9f2a2e92a4ebacf2b80119d9e3df9&f=public/style_css/css_1/SOS_BBCodes.css,public/style_css/css_1/ipb_help.css,public/style_css/css_1/ipb_mlist_addon.css,public/style_css/css_1/calendar_select.css,public/style_css/css_1/ipb_common.css,public/style_css/css_1/ipb_styles.css,public/style_css/css_1/ipb_ckeditor.css" />

Один фиг просто форма отображается

Поделиться сообщением


Ссылка на сообщение

А, ну так там еще и скрипты нужно подключить - прототайп и объект ipb. Редактор же подключается через ipb.textEditor.initialize

Поделиться сообщением


Ссылка на сообщение

Что то не фига не выходит, если не сложно напишите как это сделать плиз.

Поделиться сообщением


Ссылка на сообщение

Прототайп для редактора не нужен. С враппером все нужные скрипты и стили подгружаются автоматом:

<?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

Поделиться сообщением


Ссылка на сообщение

Для форумного нужен. Он подключается через объект ipb который инициализируется используя запросы прототайпа. А ТС'у нужен редактор вне оболочки форума.

Поделиться сообщением


Ссылка на сообщение

Прототайп для редактора не нужен. С враппером все нужные скрипты и стили подгружаются автоматом:

Просто хотел подключить к сайту этот редактор, что бы он настраивался в АЦ форума и использовать ещё при этом менеджер файлов форума. ckeditor без проблем но это не то

Поделиться сообщением


Ссылка на сообщение

$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;

 

Скрипты в сжатом виде ($registry->output->getTemplate('global')->includeJS)

<script type='text/javascript' src='{$settings['board_url']}/public/min/index.php?g=js'></script>
<script type='text/javascript' src='{$settings['board_url']}/public/min/index.php?charset=UTF-8&f=public/js/ipb.js,cache/lang_cache/{$memberData['language']}/ipb.lang.js,public/js/ips.textEditor.bbcode.js,public/js/ips.textEditor.js' charset='UTF-8'></script>

Поделиться сообщением


Ссылка на сообщение
04/27/14 11:22 (изменено)

Спасибо, но не корректно работает, в частности не вставка картинки не ссылки, смайлы и тд не работает ((

а вот с этим

{$registry->output->getTemplate('global')->includeJS(array('textEditor.bbcode' => 1, 'textEditor' => 1))}

Вроде бы нормально.

Изменено пользователем avgaz

Поделиться сообщением


Ссылка на сообщение

Тогда нужно еще подключить скрипт еффектов, заменить директорию смайликов, и добавить скрипт с лэнгами.

Скрипты все же лучше подключать из шаблона форума, а не вручную ($registry->output->getTemplate).

Поделиться сообщением


Ссылка на сообщение

В принципе все работает кроме смайлов, не пойму как директорию поменять?

А как подключить менеджер файлов форума и загрузчик http://www.invisionpower.com/support/guides/_/advanced-and-developers/api-methods/kernel-uploading-classuploadphp-r170

Поделиться сообщением


Ссылка на сообщение

В принципе все работает кроме смайлов, не пойму как директорию поменять?

Смотрите в коде, там добавлено.

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...