update_strings(); } function update_strings() { $this->s_title = _("LDAP schema check"); $this->s_title_long = _("LDAP schema check"); $this->s_info = _("Perform test on your current LDAP schema"); } function execute() { $this->check_schema(); $failed_checks = 0 ; foreach($this->checked as $val) { if(!$val['STATUS']){ $failed_checks ++; } } if($failed_checks == 0){ $this->is_completed = TRUE; }else{ $this->is_completed = TRUE; } $smarty = get_smarty(); $smarty->assign("bool",array(FALSE => _("No"), TRUE => _("Yes"))); $smarty->assign("schema_readable",$this->schema_readable); $smarty->assign("enable_schema_check",$this->enable_schema_check); $smarty->assign("checks",$this->checked); $smarty->assign("not_checked",$this->not_checked); $smarty->assign("failed_checks",$failed_checks); return($smarty -> fetch (get_template_path("../setup/setup_schema.tpl"))); } function save_object() { if(isset($_POST['step7_posted'])){ /* Get attributes */ foreach($this->attributes as $attr){ if(isset($_POST[$attr])){ $this->$attr = validate($_POST[$attr]); } } } } function check_schema() { $cfg = $this->parent->captured_values; $rfc2307bis = $cfg['rfc2307bis']; $this->checked = check_schema($cfg,$rfc2307bis); /* Get objectclasses */ $ldap = new LDAP($cfg['admin'],$cfg['password'],$cfg['connection'] ,FALSE,$cfg['tls']); $objectclasses = $ldap->get_objectclasses(); if(count($objectclasses) == 0){ print_red(_("Can't get schema information from server. No schema check possible!")); } /* Which samba version do we use? */ if(isset($objectclasses['sambaSamAccount'])){ $this->samba_version = 3; } elseif(isset($objectclasses['sambaAccount'])) { $this->samba_version = 2; }else{ $this->samba_version = 0; } } } // vim:tabstop=2:expandtab:shiftwidth=2:filetype=php:syntax:ruler: ?>