It is totally within their right to decide if they are going to advance you that money or not. They have made no promise that they will. Just opting-in does not guarantee acceptance OR participation.
No purchase is important enough that it can't wait for a few days until you get paid and you have the money for whatever this is. If you had an emergency medical procedure, then I would say that is valid as it was unplanned and necessary.
You should view the need to use overdraft protection as an embarrassment and a testimony to your poor financial management skills; I sure wouldn't mention it to anyone I know. Get a credit card if you need to defer payment for something.
As the bank says it's their discretion who they will allow to overdraft. It's their money on the line that they may or may not get back from the person. If you are in such a need to get certain things then ask a family member or friend to lend you the money until you get paid. And by calling the bank they may have noted your account that you maybe leaning towards overdrafting your account and they may not allow that now.
A real overdraft protection account requires that you have money to cover them in a savings account. If that's the case they will always allow them & just transfer the money out of savings to cover it. Banks will normally honor one or two a year if you don't.
If you're unhappy, close your bank account, and go elsewhere.