From e538b3dc7d740c5a9213ef352437f249be856d3a Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Thu, 13 Nov 2008 05:30:06 -0500
Subject: [PATCH] - Added message status filter + fixes for r2046 (searching with SORT)

---
 program/lib/html2text.php |   23 +++++++++++++++++++----
 1 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/program/lib/html2text.php b/program/lib/html2text.php
index ee7b0dc..4180cac 100644
--- a/program/lib/html2text.php
+++ b/program/lib/html2text.php
@@ -314,6 +314,15 @@
      */
     var $_link_count = 0;
 
+    /** 
+     * Boolean flag, true if a table of link URLs should be listed after the text. 
+     *  
+     * @var boolean $_do_links 
+     * @access private 
+     * @see html2text() 
+     */
+    var $_do_links = true;
+ 
     /**
      *  Constructor.
      *
@@ -323,15 +332,20 @@
      *
      *  @param string $source HTML content
      *  @param boolean $from_file Indicates $source is a file to pull content from
+     *  @param boolean $do_links Indicate whether a table of link URLs is desired
+     *  @param integer $width Maximum width of the formatted text, 0 for no limit
      *  @access public
      *  @return void
      */
-    function html2text( $source = '', $from_file = false )
+    function html2text( $source = '', $from_file = false, $do_links = true, $width = 75 )
     {
         if ( !empty($source) ) {
             $this->set_html($source, $from_file);
         }
+	
         $this->set_base_url();
+	$this->_do_links = $do_links;
+	$this->width = $width;
     }
 
     /**
@@ -349,7 +363,6 @@
         }
         else
 	    $this->html = $source;
-
 
         $this->_converted = false;
     }
@@ -495,7 +508,9 @@
      */
     function _build_link_list( $link, $display )
     {
-		if ( substr($link, 0, 7) == 'http://' || substr($link, 0, 8) == 'https://' ||
+	if ( !$this->_do_links ) return $display;
+	
+	if ( substr($link, 0, 7) == 'http://' || substr($link, 0, 8) == 'https://' ||
              substr($link, 0, 7) == 'mailto:' ) {
             $this->_link_count++;
             $this->_link_list .= "[" . $this->_link_count . "] $link\n";
@@ -528,7 +543,7 @@
 	while(preg_match('/<pre[^>]*>(.*)<\/pre>/ismU', $text, $matches))
 	{
 	    $result = preg_replace($this->pre_search, $this->pre_replace, $matches[1]);
-	    $text = preg_replace('/<pre[^>]*>.*<\/pre>/ismU', '<div><br>' . $result . '<br></div>', $text);
+	    $text = preg_replace('/<pre[^>]*>.*<\/pre>/ismU', '<div><br>' . $result . '<br></div>', $text, 1);
 	}
     }
 }

--
Gitblit v1.9.1