Changeset 6690


Ignore:
Timestamp:
07/02/12 10:17:24 (7 years ago)
Author:
eduardow
Message:

Ticket #2922 - Refatorar código de criação de contatos pessoais via expresso Mail.

Location:
branches/2.4
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/2.4/expressoMail1_2/js/ccQuickAdd.js

    r6341 r6690  
    1         function cQuickAddContact () 
    2         { 
    3                 this.xtools     = new xtools('../expressoMail1_2/templates/'); 
    4         } 
    5  
    6         cQuickAddContact.prototype.showList = function(data) 
    7         { 
    8                 var     cc_data = ((typeof data) == 'object' ) ? data : data.split(','); 
    9  
    10                 var quickContact = $("#quickAddContact"); 
    11                 quickContact.html( DataLayer.render( BASE_PATH + "modules/mail/templates/quickAddContact.ejs",{ nick : cc_data[0], fname : cc_data[1], lname : cc_data[2], email : cc_data[3] })); 
    12                 quickContact.dialog( 
    13                 { 
    14                                 height          : 200, 
    15                                 width           : 300, 
    16                                 resizable       : false, 
    17                                 title           : get_lang("Quick Add"),                         
    18                                 modal           : true, 
    19                                 buttons         : [ 
    20                                                                 { 
    21                                                                         text: get_lang("Cancel"), 
    22                                                                         click: function() 
    23                                                                         { 
    24                                                                                 $(this).dialog("close"); 
    25                                                                         }  
    26                                                                 }, 
    27                                                                 { 
    28                                                                         text: get_lang("Save"), 
    29                                                                         click: function() 
    30                                                                         { 
    31                                                                                 data = ''; 
    32                                                                                 data = data + $(this).find('#quickAddOne_nickName').val() + ','; 
    33                                                                                 data = data + $(this).find('#quickAddOne_firstName').val() + ','; 
    34                                                                                 data = data + $(this).find('#quickAddOne_lastName').val() + ',,'; 
    35                                                                                 data = data + $(this).find('#quickAddOne_email').val();  
    36                                                                                 if(ccQuickAddOne.send(data)) 
    37                                                                                         $(this).dialog("close"); 
    38                                                                         } 
    39                                                                 } 
    40                                 ] 
    41                 }); 
    42                  
    43                 quickContact.next().css("background-color", "#E0EEEE");          
    44         } 
    45          
    46         cQuickAddContact.prototype.send = function (data) 
    47         { 
    48                 var sdata               = data.split(","); 
    49                 var email               = trim(sdata[4]); 
    50                 var full_name   = trim(sdata[1]) + ' ' + trim(sdata[2]); 
    51                 var _this               = this; 
    52  
     1/* Build the Object */  
     2var     ccQuickAddOne = {  
     3        send : function(data){  
     4                var email = data[4];     
    535                var handler = function (responseText) 
    546                { 
    55                          
    567                        var data = responseText; 
    57                         if (!data || typeof(data) != 'object') 
    58                         { 
     8                        if (!data || typeof(data) != 'object'){ 
    599                                write_msg("Problema ao contactar servidor"); 
    6010                                return; 
    61                         } 
    62                         else if (data['status'] == 'alreadyExists') 
    63                         { 
     11                        }else if (data['status'] == 'alreadyExists'){  
    6412                                alert(data['msg']); 
    6513                                return; 
    66                         } 
    67                         else if (data['status'] != 'ok') 
    68                         { 
     14                        }else if (data['status'] != 'ok'){ 
    6915                                return; 
    7016                        } 
    7117                         
    7218                        write_msg(get_lang("Contact added successfully.")); 
    73  
    74                         if ( _this.afterSave ) 
    75                         { 
    76                                 switch ( typeof(_this.afterSave) ) 
    77                                 { 
    78                                         case 'function': 
    79                                                 _this.afterSave(); 
    80                                                 break; 
    81  
    82                                         case 'string': 
    83                                                 eval(_this.afterSave); 
    84                                                 break; 
    85                                 } 
    86                         } 
    8719                }; 
    88         if( email == '' ) 
    89                 { 
    90                         alert( get_lang("QuickAddEmptyMail",email) ); 
    91                         return false; 
    92                 } 
    9320                 
    94                 if( !validateEmail(email) ) 
    95                 { 
    96                         alert( get_lang("QuickAddInvalidMail", email) ); 
    97                         return false; 
    98                 } 
    99  
    100                 var sdata       = 'add='+escape(connector.serialize(sdata)); 
     21                var data2 = new Array();  
     22                for( var i in data )  
     23                        data2[ data2.length ] = data[i];  
     24                       
     25                var sdata       = 'add='+escape(connector.serialize(data2)); 
    10126                var CC_url      = '../index.php?menuaction=contactcenter.ui_data.data_manager&method='; 
    102                  
    10327                connector.newRequest('cQuickAdd.Send', CC_url+'quick_add', 'POST', handler, sdata); 
    10428                return true; 
    105         } 
    106          
    107 /* Build the Object */ 
    108 var     ccQuickAddOne = new cQuickAddContact(); 
     29        }, 
     30        showList: function(data){  
     31                var     cc_data = ((typeof data) == 'object' ) ? data : data.split(',');  
     32                quickContact = $("#quickAddContact").html( DataLayer.render( BASE_PATH + "modules/mail/templates/quickAddContact.ejs",{ nick : cc_data[0], fname : cc_data[1], lname : cc_data[2], email : cc_data[3] }));  
     33                quickContact.dialog({  
     34                        resizable       : false,  
     35                        title           : get_lang("Quick Add"),  
     36                        modal           : true,  
     37                        buttons         : [  
     38                                {  
     39                                        text: get_lang("Cancel"),  
     40                                        click: function()  
     41                                        {  
     42                                                $(this).dialog("close");  
     43                                        }   
     44                                },  
     45                                {  
     46                                        text: get_lang("Save"),  
     47                                        click: function()  
     48                                        {  
     49                                                data = {  
     50                                                        nick: $(this).find('#quickAddOne_nickName').val(),  
     51                                                        name:  $(this).find('#quickAddOne_firstName').val(),  
     52                                                        last: $(this).find('#quickAddOne_lastName').val(),  
     53                                                        telefone: "",  
     54                                                        email: $(this).find('#quickAddOne_email').val()  
     55                                                };  
     56                                                $(this).find('input').removeClass("required-fail");  
     57                                                if(data.name ==""){  
     58                                                        $(this).find('#quickAddOne_firstName').addClass("required-fail");  
     59                                                        return false;  
     60                                                }else if(data.email ==""){  
     61                                                        $(this).find('#quickAddOne_email').addClass("required-fail");  
     62                                                        return false;  
     63                                                }else if(!validateEmail(data.email)){  
     64                                                        $(this).find('#quickAddOne_email').addClass("required-fail");  
     65                                                        new $.Zebra_Dialog(get_lang("QuickAddInvalidMail", data.email),{  
     66                                                                'buttons':  false,  
     67                                                                'modal': false,  
     68                                                                'position': ['right - 20', 'top + 20'],  
     69                                                                'auto_close': 3000  
     70                                                        });  
     71                                                        return false;  
     72                                                }  
     73                                                if(ccQuickAddOne.send(data))  
     74                                                        $(this).dialog("close");  
     75                                        }  
     76                                }  
     77                        ]  
     78                });  
     79                quickContact.next().css("background-color", "#E0EEEE").find("button").addClass("button").addClass("small"); 
     80} 
     81}; 
  • branches/2.4/prototype/modules/mail/templates/quickAddContact.ejs

    r5878 r6690  
    1 <div style="text-align:right;margin: 5px;"> 
    2         <div> 
    3                 <span><%=get_lang('Nickname')%>:</span> 
    4                 <input type="text" value="<%=data.nick%>" maxlength="50" id="quickAddOne_nickName" /> 
    5         </div> 
    6          
    7         <div> 
    8                 <span><%=get_lang('First Name')%>:</span> 
    9                 <input type="text" value="<%=data.fname%>" maxlength="50" id="quickAddOne_firstName" /> 
    10         </div> 
    11          
    12         <div> 
    13                 <span><%=get_lang('Last Name')%>:</span> 
    14                 <input type="text" value="<%=data.lname%>" maxlength="50" id="quickAddOne_lastName" /> 
    15         </div> 
    16          
    17         <div> 
    18                 <span><%=get_lang('Email')%>:</span> 
    19                 <input type="text" value="<%=data.email%>" maxlength="50" id="quickAddOne_email" /> 
    20         </div> 
     1<div style="width:auto;">         
     2        <table>  
     3                <tr>  
     4                        <td>  
     5                                <span><%=get_lang('Nickname')%>:</span>  
     6                        </td>  
     7                        <td>  
     8                                <input type="text" value="<%=data.nick%>" maxlength="50" id="quickAddOne_nickName" style="width:205px;"/>  
     9                        </td>  
     10                </tr>  
     11                  
     12                <tr>  
     13                        <td>  
     14                                <span><%=get_lang('First Name')%>:</span>  
     15                        </td>  
     16                        <td>  
     17                                <input type="text" value="<%=data.fname%>" maxlength="50" id="quickAddOne_firstName" style="width:205px;" class="required-field"/>  
     18                        </td>  
     19                </tr>  
     20                  
     21                <tr>  
     22                        <td>  
     23                                <span><%=get_lang('Last Name')%>:</span>  
     24                        </td>  
     25                        <td>  
     26                                <input type="text" value="<%=data.lname%>" maxlength="50" id="quickAddOne_lastName" style="width:205px;"/>  
     27                        </td>  
     28                </tr>  
     29                  
     30                <tr>  
     31                        <td>  
     32                                <span><%=get_lang('Email')%>:</span>  
     33                        </td>  
     34                        <td>  
     35                                <input type="text" value="<%=data.email%>" maxlength="50" id="quickAddOne_email" style="width:205px;" class="required-field"/>  
     36                        </td>  
     37                </tr>  
     38        </table>  
    2139</div> 
Note: See TracChangeset for help on using the changeset viewer.