From 7fe2286982a42f3ecb156f4d67ec4118b3aac392 Mon Sep 17 00:00:00 2001 From: Matt Date: Fri, 20 Feb 2009 13:24:25 +0000 Subject: [PATCH] * add a strcmp function, use for mailbox subject/sender compare --- webcit/static/summaryview.js | 8 ++++---- webcit/static/wclib.js | 13 +++++++++++++ 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/webcit/static/summaryview.js b/webcit/static/summaryview.js index 767ecbfc5..5fd759616 100644 --- a/webcit/static/summaryview.js +++ b/webcit/static/summaryview.js @@ -231,25 +231,25 @@ function sortRowsByDateDescending(a, b) { function sortRowsBySubjectAscending(a, b) { var subjectOne = getTextContent(a.getElementsByTagName("td")[0]).toLowerCase(); var subjectTwo = getTextContent(b.getElementsByTagName("td")[0]).toLowerCase(); - return (subjectOne.charCodeAt(0) - subjectTwo.charCodeAt(0)); + return strcmp(subjectOne, subjectTwo); } function sortRowsBySubjectDescending(a, b) { var subjectOne = getTextContent(a.getElementsByTagName("td")[0]).toLowerCase(); var subjectTwo = getTextContent(b.getElementsByTagName("td")[0]).toLowerCase(); - return (subjectTwo.charCodeAt(0) - subjectOne.charCodeAt(0)); + return strcmp(subjectOne, subjectTwo); } function sortRowsByFromAscending(a, b) { var fromOne = getTextContent(a.getElementsByTagName("td")[1]).toLowerCase(); var fromTwo = getTextContent(b.getElementsByTagName("td")[1]).toLowerCase(); - return (fromOne.charCodeAt(0) - fromTwo.charCodeAt(0)); + return strcmp(fromOne, fromTwo); } function sortRowsByFromDescending(a, b) { var fromOne = getTextContent(a.getElementsByTagName("td")[1]).toLowerCase(); var fromTwo = getTextContent(b.getElementsByTagName("td")[1]).toLowerCase(); - return (fromTwo.charCodeAt(0) - fromOne.charCodeAt(0)); + return strcmp(fromOne, fromTwo); } function CtdlMessageListClick(evt) { diff --git a/webcit/static/wclib.js b/webcit/static/wclib.js index f7397ed98..01febd884 100644 --- a/webcit/static/wclib.js +++ b/webcit/static/wclib.js @@ -38,6 +38,19 @@ document.observe('dom:loaded', function() { if (!!document.getElementById("ib_ch function CtdlRandomString() { return((Math.random()+'').substr(3)); } +function strcmp ( str1, str2 ) { + // http://kevin.vanzonneveld.net + // + original by: Waldo Malqui Silva + // + input by: Steve Hilder + // + improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net) + // + revised by: gorthaur + // * example 1: strcmp( 'waldo', 'owald' ); + // * returns 1: 1 + // * example 2: strcmp( 'owald', 'waldo' ); + // * returns 2: -1 + + return ( ( str1 == str2 ) ? 0 : ( ( str1 > str2 ) ? 1 : -1 ) ); +} function emptyElement(element) { childNodes = element.childNodes; -- 2.30.2