diff options
| author | Max Kremmel <xing@synapse.plus.com> | 2007-06-09 11:20:41 +0000 |
|---|---|---|
| committer | Max Kremmel <xing@synapse.plus.com> | 2007-06-09 11:20:41 +0000 |
| commit | 74c58bb9bd45f41b8ff6dd52ce5a3605e19ebc89 (patch) | |
| tree | a6c083bb998a64aab22ed38830628e1a09730c62 /admin/filter_htmlpurifier.php | |
| parent | ed69a3250da52796ea866da7923346bde5db83b3 (diff) | |
| download | liberty-74c58bb9bd45f41b8ff6dd52ce5a3605e19ebc89.tar.gz liberty-74c58bb9bd45f41b8ff6dd52ce5a3605e19ebc89.tar.bz2 liberty-74c58bb9bd45f41b8ff6dd52ce5a3605e19ebc89.zip | |
add htmlpurifier plugin and separate options page
Diffstat (limited to 'admin/filter_htmlpurifier.php')
| -rw-r--r-- | admin/filter_htmlpurifier.php | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/admin/filter_htmlpurifier.php b/admin/filter_htmlpurifier.php new file mode 100644 index 0000000..780da7b --- /dev/null +++ b/admin/filter_htmlpurifier.php @@ -0,0 +1,75 @@ +<?php +require_once( '../../bit_setup_inc.php' ); +include_once( KERNEL_PKG_PATH.'simple_form_functions_lib.php' ); + +$gBitSystem->verifyPermission( 'p_admin' ); + +$htmlPurifier = array( + 'liberty_html_pure_escape_bad' => array( + 'label' => 'Escape invalid HTML', + 'note' => ' Escapes invlid HTML as text. Otherwise invalid HTML is silently dropped. See <a href="http://htmlpurifier.org/live/configdoc/plain.html#Core.EscapeInvalidTags">this</a> and <a href="http://htmlpurifier.org/live/configdoc/plain.html#Core.EscapeInvalidChildren">this</a> for more information.', + 'default' => 'y' + ), + 'liberty_html_pure_disable_extern' => array( + 'label' => 'Disable External Links', + 'note' => 'Disables links to external websites which is effective against spam. See <a href="http://htmlpurifier.org/live/configdoc/plain.html#URI.DisableExternal">this</a> for more information.', + 'default' => 'n' + ), + 'liberty_html_pure_disable_extern_res' => array( + 'label' => 'Disable External Resounces', + 'note' => 'Disables the embedding of external resource like images from other hosts. See <a href="http://htmlpurifier.org/live/configdoc/plain.html#URI.DisableExternalResources">this</a> for more information.', + 'default' => 'y' + ), + 'liberty_html_pure_disable_res' => array( + 'label' => 'Disable All Resources', + 'note' => 'Disables the embedding of all resources preventing users from including pictures at all. See <a href="http://htmlpurifier.org/live/configdoc/plain.html#URI.DisableResources">this</a> for more information.', + 'default' => 'n' + ), + 'liberty_html_pure_disable_uri' => array( + 'label' => 'Disable all URIs', + 'note' => 'Disables all URIs in all forms within submitted content. See <a href="http://htmlpurifier.org/live/configdoc/plain.html#URI.Disable">this</a> for more information.', + 'default' => 'n' + ), + 'liberty_html_pure_use_redirect' => array( + 'label' => 'Use Redirect', + 'note' => 'Uses the redirect service in the Redirect URI. This can be handy to track clicks out and prevent leacks of PageRank. See <a href="http://htmlpurifier.org/live/configdoc/plain.html#URI.Munge">this</a> for more information.', + 'default' => 'n' + ), + 'liberty_html_pure_strict_html' => array( + 'label' => 'Force Strict', + 'note' => 'Determines if the purification matches the Transitional or Strict rule sets. See <a href="http://htmlpurifier.org/live/configdoc/plain.html#HTML.Strict">this</a> for more information.', + 'default' => 'y' + ), + 'liberty_html_pure_xhtml' => array( + 'label' => 'Force XHTML', + 'note' => 'Determine if purification forces only XHTML tags or if it allows standard HTML.', + 'default' => 'y' + ), + // TODO: We should parse the plugins directory to generate these + // so that new plugins just have to be dropped in the dir and turned on. + 'liberty_html_pure_allow_youtube' => array( + 'label' => 'Allow YouTube', + 'note' => 'Allow YouTube videos to be passed through.', + 'default' => 'n' + ), +); +$gBitSmarty->assign( 'htmlPurifier', $htmlPurifier ); + +if( !empty( $_REQUEST['apply'] )) { + $formFeatures = array_merge( $htmlPurifier ); + foreach( $formFeatures as $item => $data ) { + simple_set_toggle( $item, LIBERTY_PKG_NAME ); + } + + if( !empty($_REQUEST['blacklisted_html_tags'] )) { + $tags = preg_replace( '/\s/', '', $_REQUEST['blacklisted_html_tags'] ); + if( strlen( $tags ) > 250 ) { + $tags = substr( $tags, 0, 250 ); + $errors['blacklist'] = 'The blacklisted tags list has been shortened. You can only have 250 characters for blacklisted tags.'; + } + $gBitSystem->storeConfig('blacklisted_html_tags', $tags , LIBERTY_PKG_NAME ); + } +} + +$gBitSystem->display( 'bitpackage:liberty/filter_htmlpurifier.tpl', 'HTML Purifier' ); +?> |
