"Buttons that trigger different actions for a single form require either a little javascript or HTML5."
Is this because of how ad_form works?
Using html (or the q-forms package ), multiple submit buttons can be embedded in the same form.
Submitted forms can then take action according to the name and value returned with the submit button; other submit button's name and value attributes are ignored.