diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/activities/TootActivity.java b/app/src/main/java/fr/gouv/etalab/mastodon/activities/TootActivity.java index e1e549143..730a8093a 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/activities/TootActivity.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/activities/TootActivity.java @@ -96,6 +96,7 @@ import java.util.Date; import java.util.GregorianCalendar; import java.util.List; import java.util.Locale; +import java.util.TimeZone; import java.util.concurrent.TimeUnit; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -1246,7 +1247,7 @@ public class TootActivity extends BaseActivity implements OnPostActionInterface, hour, minute); final long[] time = {calendar.getTimeInMillis()}; - final String date = Helper.dateToString(new Date(calendar.getTimeInMillis())); + if( (time[0] - new Date().getTime()) < 60000 ){ Toasty.warning(getApplicationContext(), getString(R.string.toot_scheduled_date), Toast.LENGTH_LONG).show(); }else { @@ -1267,6 +1268,9 @@ public class TootActivity extends BaseActivity implements OnPostActionInterface, builderSingle.setPositiveButton(R.string.server_schedule, new DialogInterface.OnClickListener() { @Override public void onClick(final DialogInterface dialog, int which) { + int offset = TimeZone.getDefault().getRawOffset(); + calendar.add(Calendar.MILLISECOND, -offset); + final String date = Helper.dateToString(new Date(calendar.getTimeInMillis())); serverSchedule(date); } }); diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/drawers/ScheduledTootsListAdapter.java b/app/src/main/java/fr/gouv/etalab/mastodon/drawers/ScheduledTootsListAdapter.java index 8e0f298d8..130efa646 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/drawers/ScheduledTootsListAdapter.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/drawers/ScheduledTootsListAdapter.java @@ -44,6 +44,7 @@ import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; import java.util.List; +import java.util.TimeZone; import es.dmoral.toasty.Toasty; import fr.gouv.etalab.mastodon.R; @@ -360,7 +361,10 @@ public class ScheduledTootsListAdapter extends BaseAdapter implements OnPostActi } catch (Exception ignored) { } }else{ - storedStatus.getStatus().setScheduled_at(Helper.dateToString(calendar.getTime())); + int offset = TimeZone.getDefault().getRawOffset(); + calendar.add(Calendar.MILLISECOND, -offset); + final String date = Helper.dateToString(new Date(calendar.getTimeInMillis())); + storedStatus.getStatus().setScheduled_at(date); new PostActionAsyncTask(context, API.StatusAction.UPDATESERVERSCHEDULE, storedStatus, ScheduledTootsListAdapter.this).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); Toasty.success(context, context.getString(R.string.boost_scheduled), Toast.LENGTH_LONG).show(); }