From 4b8a20641714d102d151192cbf9ba0ab6da29044 Mon Sep 17 00:00:00 2001 From: "Edward Z. Yang" Date: Mon, 24 Jul 2006 01:50:02 +0000 Subject: [PATCH] Extract RemoveForeignElements strategy from Definition object. git-svn-id: http://htmlpurifier.org/svnroot/htmlpurifier/trunk@111 48356398-32a2-884e-a903-53898d9a118a --- .../Strategy/RemoveForeignElements.php | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 library/HTMLPurifier/Strategy/RemoveForeignElements.php diff --git a/library/HTMLPurifier/Strategy/RemoveForeignElements.php b/library/HTMLPurifier/Strategy/RemoveForeignElements.php new file mode 100644 index 00000000..51d73031 --- /dev/null +++ b/library/HTMLPurifier/Strategy/RemoveForeignElements.php @@ -0,0 +1,42 @@ +generator = new HTMLPurifier_Generator(); + $this->definition = HTMLPurifier_Definition::instance(); + } + + function execute($tokens) { + $result = array(); + foreach($tokens as $token) { + if (!empty( $token->is_tag )) { + if (!isset($this->definition->info[$token->name])) { + // invalid tag, generate HTML and insert in + $token = new HTMLPurifier_Token_Text( + $this->generator->generateFromToken($token) + ); + } + } elseif ($token->type == 'comment') { + // strip comments + continue; + } elseif ($token->type == 'text') { + } else { + continue; + } + $result[] = $token; + } + return $result; + } + +} + +?> \ No newline at end of file