+
+ var table = $("contactsList");
+ if (table) {
+ // Update table
+ var data = http.responseText;
+ var html = data.replace(/^(.*\n)*.*(<table(.*\n)*)$/, "$2");
+ var tbody = table.tBodies[0];
+ var tmp = document.createElement('div');
+ $(tmp).update(html);
+ table.replaceChild(tmp.firstChild.tBodies[0], tbody);
+ }
+ else {
+ // Add table (doesn't happen .. yet)
+ var div = $("contactsListContent");
+ div.update(http.responseText);
+ table = $("contactsList");
+ configureSortableTableHeaders(table);
+ TableKit.Resizable.init(table, {'trueResize' : true, 'keepWidth' : true});
+ }
+
+ if (sorting["attribute"] && sorting["attribute"].length > 0) {
+ var sortHeader;
+ if (sorting["attribute"] == "displayName")
+ sortHeader = $("nameHeader");
+ else if (sorting["attribute"] == "mail")
+ sortHeader = $("mailHeader");
+ else if (sorting["attribute"] == "screenName")
+ sortHeader = $("screenNameHeader");
+ else if (sorting["attribute"] == "org")
+ sortHeader = $("orgHeader");
+ else if (sorting["attribute"] == "phone")
+ sortHeader = $("phoneHeader");
+ else
+ sortHeader = null;
+
+ if (sortHeader) {
+ var sortImages = $(table.tHead).getElementsByClassName("sortImage");
+ $(sortImages).each(function(item) {
+ item.remove();
+ });
+
+ var sortImage = createElement("img", "messageSortImage", "sortImage");
+ sortHeader.insertBefore(sortImage, sortHeader.firstChild);
+ if (sorting["ascending"])
+ sortImage.src = ResourcesURL + "/title_sortdown_12x12.png";
+ else
+ sortImage.src = ResourcesURL + "/title_sortup_12x12.png";
+ }
+ }
+