From 3d47531c7970417a23942f9e984d55ec021303af Mon Sep 17 00:00:00 2001 From: stom79 Date: Wed, 9 Jan 2019 16:04:14 +0100 Subject: [PATCH] Upload videos --- .../activities/PeertubeEditUploadActivity.java | 4 +++- .../activities/PeertubeUploadActivity.java | 15 ++++++++++++--- .../fr/gouv/etalab/mastodon/helper/Helper.java | 1 + app/src/main/res/values/strings.xml | 4 ++++ 4 files changed, 20 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/activities/PeertubeEditUploadActivity.java b/app/src/main/java/fr/gouv/etalab/mastodon/activities/PeertubeEditUploadActivity.java index 998cf0a3a..2c4158a0f 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/activities/PeertubeEditUploadActivity.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/activities/PeertubeEditUploadActivity.java @@ -99,6 +99,9 @@ public class PeertubeEditUploadActivity extends BaseActivity implements OnRetrie if(b != null) { videoId = b.getString("video_id", null); } + if( videoId == null){ + videoId = sharedpreferences.getString(Helper.VIDEO_ID, null); + } if( getSupportActionBar() != null) getSupportActionBar().setDisplayHomeAsUpEnabled(true); @@ -156,7 +159,6 @@ public class PeertubeEditUploadActivity extends BaseActivity implements OnRetrie LinkedHashMap translations = null; if( peertubeInformation.getTranslations() != null) translations = new LinkedHashMap<>(peertubeInformation.getTranslations()); - //Populate catgories String[] categoriesA = new String[categories.size()]; Iterator it = categories.entrySet().iterator(); diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/activities/PeertubeUploadActivity.java b/app/src/main/java/fr/gouv/etalab/mastodon/activities/PeertubeUploadActivity.java index 31f0a0e6a..62961e32f 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/activities/PeertubeUploadActivity.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/activities/PeertubeUploadActivity.java @@ -47,6 +47,7 @@ import com.jaredrummler.materialspinner.MaterialSpinner; import net.gotev.uploadservice.MultipartUploadRequest; import net.gotev.uploadservice.ServerResponse; import net.gotev.uploadservice.UploadInfo; +import net.gotev.uploadservice.UploadNotificationAction; import net.gotev.uploadservice.UploadNotificationConfig; import net.gotev.uploadservice.UploadStatusDelegate; @@ -197,7 +198,7 @@ public class PeertubeUploadActivity extends BaseActivity implements OnRetrievePe @Override public void onRetrievePeertubeChannels(APIResponse apiResponse) { if( apiResponse.getError() != null || apiResponse.getAccounts() == null || apiResponse.getAccounts().size() == 0){ - if ( apiResponse.getError().getError() != null) + if ( apiResponse.getError() != null && apiResponse.getError().getError() != null) Toasty.error(PeertubeUploadActivity.this, apiResponse.getError().getError(), Toast.LENGTH_LONG).show(); else Toasty.error(PeertubeUploadActivity.this, getString(R.string.toast_error), Toast.LENGTH_LONG).show(); @@ -335,12 +336,17 @@ public class PeertubeUploadActivity extends BaseActivity implements OnRetrievePe String token = sharedpreferences.getString(Helper.PREF_KEY_OAUTH_TOKEN, null); UploadNotificationConfig uploadConfig = new UploadNotificationConfig(); Intent in = new Intent(getApplicationContext(), PeertubeEditUploadActivity.class ); - in.putExtra("video_id", videoID); PendingIntent clickIntent = PendingIntent.getActivity(getApplicationContext(), 1, in, PendingIntent.FLAG_UPDATE_CURRENT); uploadConfig - .setClickIntentForAllStatuses(clickIntent) .setClearOnActionForAllStatuses(true); + + uploadConfig.getProgress().message = getString(R.string.uploading); + uploadConfig.getCompleted().message = getString(R.string.upload_video_success); + uploadConfig.getError().message = getString(R.string.toast_error); + uploadConfig.getCancelled().message = getString(R.string.toast_cancelled); + uploadConfig.getCompleted().actions.add(new UploadNotificationAction(R.drawable.ic_check, getString(R.string.video_uploaded_action), clickIntent)); + String uploadId = new MultipartUploadRequest(PeertubeUploadActivity.this, "https://" + Helper.getLiveInstance(PeertubeUploadActivity.this) + "/api/v1/videos/upload") .addFileToUpload(uri.toString(), "videofile") @@ -368,6 +374,9 @@ public class PeertubeUploadActivity extends BaseActivity implements OnRetrievePe try { JSONObject response = new JSONObject(serverResponse.getBodyAsString()); videoID = response.getJSONObject("video").get("id").toString(); + SharedPreferences.Editor editor = sharedpreferences.edit(); + editor.putString(Helper.VIDEO_ID, videoID); + editor.apply(); } catch (JSONException e) { e.printStackTrace(); } diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/helper/Helper.java b/app/src/main/java/fr/gouv/etalab/mastodon/helper/Helper.java index 0d72e7795..5accb792a 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/helper/Helper.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/helper/Helper.java @@ -394,6 +394,7 @@ public class Helper { public static final String SET_YANDEX_API_KEY = "set_yandex_api_key"; public static final String SET_DEEPL_API_KEY = "set_deepl_api_key"; + public static final String VIDEO_ID = "video_id_update"; private static boolean menuAccountsOpened = false; diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 99d303df4..9f2f64ed4 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -810,6 +810,10 @@ Update video Description The video has been updated! + Upload cancelled! + The video has been uploaded! + Uploading, please wait… + Click here to edit the video data.