Hi Andrew,
Thanks for sharing your ideas. I see where you are coming from and it makes sense to me too.
The questions that we are going to face are the following:
1. Have "Deny Reasons" as text or Language Label so it can be translated?
I am for making it nice so it's a Language Labels and can be fully used in any language.
2. Have "Deny Reasons" as option in the Grid grid so it can filtered as drop-down and nicely searched when needed, or again have it as text.
I am for making it as an drop-down option
While, I like the idea of having a Deny Reason field and functionality, but it might be a little too much trying to make it super universal when you can manage these options for ALL Prefixes (orders, links, articles, polls and whatever you can think of) via Admin interfaces. Right now, you can do this in PHP code with no problem.
My proposal, what if we do the following:
a. make sure our Decline/Deny button (or other button in general) has interface/capability for showing options (like with Add Product)
b. find all most used placed where we need to have Decline reason by default - Catalog Items, Orders... and create a list of "Reasons" options for these.
c. improve our In-Portal CORE so it can easily allow us Enabling these Reasons options for ANY Button and it's going to be connected to ANY specific database field within that Prefix (unit).
In result, we (programmers) can very simply and quickly connect ANY toolbar button to have this functionality where you have list of Options when you click on it and selected option will be saved in ANY specified field.
Let me know if it makes sense to you guys.
DA