| | |
| | | |
| | | this.drag_start = function(list) |
| | | { |
| | | this.initialBodyScrollTop = bw.ie ? 0 : window.pageYOffset; |
| | | this.initialMailBoxScrollTop = document.getElementById("mailboxlist-container").scrollTop; |
| | | |
| | | var model = this.task == 'mail' ? this.env.mailboxes : this.env.address_sources; |
| | | |
| | | this.drag_active = true; |
| | |
| | | // save folderlist and folders location/sizes for droptarget calculation in drag_move() |
| | | if (this.gui_objects.folderlist && model) |
| | | { |
| | | this.initialBodyScrollTop = bw.ie ? 0 : window.pageYOffset; |
| | | this.initialListScrollTop = this.gui_objects.folderlist.parentNode.scrollTop; |
| | | |
| | | var li, pos, list, height; |
| | | list = $(this.gui_objects.folderlist); |
| | | pos = list.offset(); |
| | |
| | | if (this.gui_objects.folderlist && this.env.folder_coords) { |
| | | // offsets to compensate for scrolling while dragging a message |
| | | var boffset = bw.ie ? -document.documentElement.scrollTop : this.initialBodyScrollTop; |
| | | var moffset = this.initialMailBoxScrollTop-document.getElementById('mailboxlist-container').scrollTop; |
| | | var moffset = this.initialListScrollTop-this.gui_objects.folderlist.parentNode.scrollTop; |
| | | var toffset = -moffset-boffset; |
| | | |
| | | var li, pos, mouse; |
| | |
| | | this.ksearch_query_results = function(results, search) |
| | | { |
| | | // ignore this outdated search response |
| | | if (search != this.ksearch_value) |
| | | if (this.ksearch_value && search != this.ksearch_value) |
| | | return; |
| | | |
| | | this.hide_message(); |
| | |
| | | if ((target_li = this.get_folder_li(name))) { |
| | | $(target_li).removeClass('unfocused').addClass('selected'); |
| | | } |
| | | |
| | | // trigger event hook |
| | | this.triggerEvent('selectfolder', { folder:name, old:old }); |
| | | } |
| | | }; |
| | | |
| | |
| | | + (flags.unread ? ' unread' : '') |
| | | + (flags.deleted ? ' deleted' : '') |
| | | + (flags.flagged ? ' flagged' : '') |
| | | + (this.message_list.in_selection(uid) ? ' selected' : ''); |
| | | + (this.message_list.in_selection(uid) ? ' selected' : ''); |
| | | |
| | | // for performance use DOM instead of jQuery here |
| | | var row = document.createElement('TR'); |
| | |
| | | } |
| | | |
| | | this.message_list.insert_row(row, attop); |
| | | this.triggerEvent('insertrow', { uid:uid, row:row }); |
| | | |
| | | // remove 'old' row |
| | | if (attop && this.env.pagesize && this.message_list.rowcount > this.env.pagesize) { |
| | |
| | | var rowcount = tbody.rows.length; |
| | | var even = rowcount%2; |
| | | |
| | | var row = $('<tr>').attr('id', 'rcmrow'+cid).addClass('class').addClass(even ? 'even' : 'odd'); |
| | | |
| | | var row = document.createElement('TR'); |
| | | row.id = 'rcmrow'+cid; |
| | | row.className = 'contact '+(even ? 'even' : 'odd'); |
| | | |
| | | if (this.contact_list.in_selection(cid)) |
| | | row.addClass('selected'); |
| | | row.className += ' selected'; |
| | | |
| | | // add each submitted col |
| | | for (var c in cols) { |
| | | col = $('<td>').addClass(String(c).toLowerCase()).html(cols[c]).appendTo(row); |
| | | col = document.createElement('TD'); |
| | | col.className = String(c).toLowerCase(); |
| | | col.innerHTML = cols[c]; |
| | | row.appendChild(col); |
| | | } |
| | | |
| | | this.contact_list.insert_row(row); |
| | | this.triggerEvent('insertrow', { cid:cid, row:row }); |
| | | |
| | | this.enable_command('export', (this.contact_list.rowcount > 0)); |
| | | }; |
| | | |
| | |
| | | this.msglist_select(this.message_list); |
| | | this.enable_command('show', 'expunge', 'select-all', 'select-none', 'sort', (this.env.messagecount > 0)); |
| | | this.enable_command('purge', this.purge_mailbox_test()); |
| | | |
| | | if (response.action == 'list') |
| | | this.triggerEvent('listupdate', { folder:this.env.mailbox, rowcount:this.message_list.rowcount }); |
| | | } |
| | | else if (this.task == 'addressbook') |
| | | else if (this.task == 'addressbook') { |
| | | this.enable_command('export', (this.contact_list && this.contact_list.rowcount > 0)); |
| | | |
| | | if (response.action == 'list') |
| | | this.triggerEvent('listupdate', { folder:this.env.source, rowcount:this.contact_list.rowcount }); |
| | | } |
| | | break; |
| | | } |
| | | }; |