When setting Function Keys, may I suggest:
- When selecting "BLF", do not allow the admin to overwrite the "Values" field with random values. Just display a drop-down list with all extensions (and may be ring groups / extension groups) to pick from. But I think it makes no sense to let the admin enter e.g. an external number or something like that when choosing "BLF".
- When Selecting "Speed Dial", make the field "Values" a text field that only allows to enter phone numbers. Right now, you display a drop-down-list with extensions, which is confusing because that insinuates that you can only pick from that list. It took me several attempts to realize I could just overwrite the values in that field. If you just made it a text field, this confusion would be gone. But I urge you to make use of client-side validators because right now, you even allow to enter text there. But that makes no sense at all. How can you speed-dial a value of "My great number"? That's literally a value you currently allow to be entered into the "value" field for Speed Dial.
- When a change has been made to an extension (e.g. setting Function Keys), and the admin has pressed "save", you should automatically provision these changes to all associated phones. Right now, the admin can make the changes, press save and absolutely nothing happens. Not even over night. Instead, right now, the admin must THEN go and manually provision all associated phones. That makes no sense.
- In general, you should implement best practice security as outlines in countless frameworks such as OWASP and many others. And one of the most important aspects is to strictly filter user input and really ONLY allow valid values to be entered that adhere to very strict rules (e.g. min length, max length, permitted characters, permitted formats, permitted values, etc.). But it seems that right now, you allow users to enter pretty much any "garbage" they want. That not only impedes the reliability of the PBX but also its security posture.
Please pay attention to details such as these.