Loving it <3
I've tested the basic mechanics of it and it seems to work as intended. There are a few semantic changes but these are not essential. It will just make the plugin more apt. Should I list these suggestions here? Or in a support email?
A few bigger improvements/ requirements that I feel need to be addressed:
1) Do the person who submits the form get any emails or confirmation of what's going on? There is a little success message that comes up upon form submission, but I feel it may be necessary to send them an admin configurable confirmation email as well. This will also allow the site admin to explain to the form submitter what they can expect next - i.e. "Your contact details will be made available to the advertiser upon them paying us a pre-arranged fee. If you do not hear from the advertiser directly within 3 days, you may assume that your contact request was unsuccessful,.. etc. etc." A similar configurable email could also be sent to the form submitter when his lead gets "Rejected" to inform them that they should not hold on or anticipate to receive a reply to their request.
2) It was mentioned in the above discussions, and I do feel it is a key component that there is some kind of cut-off date for the advertiser to buy the lead, after which the lead will "expire". I suggest another admin field for the number of days/hours upon which the lead will automatically revert to "rejected" status. Another configurable email to the advertiser to let them know that his lead is about to expire would be handy - (sense of urgency). It may be necessary to condense this into a digest of all the leads that are scheduled to expire within X days/hours instead of multiple individual emails in case it is a very busy site generating dozens of leads per user per day.
3) It appears to me that the PPL settings are sitewide. I am just thinking it may be better to make the settings per CPT in case the site owner will have different revenue structures. I actually intend to link mine to CPT Packages, which I can do with the conditional display settings, but I can't change the charging structure per Package (or CPT) as currently they appear to be controlled sitewide.
Otherwise there are some niggly bits but overall it looks really good. Thank you.