index 5516f19d5fe653dc8079e5e3d87516adab183272..4e913cb5335807d326717c89487fdf27c6b8dc31 100644 (file)
$ldap->search("(&(objectClass=FAIclass)(objectClass=".$this->subClass."))",$attrs_to_search);
while($object = $ldap->fetch()){
+
+ /* Skip objects, that are tagged as removed */
+ if(isset($object['FAIstate'][0])){
+ if(preg_match("/removed$/",$object['FAIstate'][0])){
+ continue;
+ }
+ }
+
/* Set status for save management */
$objects = array();
$objects['status'] = "FreshLoaded";
$acl = $this->ui->get_permissions($dn,"fai/faiScriptEntry") ;
$act = "";
+ /* Hide delete icon if this object is freezed */
if($this->FAIstate == "freeze"){
$act .= "<input type='image' src='images/edit.png' name='editscript_%s' title='"._("edit")."' alt='"._("edit")."'>";
}else{
}
}
+ /* Check acls for download icon */
$s_acl = $this->ui->get_permissions($dn,"fai/faiScriptEntry","FAIscript") ;
if(($this->SubObjects[$key]['status'] == "new") || ($this->SubObjects[$key]['dn'] == "new") || !preg_match("/r/",$s_acl)){
$down = "";
</a>";
}
- $divlist->AddEntry(array( array("string"=>$name['name']),
- array("string"=>$down , "attach" => "style='width:20px;'"),
- array("string"=>str_replace("%s",base64_encode($key),$act),
- "attach"=>"style='border-right: 0px;width:50px;text-align:right;'")));
+ /* Check if we are allowed to view this object */
+ $s_acl = $this->ui->get_permissions($dn,"fai/faiScriptEntry","cn") ;
+ if(preg_match("/r/",$s_acl)){
+ $divlist->AddEntry(array( array("string"=>$name['name']),
+ array("string"=>$down , "attach" => "style='width:20px;'"),
+ array("string"=>str_replace("%s",base64_encode($key),$act),
+ "attach"=>"style='border-right: 0px;width:50px;text-align:right;'")));
+ }
}
$smarty->assign("Entry_divlist",$divlist->DrawList());
}
$dn = $this->acl_base_for_current_object($this->dn);
- $smarty->assign("sub_object_is_addable", preg_match("/c/",$this->ui->get_permissions($dn,"fai/faiScriptEntry")) && $this->FAIstate!="freeze");
+ $smarty->assign("sub_object_is_addable",
+ preg_match("/c/",$this->ui->get_permissions($dn,"fai/faiScriptEntry")) &&
+ !preg_match("/freeze/",$this->FAIstate));
+
$tmp = $this->plInfo();
foreach($tmp['plProvidedAcls'] as $name => $translated){
$smarty->assign($name."ACL",$this->getacl($name));