diff --git a/gemp-lotr/gemp-lotr-common/pom.xml b/gemp-lotr/gemp-lotr-common/pom.xml index 0041ec954..f2dc42719 100644 --- a/gemp-lotr/gemp-lotr-common/pom.xml +++ b/gemp-lotr/gemp-lotr-common/pom.xml @@ -11,6 +11,11 @@ gemp-lotr-common 1.0-SNAPSHOT + + com.google.guava + guava-collections + r03 + log4j log4j diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/LeagueService.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/LeagueService.java index 6baade1f2..85b06a08e 100644 --- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/LeagueService.java +++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/LeagueService.java @@ -163,7 +163,7 @@ public class LeagueService { _collectionsManager.addItemsToPlayerCollection(player, new CollectionType("permanent", "My cards"), prize.getAll().values()); } - private Collection getPlayerMatchesInSerie(League league, LeagueSerieData serie, String player) { + public synchronized Collection getPlayerMatchesInSerie(League league, LeagueSerieData serie, String player) { final Collection allMatches = _leagueMatchDao.getLeagueMatches(league.getType()); Set result = new HashSet(); for (LeagueMatchResult match : allMatches) { diff --git a/gemp-lotr/gemp-lotr-web-server/src/main/java/com/gempukku/lotro/server/LeagueResource.java b/gemp-lotr/gemp-lotr-web-server/src/main/java/com/gempukku/lotro/server/LeagueResource.java index 4241cc81b..636f3ee16 100644 --- a/gemp-lotr/gemp-lotr-web-server/src/main/java/com/gempukku/lotro/server/LeagueResource.java +++ b/gemp-lotr/gemp-lotr-web-server/src/main/java/com/gempukku/lotro/server/LeagueResource.java @@ -3,6 +3,7 @@ package com.gempukku.lotro.server; import com.gempukku.lotro.DateUtils; import com.gempukku.lotro.competitive.PlayerStanding; import com.gempukku.lotro.db.vo.League; +import com.gempukku.lotro.db.vo.LeagueMatchResult; import com.gempukku.lotro.game.Player; import com.gempukku.lotro.game.formats.LotroFormatLibrary; import com.gempukku.lotro.league.LeagueData; @@ -22,6 +23,7 @@ import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; import java.text.DecimalFormat; +import java.util.Collection; import java.util.List; @Singleton @@ -127,6 +129,16 @@ public class LeagueResource extends AbstractResource { serieElem.setAttribute("collection", serie.getCollectionType().getFullName()); serieElem.setAttribute("limited", String.valueOf(serie.isLimited())); + Element matchesElem = doc.createElement("matches"); + Collection playerMatches = _leagueService.getPlayerMatchesInSerie(league, serie, resourceOwner.getName()); + for (LeagueMatchResult playerMatch : playerMatches) { + Element matchElem = doc.createElement("match"); + matchElem.setAttribute("winner", playerMatch.getWinner()); + matchElem.setAttribute("loser", playerMatch.getLoser()); + matchesElem.appendChild(matchElem); + } + serieElem.appendChild(matchesElem); + final List standings = _leagueService.getLeagueSerieStandings(league, serie); for (PlayerStanding standing : standings) { Element standingElem = doc.createElement("standing"); diff --git a/gemp-lotr/gemp-lotr-web/src/main/webapp/js/gemp-011/communication.js b/gemp-lotr/gemp-lotr-web/src/main/webapp/js/gemp-011/communication.js index 452525dfe..0381ec26a 100644 --- a/gemp-lotr/gemp-lotr-web/src/main/webapp/js/gemp-011/communication.js +++ b/gemp-lotr/gemp-lotr-web/src/main/webapp/js/gemp-011/communication.js @@ -102,7 +102,7 @@ var GempLotrCommunication = Class.extend({ url:this.url + "/tournament", cache:false, data:{ - participanId:getUrlParam("participantId") }, + participantId:getUrlParam("participantId") }, success:this.deliveryCheck(callback), error:this.errorCheck(errorMap), dataType:"xml" @@ -115,7 +115,7 @@ var GempLotrCommunication = Class.extend({ url:this.url + "/tournament/history", cache:false, data:{ - participanId:getUrlParam("participantId") }, + participantId:getUrlParam("participantId") }, success:this.deliveryCheck(callback), error:this.errorCheck(errorMap), dataType:"xml" @@ -128,7 +128,7 @@ var GempLotrCommunication = Class.extend({ url:this.url + "/tournament/" + tournamentId, cache:false, data:{ - participanId:getUrlParam("participantId") }, + participantId:getUrlParam("participantId") }, success:this.deliveryCheck(callback), error:this.errorCheck(errorMap), dataType:"xml" @@ -141,7 +141,7 @@ var GempLotrCommunication = Class.extend({ url:this.url + "/league", cache:false, data:{ - participanId:getUrlParam("participantId") }, + participantId:getUrlParam("participantId") }, success:this.deliveryCheck(callback), error:this.errorCheck(errorMap), dataType:"xml" @@ -154,7 +154,7 @@ var GempLotrCommunication = Class.extend({ url:this.url + "/league/" + type, cache:false, data:{ - participanId:getUrlParam("participantId") }, + participantId:getUrlParam("participantId") }, success:this.deliveryCheck(callback), error:this.errorCheck(errorMap), dataType:"xml" @@ -167,7 +167,7 @@ var GempLotrCommunication = Class.extend({ url:this.url + "/league/" + code, cache:false, data:{ - participanId:getUrlParam("participantId") }, + participantId:getUrlParam("participantId") }, success:this.deliveryCheck(callback), error:this.errorCheck(errorMap), dataType:"xml" diff --git a/gemp-lotr/gemp-lotr-web/src/main/webapp/js/gemp-011/leagueResultsUi.js b/gemp-lotr/gemp-lotr-web/src/main/webapp/js/gemp-011/leagueResultsUi.js index 54115e385..1d4399b3a 100644 --- a/gemp-lotr/gemp-lotr-web/src/main/webapp/js/gemp-011/leagueResultsUi.js +++ b/gemp-lotr/gemp-lotr-web/src/main/webapp/js/gemp-011/leagueResultsUi.js @@ -98,13 +98,26 @@ var LeagueResultsUI = Class.extend({ tabDiv.append(tabContent); tabNavigation.append("
  • Overall results
  • "); + tabNavigation.append("
  • Your league matches
  • "); + + var matchResults = $("
    "); + tabDiv.append(matchResults); var series = league.getElementsByTagName("serie"); for (var j = 0; j < series.length; j++) { + var serie = series[j]; + matchResults.append("
    Serie " + (j + 1) + "
    "); + var matchGroup = $("
    WinnerLoser
    "); + var matches = serie.getElementsByTagName("match"); + for (var k = 0; k"+match.getAttribute("winner")+""+match.getAttribute("loser")+""); + } + + matchResults.append(matchGroup); var tabContent = $("
    "); - var serie = series[j]; var serieName = serie.getAttribute("type"); var serieStart = serie.getAttribute("start"); var serieEnd = serie.getAttribute("end");