Using c.contract on frog which is pretty straightforward to set up Here's a gist on it https://gist.github.com/benadamsky/0a28fe9ee6130b11a60febd3776d3754
ah sorry I should have specified - meant more like checking if a user already has an approval before making them do it, so its not unnecessarily called if they reuse the frame