diff --git a/plugins/admin/ogroups/class_phonequeue.inc b/plugins/admin/ogroups/class_phonequeue.inc
index 2a2b1ad9c0e5311998bf99548df4c5d7e060840f..7e712a4a0ce0814f602b93fe08d9339437069302 100644 (file)
/* Do we need to flip is_account state? */
if (isset($_POST['modify_state'])){
- $this->is_account= !$this->is_account;
+
+ /* Onyl change account state if allowed */
+ if($this->is_account && $this->acl == "#all#"){
+ $this->is_account= !$this->is_account;
+ }elseif(!$this->is_account && chkacl($this->acl,"create") == ""){
+ $this->is_account= !$this->is_account;
+ }
}
/* Show tab dialog headers */
plugin::save_object();
if(isset($_POST['phonenumber'])){
foreach(array("goFonDialOption_t","goFonDialOption_T","goFonDialOption_h","goFonDialOption_r","goFonDialOption_H","goFonMusiconHold") as $val){
- if(isset($_POST[$val])){
- $this->$val = $_POST[$val];
- }else{
- $this->$val = false;
+ if(chkacl($this->acl,$val) == "") {
+ if(isset($_POST[$val])){
+ $this->$val = $_POST[$val];
+ }else{
+ $this->$val = false;
+ }
}
}
if(isset($_POST['goFonQueueAnnounceHoldtime'])){