Ticket #713: dataprev.v1.t713.patch

File dataprev.v1.t713.patch, 8.4 KB (added by lucas.dacosta, 14 years ago)

Alteração necessária para o mailto

  • phpgwapi/templates/classic/login_celepar.php

     
    141141 
    142142                if(!isset($GLOBALS['sessionid']) || ! $GLOBALS['sessionid']) 
    143143                { 
    144                         $GLOBALS['phpgw']->redirect($GLOBALS['phpgw_info']['server']['webserver_url'] . '/login.php?cd=' . $GLOBALS['phpgw']->session->cd_reason); 
     144                        $GLOBALS['phpgw']->redirect($GLOBALS['phpgw_info']['server']['webserver_url'] . '/login.php?cd=' . $GLOBALS['phpgw']->session->cd_reason.'&phpgw_forward='.urlencode($_GET['phpgw_forward'])); 
    145145                } 
    146146                else 
    147147                { 
     
    167167                        } 
    168168                        if ($GLOBALS['phpgw_info']['server']['use_https'] != 2) 
    169169                        { 
    170                                 $forward = 'http://'.$_SERVER['HTTP_HOST'].($GLOBALS['phpgw']->link($forward.'?cd=yes')); 
     170                                $forward = 'http://'.$_SERVER['HTTP_HOST'].($GLOBALS['phpgw']->link($_GET['phpgw_forward'].'?cd=yes')); 
    171171                                echo "<script language='Javascript1.3'>location.href='".$forward."'</script>"; 
    172172                        } 
    173173                        else 
  • phpgwapi/templates/default/login_default.php

     
    160160 
    161161                if(!isset($GLOBALS['sessionid']) || ! $GLOBALS['sessionid']) 
    162162                { 
    163                         $GLOBALS['phpgw']->redirect($GLOBALS['phpgw_info']['server']['webserver_url'] . '/login.php?cd=' . $GLOBALS['phpgw']->session->cd_reason); 
     163                        $GLOBALS['phpgw']->redirect($GLOBALS['phpgw_info']['server']['webserver_url'] . '/login.php?cd=' . $GLOBALS['phpgw']->session->cd_reason.'&phpgw_forward='.urlencode($_GET['phpgw_forward'])); 
    164164                } 
    165165                else 
    166166                { 
     
    186186                        } 
    187187                        if ($GLOBALS['phpgw_info']['server']['use_https'] != 2) 
    188188                        { 
    189                                 $forward = 'http://'.$_SERVER['HTTP_HOST'].($GLOBALS['phpgw']->link($forward.'?cd=yes')); 
     189                                $forward = 'http://'.$_SERVER['HTTP_HOST'].($GLOBALS['phpgw']->link($_GET['phpgw_forward'].'?cd=yes')); 
    190190                                echo "<script language='Javascript1.3'>location.href='".$forward."'</script>"; 
    191191                        } 
    192192                        else 
  • expressoMail1_2/index.php

     
    9191        $template->set_var("lang_search_user", lang("Search user") . '...');  
    9292        $template->set_var("upload_max_filesize",ini_get('upload_max_filesize')); 
    9393        $template->set_var("msg_folder",$_GET['msgball']['folder']); 
    94         $template->set_var("msg_number",$_GET['msgball']['msgnum'] ? $_GET['msgball']['msgnum'] : $_GET['to']); 
     94         
     95        $geto = $_GET['to']; 
     96         
     97        function prepareurl($urlde) { 
     98                $urlde = str_replace('%0D%0A','<br>',$urlde); // replace '\r\n', '<br>'  
     99                if( preg_match('[%]',$urlde) ) { 
     100                        $extra_vars_tmp = explode('&',$urlde); 
     101                        $extra_new = ""; 
     102                        foreach($extra_vars_tmp as $param) { // v=%20%25%20nosn%020&a=1 => // v=n%10%2o => v=> não =>    
     103                                $val = explode('=', $param); 
     104                                $de = urldecode($val[1]); 
     105                                $u2i = utf8_decode($de); 
     106                                $pu2i = prepareurl($u2i); 
     107                                $param2 = urlencode($pu2i); 
     108                                $extra_new .= $val[0].'='.$param2.'&'; 
     109                        } 
     110                        return str_replace('+','%20',$extra_new); 
     111                } 
     112                return $urlde; 
     113        } 
     114         
     115         
     116        if($geto) { 
     117                $geto = @eregi_replace("^\"|\"$","",$geto); 
     118                $geto = prepareurl($geto); 
     119        } 
     120        //$template->set_var("msg_number",$_GET['msgball']['msgnum'] ? $_GET['msgball']['msgnum'] : $_GET['to']); 
     121        $template->set_var("msg_number",$_GET['msgball']['msgnum'] ? $_GET['msgball']['msgnum'] : $geto); 
    95122        $template->set_var("user_email",$_SESSION['phpgw_info']['expressomail']['user']['email']); 
    96123        $acc = CreateObject('phpgwapi.accounts'); 
    97124        $template->set_var("user_organization", $acc->get_organization($GLOBALS['phpgw_info']['user']['account_dn'])); 
  • expressoMail1_2/js/main.js

     
    898898 
    899899function new_message_to(email) { 
    900900        var new_border_ID = new_message('new','null'); 
    901         document.getElementById("to_" + new_border_ID).value=email; 
     901        title = get_lang("New Message"); 
     902 
     903        var variaveis=email.split(/\?|&/); 
     904        variaveis[0] = "to="+variaveis[0]; 
     905        var qs=[]; 
     906        for(var i=0;i<variaveis.length;i++){ 
     907                nvar=variaveis[i].split("="); 
     908                qs[nvar[0]]=unescape(nvar[1]); 
     909        } 
     910         
     911        Element("to_" + new_border_ID).value = qs['to']; 
     912 
     913        if (qs['cc']){ 
     914                Element("cc_" + new_border_ID).value = qs['cc']; 
     915                Element("space_link_" + new_border_ID).style.display = 'none'; 
     916                Element("a_cc_link_" + new_border_ID).style.display = 'none'; 
     917                Element("tr_cc_"+ new_border_ID).style.display = ''; 
     918        } 
     919 
     920        if (qs['bcc']){ 
     921                Element("cco_" + new_border_ID).value = qs['bcc']; 
     922                Element("space_link_" + new_border_ID).style.display = 'none'; 
     923                Element("a_cco_link_" + new_border_ID).style.display = 'none'; 
     924                Element("tr_cco_"+ new_border_ID).style.display = ''; 
     925        } 
     926 
     927        if(qs['subject']) { 
     928                Element("subject_" + new_border_ID).value = qs['subject']; 
     929        } 
     930 
     931        var body = document.getElementById("body_" + new_border_ID); 
     932        body.contentWindow.document.open(); 
     933         
     934        if(typeof(preferences.signature) == 'undefined') 
     935                preferences.signature = ""; 
     936        var signature = preferences.type_signature == 'html' ? preferences.signature : preferences.signature.replace(/\n/g, "<br>"); 
     937         
     938        var bbb = "<html><body bgcolor='#FFFFFF'>"; 
     939        if(qs['body']) { 
     940                bbb = bbb + "<font face='Arial' size='2'>"+qs['body']+"</font>"; 
     941        } 
     942        if (preferences.use_signature == "1") { 
     943                bbb = bbb + "<br>" + signature; 
     944        } 
     945        bbb = bbb + "</body></html>"; 
     946        body.contentWindow.document.write(bbb); 
    902947} 
    903948 
    904949function new_message(type, border_ID){ 
     
    12231268                        break; 
    12241269                case "new": 
    12251270                        title = get_lang("New Message"); 
     1271                        var booleanmailtocontinue=false; 
     1272                         
    12261273                        if(Element('msg_number').value) { 
    12271274                                var _to = Element('msg_number').value; 
    1228                                 var reEmail = /^[A-Za-z\d_-]+(\.[A-Za-z\d_-]+)*@(([A-Za-z\d][A-Za-z\d-]{0,61}[A-Za-z\d]\.)+[A-Za-z]{2,6}|\[\d{1,3}(\.\d{1,3}){3}\])$/;                           
    1229                                 if(!reEmail.test(_to)){ 
    1230                                         var array_contacts = contacts.split(','); 
    1231                                         for(i = 0; i < array_contacts.length;i++) { 
    1232                                                 if(array_contacts[i].lastIndexOf(_to) != "-1"){ 
    1233                                                         var _group = array_contacts[i].split(";"); 
    1234                                                         _to = '"'+_group[0]+'" <'+_group[1]+'>'; 
    1235                                                         break; 
     1275 
     1276                                var qs = _to.split("mailto:"); 
     1277                                if(qs.length==2) { 
     1278                                    var unemm = unescape(qs[1]); 
     1279                                        var mm = unemm.replace("?","&"); 
     1280                                        mm = mm.replace("\r\n","<br>"); 
     1281                                        booleanmailtocontinue=true; 
     1282                                        Element('msg_number').value=mm;          
     1283                                        delete_border(new_border_ID,'true'); 
     1284                                        new_message_to(mm); 
     1285                                } 
     1286                                else { 
     1287                                        var reEmail = /^[A-Za-z\d_-]+(\.[A-Za-z\d_-]+)*@(([A-Za-z\d][A-Za-z\d-]{0,61}[A-Za-z\d]\.)+[A-Za-z]{2,6}|\[\d{1,3}(\.\d{1,3}){3}\])$/;                           
     1288                                        if(!reEmail.test(_to)){ 
     1289                                                var array_contacts = contacts.split(','); 
     1290                                                for(i = 0; i < array_contacts.length;i++) { 
     1291                                                        if(array_contacts[i].lastIndexOf(_to) != "-1"){ 
     1292                                                                var _group = array_contacts[i].split(";"); 
     1293                                                                _to = '"'+_group[0]+'" <'+_group[1]+'>'; 
     1294                                                                break; 
     1295                                                        } 
    12361296                                                } 
    12371297                                        } 
     1298                                        Element("to_" + new_border_ID).value = _to +','; 
    12381299                                } 
    1239                                 Element("to_" + new_border_ID).value = _to +','; 
    12401300                                Element('msg_number').value = ''; 
    12411301                        } 
    12421302                        var body = document.getElementById("body_" + new_border_ID); 
    1243                         body.contentWindow.document.open(); 
    1244                         // Insert the signature automaticaly at message body if use_signature preference is set 
    1245                         if (preferences.use_signature == "1") { 
    1246                                 body.contentWindow.document.write("<html><body bgcolor='#FFFFFF'>" + "<br>" + signature + "</body></html>"); 
     1303                        if(booleanmailtocontinue==false) { 
     1304                                body.contentWindow.document.open(); 
     1305                                // Insert the signature automaticaly at message body if use_signature preference is set 
     1306                                if (preferences.use_signature == "1") { 
     1307                                        body.contentWindow.document.write("<html><body bgcolor='#FFFFFF'>" + "<br>" + signature + "</body></html>"); 
     1308                                } 
     1309                                else { 
     1310                                body.contentWindow.document.write("<html><body bgcolor='#FFFFFF'></body></html>"); 
     1311                                } 
    12471312                        } 
    1248                         else { 
    1249                         body.contentWindow.document.write("<html><body bgcolor='#FFFFFF'></body></html>"); 
    1250                         } 
    12511313                        body.contentWindow.document.close(); 
    12521314                        body.contentWindow.document.designMode = "on"; 
    12531315                        config_events( body.contentWindow.document, 'onkeyup', function( e )