diff --git a/gemp-lotr/gemp-lotr-web-server/src/main/java/com/gempukku/lotro/server/AdminResource.java b/gemp-lotr/gemp-lotr-web-server/src/main/java/com/gempukku/lotro/server/AdminResource.java index a24b6e254..4f007c78e 100644 --- a/gemp-lotr/gemp-lotr-web-server/src/main/java/com/gempukku/lotro/server/AdminResource.java +++ b/gemp-lotr/gemp-lotr-web-server/src/main/java/com/gempukku/lotro/server/AdminResource.java @@ -2,7 +2,6 @@ package com.gempukku.lotro.server; import com.gempukku.lotro.DateUtils; import com.gempukku.lotro.cache.CacheManager; -import com.gempukku.lotro.collection.CollectionsManager; import com.gempukku.lotro.db.DeckDAO; import com.gempukku.lotro.db.LeagueDAO; import com.gempukku.lotro.db.MerchantDAO; @@ -29,12 +28,11 @@ import javax.xml.parsers.DocumentBuilderFactory; import java.util.Collection; import java.util.LinkedList; import java.util.List; +import java.util.Map; @Singleton @Path("/admin") public class AdminResource extends AbstractResource { - @Context - private CollectionsManager _collectionsManager; @Context private LeagueService _leagueService; @Context @@ -285,12 +283,30 @@ public class AdminResource extends AbstractResource { for (String playerName : playerNames) { Player player = _playerDao.getPlayer(playerName); - _collectionsManager.addItemsToPlayerCollection(true, "Administrator action", player, createCollectionType(collectionType), productItems); + _collectionManager.addItemsToPlayerCollection(true, "Administrator action", player, createCollectionType(collectionType), productItems); } return "OK"; } + @Path("/addItemsToCollection") + @POST + public String addItemsToCollection( + @FormParam("collectionType") String collectionType, + @FormParam("product") String product, + @Context HttpServletRequest request) throws Exception { + validateAdmin(request); + + Collection productItems = getProductItems(product); + + Map playersCollection = _collectionManager.getPlayersCollection(collectionType); + + for (Map.Entry playerCollection : playersCollection.entrySet()) + _collectionManager.addItemsToPlayerCollection(true, "Fixing league collection", playerCollection.getKey(), createCollectionType(collectionType), productItems); + + return "OK"; + } + private List getItems(String values) { List result = new LinkedList(); for (String pack : values.split("\n")) { diff --git a/gemp-lotr/gemp-lotr-web/src/main/webapp/admin.html b/gemp-lotr/gemp-lotr-web/src/main/webapp/admin.html index 27d48d658..4ec4c3577 100644 --- a/gemp-lotr/gemp-lotr-web/src/main/webapp/admin.html +++ b/gemp-lotr/gemp-lotr-web/src/main/webapp/admin.html @@ -21,5 +21,13 @@ +

Add items to collection

+ +
+ Type:
+ Product:
+ +
+ \ No newline at end of file