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
 | 
