Wordpress-ios: Offline Support: Post / Page Published as Draft

Created on 8 Apr 2019  ·  5Comments  ·  Source: wordpress-mobile/WordPress-iOS

Description:

While creating a new post / page offline and publishing it, the post / page is queued but shows up as a draft. After successfully uploading it, it still stays as a draft.

Steps To Reproduce

  1. Go offline
  2. Create a Post
  3. Click on _Publish_ button in the Editor and publish
  4. When on the Post List, go online.
  5. Click on the post's _Retry_ button.

Decision

As the user intended to publish the post, retrying should also publish the post
To clarify, we should amend the error state to mention posting. Error message should say "Could not upload media. Post not published." Then its clear that retry relates to posting, not just media.
To make this work we need to differentiate the error state in publishing/saving/scheduling scenarios.

  1. User publishes and media upload error (use case in this issue)
    Error Message: "Could not upload media. Post not published."
    Action and behavior: Retry. Retrying publishes the post if media uploads successfully

  2. User schedules and media upload error (scheduling rather than publishing)
    Error Message: "Could not upload media. Post not scheduled."
    Action and behavior: Retry. Retrying schedules the post if media uploads successfully

  3. User saves and media upload error (user did not intend to publish)
    Error Message: "Could not upload media."
    Action and behavior: Retry. Retrying only retries uploading the media as the user has not changed the post state

Related Issues

https://github.com/wordpress-mobile/WordPress-Android/issues/9933

2 Offline Support [Pri] Medium [Type] Bug

Most helpful comment

https://github.com/wordpress-mobile/WordPress-Android/issues/9933

Linked the wrong Android issue previously. We decided the following:

  • As the user intended to publish the post, retrying should also publish the post
  • To clarify, we should amend the error state to mention posting. Error message should say "Could not upload media. Post not published." Then its clear that retry relates to posting, not just media.

To make this work we need to differentiate the error state in publishing/saving/scheduling scenarios. Hopefully not a huge chunk of work, was quick for @maxme on Android. But writing it all down here for clarity.

1. User publishes and media upload error (use case in this issue)
Error Message: "Could not upload media. Post not published."
Action and behaviour: Retry. Retrying publishes the post if media uploads successfully

2. User schedules and media upload error (scheduling rather than publishing)
Error Message: "Could not upload media. Post not scheduled."
Action and behaviour: Retry. Retrying schedules the post if media uploads successfully

3. User saves and media upload error (user did not intend to publish)
Error Message: "Could not upload media."
Action and behaviour: Retry. Retrying only retries uploading the media as the user has not changed the post state

All 5 comments

@wordpress-mobile/ravenclaw @megsfulton @osullivanchris This is related to what @maxme and I agreed on https://github.com/wordpress-mobile/WordPress-Android/issues/9933.

Restating it here for discussion.

  • Android: Publishing while offline and retrying will lead to the post being uploaded and published
  • iOS: Publishing while offline and retrying will lead to the post being uploaded as a draft

The Questions

After a user _published_ a post in the Editor but it failed because of network connectivity...

  1. When the user taps on _Retry_ in the Post List, should the post be published?
  2. When the app automatically uploads the post in the background, should the post be published?
  1. Yes I think the user's intention is to publish the page, so retrying should complete that action. I'd follow the Android behaviour here and publish when retrying. If we're unsure - we could show the confirmation dialogue that we usually do before publishing. But as long as the messaging is clear I think its fine.
  2. So just to confirm I understand...In this case the user has tapped publish, did not have connectivity. Connectivity returns, so we upload in the background? I think this could be a slightly grey area. Is it possible this could happen some time later, and the user might have another version on a different device, for example? Perhaps we could change the status to 'ready to publish' and show a user a toast asking if they want to publish it now. What do you think?

Discussion has progressed here on Android, will capture the proposal back in this ticket when we have finished resolving. Should be the same on both platforms

https://github.com/wordpress-mobile/WordPress-Android/issues/9933

Linked the wrong Android issue previously. We decided the following:

  • As the user intended to publish the post, retrying should also publish the post
  • To clarify, we should amend the error state to mention posting. Error message should say "Could not upload media. Post not published." Then its clear that retry relates to posting, not just media.

To make this work we need to differentiate the error state in publishing/saving/scheduling scenarios. Hopefully not a huge chunk of work, was quick for @maxme on Android. But writing it all down here for clarity.

1. User publishes and media upload error (use case in this issue)
Error Message: "Could not upload media. Post not published."
Action and behaviour: Retry. Retrying publishes the post if media uploads successfully

2. User schedules and media upload error (scheduling rather than publishing)
Error Message: "Could not upload media. Post not scheduled."
Action and behaviour: Retry. Retrying schedules the post if media uploads successfully

3. User saves and media upload error (user did not intend to publish)
Error Message: "Could not upload media."
Action and behaviour: Retry. Retrying only retries uploading the media as the user has not changed the post state

Closing this in favor of #12240 which should sufficiently cover this issue.

Was this page helpful?
0 / 5 - 0 ratings