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 *
RevLine 
[2]1        function cQuickAddContact ()
2        {
[5473]3                this.xtools     = new xtools('../expressoMail1_2/templates/');
[2]4        }
5
[5473]6        cQuickAddContact.prototype.showList = function(data)
7        {
8                var     cc_data = ((typeof data) == 'object' ) ? data : data.split(',');
[2]9
[5878]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(
[5473]13                {
[5878]14                                height          : 200,
15                                width           : 300,
16                                resizable       : false,
17                                title           : get_lang("Quick Add"),                       
18                                modal           : true,
19                                buttons         : [
[5473]20                                                                {
[5878]21                                                                        text: get_lang("Cancel"),
22                                                                        click: function()
23                                                                        {
[5750]24                                                                                $(this).dialog("close");
[5878]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() + ',';
[6341]34                                                                                data = data + $(this).find('#quickAddOne_lastName').val() + ',,';
[6528]35                                                                                data = data + $(this).find('#quickAddOne_email').val();
[5878]36                                                                                if(ccQuickAddOne.send(data))
37                                                                                        $(this).dialog("close");
38                                                                        }
[5473]39                                                                }
[5878]40                                ]
41                });
[2]42               
[5878]43                quickContact.next().css("background-color", "#E0EEEE");         
[2]44        }
45       
46        cQuickAddContact.prototype.send = function (data)
47        {
[5473]48                var sdata               = data.split(",");
[6341]49                var email               = trim(sdata[4]);
[5473]50                var full_name   = trim(sdata[1]) + ' ' + trim(sdata[2]);
51                var _this               = this;
[6341]52
[2]53                var handler = function (responseText)
54                {
[5750]55                       
[2]56                        var data = responseText;
[6650]57                        console.log(data);
[2]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                        }
[5473]72                       
[6650]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                        }                       
[2]86
[5473]87                        if ( _this.afterSave )
[2]88                        {
[5473]89                                switch ( typeof(_this.afterSave) )
[2]90                                {
91                                        case 'function':
92                                                _this.afterSave();
93                                                break;
94
95                                        case 'string':
96                                                eval(_this.afterSave);
97                                                break;
98                                }
99                        }
[6650]100                       
101                       
[5473]102                };
[5695]103        if( email == '' )
[5473]104                {
105                        alert( get_lang("QuickAddEmptyMail",email) );
[3883]106                        return false;
107                }
[5473]108               
109                if( !validateEmail(email) )
110                {
111                        alert( get_lang("QuickAddInvalidMail", email) );
[2]112                        return false;
113                }
[3227]114
[5473]115                var sdata       = 'add='+escape(connector.serialize(sdata));
116                var CC_url      = '../index.php?menuaction=contactcenter.ui_data.data_manager&method=';
117               
[2]118                connector.newRequest('cQuickAdd.Send', CC_url+'quick_add', 'POST', handler, sdata);
[6528]119               
120                updateDynamicPersonalContacts();
[6650]121                cache = new Array();
[5750]122                return true;
[2]123        }
124       
125/* Build the Object */
[6341]126var     ccQuickAddOne = new cQuickAddContact();
Note: See TracBrowser for help on using the repository browser.