Ignore:
Timestamp:
10/01/09 10:11:24 (15 years ago)
Author:
eduardoalex
Message:

Ticket #675 - Adicionadas as funcionalidades e o template add_recipients.tpl

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/mobile/inc/class.ui_mobilemail.inc.php

    r1453 r1474  
    2929                        'delete_msg'    => True, 
    3030                        'confirm_delete_msg'    => True, 
     31                        'init_schedule' => true, 
     32                        'redirect' => true, 
     33                        'add_recipients' => true, 
     34                        'add_recipient' => true, 
    3135                ); 
    3236 
     
    187191 
    188192 
     193                        $p->set_var('reply_all_text', lang("Reply to all")); 
     194                        $p->set_var('forward_text', lang("Forward")); 
     195 
    189196                        $p->set_var('reply_text', lang("Reply")); 
    190197                        $p->set_var('Delete', lang("Delete")); 
     
    193200                        $p->set_var('reply', "index.php?menuaction=mobile.ui_mobilemail.new_msg&msg_number=$msg_number&msg_folder=$msg_folder"); 
    194201                        $p->set_var('delete', "index.php?menuaction=mobile.ui_mobilemail.confirm_delete_msg&msg_number=$msg_number&msg_folder=$msg_folder"); 
     202                        $p->set_var('reply_all', "index.php?menuaction=mobile.ui_mobilemail.new_msg&msg_number=$msg_number&msg_folder=$msg_folder&reply_all=true"); 
     203                        $p->set_var('forward', "index.php?menuaction=mobile.ui_mobilemail.new_msg&msg_number=$msg_number&msg_folder=$msg_folder&forward=true"); 
    195204                        if (!empty($msg['attachments']) && !empty($msg['attachments']['names'])) 
    196205                        { 
     
    243252                 // TODO: Talvez seja melhor voltar sempre para o Inbox e primeira página 
    244253                function index() 
    245                 {                                                
     254                { 
    246255                        $this->print_folder_selection(); 
    247256                        $this->mail_list(); 
     
    250259                } 
    251260                 
    252                 function load_session(){                         
     261                function load_session(){ 
    253262                        /************************************\ 
    254263                         * Inicialização do expressoMail1_2 * 
     
    292301 
    293302                        include("../expressoMail1_2/inc/load_lang.php");                     
    294  
     303         
    295304                } 
    296305 
     
    302311                function print_folder_selection() 
    303312                { 
    304  
    305313                        $p = CreateObject('phpgwapi.Template', PHPGW_SERVER_ROOT . '/mobile/templates/'.$GLOBALS['phpgw_info']['server']['template_set']); 
    306314                        $p->set_file( 
     
    311319                        $p->set_block('mobilemail_t', 'inbox_folder_list'); 
    312320                        $p->set_var('lang_folder', lang('Folder')); 
    313                         $p->set_var('lang_inbox', lang('Inbox')); 
     321                         
     322                        $folder_number = $this->get_folder_number($_SESSION['phpgw_info']['user']['preferences']['expressoMail']['save_in_folder']); 
     323                        $save_in_folder = $_SESSION['phpgw_info']['user']['preferences']['expressoMail']['save_in_folder']; 
     324                        $save_in_folder = str_replace("*","",lang(str_replace("INBOX/","",$save_in_folder))); 
     325                        if(!$this->current_folder == 0){ 
     326                                $p->set_var('lang_inbox', $save_in_folder.' :: <a title="'.lang('Inbox').'" href="index.php?menuaction=mobile.ui_mobilemail.mail_list&folder=0">'.lang('Inbox').'</a>'); 
     327                        }else{ 
     328                                $p->set_var('lang_inbox', lang('Inbox').' :: <a title="'.$save_in_folder.'" href="index.php?menuaction=mobile.ui_mobilemail.mail_list&folder='.$folder_number.'">'.$save_in_folder.'</a>'); 
     329                        } 
     330                         
    314331                        //$p->set_var('folder_items', $folder_items); 
    315332                        $p->parse('mobilemail_t', 'inbox_folder_list');                  
     
    385402                 */ 
    386403                function mail_list() 
    387                 { 
    388  
     404                {        
     405                 
     406                        if($_GET['folder']){ 
     407                                $this->current_folder = $_GET['folder']; 
     408                        }else{ 
     409                                $this->current_folder = 0; 
     410                        } 
     411                        $this->print_folder_selection(); 
    389412                        $this->messages_per_page =  
    390413                                        isset($GLOBALS['phpgw_info']['user']['preferences']['mobile']['max_message_per_page'])? 
     
    475498                                $p->set_block('mobilemail_t', 'mail_list'); 
    476499                                $p->set_var('mail_rows', $mail_rows); 
     500 
    477501                                //$p->pfp('out', 'mail_list'); 
    478502                                $GLOBALS['phpgw_info']['mobiletemplate']->set_content($p->fp('out', 'mail_list')); 
     
    688712                        if($_GET['clk']) 
    689713                        { 
    690  
     714                                $p->set_var('field_add_user', '<p>&nbsp;&nbsp;<input type="submit" name="action" value="'.lang("Add Recipient").'"></p>'); 
    691715                                $p->set_var('to_label', lang("To")); 
    692716                                $p->set_var('to', ""); 
     
    711735                                $p->set_var('read_only', 'readonly'); 
    712736                        } 
    713                         else 
    714                         { 
    715  
     737                        else if($_GET['reply_all']){ 
     738                                $reply_to_all = $msg['from']['full']; 
     739                                $reply_to_all = $msg['toaddress2'] ? $reply_to_all.','.$msg['toaddress2']:$reply_to_all; 
     740                                $reply_to_all = $msg['cc'] ? $reply_to_all.','.$msg['cc']:$reply_to_all; 
     741                                $reply_to_all = $msg['bcc'] ? $reply_to_all.','.$msg['bcc']:$reply_to_all; 
     742                                $names = implode(',<br/>',explode(',',$reply_to_all)); 
     743                                 
     744                                $array_emails = explode(',',$reply_to_all); 
     745                                $reply_to_all =''; 
     746                                foreach ($array_emails as $index => $email){ 
     747                                        $flag = preg_match('/&lt;(.*?)&gt;/',$email,$reply); 
     748                                        $reply_to_all .= $flag == 0 ? $email.', ':$reply[1].', '; 
     749                                } 
     750                                                                 
     751                                $p->set_var('to_label', lang("To")); 
     752                                $p->set_var('to', $reply_to_all); 
     753 
     754                                $p->set_var('to_mail', $_GET['input_to_mail']); 
     755 
     756                                $p->set_var('subject_label', lang("Subject")); 
     757                                $p->set_var('subject', "Re:" . $msg['subject']); 
     758 
     759                                $p->set_var('msg_number', $_GET['msg_number']); 
     760                                $p->set_var('msg_folder', $_GET['msg_folder']); 
     761                        } 
     762                        else if($_GET['user_add']){ 
     763                                $p->set_var('to_label', lang("To")); 
     764                                 
     765                                $listMail = implode(',',$_SESSION['mobile_mail']); 
     766                                 
     767                                $p->set_var('field_add_user', '<p>&nbsp;&nbsp;<input type="submit" name="action" value="'.lang("Add Recipient").'"></p>'); 
     768                                $p->set_var('to', $listMail); 
     769                                $p->set_var('to_mail', $listMail); 
     770                                $p->set_var('subject_label', lang("Subject")); 
     771                                $p->set_var('subject', $_SESSION['subject_mail']); 
     772                                $p->set_var('body_value', $_SESSION['body_mail']);                               
     773 
     774                                $p->set_var('msg_number', $_GET['msg_number']); 
     775                                $p->set_var('msg_folder', $_GET['msg_folder']);                  
     776                 
     777                        } 
     778                        else if($_GET['forward']){ 
     779                                $p->set_var('field_add_user', '<p>&nbsp;&nbsp;<input type="submit" name="action" value="'.lang("Add Recipient").'"></p>'); 
     780                                $p->set_var('from_label', lang("From")); 
     781                                $p->set_var('from', $msg['toaddress2']); 
     782 
     783                                $p->set_var('to_label', lang("To")); 
     784                                $mail_to = $msg['from']['full']; 
     785 
     786                                $p->set_var('subject_label', lang("Subject")); 
     787                                $p->set_var('subject', "Enc:" . $msg['subject']); 
     788                                $p->set_var('body_value', strip_tags($msg['body'])); // Usa a função strip_tags() para filtrar 
     789                                // as tags que estão presentes no corpo do e-mail. 
     790                                 
     791                                $p->set_var('msg_number', $_GET['msg_number']); 
     792                                $p->set_var('msg_folder', $_GET['msg_folder']);                  
     793                 
     794                        } 
     795                        else{ 
    716796                                $p->set_var('from_label', lang("From")); 
    717797                                $p->set_var('from', $msg['toaddress2']); 
     
    730810                                $p->set_var('read_only', "readonly"); 
    731811                        } 
    732  
     812                        $_SESSION['mobile_mail'] = Array();      
    733813                        $p->set_var('send_label', lang("Send")); 
    734  
    735                         $p->set_var('form_action', "index.php?menuaction=mobile.ui_mobilemail.send_mail"); 
     814                        $p->set_var('form_action', "index.php?menuaction=mobile.ui_mobilemail.redirect"); 
    736815 
    737816                        /*$p->pfp('out', 'begin_form'); 
     
    739818                        $p->pfp('out', 'text'); 
    740819                        $p->pfp('out', 'hidden_area'); 
    741                         $p->pfp('out', 'end_form'); 
    742                         */ 
     820                        $p->pfp('out', 'end_form');*/ 
     821                         
    743822                        $GLOBALS['phpgw_info']['mobiletemplate']->set_content($p->fp('out', 'begin_form')); 
    744823                        $GLOBALS['phpgw_info']['mobiletemplate']->set_content($p->fp('out', 'msg_header')); 
     
    875954                     
    876955                } 
     956                 
     957                function get_folder_number($folder_name){ 
     958                        $i = 0; 
     959                        foreach($this->folders as $folder){ 
     960                                if($folder['folder_id'] == $folder_name){ 
     961                                        return $i; 
     962                                } 
     963                                $i++; 
     964                        } 
     965                        return 0; 
     966                } 
    877967 
    878968                function retorna() 
    879969                { 
    880970                         
     971                } 
     972                 
     973                function init_schedule() { 
     974                         
     975                        if($_POST['input_to'] != '' && !is_null($_POST['input_to'])) 
     976                                array_push($_SESSION['mobile_mail'],$_POST['input_to']);                         
     977                        $_SESSION['subject_mail'] = $_POST['input_subject']; 
     978                        $_SESSION['body_mail'] = $_POST['body']; 
     979                        $this->add_recipients(); 
     980                } 
     981                 
     982                 
     983                function add_recipients() { 
     984             
     985                        $ui_cc = CreateObject('mobile.ui_mobilecc'); 
     986                        $ui_cc->contacts_list('mobilemail'); 
     987                } 
     988                 
     989                function add_recipient() { 
     990                         
     991                        $participants = $_SESSION["mobile_mail"]; 
     992                         
     993                        if(!is_array($participants)) 
     994                                $participants = array(); 
     995                                 
     996                        $participants[$_GET['cn']] = $_GET['mail']; 
     997                         
     998                        $_SESSION["mobile_mail"] = $participants; 
     999                        $this->add_recipients(); 
     1000                } 
     1001                 
     1002                function redirect() { 
     1003                                if($_POST[action] == lang("Send")){ 
     1004                                        $this->send_mail(); 
     1005                                }else{ 
     1006                                        $this->init_schedule(); 
     1007                                } 
    8811008                } 
    8821009 
Note: See TracChangeset for help on using the changeset viewer.