document.getElementById('m_refresh').setAttribute("href","#");
Event.observe(document.onresize ? document : window, "resize", normalizeHeaderTable);
Event.observe(document.onresize ? document : window, "resize", sizePreviewPane);
- $('summpage').observe('change', getPage);
+ if ( $('summpage') ) {
+ $('summpage').observe('change', getPage);
+ }
+ else {
+ alert('error: summpage does not exist');
+ }
takeOverSearchOMatic();
setupDragDrop(); // here for now
}
var start = new Date();
var length = msgs.length;
var compiled = new Array(length+2);
- compiled[0] = "<tbody xmlns:citadel=\"http://citadel.org\" id=\"message_list_body\" class=\"mailbox_summary\">";
+ compiled[0] = "<table class=\"mailbox_summary\" id=\"summary_headers\" \"cellspacing=0\" style=\"width:100%;-moz-user-select:none;\">";
for(var x=0; x<length; ++x) {
try {
var currentRow = msgs[x];
WCLog("Exception on row " + x + ":" + e);
}
}
- compiled[length+2] = "</tbody>";
+ compiled[length+2] = "</table>";
var end = new Date();
WCLog("iterate: " + (end-start));
var compile = compiled.join("");
document.getElementById("preview_pane").innerHTML = "";
new Ajax.Updater('preview_pane', 'msg/'+msgId, {method: 'get'});
markRow(parent);
+ var p = encodeURI('g_cmd=SEEN ' + msgId + '|1');
new Ajax.Request('ajax_servcmd', {
method: 'post',
- parameters: 'g_cmd=SEEN ' + msgId + '|1',
- onComplete: CtdlMarkRowAsRead(parent)});
+ parameters: p,
+ onComplete: CtdlMarkRowAsRead(parent)
+ });
// If the shift key modifier is used, mark a range...
} else if (event.button != 2 && event.shiftKey) {
if (originalMarkedRow == null) {
function removeOldSortClass() {
if (currentSorterToggle) {
var classes = currentSorterToggle.className;
- /* classes = classes.replace("current_sort_mode","");
- classes = classes.replace("sort_ascending","");
- classes = classes.replace("sort_descending",""); */
- currentSorterToggle.className = "";
+ classes = classes.replace("current_sort_mode","");
+ classes = classes.replace("sort_ascending","");
+ classes = classes.replace("sort_descending","");
+ currentSorterToggle.className = classes;
}
}
function markRow(row) {
msgs = newMsgs;
resortAndDisplay(null);
}
-
function deleteAllSelectedMessages() {
- for(msgId in currentlyMarkedRows) {
- if (!room_is_trash) {
- new Ajax.Request('ajax_servcmd',
- {method: 'post',
- parameters: 'g_cmd=MOVE ' + msgId + '|_TRASH_|0'
- });
- } else {
- new Ajax.Request('ajax_servcmd', {method: 'post',
- parameters: 'g_cmd=DELE '+msgId});
+ var mvCommand = "";
+ var msgIds = "";
+ for(msgId in currentlyMarkedRows) {
+ msgIds += ","+msgId;
+
+ if (msgIds.length > 800) {
+ if (!room_is_trash) {
+ mvCommand = encodeURI("g_cmd=MOVE " + msgIds + "|_TRASH_|0");
+ }
+ else {
+ mvCommand = encodeURI("g_cmd=DELE " + msgIds);
+ }
+ new Ajax.Request("ajax_servcmd", {
+ parameters: mvCommand,
+ method: 'post',
+ onSuccess: function(transport) {
+ WCLog(transport.responseText);
}
+ });
+ msgIds = "";
}
- document.getElementById("preview_pane").innerHTML = "";
- deleteAllMarkedRows();
+ }
+
+ if (!room_is_trash) {
+ mvCommand = encodeURI("g_cmd=MOVE " + msgIds + "|_TRASH_|0");
+ }
+ else {
+ mvCommand = encodeURI("g_cmd=DELE " + msgIds);
+ }
+ new Ajax.Request("ajax_servcmd", {
+ parameters: mvCommand,
+ method: 'post',
+ onSuccess: function(transport) {
+ WCLog(transport.responseText);
+ }
+ });
+
+ document.getElementById("preview_pane").innerHTML = "";
+ deleteAllMarkedRows();
}
function CtdlMessageListKeyUp(event) {
var heightOfViewPort = document.viewport.getHeight() // prototypejs method
var bannerHeight = banner.offsetHeight;
var contentViewPortHeight = heightOfViewPort-banner.offsetHeight-message_list_hdr.offsetHeight;
- contentViewPortHeight = 0.98 * contentViewPortHeight; // leave some error
+ contentViewPortHeight = 0.95 * contentViewPortHeight; // leave some error (especially for FF3!!)
// Set summary_view to 20%;
var summary_height = ctdlLocalPrefs.readPref("svheight");
if (summary_height == null) {
}
currentSorterToggle.className = className;
}
-/** Hack to make the header table line up with the data */
+
+/* Hack to make the header table line up with the data */
function normalizeHeaderTable() {
var message_list_hdr = document.getElementById("message_list_hdr");
var summary_view = document.getElementById("summary_view");
summpage.appendChild(opt);
}
}
+
function getPage(event) {
var target = event.target;
startmsg = target.options.item(target.selectedIndex).value;
//query = ""; // We are getting a page from the _entire_ msg list, don't query
getMessages();
}
+
function takeOverSearchOMatic() {
var searchForm = document.getElementById("searchomatic").getElementsByTagName("form")[0];
// First disable the form post