| @@ -1,8 +1,10 @@ | |||||
| /* ------------------------------- Constants ------------------------------- */ | |||||
| /* -------------------------------- Globals -------------------------------- */ | |||||
| var MAX_BUCKETS = 256; | var MAX_BUCKETS = 256; | ||||
| var LOADING_IMG = '<img src="http://cdn.myanimelist.net/images/xmlhttp-loader.gif" align="center">'; | var LOADING_IMG = '<img src="http://cdn.myanimelist.net/images/xmlhttp-loader.gif" align="center">'; | ||||
| var should_sort = window.location.href.indexOf("order=4") != -1; | |||||
| /* ------------------------ Miscellaneous functions ------------------------ */ | /* ------------------------ Miscellaneous functions ------------------------ */ | ||||
| function get_anime_id_from_href(href) { | function get_anime_id_from_href(href) { | ||||
| @@ -98,6 +100,8 @@ function update_list_score(anime_id) { | |||||
| $("#scoretext" + anime_id).val(""); | $("#scoretext" + anime_id).val(""); | ||||
| $("#scorediv" + anime_id).css("display", "none"); | $("#scorediv" + anime_id).css("display", "none"); | ||||
| $("#scorebutton" + anime_id).prop("disabled", false); | $("#scorebutton" + anime_id).prop("disabled", false); | ||||
| if (should_sort) | |||||
| sort_list(); | |||||
| }); | }); | ||||
| save_score(anime_id, new_score_100); | save_score(anime_id, new_score_100); | ||||
| } | } | ||||
| @@ -168,7 +172,19 @@ function submit_edit_form(anime_id, submit_type, submit_button) { | |||||
| /* -------------------------------- Sorting -------------------------------- */ | /* -------------------------------- Sorting -------------------------------- */ | ||||
| function sort_list() { | |||||
| function compare(row1, row2) { | |||||
| var r1 = $(row1).find("span[id^='scoreval']").text(), | |||||
| r2 = $(row2).find("span[id^='scoreval']").text(); | |||||
| if (r1 == "-" && r2 == "-") | |||||
| return 0; | |||||
| if (r1 == "-") | |||||
| return 1; | |||||
| if (r2 == "-") | |||||
| return -1; | |||||
| return r2 - r1; | |||||
| } | |||||
| function setup_sortable_list() { | |||||
| var headers = [".header_cw", ".header_completed", ".header_onhold", | var headers = [".header_cw", ".header_completed", ".header_onhold", | ||||
| ".header_dropped", ".header_ptw"]; | ".header_dropped", ".header_ptw"]; | ||||
| $.each(headers, function(i, header) { | $.each(headers, function(i, header) { | ||||
| @@ -181,13 +197,14 @@ function sort_list() { | |||||
| $(row).add($(row).next()) | $(row).add($(row).next()) | ||||
| .wrapAll('<div class="list-chart-row"/>'); | .wrapAll('<div class="list-chart-row"/>'); | ||||
| }); | }); | ||||
| } | |||||
| function sort_list() { | |||||
| $(".list-chart-group").each(function(i, group) { | $(".list-chart-group").each(function(i, group) { | ||||
| $(group).find(".list-chart-row").sort(function (a, b) { | |||||
| return $(b).find("span[id^='scoreval']").text() - $(a).find("span[id^='scoreval']").text(); | |||||
| }).each(function(i, row) { | |||||
| $(group).find(".list-chart-row").sort(compare).each(function(i, row) { | |||||
| $(group).append(row); | $(group).append(row); | ||||
| }); | }); | ||||
| $(group).find(".list-chart-row").each(function(i, row) { | $(group).find(".list-chart-row").each(function(i, row) { | ||||
| $(row).find("tr").first().children().first().text(i + 1); | $(row).find("tr").first().children().first().text(i + 1); | ||||
| $(row).find((i % 2) ? ".td1" : ".td2").toggleClass("td1 td2"); | $(row).find((i % 2) ? ".td1" : ".td2").toggleClass("td1 td2"); | ||||
| @@ -238,8 +255,10 @@ function hook_list() { | |||||
| .remove(); | .remove(); | ||||
| }); | }); | ||||
| if (window.location.href.indexOf("order=4") != -1) | |||||
| if (should_sort) { | |||||
| setup_sortable_list(); | |||||
| sort_list(); | sort_list(); | ||||
| } | |||||
| }); | }); | ||||
| } | } | ||||