diff --git a/commons/src/main/java/org/wikimedia/commons/modifications/CategoryModifier.java b/commons/src/main/java/org/wikimedia/commons/modifications/CategoryModifier.java index 00838ade3..7e5d9f907 100644 --- a/commons/src/main/java/org/wikimedia/commons/modifications/CategoryModifier.java +++ b/commons/src/main/java/org/wikimedia/commons/modifications/CategoryModifier.java @@ -46,4 +46,9 @@ public class CategoryModifier extends PageModifier { } return pageContents + categoriesString.toString(); } + + @Override + public String getEditSumary() { + return String.format("Added " + params.optJSONArray(PARAM_CATEGORIES).length() + " categories."); + } } diff --git a/commons/src/main/java/org/wikimedia/commons/modifications/ModificationsSyncAdapter.java b/commons/src/main/java/org/wikimedia/commons/modifications/ModificationsSyncAdapter.java index 6be356026..53dedce8e 100644 --- a/commons/src/main/java/org/wikimedia/commons/modifications/ModificationsSyncAdapter.java +++ b/commons/src/main/java/org/wikimedia/commons/modifications/ModificationsSyncAdapter.java @@ -110,6 +110,7 @@ public class ModificationsSyncAdapter extends AbstractThreadedSyncAdapter { .param("title", contrib.getFilename()) .param("token", editToken) .param("text", processedPageContent) + .param("summary", sequence.getEditSummary()) .post(); } catch (IOException e) { throw new RuntimeException(e); diff --git a/commons/src/main/java/org/wikimedia/commons/modifications/ModifierSequence.java b/commons/src/main/java/org/wikimedia/commons/modifications/ModifierSequence.java index c58330185..c84a193d0 100644 --- a/commons/src/main/java/org/wikimedia/commons/modifications/ModifierSequence.java +++ b/commons/src/main/java/org/wikimedia/commons/modifications/ModifierSequence.java @@ -50,6 +50,15 @@ public class ModifierSequence { return pageContents; } + public String getEditSummary() { + StringBuffer editSummary = new StringBuffer(); + for(PageModifier modifier: modifiers) { + editSummary.append(modifier.getEditSumary()).append(" "); + } + editSummary.append("Via Commons Mobile App"); + return editSummary.toString(); + } + public JSONObject toJSON() { JSONObject data = new JSONObject(); try { diff --git a/commons/src/main/java/org/wikimedia/commons/modifications/PageModifier.java b/commons/src/main/java/org/wikimedia/commons/modifications/PageModifier.java index fe09307a9..803942e17 100644 --- a/commons/src/main/java/org/wikimedia/commons/modifications/PageModifier.java +++ b/commons/src/main/java/org/wikimedia/commons/modifications/PageModifier.java @@ -24,6 +24,8 @@ public abstract class PageModifier { public abstract String doModification(String pageName, String pageContents); + public abstract String getEditSumary(); + public JSONObject toJSON() { JSONObject data = new JSONObject(); try {