96 lines
3.8 KiB
PHP
96 lines
3.8 KiB
PHP
|
<?php
|
||
|
|
||
|
function phorum_htmlpurifier_show_form()
|
||
|
{
|
||
|
if (phorum_htmlpurifier_config_file_exists()) {
|
||
|
phorum_htmlpurifier_show_config_info();
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
global $PHORUM;
|
||
|
|
||
|
$config = phorum_htmlpurifier_get_config();
|
||
|
|
||
|
$frm = new PhorumInputForm ("", "post", "Save");
|
||
|
$frm->hidden("module", "modsettings");
|
||
|
$frm->hidden("mod", "htmlpurifier"); // this is the directory name that the Settings file lives in
|
||
|
|
||
|
if (!empty($error)){
|
||
|
echo "$error<br />";
|
||
|
}
|
||
|
|
||
|
$frm->addbreak("Edit settings for the HTML Purifier module");
|
||
|
|
||
|
$frm->addMessage('<p>The box below sets <code>$PHORUM[\'mod_htmlpurifier\'][\'wysiwyg\']</code>.
|
||
|
When checked, contents sent for edit are now purified and the
|
||
|
informative message is disabled. If your WYSIWYG editor is disabled for
|
||
|
admin edits, you can safely keep this unchecked.</p>');
|
||
|
$frm->addRow('Use WYSIWYG?', $frm->checkbox('wysiwyg', '1', '', $PHORUM['mod_htmlpurifier']['wysiwyg']));
|
||
|
|
||
|
$frm->addMessage('<p>The box below sets <code>$PHORUM[\'mod_htmlpurifier\'][\'suppress_message\']</code>,
|
||
|
which removes the big how-to use
|
||
|
HTML Purifier message.</p>');
|
||
|
$frm->addRow('Suppress information?', $frm->checkbox('suppress_message', '1', '', $PHORUM['mod_htmlpurifier']['suppress_message']));
|
||
|
|
||
|
$frm->addMessage('<p>Click on directive links to read what each option does
|
||
|
(links do not open in new windows).</p>
|
||
|
<p>For more flexibility (for instance, you want to edit the full
|
||
|
range of configuration directives), you can create a <tt>config.php</tt>
|
||
|
file in your <tt>mods/htmlpurifier/</tt> directory. Doing so will,
|
||
|
however, make the web configuration interface unavailable.</p>');
|
||
|
|
||
|
require_once 'HTMLPurifier/Printer/ConfigForm.php';
|
||
|
$htmlpurifier_form = new HTMLPurifier_Printer_ConfigForm('config', 'http://htmlpurifier.org/live/configdoc/plain.html#%s');
|
||
|
$htmlpurifier_form->setTextareaDimensions(23, 7); // widen a little, since we have space
|
||
|
|
||
|
$frm->addMessage($htmlpurifier_form->render(
|
||
|
$config, $PHORUM['mod_htmlpurifier']['directives'], false));
|
||
|
|
||
|
$frm->addMessage("<strong>Warning: Changing HTML Purifier's configuration will invalidate
|
||
|
the cache. Expect to see a flurry of database activity after you change
|
||
|
any of these settings.</strong>");
|
||
|
|
||
|
$frm->addrow('Reset to defaults:', $frm->checkbox("reset", "1", "", false));
|
||
|
|
||
|
// hack to include extra styling
|
||
|
echo '<style type="text/css">' . $htmlpurifier_form->getCSS() . '
|
||
|
.hp-config {margin-left:auto;margin-right:auto;}
|
||
|
</style>';
|
||
|
$js = $htmlpurifier_form->getJavaScript();
|
||
|
echo '<script type="text/javascript">'."<!--\n$js\n//-->".'</script>';
|
||
|
|
||
|
$frm->show();
|
||
|
}
|
||
|
|
||
|
function phorum_htmlpurifier_show_config_info()
|
||
|
{
|
||
|
global $PHORUM;
|
||
|
|
||
|
// update mod_htmlpurifier for housekeeping
|
||
|
phorum_htmlpurifier_commit_settings();
|
||
|
|
||
|
// politely tell user how to edit settings manually
|
||
|
?>
|
||
|
<div class="input-form-td-break">How to edit settings for HTML Purifier module</div>
|
||
|
<p>
|
||
|
A <tt>config.php</tt> file exists in your <tt>mods/htmlpurifier/</tt>
|
||
|
directory. This file contains your custom configuration: in order to
|
||
|
change it, please navigate to that file and edit it accordingly.
|
||
|
You can also set <code>$GLOBALS['PHORUM']['mod_htmlpurifier']['wysiwyg']</code>
|
||
|
or <code>$GLOBALS['PHORUM']['mod_htmlpurifier']['suppress_message']</code>
|
||
|
</p>
|
||
|
<p>
|
||
|
To use the web interface, delete <tt>config.php</tt> (or rename it to
|
||
|
<tt>config.php.bak</tt>).
|
||
|
</p>
|
||
|
<p>
|
||
|
<strong>Warning: Changing HTML Purifier's configuration will invalidate
|
||
|
the cache. Expect to see a flurry of database activity after you change
|
||
|
any of these settings.</strong>
|
||
|
</p>
|
||
|
<?php
|
||
|
|
||
|
}
|
||
|
|
||
|
// vim: et sw=4 sts=4
|