+export const compareResult = round => (a, b) => {
+ const a_result = findResult(a, round);
+ const b_result = findResult(b, round);
+ const a_time = a_result && !a_result.forfeit ? a_result.time : 0;
+ const b_time = b_result && !b_result.forfeit ? b_result.time : 0;
+ if (a_time) {
+ if (b_time) {
+ if (a_time < b_time) return -1;
+ if (b_time < a_time) return 1;
+ return 0;
+ }
+ return -1;
+ }
+ if (b_time) {
+ return 1;
+ }
+ const a_forfeit = a_result && a_result.forfeit;
+ const b_forfeit = b_result && b_result.forfeit;
+ if (a_forfeit) {
+ if (b_forfeit) {
+ return 0;
+ }
+ return -1;
+ }
+ if (b_forfeit) {
+ return 1;
+ }
+ return 0;
+};
+
+export const compareUsername = (a, b) => {
+ const a_name = a && a.user && a.user.username ? a.user.username : '';
+ const b_name = b && b.user && b.user.username ? b.user.username : '';
+ return a_name.localeCompare(b_name);
+};
+