From: Wilfried Goesgens Date: Mon, 12 Jan 2015 20:14:20 +0000 (+0100) Subject: Fix marking of rows: if none was selected, start at row #0 not 1 X-Git-Tag: v9.01~38 X-Git-Url: https://code.citadel.org/?p=citadel.git;a=commitdiff_plain;h=625ce742deaa633dc4368b590c8ca58234ef4ed5 Fix marking of rows: if none was selected, start at row #0 not 1 --- diff --git a/webcit/static/summaryview.js b/webcit/static/summaryview.js index a57ecef70..f892990e6 100644 --- a/webcit/static/summaryview.js +++ b/webcit/static/summaryview.js @@ -274,86 +274,90 @@ function sortRowsByFromDescending(a, b) { return strcmp(fromTwo, fromOne); }; function CtdlMessageListClick(evt) { - /* Since element.onload is used here, test to see if evt is defined */ - var event = evt ? evt : window.event; - var target = event.target ? event.target: event.srcElement; // and again.. - var parent = target.parentNode; - var msgId = parent.getAttribute("citadel:msgid"); - var is_shift_pressed = event.shiftKey; - var is_ctrl_pressed = event.ctrlKey; - var rowclass = parent.getAttribute("class"); - var msgUnseen = rowclass.search("new_message") >= 0; + /* Since element.onload is used here, test to see if evt is defined */ + var event = evt ? evt : window.event; + var target = event.target ? event.target: event.srcElement; // and again.. + var parent = target.parentNode; + var msgId = parent.getAttribute("citadel:msgid"); + var is_shift_pressed = event.shiftKey; + var is_ctrl_pressed = event.ctrlKey; + var rowclass = parent.getAttribute("class"); + var msgUnseen = rowclass.search("new_message") >= 0; -/* debugging - str = '.'; - if (is_shift_pressed) { - str = str + 'S'; - } - str = str + '.'; - if (is_ctrl_pressed) { - str = str + 'C'; - } - str = str + '.'; - $('ib_summary').innerHTML = str; -*/ + /* debugging + str = '.'; + if (is_shift_pressed) { + str = str + 'S'; + } + str = str + '.'; + if (is_ctrl_pressed) { + str = str + 'C'; + } + str = str + '.'; + $('ib_summary').innerHTML = str; + */ - // If the ctrl key modifier wasn't used, unmark all rows and load the message - if (!is_shift_pressed && !is_ctrl_pressed) { - previousFinish = 0; - markedFrom = 0; - unmarkAllRows(); - markedRowIndex = parent.rowIndex; - originalMarkedRow = parent; - document.getElementById("preview_pane").innerHTML = ""; - new Ajax.Updater('preview_pane', 'msg/'+msgId, {method: 'get'}); - markRow(parent); + // If the ctrl key modifier wasn't used, unmark all rows and load the message + if (!is_shift_pressed && !is_ctrl_pressed) { + previousFinish = 0; + markedFrom = 0; + unmarkAllRows(); + markedRowIndex = parent.rowIndex; + originalMarkedRow = parent; + document.getElementById("preview_pane").innerHTML = ""; + new Ajax.Updater('preview_pane', 'msg/'+msgId, {method: 'get'}); + markRow(parent); - if (msgUnseen) { - var p = encodeURI('g_cmd=SEEN ' + msgId + '|1'); - new Ajax.Request('ajax_servcmd', { - method: 'post', - parameters: p, - onComplete: CtdlMarkRowAsRead(parent) - }); - } - // If the shift key modifier is used, mark a range... - } else if (event.button != 2 && is_shift_pressed) { - if (originalMarkedRow == null) { - originalMarkedRow = parent; - markRow(parent); - } else { - unmarkAllRows(); - markRow(parent); - markRow(originalMarkedRow); - } - var rowIndex = parent.rowIndex; - if (markedFrom == 0) { - markedFrom = rowIndex; - } - var startMarkingFrom = 0; - var finish = 0; - if (rowIndex > markedRowIndex) { - startMarkingFrom = markedRowIndex+1; - finish = rowIndex; - } else if (rowIndex < markedRowIndex) { - startMarkingFrom = rowIndex+1; - finish = markedRowIndex; - } - previousFinish = finish; - WCLog('startMarkingFrom=' + startMarkingFrom + ', finish=' + finish); - for(var x = startMarkingFrom; x markedRowIndex) { + startMarkingFrom = markedRowIndex+1; + finish = rowIndex; + } else if (rowIndex < markedRowIndex) { + startMarkingFrom = rowIndex+1; + finish = markedRowIndex; + } + previousFinish = finish; + WCLog('startMarkingFrom=' + startMarkingFrom + ', finish=' + finish); + for(var x = startMarkingFrom; x