Changeset 6460 for sandbox/2.4.1-3/expressoMail1_2/js/draw_api.js
- Timestamp:
- 06/11/12 18:11:01 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
sandbox/2.4.1-3/expressoMail1_2/js/draw_api.js
r6422 r6460 9 9 */ 10 10 onceOpenedHeadersMessages = {}; 11 12 var dynamicPersonalContacts = new Array(); 13 var dynamicPersonalGroups = new Array(); 11 14 12 15 var openTab = { … … 3572 3575 input.keydown(function(e){ 3573 3576 f9 = false; 3574 var reEmail = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[_a-z0-9-]+(\.[_a-z0-9-]+)+$/;3575 var reEmail2 = /<([^<]*)>[\s]*$/;3576 3577 var focusing = input.parent().find(".email-text"); 3577 3578 //SE OS CONTATOS DINAMICOS ESTAO ATIVOS 3578 3579 if(parseInt(preferences.use_dynamic_contacts) && !input.hasClass("box-input")){ 3579 3580 //SELECIONA O CONTATO E EVITA OUTROS COMANDOS 3580 if ( e.keyCode === $.ui.keyCode.TAB && $( this ).data( " autocomplete" ).menu.active ) {3581 if ( e.keyCode === $.ui.keyCode.TAB && $( this ).data( "catcomplete" ).menu.active ) { 3581 3582 e.preventDefault(); 3582 3583 return false; … … 3584 3585 3585 3586 //FECHA OS CONTATOS DINÂMICOS 3586 if( (e.keyCode == 27) && $( this ).data( " autocomplete" ).menu.active ){3587 if( (e.keyCode == 27) && $( this ).data( "catcomplete" ).menu.active ){ 3587 3588 e.stopPropagation(); 3588 3589 e.preventDefault(); … … 3590 3591 3591 3592 //SELECIONA O CONTATO E EVITA OUTROS COMANDOS 3592 if(e.keyCode == $.ui.keyCode.ENTER && $( this ).data( " autocomplete" ).menu.active){3593 if(e.keyCode == $.ui.keyCode.ENTER && $( this ).data( "catcomplete" ).menu.active){ 3593 3594 e.preventDefault(); 3594 3595 return false; … … 3679 3680 3680 3681 input_search = $(input).val(); 3681 if($(input).val().length >= 4) 3682 $(input).val(""); 3682 $(input).val(""); 3683 3683 }) 3684 3684 //AO COLAR UM TEXTO NO CAMPO … … 3802 3802 box.find(".box-loading").removeClass("box-loading").addClass("box-info"); 3803 3803 box.addClass("box-"+value).removeClass("invalid-email-box"); 3804 loadExtraLDAPBox(data.collection. itens[0].data, ".box-"+value);3804 loadExtraLDAPBox(data.collection.data, ".box-"+value); 3805 3805 box.unbind("dblclick").bind("dblclick", function(e){ 3806 3806 new $.Zebra_Dialog('<strong>Impossivel editar</strong> um contato do catálogo pessoal\n' + … … 3811 3811 'auto_close': 3000 3812 3812 }); 3813 }).find(".box-input").val("\""+data.collection. itens[0].data[0].value+"\" <"+data.collection.itens[0].data[1].value+">");3814 box.find(".email-box-value").html( (data.collection. itens[0].data[0].value.length > 18 ? data.collection.itens[0].data[0].value.substring(0, 15)+"...": data.collection.itens[0].data[0].value))3813 }).find(".box-input").val("\""+data.collection.data[0].value+"\" <"+data.collection.data[1].value+">"); 3814 box.find(".email-box-value").html( (data.collection.data[0].value.length > 18 ? data.collection.data[0].value.substring(0, 15)+"...": data.collection.data[0].value)) 3815 3815 } 3816 3816 }else{ … … 3893 3893 //PREPARAÇÃO DA ARRAY DOS CONTATOS DINÂMICOS 3894 3894 var dynamicContactList = new Array(); 3895 var myArray = contacts.split(","); 3896 //Variavel de teste...Remover depois... 3897 var flag = true; 3898 for(var i in myArray){ 3899 var dynamicContact = myArray[i].split(";"); 3900 3901 /* if(dynamicContact.length > 1) 3902 dynamicContactList.push({name : dynamicContact[0], email: dynamicContact[1], value : (dynamicContact[0] +" - "+dynamicContact[1])}); 3903 else 3904 dynamicContactList.push({name : "", email: dynamicContact[0], value :dynamicContact[0]}); */ 3905 3906 //Verificar outro modo para criar a divisão dos contatos dinâmicos 3907 if( i <(myArray.length / 2)){ 3908 var type = 'recente'; 3909 3910 if(dynamicContact.length > 1) 3911 dynamicContactList.push({name : dynamicContact[0], email: dynamicContact[1], value : (dynamicContact[0] +" - "+dynamicContact[1]), type:type }); 3912 else 3913 dynamicContactList.push({name : "", email: dynamicContact[0], value :dynamicContact[0], type:type}); 3914 3915 }else{ 3916 var type = 'pessoal'; 3917 3918 if(flag){ 3919 dynamicContactList.push({name : "", email: "", value :"", type:"linha"}); 3920 flag = false; 3921 } 3922 3923 if(dynamicContact.length > 1) 3924 dynamicContactList.push({name : dynamicContact[0], email: dynamicContact[1], value : (dynamicContact[0] +" - "+dynamicContact[1]), type:type }); 3925 else 3926 dynamicContactList.push({name : "", email: dynamicContact[0], value :dynamicContact[0], type:type}); 3927 } 3928 } 3929 3895 var groupsData = DataLayer.read("/groups").collection.itens; 3896 var contactsData = DataLayer.read("/contacts").collection.itens; 3897 dynamicPersonalGroups = new Array(); 3898 3899 $.each(groupsData, function(index, value){ 3900 var group = { 3901 id : parseInt(value.data[0].value), 3902 name : value.data[2].value, 3903 email : value.data[2].value, 3904 value: value.data[2].value + " - " + value.data[2].value, 3905 type: "G" 3906 }; 3907 dynamicContactList.push(group); 3908 dynamicPersonalGroups.push(group); 3909 }); 3910 3911 dynamicPersonalContacts = new Array(); 3912 3913 $.each(contactsData, function(index, value){ 3914 var contact = { 3915 id : parseInt(value.data[0].value), 3916 name : value.data[1].value, 3917 email : value.data[2].value, 3918 value: value.data[1].value + " - " + value.data[2].value, 3919 type: "P" 3920 }; 3921 dynamicContactList.push(contact); 3922 dynamicPersonalGroups.push(contact); 3923 }); 3924 $.widget( "custom.catcomplete", $.ui.autocomplete, { 3925 _renderMenu: function( ul, items ) { 3926 var self = this, 3927 currentType = "G"; 3928 $.each( items, function( index, item ) { 3929 if ( item.type != currentType) { 3930 self._renderItem( ul, {name:"", value:"", type:"linha"} ); 3931 currentType = item.type; 3932 } 3933 self._renderItem( ul, item ); 3934 }); 3935 } 3936 }); 3930 3937 //INSERÇÃO DO AUTO COMPLETE AO INPUT 3931 div.find("input").autocomplete({ 3932 minLength: 0, 3933 source: function( request, response ) { 3934 response( $.ui.autocomplete.filter( 3935 dynamicContactList, extractLast( request.term ) ) ); 3936 }, 3938 div.find("input").catcomplete({ 3939 minLength: 1, 3940 source: dynamicContactList, 3937 3941 focus: function() { 3938 3942 return false; … … 3946 3950 return false; 3947 3951 }, 3948 autoFocus: true, 3949 open : function(){ 3950 if($.trim($(this).val()) == "") 3951 $(this).autocomplete( "close" ); 3952 } 3952 autoFocus: true 3953 3953 }) 3954 3954 3955 3955 //MONTAGEM DA LISTA DE CONTATOS DINÂMICOS DO AUTO COMPLETE 3956 .data( " autocomplete" )._renderItem = function( ul, item ) {3956 .data( "catcomplete" )._renderItem = function( ul, item ) { 3957 3957 ul.css({"min-width":"280px", "width":"50%", "max-height" : "180px", "overflow-y" : "auto"}); 3958 3958 if( $(ul).find("li").length > 10 ){ … … 3985 3985 //FUNÇÃO DOS BOTÕES PARA - CC - CCO 3986 3986 div.parents("tr:first").find("button").button().click(function(){ 3987 emQuickSearch(($(this).parents("tr:first").find("input").val() ? $(this).parents("tr:first").find("input").val() : input_search), "."+$(this).parents("tr:first").attr('class').split("-")[0], ID, undefined, true); 3987 if(!$(":focus").hasClass("new-message-input")) 3988 emQuickSearch(($(this).parents("tr:first").find("input").val() ? $(this).parents("tr:first").find("input").val() : input_search), "."+$(this).parents("tr:first").attr('class').split("-")[0], ID, undefined, true); 3988 3989 }); 3989 3990 }
Note: See TracChangeset
for help on using the changeset viewer.