From 955945387b5a7e5d7fc93d8de12d7382686fce8b Mon Sep 17 00:00:00 2001 From: isnirp Date: Sat, 28 Mar 2020 16:18:01 +0100 Subject: [PATCH 1/2] issue-#3195: order contribution list refactored --- .../commons/contributions/ContributionComparator.java | 11 +++++++++++ .../contributions/ContributionsListFragment.java | 3 +++ 2 files changed, 14 insertions(+) create mode 100644 app/src/main/java/fr/free/nrw/commons/contributions/ContributionComparator.java diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionComparator.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionComparator.java new file mode 100644 index 0000000000..e76fa2b883 --- /dev/null +++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionComparator.java @@ -0,0 +1,11 @@ +package fr.free.nrw.commons.contributions; + +import java.util.Comparator; + +public class ContributionComparator implements Comparator { + + @Override + public int compare(Contribution c1, Contribution c2) { + return c1.dateUploaded.compareTo(c2.dateUploaded); + } +} diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsListFragment.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsListFragment.java index a4ab14a4d5..894dc8c37b 100644 --- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsListFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsListFragment.java @@ -21,6 +21,7 @@ import com.google.android.material.floatingactionbutton.FloatingActionButton; import java.util.ArrayList; +import java.util.Collections; import java.util.List; import javax.inject.Inject; @@ -185,6 +186,8 @@ public void showNoContributionsUI(boolean shouldShow) { } public void setContributions(List contributionList) { + Collections.sort(contributionList, new ContributionComparator()); + Collections.reverse(contributionList); this.contributions.clear(); this.contributions.addAll(contributionList); adapter.setContributions(contributions); From 9f941a4e1d0e883fd53beb440ed721d41982a41c Mon Sep 17 00:00:00 2001 From: isnirp Date: Fri, 3 Apr 2020 07:13:25 +0200 Subject: [PATCH 2/2] issue-#3195: ordered contribution list --- .../contributions/ContributionComparator.java | 11 ----------- .../contributions/ContributionsListFragment.java | 3 --- .../fr/free/nrw/commons/upload/UploadService.java | 2 +- .../fr/free/nrw/commons/utils/CommonsDateUtil.java | 12 +++++++++++- 4 files changed, 12 insertions(+), 16 deletions(-) delete mode 100644 app/src/main/java/fr/free/nrw/commons/contributions/ContributionComparator.java diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionComparator.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionComparator.java deleted file mode 100644 index e76fa2b883..0000000000 --- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionComparator.java +++ /dev/null @@ -1,11 +0,0 @@ -package fr.free.nrw.commons.contributions; - -import java.util.Comparator; - -public class ContributionComparator implements Comparator { - - @Override - public int compare(Contribution c1, Contribution c2) { - return c1.dateUploaded.compareTo(c2.dateUploaded); - } -} diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsListFragment.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsListFragment.java index 894dc8c37b..a4ab14a4d5 100644 --- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsListFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsListFragment.java @@ -21,7 +21,6 @@ import com.google.android.material.floatingactionbutton.FloatingActionButton; import java.util.ArrayList; -import java.util.Collections; import java.util.List; import javax.inject.Inject; @@ -186,8 +185,6 @@ public void showNoContributionsUI(boolean shouldShow) { } public void setContributions(List contributionList) { - Collections.sort(contributionList, new ContributionComparator()); - Collections.reverse(contributionList); this.contributions.clear(); this.contributions.addAll(contributionList); adapter.setContributions(contributions); diff --git a/app/src/main/java/fr/free/nrw/commons/upload/UploadService.java b/app/src/main/java/fr/free/nrw/commons/upload/UploadService.java index 0b8aed9a8d..f7baf572be 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/UploadService.java +++ b/app/src/main/java/fr/free/nrw/commons/upload/UploadService.java @@ -285,7 +285,7 @@ private void uploadContribution(Contribution contribution) { contribution.setFilename(canonicalFilename); contribution.setImageUrl(uploadResult.getImageinfo().getOriginalUrl()); contribution.setState(Contribution.STATE_COMPLETED); - contribution.setDateUploaded(CommonsDateUtil.getIso8601DateFormatShort() + contribution.setDateUploaded(CommonsDateUtil.getIso8601DateFormatTimestamp() .parse(uploadResult.getImageinfo().getTimestamp())); compositeDisposable.add(contributionDao .save(contribution) diff --git a/app/src/main/java/fr/free/nrw/commons/utils/CommonsDateUtil.java b/app/src/main/java/fr/free/nrw/commons/utils/CommonsDateUtil.java index 38f6a3c9b7..fc3b9ff2c9 100644 --- a/app/src/main/java/fr/free/nrw/commons/utils/CommonsDateUtil.java +++ b/app/src/main/java/fr/free/nrw/commons/utils/CommonsDateUtil.java @@ -13,11 +13,21 @@ public class CommonsDateUtil { /** * Gets SimpleDateFormat for short date pattern - * @return + * @return simpledateformat */ public static SimpleDateFormat getIso8601DateFormatShort() { SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.ROOT); simpleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC")); return simpleDateFormat; } + + /** + * Gets the timestamp pattern for a date + * @return timestamp + */ + public static SimpleDateFormat getIso8601DateFormatTimestamp() { + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.ROOT); + simpleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC")); + return simpleDateFormat; + } }