X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=plugins%2Fgofon%2Fconference%2Fclass_phoneConferenceManagment.inc;h=ee70b9fa4b15aeceefc5180869cb059102827f0b;hb=603ec2c00fb894306234558af3df22dff11f7b85;hp=f050f9faf579f501b5060b974a6e2ff0658534b0;hpb=66dd1e5863e1067a58b1efb08c8823efa96d8762;p=gosa.git diff --git a/plugins/gofon/conference/class_phoneConferenceManagment.inc b/plugins/gofon/conference/class_phoneConferenceManagment.inc index f050f9faf..ee70b9fa4 100644 --- a/plugins/gofon/conference/class_phoneConferenceManagment.inc +++ b/plugins/gofon/conference/class_phoneConferenceManagment.inc @@ -22,7 +22,7 @@ require "tabs_conference.inc"; class phoneConferenceManagment extends plugin { /* Definitions */ - var $plHeadline = "Phone conference"; + var $plHeadline = "Phone conferences"; var $plDescription = "Management"; /* CLI vars */ @@ -212,15 +212,21 @@ class phoneConferenceManagment extends plugin /* Register conftab to trigger edit dialog */ $this->conftab= new conferencetabs($this->config,$this->config->data['TABS']['CONFERENCETABS'], $this->dn); - $this->conftab->set_acl(array(":all")); + $this->conftab->set_acl($this->acl); $_SESSION['objectinfo']= $this->dn; } /* Insert new entry*/ if($s_action == "new"){ + $this->dn= "new"; + /* Set up the users ACL's for this 'dn' */ + $this->acl= get_permissions ($this->dn, $this->ui->subtreeACL); $this->dn= "new"; $this->conftab= new conferencetabs($this->config,$this->config->data['TABS']['CONFERENCETABS'], $this->dn); + $this->acl= get_permissions ($this->conftab->dn, $this->ui->subtreeACL); + $this->conftab->set_acl($this->acl); $this->conftab->set_acl(array(':all')); + $_SESSION['objectinfo']= $this->dn; } /* Edit finished, check and save changes */ @@ -242,12 +248,14 @@ class phoneConferenceManagment extends plugin } $this->conftab->save (); + del_lock ($this->conftab->dn);; unset ($this->conftab); $this->conftab= NULL; unset ($_SESSION['objectinfo']); } else { show_errors($message); } + $this->reload(); } @@ -281,7 +289,7 @@ class phoneConferenceManagment extends plugin "  ". "  ". "  ". - "  ". + "  ". "  ". _("Current base")." ". "  ". @@ -301,7 +309,7 @@ class phoneConferenceManagment extends plugin $divlist->SetEntriesPerPage(20); $divlist->SetHeader(array( array("string" => " "), - array("string" =>_("Name / nummer")), + array("string" =>_("Name - Number")), array("string" => _("Owner")), array("string" => _("PIN")), array("string" =>_("Actions"), "attach" => "style='text-align: right;border:none'"))); @@ -341,7 +349,7 @@ class phoneConferenceManagment extends plugin foreach($this->conferences as $conferencekey => $conference ){ if((isset($conference['goFonPIN'][0]))&&($this->ui->dn==$conference['goFonConferenceOwner'][0])){ - $pin = $conference['goFonPIN'][0]; + $pin = "PIN"; }else{ $pin = " "; } @@ -359,6 +367,8 @@ class phoneConferenceManagment extends plugin $a_field1 = array("string"=>sprintf($userimg,_("Conference"))); + $acl= get_permissions ($conference['dn'], $this->ui->subtreeACL); + $this->acl = get_module_permission($acl, "goFonConference", $conference['dn']); if(($this->ui->dn==$conference['goFonConferenceOwner'][0])&&(chkacl($this->acl,"goFonConferenceOwner")=="")){ $a_field2 = array("string"=>sprintf($editlink,$conferencekey,$conference['cn'][0].$number)); @@ -368,9 +378,6 @@ class phoneConferenceManagment extends plugin $a_field3 = array("string"=> $cn); $a_field4 = array("string"=> $pin); - $acl= get_permissions ($conference['dn'], $this->ui->subtreeACL); - $this->acl = get_module_permission($acl, "goFonConference", $conference['dn']); - if(($this->ui->dn==$conference['goFonConferenceOwner'][0])&&(chkacl($this->acl,"goFonConferenceOwner")=="")){ $a_field5 = array("string"=>preg_replace("/%KEY%/",$conferencekey,$actions), "attach" => "style='text-align: right;border:none'"); }elseif(chkacl($this->acl,"goFonConferenceOwner")==""){ @@ -379,7 +386,6 @@ class phoneConferenceManagment extends plugin $a_field5 = array("string"=>" ", "attach" => "style='text-align: right;border:none'"); } - $divlist->AddEntry(array($a_field1,$a_field2,$a_field3,$a_field4,$a_field5)); } @@ -431,6 +437,8 @@ class phoneConferenceManagment extends plugin function remove_from_parent() { + $cfg = new conference($this->config, $this->dn); + $cfg->remove_from_parent(); $ldap= $this->config->get_ldap_link(); $ldap->cd ($this->dn); $ldap->recursive_remove();