Hey Matt,
Long time no talk! I hope you're doing well!
If you're Studio-inclined, this would actually be pretty easy to accomplish through minor customization. I've come up with two ideas. Both of these ideas rely on keeping the subject field on the page, but preventing the user from editing. This allows the subject value to pass through to the post processing logic.
Idea 1: Hide the field using CSS
You could add some CSS to the skin to hide the field, such as:
#lia-body.ReplyPage .lia-content .lia-form-subject-entry { display: none; }
This will keep the field on the page so that the value can be automatically populated and passed through to the form handling when the user submits the post; however, the user will not be able to see the field, preventing them from changing the value.
Idea 2: Disable the field using JavaScript
You could add a component to the ReplyPage that had some JavaScript to disable the field. This would continue to show the field, but would prevent the user from editing it. The contents of the component might look like this:
<#if page.name?lower_case == "replypage" >
<@liaAddScript>
jQuery(document).ready(function() {
jQuery('#lia-body.ReplyPage .lia-content .lia-form-subject-entry input').attr('disabled','disabled');
}
</@liaAddScript>
</#if>
Like the previous idea, this will still allow the value to be passed through while preventing the user from editing it.
The main difference between these approaches is whether or not you want to continue showing the subject field to the user. Please note that neither of these ideas has been fully tested, so I strongly suggest trying this out in your staging environment first if you decide to go with either of these approaches.
I hope this helps!