phpgroupware-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Phpgroupware-cvs] CVS: email/inc class.bocompose.inc.php,1.2,1.3 class.


From: Angelo Tony Puglisi <address@hidden>
Subject: [Phpgroupware-cvs] CVS: email/inc class.bocompose.inc.php,1.2,1.3 class.boindex.inc.php,1.22,1.23 class.bomessage.inc.php,1.7,1.8
Date: Thu, 17 Jan 2002 15:53:53 -0500

Update of /cvsroot/phpgroupware/email/inc
In directory subversions:/tmp/cvs-serv5725/email/inc

Modified Files:
        class.bocompose.inc.php class.boindex.inc.php 
        class.bomessage.inc.php 
Log Message:
reply to hotmail html only mail will strip html for reply quoting, nextmatches 
arrows not plain href, no js anymore

Index: class.bocompose.inc.php
===================================================================
RCS file: /cvsroot/phpgroupware/email/inc/class.bocompose.inc.php,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -r1.2 -r1.3
*** class.bocompose.inc.php     14 Jan 2002 20:51:37 -0000      1.2
--- class.bocompose.inc.php     17 Jan 2002 20:53:50 -0000      1.3
***************
*** 23,26 ****
--- 23,27 ----
                var $xi;
                var $xml_functions = array();
+               var $my_validator;
                
                var $soap_functions = array(
***************
*** 63,85 ****
                        }
                        
!                       // do we attempt to reuse the existing msg object?
!                       if ($attempt_reuse)
!                       {
!                               // no not create, we will reuse existing
!                               if ($this->debug) { echo 
'email.bocompose.compose: reusing existing mail_msg login'.'<br>'; }
!                               // we need to feed the existing object some 
params begin_request uses to re-fill the msg->args[] data
!                               $args_array = Array();
!                               // any args passed in $args_array will override 
or replace any pre-existing arg value
!                               $args_array = $reuse_feed_args;
!                               // add this to keep the error checking code 
(below) happy
!                               $args_array['do_login'] = True;
!                       }
!                       else
!                       {
!                               if ($this->debug) { echo 
'email.bocompose.compose: cannot or not trying to reusing existing'.'<br>'; }
!                               $args_array = Array();
!                               // should we log in or not
!                               $args_array['do_login'] = True;
!                       }
                        
                        // "start your engines"
--- 64,70 ----
                        }
                        
!                       $args_array = Array();
!                       // should we log in or not
!                       $args_array['do_login'] = True;
                        
                        // "start your engines"
***************
*** 211,214 ****
--- 196,201 ----
                                        // NOTE: we should ALWAYS get a "First 
Presentable" value from class.bomessage
                                        // if not (a rare and screwed up 
situation) then assume msgball[part_no]=1
+                                       // Also, if the first presentable part 
is encoded as qprint or base64, or is subtype html
+                                       // class.bomessage should pass that 
info along as well
                                        if ((!isset($msgball['part_no']))
                                        || ($msgball['part_no'] == ''))
***************
*** 221,225 ****
                                        $bodystring = 
$GLOBALS['phpgw']->msg->phpgw_fetchbody($msgball);
                                        // see if we have to un-do qprint (or 
other) encoding of the part we are about to quote
!                                       if 
($GLOBALS['phpgw']->msg->get_isset_arg('encoding'))
                                        {
                                                // see if we have to un-do 
qprint encoding (fairly common)
--- 208,213 ----
                                        $bodystring = 
$GLOBALS['phpgw']->msg->phpgw_fetchbody($msgball);
                                        // see if we have to un-do qprint (or 
other) encoding of the part we are about to quote
!                                       if 
(($GLOBALS['phpgw']->msg->get_isset_arg('encoding'))
!                                       || 
($GLOBALS['phpgw']->msg->get_isset_arg('subtype')))
                                        {
                                                // see if we have to un-do 
qprint encoding (fairly common)
***************
*** 229,237 ****
                                                }
                                                // *rare, maybe never seen* see 
if we have to un-do base64 encoding
!                                               elseif 
($GLOBALS['phpgw']->msg->get_arg_value('encoding') == 'qprint')
                                                {
                                                        // a human readable 
body part (non-attachment) should NOT be base64 encoded
                                                        // but you can never 
account for idiots
                                                        $bodystring = 
$GLOBALS['phpgw']->msg->de_base64($bodystring);
                                                }
                                        }
--- 217,235 ----
                                                }
                                                // *rare, maybe never seen* see 
if we have to un-do base64 encoding
!                                               elseif 
($GLOBALS['phpgw']->msg->get_arg_value('encoding') == 'base64')
                                                {
                                                        // a human readable 
body part (non-attachment) should NOT be base64 encoded
                                                        // but you can never 
account for idiots
                                                        $bodystring = 
$GLOBALS['phpgw']->msg->de_base64($bodystring);
+                                               }
+                                               // after that idiot check, we 
need another now as well...
+                                               // *TOTALLY IDIOTIC* 
hotmail.com may send HTML ONLY mail
+                                               // without the rfc REQUIRED 
text only part, so we have to strip html
+                                               if 
($GLOBALS['phpgw']->msg->get_arg_value('subtype') == 'html')
+                                               {
+                                                       // class validator has 
the required function
+                                                       $this->my_validator = 
CreateObject("phpgwapi.validator");
+                                                       // you can never 
account for idiots, there should be a plain version of this IN THE MAIL
+                                                       $bodystring = 
$this->my_validator->strip_html($bodystring);
                                                }
                                        }

Index: class.boindex.inc.php
===================================================================
RCS file: /cvsroot/phpgroupware/email/inc/class.boindex.inc.php,v
retrieving revision 1.22
retrieving revision 1.23
diff -C2 -r1.22 -r1.23
*** class.boindex.inc.php       16 Jan 2002 11:53:18 -0000      1.22
--- class.boindex.inc.php       17 Jan 2002 20:53:50 -0000      1.23
***************
*** 338,346 ****
                        //$this->xi['arrows_td_backcolor'] = 
$GLOBALS['phpgw_info']['theme']['th_bg'];
                        $this->xi['arrows_td_backcolor'] = '';
                        $nav_args = Array (
                                'start'         => 
$GLOBALS['phpgw']->msg->get_arg_value('start'),
!                               'total'         => 
$this->xi['folder_info']['number_all'],
!                               'cmd_prefix'    => 'do_navigate(\'',
!                               'cmd_suffix'    => '\')'
                        );
                        $arrows_links = array();
--- 338,358 ----
                        //$this->xi['arrows_td_backcolor'] = 
$GLOBALS['phpgw_info']['theme']['th_bg'];
                        $this->xi['arrows_td_backcolor'] = '';
+                       
+                       $this->xi['current_sort'] = 
$GLOBALS['phpgw']->msg->get_arg_value('sort');
+                       $this->xi['current_order'] = 
$GLOBALS['phpgw']->msg->get_arg_value('order');
+                       $this->xi['current_start'] = 
$GLOBALS['phpgw']->msg->get_arg_value('start');
+ 
+                       $nav_common_uri = $GLOBALS['phpgw']->link(
+                                                               '/index.php',
+                                                                
'menuaction=email.uiindex.index'
+                                                               
.'&fldball[folder]='.$GLOBALS['phpgw']->msg->prep_folder_out()
+                                                               
.'&fldball[acctnum]='.$GLOBALS['phpgw']->msg->get_acctnum()
+                                                               
.'&sort='.$GLOBALS['phpgw']->msg->get_arg_value('sort')
+                                                               
.'&order='.$GLOBALS['phpgw']->msg->get_arg_value('order'));
+                       
                        $nav_args = Array (
                                'start'         => 
$GLOBALS['phpgw']->msg->get_arg_value('start'),
!                               'common_uri'    => $nav_common_uri,
!                               'total'         => 
$this->xi['folder_info']['number_all']
                        );
                        $arrows_links = array();

Index: class.bomessage.inc.php
===================================================================
RCS file: /cvsroot/phpgroupware/email/inc/class.bomessage.inc.php,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -r1.7 -r1.8
*** class.bomessage.inc.php     15 Jan 2002 07:40:36 -0000      1.7
--- class.bomessage.inc.php     17 Jan 2002 20:53:50 -0000      1.8
***************
*** 597,600 ****
--- 597,614 ----
                                                $first_presentable = 
$first_presentable .'&encoding=qprint';
                                        }
+                                       elseif 
(stristr($this->part_nice[$i]['m_keywords'], 'base64'))
+                                       {
+                                               // usually only spammers do 
this, but *RARELY* the text message is base 64 encoded
+                                               // then we must decode in the 
reply process
+                                               $first_presentable = 
$first_presentable .'&encoding=base64';
+                                       }
+                                       // also check for this mess...
+                                       if 
(stristr($this->part_nice[$i]['m_keywords'], 'html'))
+                                       {
+                                               // hotmail.com is the ONLY 
mailer to BREAK RFC RULES and send
+                                               // out html parts WITHOUT the 
required PLAIN part
+                                               // then we must decode in the 
reply process
+                                               $first_presentable = 
$first_presentable .'&subtype=html';
+                                       }
                                        break;
                                }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]