index 58b26e7663f4159e4fd49fd2350da308bcde0766..1275580057ad572b3f278fbbe740a87c4e8fa361 100644 (file)
var $goFonAreaCode= "";
var $goFonCountryCode= "";
var $ignore_account= TRUE;
+ var $goGlpiAdmin="";
+ var $goGlpiDatabase = "";
+ var $goGlpiPassword ="";
+
/* attribute list for save action */
var $attributes= array("goImapName", "goImapConnect", "goImapAdmin", "goImapPassword",
"goFonServer" => array("goFonAdmin", "goFonPassword",
"goFonAreaCode", "goFonCountryCode"));
- function servdb ($config, $dn= NULL)
+ function servdb ($config, $dn= NULL, $parent= NULL)
{
- plugin::plugin ($config, $dn);
+ plugin::plugin ($config, $dn, $parent);
/* Make dynamic list of objectClasses */
foreach ($this->additionaloc as $oc => $dummy){
$smarty->assign("$attr"."ACL", chkacl($this->acl, $attr));
}
- /* Don't show Asterisk for non-required attribute ipHostNumber and macAddress */
- $smarty->assign("staticAddress", "");
-
/* Classes... */
foreach ($this->additionaloc as $oc => $dummy){
if (isset($this->objectclasses[$oc])){
/* Check supplied data */
function check()
{
- $message= array();
+ /* Call common method to give check the hook */
+ $message= plugin::check();
+
+ if(in_array("goGlpiServer",$this->objectclasses)){
+ foreach(array("goGlpiAdmin","goGlpiDatabase") as $attr){
+ if(empty($this->$attr)){
+ $message[]= sprintf(_("The attribute '%s' is empty or contains invalid characters."), $attr);
+ }
+ }
+ }
/* All fields are marked as *must* */
if (in_array("goImapServer", $this->objectclasses)){
}
}
+
/* Check connect string */
if (!preg_match('/^\{[^:]+:[0-9]+.*\}$/', $this->goImapConnect)){
$message[]= sprintf(_("The imap connect string needs to be in the form '%s'."),
/* Write to LDAP */
$ldap= $this->config->get_ldap_link();
$ldap->cd($this->dn);
- $ldap->modify($this->attrs);
- show_ldap_error($ldap->get_error());
+ $this->cleanup();
+ $ldap->modify ($this->attrs);
+
+ show_ldap_error($ldap->get_error(), _("Saving server db settings failed"));
/* Optionally execute a command after we're done */
if ($this->initially_was_account == $this->is_account){
if ($this->is_modified){
- $this->handle_post_events("mofify");
+ $this->handle_post_events("modify");
}
} else {
$this->handle_post_events("add");