diff --git a/src/main/java/com/commafeed/backend/dao/FeedDAO.java b/src/main/java/com/commafeed/backend/dao/FeedDAO.java index 6b101435..203e8004 100644 --- a/src/main/java/com/commafeed/backend/dao/FeedDAO.java +++ b/src/main/java/com/commafeed/backend/dao/FeedDAO.java @@ -136,7 +136,7 @@ public class FeedDAO extends GenericDAO { } - public List findDuplicates(int offset, int limit) { + public List findDuplicates(int offset, int limit, long minCount) { CriteriaQuery query = builder.createQuery(String.class); Root root = query.from(getType()); @@ -146,7 +146,7 @@ public class FeedDAO extends GenericDAO { query.select(hashPath); query.groupBy(hashPath); - query.having(builder.greaterThan(count, 1l)); + query.having(builder.greaterThan(count, minCount)); TypedQuery q = em.createQuery(query); limit(q, offset, limit); diff --git a/src/main/java/com/commafeed/frontend/rest/resources/AdminREST.java b/src/main/java/com/commafeed/frontend/rest/resources/AdminREST.java index 680753f1..b3650647 100644 --- a/src/main/java/com/commafeed/frontend/rest/resources/AdminREST.java +++ b/src/main/java/com/commafeed/frontend/rest/resources/AdminREST.java @@ -273,8 +273,8 @@ public class AdminREST extends AbstractResourceREST { @GET @ApiOperation(value = "Find duplicate feeds") public Response findDuplicateFeeds(@QueryParam("page") int page, - @QueryParam("limit") int limit) { - List list = feedDAO.findDuplicates(limit * page, limit); + @QueryParam("limit") int limit, @QueryParam("minCount") long minCount) { + List list = feedDAO.findDuplicates(limit * page, limit, minCount); return Response.ok(list).build(); } @@ -294,7 +294,7 @@ public class AdminREST extends AbstractResourceREST { Feed feed = feedDAO.findById(feedId); feeds.add(feed); } - + if (feeds.isEmpty()) { return Response.status(Status.BAD_REQUEST) .entity("'from feeds' empty").build(); diff --git a/src/main/webapp/js/controllers.js b/src/main/webapp/js/controllers.js index 6e60b64c..a6898765 100644 --- a/src/main/webapp/js/controllers.js +++ b/src/main/webapp/js/controllers.js @@ -1210,11 +1210,13 @@ module.controller('ManageDuplicateFeedsCtrl', [ $scope.limit = 10; $scope.page = 0; + $scope.minCount = 1; $scope.mergeData = {}; $scope.refreshData = function() { AdminCleanupService.findDuplicateFeeds({ limit : $scope.limit, - page : $scope.page + page : $scope.page, + minCount: $scope.minCount }, function(data) { $scope.counts = data; }); diff --git a/src/main/webapp/templates/admin.duplicate_feeds.html b/src/main/webapp/templates/admin.duplicate_feeds.html index 6e2d10d6..c19213bc 100644 --- a/src/main/webapp/templates/admin.duplicate_feeds.html +++ b/src/main/webapp/templates/admin.duplicate_feeds.html @@ -2,6 +2,7 @@ Limit Page + Min. count