'; for (x in expresso_mail_archive.folders[w]){ strFolders += '\n----------' + x + ':= ' + expresso_mail_archive.folders[w][x]; } strFolders += '\n<---'; } strFolders += '\n---'; alert(lfolders.length + ' folders mapeados, com default = ' + expresso_mail_archive.currentfolder + '\nfolders list:\n\n' + strFolders); */ //If something UI related have been flagged, handle it if (expresso_mail_archive.drawdata){ //window.alert('com drawdata'); expresso_mail_archive.drawFolderTree(); } } } //getFolderList callback Fail MailArchiver.prototype.getFoldersListOperationFailure = function(error, http_msg){ window.alert('List folders mistake:' + error + '\nhttp_error = ' + http_msg); } //drawFolderTree operation, if requested to MailArchiver.prototype.drawFolderTree = function(){ //window.alert('na api de foldertree'); var localBaseName = 'local_'; var objectTree = expresso_mail_archive.drawdata.treeObject; var evalobjectTree = eval(expresso_mail_archive.drawdata.treeName); //Add nodes to tree if(expresso_mail_archive.folders.length > 0){ for(i=0; i' + message.getReturn()); } //deleteFolder operation MailArchiver.prototype.deleteFolder = function(folderName){ try{ ArchiveServices.deleteFolder(expresso_mail_archive.deleteFolderOperationOK, expresso_mail_archive.deleteFolderOperationFailure, sessid, folderName, true); } catch (e){ window.alert('Ops...delete folder fails at:\n' + e); } } //deleteFolder callback OK MailArchiver.prototype.deleteFolderOperationOK = function (folderObject){ var fo = IterateIt(folderObject); write_msg(get_lang("The folder " + expresso_mail_archive.drawdata.folderName + " was successfully removed")); draw_tree_local_folders(); ttreeBox.update_folder(); } //deleteFolder callback Fail MailArchiver.prototype.deleteFolderOperationFailure = function (message){ window.alert('Folder deletion fails...\n->' + message.getReturn()); } //renameFolder operation MailArchiver.prototype.renameFolder = function(folderId, newFolderName){ try{ ArchiveServices.renameFolder(expresso_mail_archive.renameFolderOperationOK, expresso_mail_archive.renameFolderOperationFailure, sessid, folderId, newFolderName); } catch (e){ window.alert('Ops...renaming folder fails at:\n' + e); } } //renameFolder callback OK MailArchiver.prototype.renameFolderOperationOK = function (returnService){ var evalobjectTree = eval(expresso_mail_archive.drawdata.treeName); evalobjectTree.update_folder(); } //renameFolder callback Fail MailArchiver.prototype.renameFolderOperationFailure = function (ServiceFault){ window.alert('Folder rename fails...\n->' + ServiceFault.getReturn()); alert(get_lang("cannot rename folder. try other folder name")); } //getFolderInfo operation MailArchiver.prototype.getFolderInfo = function (folderId){ try{ ArchiveServices.getFolderInfo(expresso_mail_archive.getFolderInfoOperationOK, expresso_mail_archive.getFolderInfoOperationFailure, sessid, folderId); } catch (e){ window.alert('Ops...getFolderInfo fails at:\n' + e); } } //getFolderInfo callback OK MailArchiver.prototype.getFolderInfoOperationOK = function(returnService){ var folder_info = {id : returnService.getReturn().getId(), name : returnService.getReturn().getName(), parent : returnService.getReturn().getParentId(), numfolders: returnService.getReturn().getFolderCount(), nummessages: returnService.getReturn().getMessageCount()}; expresso_mail_archive.folder = folder_info; } //getFolderInfo callback Fail MailArchiver.prototype.getFolderInfoOperationFailure = function (ServiceFault){ window.alert('getFolderInfo service fails...\n->' + ServiceFault.getReturn()); } //listMessages operation //OLD local_messages.prototype.get_local_range_msgs = function(folder,msg_range_begin,emails_per_page,sort,sort_reverse,search,preview_msg_subject,preview_msg_tip) { //ONLINE messages_proxy.prototype.messages_list = function(folder,msg_range_begin,emails_per_page,sort_box_type,search_box_type,sort_box_reverse,preview_msg_subject,preview_msg_tip,call_back,tree_name) { //sys call = proxy_mensagens.messages_list(current_folder,1,preferences.max_email_per_page,sort,search,sort_box_reverse,preferences.preview_msg_subject,preferences.preview_msg_tip,handler_draw_box); MailArchiver.prototype.listMessages = function(){ try{ var folderid = expresso_mail_archive.currentfolder; var testing_data_xml = ''; var testing_data_json_mapped = '{"query":{"@lowerIndex":"0", "@upperIndex":"50", "folder":[{"@id":"'+folderid+'"}], "order":[{"@asc":"date", "@desc":"subject"}]}}'; if (expresso_mail_archive.queryconfig.folder != null) var testing_data = expresso_mail_archive.queryconfig.query(); else var testing_data = testing_data_json_mapped; //window.alert('vai chamar o listMessages com testing_data = ' + testing_data); ArchiveServices.listMessages(expresso_mail_archive.listMessagesOperationOK, expresso_mail_archive.listMessagesOperationFailure, sessid, testing_data); } catch (e){ window.alert('Ops...listMessages fails at:\n' + e); } } //listMessages callback OK MailArchiver.prototype.listMessagesOperationOK = function(returnService){ var msglist = new Array(); /*window.alert('Dados da mensagem:\n->From ' + returnService.getReturn()[0].getFrom() +'\n->To ' + returnService.getReturn()[0].getTo() +'\n->Subject ' + returnService.getReturn()[0].getSubject() +'\n->Date ' + returnService.getReturn()[0].getDate() +'\n->Date ' + returnService.getReturn()[0].getSize() +'\n->ID ' + returnService.getReturn()[0].getId()); */ for(var i=0; i< returnService.getReturn().length; i++){ //window.alert('quer deserializar:\n\n' + print_r(returnService.getReturn()[i])); var ExpSerialized = expresso_mail_archive.toExpressoHeader(returnService.getReturn()[i]); //window.alert('expSerialized ' + i + '\n\n --\n\n' + print_r(ExpSerialized)); //var test = connector.unserialize(ExpSerialized); //window.alert('unserialized = \n\n' + test); msglist.push(connector.unserialize(ExpSerialized));//usando connector.unserialize sobre o header mapeado no layout abaixo } msglist["num_msgs"] = returnService.getReturn().length; //window.alert('print_r\n\n' + print_r(msglist)); expresso_mail_archive.drawdata = {messagesList:msglist}; expresso_mail_archive.drawMessagesList(); } //listMessages callback Fail MailArchiver.prototype.listMessagesOperationFailure = function(ServiceFault){ window.alert('listmessages FALHOU!\n' + ServiceFault.getReturn()); } MailArchiver.prototype.drawMessagesList = function(){ var data_to_draw = expresso_mail_archive.drawdata.messagesList; //window.alert('data to draw = ' + data_to_draw.length + '\ndata_to_draw[0].from.full = ' + print_r(data_to_draw)); alternate_border(0); Element("border_id_0").innerHTML = " " + lang_folder(expresso_mail_archive.currentfolder) + ' [  / ]'; draw_box(data_to_draw, expresso_mail_archive.currentfolder, true); draw_paging(expresso_mail_archive.drawdata.messagesList.length); Element("tot_m").innerHTML = expresso_mail_archive.drawdata.messagesList.length; //update_menu(); } // -----------------------------------SERIALIZED DATA TEMPLATES ---------------- MailArchiver.prototype.toExpressoAddress = function(data){ if((typeof(data) != 'undefined') && (data.length > 0)){ /*var dataFormat = expresso_mail_archive.toExpressoFormatNameMail(data); var dataName = dataFormat[0]; var dataEmail = dataFormat[1]; */ //window.alert('em toExpressoFrom com data = \n' + data + '[' + typeof(data) + ']('+data.length+')'); var Fromdata = eval("(" + data + ")"); //window.alert('temos ' + Fromdata.mailbox.length + ' destinatarios/remetentes a lidar...'); //window.alert('name = ' + Fromdata.mailbox["@name"] + '\nlocal part = ' + Fromdata.mailbox["@localPart"] + '\ndomain = ' + Fromdata.mailbox["@domain"]); //one address if(typeof(Fromdata.mailbox.length) == 'undefined'){ var dataName = Fromdata.mailbox["@name"]; var dataEmail = Fromdata.mailbox["@localPart"] + '@' + Fromdata.mailbox["@domain"]; } //address list: to header(msgs list), only first metters else{ var dataName = Fromdata.mailbox[0]["@name"]; var dataEmail = Fromdata.mailbox[0]["@localPart"] + '@' + Fromdata.mailbox[0]["@domain"]; } var tplFrom = 'a:3:{' + 's:4:"name";' + 's:'+dataName.length+':"'+dataName+'";' + 's:5:"email";' + 's:'+dataEmail.length+':"'+dataEmail+'";' + 's:4:"full";' + 's:'+(dataName.length + dataEmail.length + 3)+':"'+dataName+'" <'+dataEmail+'>;' + '}'; } //Data adrress from mailbox is empty, null, or canot be correctly returned by service invocation (will return 'unknow mailbox' string) else { tplFrom = 'a:2{s:4:"name";s:14:"Unknow mailbox";s:5:"email";s:15:"Unknow_mailbox";}'; } return(tplFrom); } MailArchiver.prototype.toExpressoSubject = function(data){ if((typeof(data) != 'undefined') && (data.length > 0)){ var tplSbj = 's:'+data.length+':"'+data+'";' } //Subject is empty, null, or canot be correctly returned by service invocation (will return 'Message without subject' string) else { tplSbj = 's:25:"[Message without subject]";'; } return(tplSbj); } MailArchiver.prototype.toExpressoAttachmentsHeader = function(data){ if((typeof(data) != 'undefined') && (data.length > 0)){ var Attdata = eval("(" + data + ")"); if(typeof(Attdata.attachment) != 'undefined'){ var tplAttatch = 'a:2:{' + 's:5:"names";'; //More than 1 attachment - because length will be 'undefined' if just one exists if(Attdata.attachment.length > 0){ var strnamesatt = ""; for(var x=0; x 0) && (typeof(data) != 'undefined')){ var Tagdata = eval("(" + data + ")"); //More than 1 attachment - because length will be 'undefined' if just one exists if(Tagdata.tag.length >= 0){ var strnamestag = ""; for(var x=0; x