summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 2f6c639)
raw | patch | inline | side by side (parent: 2f6c639)
author | hickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8> | |
Wed, 5 Mar 2008 07:23:21 +0000 (07:23 +0000) | ||
committer | hickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8> | |
Wed, 5 Mar 2008 07:23:21 +0000 (07:23 +0000) |
-Added additional information if schema check fails.
The check also fails with correct ACLs while the database wasn't initialized yet. (BASE object missing-migration step)
git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@9332 594d385d-05f5-0310-b6e9-bd551577e9d8
The check also fails with correct ACLs while the database wasn't initialized yet. (BASE object missing-migration step)
git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@9332 594d385d-05f5-0310-b6e9-bd551577e9d8
gosa-core/setup/class_setupStep_Schema.inc | patch | blob | history | |
gosa-core/setup/setup_schema.tpl | patch | blob | history |
diff --git a/gosa-core/setup/class_setupStep_Schema.inc b/gosa-core/setup/class_setupStep_Schema.inc
index ebf083a4563c8243b8dc9473cbcaeb7e6c571585..63b6ce47334cf95873ec544d325fce93d64cef5a 100644 (file)
var $enable_schema_check = TRUE;
var $samba_version = 3;
+ var $found_ocs = 0;
+
function Step_Schema()
{
$this->update_strings();
}else{
$this->is_completed = TRUE;
}
+
+ /* Check if the database is already initialised.
+ * If the root object is missing we can't read any schema informations.
+ * In this case we should display a message.
+ */
+ $cv = $this->parent->captured_values;
+
+ /* Establish ldap connection */
+ $ldap = new LDAP($cv['admin'],
+ $cv['password'],
+ $cv['connection'],
+ FALSE,
+ $cv['tls']);
+
+ /* Check if root object exists */
+ $ldap->cd($cv['base']);
+ $res = $ldap->search("(objectClass=*)");
$smarty = get_smarty();
$smarty->assign("bool",array(FALSE => _("No"), TRUE => _("Yes")));
+ $smarty->assign("database_initialised", ($res == TRUE));
+ $smarty->assign("found_ocs", $this->found_ocs);
$smarty->assign("schema_readable",$this->schema_readable);
$smarty->assign("enable_schema_check",$this->enable_schema_check);
$smarty->assign("checks",$this->checked);
/* Get objectclasses */
$ldap = new LDAP($cfg['admin'],$cfg['password'],$cfg['connection'] ,FALSE,$cfg['tls']);
$objectclasses = $ldap->get_objectclasses();
- if(count($objectclasses) == 0){
- msg_dialog::display(_("LDAP error"), _("Cannot detect information about the installed LDAP schema!"), ERROR_DIALOG);
- }
+ $this->found_ocs = count($objectclasses);
/* Which samba version do we use? */
if(isset($objectclasses['sambaSamAccount'])){
index e56538b1ec90b6f9b895b66381d85fd5f9393ae6..908b989b70d47db3906f14e2f8d645fdaedf951f 100644 (file)
{else}
<img src='images/small_warning.png' class='center'>
<font style="color:red">{t}Schema check failed{/t}</font>
+
+
{/if}
</div>
<div style="margin-left:20px;">
- {foreach from=$checks item=val key=key}
- {if !$checks[$key].STATUS}
- <br>
- {if $checks[$key].IS_MUST_HAVE}
- <font color='red'>{$checks[$key].MSG}</font>
- {else}
- {$checks[$key].MSG}
+
+ {if $found_ocs == 0}
+ <b>{t}Could not read any schema informations, all checks skipped. Adjust your ldap acls.{/t}</b>
+ <br>
+ {if !$database_initialised}
+ <br>
+ {t}It seems that your ldap database wasn't initialized yet. This maybe the reason, why GOsa can't read your schema configuration!{/t}
+ {/if}
+ {else}
+ {foreach from=$checks item=val key=key}
+ {if !$checks[$key].STATUS}
+ <br>
+ {if $checks[$key].IS_MUST_HAVE}
+ <font color='red'>{$checks[$key].MSG}</font>
+ {else}
+ {$checks[$key].MSG}
+ {/if}
+ <br>
{/if}
- <br>
- {/if}
- {/foreach}
+ {/foreach}
+ {/if}
</div>
</div>
<input type='hidden' value='1' name='step7_posted'>