From 7969dcfa62ac271ed6ef6d6b8d10bcf0659e25b5 Mon Sep 17 00:00:00 2001 From: Patrick Davison Date: Wed, 23 Jan 2013 22:25:28 -0800 Subject: A functional Memberlist again! New and improved! --- js/scores.js | 104 +++++++++++++++++++++++++++++++++++------------------------ 1 file changed, 61 insertions(+), 43 deletions(-) (limited to 'js') diff --git a/js/scores.js b/js/scores.js index 734683a..32f7c7f 100644 --- a/js/scores.js +++ b/js/scores.js @@ -219,7 +219,9 @@ function scoresFormatPageNavi(JO) { //Memberlist related functions: var membersPages = new Object; -var membersCurrentPage = 1; +var membersCurrentPage = 1; +var membersOrderBy = 'joined'; +var membersOrder = 'ASC'; function membersRequestPage(page) { console.log('membersRequestPage', page); @@ -239,7 +241,7 @@ function membersRequestPage(page) { //console.log("Requesting Page", page, ajax.inUse); // == Additionally, check for achievements. - ajax.requestFile = "do.php?r=reqMemberPage&reqPage="+page; + ajax.requestFile = "do.php?r=reqMemberPage&reqPage="+page+"&orderBy="+membersOrderBy+"&order="+membersOrder; ajax.onCompletion = membersRequestPageDone; // Specify function to be executed on response. //ajax.onLoading = ''; //ajax.onLoaded = ''; @@ -255,8 +257,21 @@ function membersRequestPageDone() { return; membersUpdatePage(JO.page, membersFormatPage(JO)); } +function membersToggleOrder() { + if (membersOrder == 'ASC') + membersOrder = 'DESC'; + else + membersOrder = 'ASC'; +} + +function membersShowPage(page, orderBy) { + + if (orderBy) { + if (membersOrderBy == orderBy) + membersToggleOrder(); + membersOrderBy = orderBy; + } -function membersShowPage(page) { page = page - 0; console.log('membersShowPage', page); if (membersPreparePage(page) == false) { @@ -276,7 +291,7 @@ function membersShowPage(page) { //Also; update the page - if (page != membersCurrentPage) { + if (page != membersCurrentPage || orderBy) { membersRequestPage(page); } membersCurrentPage = page; @@ -308,7 +323,7 @@ function membersFormatPageNavi(JO) { var r = ''; var showedPrevPage = true; for (var i = 1; i <= JO.pageCount; i++) { - if ( + if ( (JO.page > i - 3 && JO.page < i + 3) || (i == 1) || (i == JO.pageCount) @@ -329,6 +344,24 @@ function membersFormatPageNavi(JO) { showedPrevPage = false; } } + var nextPage = JO.page - 0 + 1; + var prevPage = JO.page - 1; + if (JO.pageCount > 1) { + if (JO.page < JO.pageCount) { + r = r+" >>>"; + r = r+" >"; + } else { + r = r+" >>>"; + r = r+" >"; + } + if (JO.page > 1) { + r = " <"+r; + r = " <<<"+r; + } else { + r = r+" <<<"; + r = r+" <"; + } + } return r; } @@ -336,22 +369,24 @@ function membersFormatPageNavi(JO) { function membersFormatPage(JO) { // console.log("Formating page"); - var p = ""; + var p = "
"; if (JO.pageCount > 1) { var navi = membersFormatPageNavi(JO); - p = p+""; + p = p+""; } p = p+""; p = p+""; - p = p+""; - p = p+""; - p = p+""; - p = p+""; - p = p+""; - p = p+""; - p = p+""; - p = p+""; + p = p+""; + p = p+""; + p = p+""; + p = p+""; + p = p+""; + p = p+""; + p = p+""; + p = p+""; + p = p+""; p = p+""; var showedLastUser = true; @@ -369,19 +404,23 @@ function membersFormatPage(JO) { if (previousI != i + 1) if (previousI < i - 1 && previousI != 0) styleClass = 'border-top: 6px solid #777799;'; + + if (u.wallEmblem == undefined) + u.wallEmblem = 'blank.png'; - p = p+ ""; + p = p+ ""; p = p+ ""; - p = p+ ""; + p = p+ ""; p = p+ ""; p = p+ ""; p = p+ ""; @@ -393,29 +432,8 @@ function membersFormatPage(JO) { previousI = i; } - - //p = p+""; + p = p+""; p = p+"
"+navi+"
"+navi+"
RankNameMazesMovesPast WeekWinsTiesJoinedLast Login"; + p = p+" NameCPMazesMovesPast WeekWinsTiesJoinedLast Login
"; p = p+ i+ ""; + + p = p+ ""; p = p+ "
"; - p = p+ "
"; - p = p+ "
"; + p = p+ "
"; + p = p+ "
"; p = p+ "
"; - p = p+ ""; - p = p+ ""+u.display+""; + p = p+ " "+u.display+""; p = p+ "
"+u.championPoints+""+u.totalMazes+""+u.totalMoves+""+u.totalMovesThisWeek+"
"+navi+"
"+navi+"
"; - - var nextPage = JO.page - 0 + 1; - var prevPage = JO.page - 1; - - if (JO.pageCount > 1) { - if (JO.page < JO.pageCount) { - p = p+">"; - } else - p = "
>
"+p; - if (JO.page > 1) { - p = "<"+p; - } else - p = "
<
"+p; - } - p = "
"+p+"
"; - - //console.log(p); - //console.log('jo page', JO.page); - //console.log('jo pagecount', JO.pageCount); - //p = JO.navi+p; return p; } -- cgit v1.2.3