Ignore:
Timestamp:
10/02/12 15:05:11 (12 years ago)
Author:
angelo
Message:

Ticket #3137 - Compatibilizar normalizacao de dados dos contatos dinamicos com o calendar

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/calendar/templates/default/js/edit_exmail.js

    r7179 r7336  
    359359function extractLast( term ) { 
    360360        return split( term ).pop(); 
    361 }                
     361} 
    362362 
    363363function updateDynamicContact(){ 
    364364        dynamicContacts = new Array(); 
    365         var dynamicData = REST.get("/dynamiccontacts").collection.itens; 
    366         if(dynamicData){ 
    367                 $.each(dynamicData, function(index, value){ 
     365    var dynamicUsers = REST.get("/dynamiccontacts"); 
     366    if(dynamicUsers.collection && !dynamicUsers.collection.error){ 
     367        var dynamicData = normalizeContacts(dynamicUsers.collection.itens) 
     368 
     369        $.each(dynamicData, function(index, value){ 
    368370                        if(index ==0){ 
    369                                 topContact = parseInt(value.data[2].value); 
     371                                topContact = parseInt(value['number_of_messages']); 
    370372                        } 
    371373                        var dynamic = { 
    372                                 name : value.data[0].value, 
    373                                 mail : value.data[1].value, 
    374                                 value: value.data[0].value + " - " + value.data[1].value, 
     374                                name : value.name, 
     375                                mail : value.mail, 
     376                                value: value.name + " - " + value.mail, 
    375377                                type: "", 
    376                                 id: parseInt(value.data[3].value), 
    377                                 qtd : parseInt(value.data[2].value) 
     378                                id: value.id, 
     379                                qtd : value['number_of_messages'] 
    378380                        }; 
    379381                        dynamicContacts.push(dynamic); 
     
    382384} 
    383385 
    384  
    385386function updateDynamicPersonalContacts(){ 
    386387        dynamicPersonalContacts = new Array(); 
    387         var contactsData = REST.get("/contacts").collection.itens; 
    388         if(contactsData){ 
    389                 $.each(contactsData, function(index, value){ 
    390                         var contact = { 
    391                                 id : parseInt(value.data[0].value), 
    392                                 name : value.data[1].value, 
    393                                 email : value.data[2].value, 
    394                                 value: value.data[1].value + " - " + value.data[2].value, 
    395                                 type: "P" 
    396                         }; 
    397                         dynamicPersonalContacts.push(contact); 
    398                 }); 
    399         } 
     388 
     389    var personalContacts = REST.get("/personalContact"); 
     390 
     391    if(personalContacts.collection && !personalContacts.collection.error){ 
     392        var contactsData = normalizeContacts(personalContacts.collection.itens); 
     393        if(contactsData){ 
     394            $.each(contactsData, function(index, value){ 
     395                var contact = { 
     396                    id : parseInt(value.id), 
     397                    name : value.name, 
     398                    email: value.email, 
     399                    value: value.name+ " - " + value.email, 
     400                    type: "P" 
     401                }; 
     402                dynamicPersonalContacts.push(contact); 
     403            }); 
     404        } 
     405    } 
     406} 
     407 
     408function normalizeContacts(data){ 
     409    var decoded = []; 
     410 
     411    if(!$.isArray(data)){data = [data];} 
     412    for(var i = 0; i < data.length; i++){ 
     413        var item = {}; 
     414        $.each(data[i].data, function(j, e){ 
     415            item[e.name] = e.value; 
     416        }); 
     417        decoded.push(item); 
     418    } 
     419    return decoded; 
    400420} 
    401421 
Note: See TracChangeset for help on using the changeset viewer.