mirror of
https://github.com/commons-app/apps-android-commons.git
synced 2025-10-26 12:23:58 +01:00
checks items length (#5360)
* checks items length * Update UploadMediaPresenter.java * Update UploadMediaPresenter.java * Update UploadMediaPresenter.java
This commit is contained in:
parent
57d7159ee0
commit
6c14163c66
4 changed files with 20 additions and 4 deletions
|
|
@ -42,6 +42,7 @@ import fr.free.nrw.commons.R;
|
||||||
import fr.free.nrw.commons.auth.LoginActivity;
|
import fr.free.nrw.commons.auth.LoginActivity;
|
||||||
import fr.free.nrw.commons.auth.SessionManager;
|
import fr.free.nrw.commons.auth.SessionManager;
|
||||||
import fr.free.nrw.commons.contributions.ContributionController;
|
import fr.free.nrw.commons.contributions.ContributionController;
|
||||||
|
import fr.free.nrw.commons.contributions.MainActivity;
|
||||||
import fr.free.nrw.commons.filepicker.Constants.RequestCodes;
|
import fr.free.nrw.commons.filepicker.Constants.RequestCodes;
|
||||||
import fr.free.nrw.commons.filepicker.UploadableFile;
|
import fr.free.nrw.commons.filepicker.UploadableFile;
|
||||||
import fr.free.nrw.commons.kvstore.JsonKvStore;
|
import fr.free.nrw.commons.kvstore.JsonKvStore;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
package fr.free.nrw.commons.upload.mediaDetails;
|
package fr.free.nrw.commons.upload.mediaDetails;
|
||||||
|
|
||||||
import static android.app.Activity.RESULT_OK;
|
import static android.app.Activity.RESULT_OK;
|
||||||
|
import static fr.free.nrw.commons.utils.ActivityUtils.startActivityWithFlags;
|
||||||
import static fr.free.nrw.commons.utils.ImageUtils.FILE_NAME_EXISTS;
|
import static fr.free.nrw.commons.utils.ImageUtils.FILE_NAME_EXISTS;
|
||||||
import static fr.free.nrw.commons.utils.ImageUtils.getErrorMessageForResult;
|
import static fr.free.nrw.commons.utils.ImageUtils.getErrorMessageForResult;
|
||||||
|
|
||||||
|
|
@ -31,6 +32,7 @@ import com.github.chrisbanes.photoview.PhotoView;
|
||||||
import com.mapbox.mapboxsdk.camera.CameraPosition;
|
import com.mapbox.mapboxsdk.camera.CameraPosition;
|
||||||
import fr.free.nrw.commons.LocationPicker.LocationPicker;
|
import fr.free.nrw.commons.LocationPicker.LocationPicker;
|
||||||
import fr.free.nrw.commons.R;
|
import fr.free.nrw.commons.R;
|
||||||
|
import fr.free.nrw.commons.contributions.MainActivity;
|
||||||
import fr.free.nrw.commons.filepicker.UploadableFile;
|
import fr.free.nrw.commons.filepicker.UploadableFile;
|
||||||
import fr.free.nrw.commons.kvstore.JsonKvStore;
|
import fr.free.nrw.commons.kvstore.JsonKvStore;
|
||||||
import fr.free.nrw.commons.location.LatLng;
|
import fr.free.nrw.commons.location.LatLng;
|
||||||
|
|
@ -244,7 +246,12 @@ public class UploadMediaDetailFragment extends UploadBaseFragment implements
|
||||||
|
|
||||||
@OnClick(R.id.btn_next)
|
@OnClick(R.id.btn_next)
|
||||||
public void onNextButtonClicked() {
|
public void onNextButtonClicked() {
|
||||||
presenter.verifyImageQuality(callback.getIndexInViewFlipper(this), inAppPictureLocation);
|
boolean isValidUploads = presenter.verifyImageQuality(callback.getIndexInViewFlipper(this), inAppPictureLocation);
|
||||||
|
if (!isValidUploads) {
|
||||||
|
startActivityWithFlags(
|
||||||
|
getActivity(), MainActivity.class, Intent.FLAG_ACTIVITY_CLEAR_TOP,
|
||||||
|
Intent.FLAG_ACTIVITY_SINGLE_TOP);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@OnClick(R.id.btn_previous)
|
@OnClick(R.id.btn_previous)
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,7 @@ public interface UploadMediaDetailsContract {
|
||||||
|
|
||||||
void receiveImage(UploadableFile uploadableFile, Place place, LatLng inAppPictureLocation);
|
void receiveImage(UploadableFile uploadableFile, Place place, LatLng inAppPictureLocation);
|
||||||
|
|
||||||
void verifyImageQuality(int uploadItemIndex, LatLng inAppPictureLocation);
|
boolean verifyImageQuality(int uploadItemIndex, LatLng inAppPictureLocation);
|
||||||
|
|
||||||
void copyTitleAndDescriptionToSubsequentMedia(int indexInViewFlipper);
|
void copyTitleAndDescriptionToSubsequentMedia(int indexInViewFlipper);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -178,8 +178,15 @@ public class UploadMediaPresenter implements UserActionListener, SimilarImageInt
|
||||||
* @param uploadItemIndex
|
* @param uploadItemIndex
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void verifyImageQuality(int uploadItemIndex, LatLng inAppPictureLocation) {
|
public boolean verifyImageQuality(int uploadItemIndex, LatLng inAppPictureLocation) {
|
||||||
final UploadItem uploadItem = repository.getUploads().get(uploadItemIndex);
|
final List<UploadItem> uploadItems = repository.getUploads();
|
||||||
|
if (uploadItems.size()==0) {
|
||||||
|
view.showProgress(false);
|
||||||
|
// No internationalization required for this error message because it's an internal error.
|
||||||
|
view.showMessage("Internal error: Zero upload items received by the Upload Media Detail Fragment. Sorry, please upload again.",R.color.color_error);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
UploadItem uploadItem = uploadItems.get(uploadItemIndex);
|
||||||
|
|
||||||
if (uploadItem.getGpsCoords().getDecimalCoords() == null && inAppPictureLocation == null) {
|
if (uploadItem.getGpsCoords().getDecimalCoords() == null && inAppPictureLocation == null) {
|
||||||
final Runnable onSkipClicked = () -> {
|
final Runnable onSkipClicked = () -> {
|
||||||
|
|
@ -227,6 +234,7 @@ public class UploadMediaPresenter implements UserActionListener, SimilarImageInt
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue