source: trunk/expressoMail1_2/js/ccQuickAdd.js @ 6650

Revision 6650, 3.0 KB checked in by gustavo, 12 years ago (diff)

Ticket #2911 - Atualizar listagem de contatos automaticamente, sem necessidade de Refresh

  • Property svn:eol-style set to native
  • Property svn:executable set to *
Line 
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
53                var handler = function (responseText)
54                {
55                       
56                        var data = responseText;
57                        console.log(data);
58                        if (!data || typeof(data) != 'object')
59                        {
60                                write_msg("Problema ao contactar servidor");
61                                return;
62                        }
63                        else if (data['status'] == 'alreadyExists')
64                        {
65                                alert(data['msg']);
66                                return;
67                        }
68                        else if (data['status'] != 'ok')
69                        {
70                                return;
71                        }
72                       
73                        var exist = 0;
74                        $.each(dynamicContacts, function(x, valuex){
75                                if(valuex.mail == email){
76                                        exist = valuex.id;
77                                        return false;
78                                }
79                        });
80                        if(exist){
81                                REST.delete("/dynamiccontact/"+exist);
82                                write_msg(get_lang("The contact was moved from recent contacts to personal contacts successful."));
83                        }else{
84                                write_msg(get_lang("Contact added successfully."));
85                        }                       
86
87                        if ( _this.afterSave )
88                        {
89                                switch ( typeof(_this.afterSave) )
90                                {
91                                        case 'function':
92                                                _this.afterSave();
93                                                break;
94
95                                        case 'string':
96                                                eval(_this.afterSave);
97                                                break;
98                                }
99                        }
100                       
101                       
102                };
103        if( email == '' )
104                {
105                        alert( get_lang("QuickAddEmptyMail",email) );
106                        return false;
107                }
108               
109                if( !validateEmail(email) )
110                {
111                        alert( get_lang("QuickAddInvalidMail", email) );
112                        return false;
113                }
114
115                var sdata       = 'add='+escape(connector.serialize(sdata));
116                var CC_url      = '../index.php?menuaction=contactcenter.ui_data.data_manager&method=';
117               
118                connector.newRequest('cQuickAdd.Send', CC_url+'quick_add', 'POST', handler, sdata);
119               
120                updateDynamicPersonalContacts();
121                cache = new Array();
122                return true;
123        }
124       
125/* Build the Object */
126var     ccQuickAddOne = new cQuickAddContact();
Note: See TracBrowser for help on using the repository browser.