Adding prizes to leagues.

This commit is contained in:
marcins78@gmail.com
2011-12-25 17:36:36 +00:00
parent f08122680c
commit 13f6ac5d9b
3 changed files with 68 additions and 5 deletions

View File

@@ -147,9 +147,49 @@ public class AdminResource extends AbstractResource {
return "OK";
}
private List<String> getItems(String packProduct) {
@Path("/addLeaguePrize")
@POST
public String addLeaguePrize(
@FormParam("leagueType") String leagueType,
@FormParam("packProduct") String packProduct,
@FormParam("cardProduct") String cardProduct,
@FormParam("players") String players,
@Context HttpServletRequest request) throws Exception {
validateAdmin(request);
League league = getLeagueByType(leagueType);
if (league == null)
throw new WebApplicationException(Response.Status.NOT_FOUND);
List<CardCollection.Item> items = new LinkedList<CardCollection.Item>();
List<String> packs = getItems(packProduct);
List<String> cards = getItems(cardProduct);
for (String pack : packs)
items.add(new CardCollection.Item(CardCollection.Item.Type.PACK, 1, pack));
for (String card : cards)
items.add(new CardCollection.Item(CardCollection.Item.Type.CARD, 1, card));
List<String> playerNames = getItems(players);
for (String playerName : playerNames) {
Player player = _playerDao.getPlayer(playerName);
MutableCardCollection collection = _collectionDao.getCollectionForPlayer(player, leagueType);
for (String pack : packs)
collection.addPacks(pack, 1);
for (String card : cards)
collection.addCards(card, 1);
_collectionDao.setCollectionForPlayer(player, leagueType, collection);
_deliveryService.addPackage(player, leagueType, items);
}
return "OK";
}
private List<String> getItems(String values) {
List<String> result = new LinkedList<String>();
for (String pack : packProduct.split("\n")) {
for (String pack : values.split("\n")) {
String blueprint = pack.trim();
if (blueprint.length() > 0)
result.add(blueprint);

View File

@@ -21,7 +21,7 @@
Start: <input type="text" name="start"><br/>
End: <input type="text" name="end"><br/>
Packs: <textarea rows="5" cols="20" name="packCollection"></textarea><br/>
<input type="submit" value="Create">
<input type="submit" value="Add league">
</form>
<h2>Add season</h2>
@@ -29,10 +29,11 @@
<form method="POST" action="server/admin/addLeagueSeason">
League type: <input type="text" name="leagueType"><br/>
Season type: <input type="text" name="type"><br/>
Format: <input type="text" name="format"><br/>
Start: <input type="text" name="start"><br/>
End: <input type="text" name="end"><br/>
Max matches: <input type="text" name="maxMatches"><br/>
<input type="submit" value="Create">
<input type="submit" value="Add season">
</form>
<h2>Add league product</h2>
@@ -42,7 +43,17 @@
Packs: <textarea rows="5" cols="20" name="packProduct"></textarea><br/>
Cards: <textarea rows="5" cols="20" name="cardProduct"></textarea><br/>
Skip base collection: <input type="checkbox" name="skipBaseCollection" value="true"/><br/>
<input type="submit" value="Create">
<input type="submit" value="Add product">
</form>
<h2>Add league prize</h2>
<form method="POST" action="server/admin/addLeaguePrize">
Type: <input type="text" name="leagueType"><br/>
Packs: <textarea rows="5" cols="20" name="packProduct"></textarea><br/>
Cards: <textarea rows="5" cols="20" name="cardProduct"></textarea><br/>
Players: <textarea rows="5" cols="20" name="players"></textarea><br/>
<input type="submit" value="Add prize">
</form>
</body>

View File

@@ -12,6 +12,14 @@
background-color: #000000;
}
.borderOverlay {
border: 2px solid #000000;
}
.foilOverlay {
opacity: 0.2;
}
.tableFormatName {
text-align: center;
font-weight: bold;
@@ -120,6 +128,10 @@
<script type="text/javascript" src="js/hallUi.js"></script>
<script type="text/javascript" src="js/leagueResultsUi.js"></script>
<script type="text/javascript" src="js/communication.js"></script>
<!-- This is needed for delivery -->
<script type="text/javascript" src="js/deliveryService.js"></script>
<script type="text/javascript" src="js/jCardGroup.js"></script>
<script type="text/javascript" src="js/jCards.js"></script>
<script type="text/javascript">
function getUrlParam(param) {