Hi,
In total, you'll need 3 different forms:
1. First is the form that you already have to create a new post submission. This will be set to create the post with a 'Draft' status
2. Second form will be a form to edit these draft status posts and will have the same fields as the first one. This will be set to keep the posts in the same 'Draft' status.
You can create a new content template that will include this form. For example, suppose the post type you're working with is "Books".
The normal content template that is assigned to show this post type's single-page data would be 'CT for Books'.
Now, you'll create a new content template 'CT for Books - edit draft', This content template will have this second form and it will not be assigned to any post type.
In your view that lists the draft status posts for the user, you can include a post edit link that loads this content template with the edit form, through the shortcode:
( ref: https://toolset.com/documentation/programmer-reference/forms/cred-shortcodes/#toolset-edit-post-link )
[toolset-edit-post-link content_template_slug='ct-for-books-edit-draft' target='self']Edit Draft[/toolset-edit-post-link]
3. Third and last form will only have the submit button and it will be set to change the post status to 'Pending Review'.
You can include this third form's shortcode in the loop of the same view that lists the draft posts.
As a result, while viewing the list of draft posts, the user will have all 3 options:
a). Use the preview link (already working)
b). Edit the draft posts ( point 2 of this reply )
c). Submit the post for review ( point 3 of this reply )
I hope this helps and please let me know if you need further assistance.
regards,
Waqar