X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=plugins%2Fadmin%2Fsystems%2Fclass_servDB.inc;h=2ee9f873de7001fedb1e3852cd3d82533e282cd2;hb=3644520502707cc1a35a915bfa358105e86c4818;hp=230407daf24872e885e9f8c001e9976fd40494e5;hpb=9d1120eb982fa5100e9a6a1c9292e5a1dcb9f8a2;p=gosa.git diff --git a/plugins/admin/systems/class_servDB.inc b/plugins/admin/systems/class_servDB.inc index 230407daf..2ee9f873d 100644 --- a/plugins/admin/systems/class_servDB.inc +++ b/plugins/admin/systems/class_servDB.inc @@ -27,13 +27,17 @@ class servdb extends plugin 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", "goImapSieveServer", "goImapSievePort", "goKrbRealm", "goKrbAdmin", "goKrbPassword", "goFaxAdmin", "goFaxPassword", "goLogAdmin", "goLogPassword", "goFonAdmin", "goFonPassword", - "goFonAreaCode", "goFonCountryCode"); + "goFonAreaCode", "goFonCountryCode","goGlpiAdmin","goGlpiDatabase","goGlpiPassword"); var $objectclasses= array("top", "goServer"); var $additionaloc= array("goImapServer" => array("goImapName", "goImapConnect", "goImapAdmin", "goImapPassword", @@ -43,6 +47,7 @@ class servdb extends plugin "goKrbPassword"), "goFaxServer" => array("goFaxAdmin", "goFaxPassword"), "goLogDBServer" => array("goLogAdmin", "goLogPassword"), + "goGlpiServer" => array("goGlpiAdmin","goGlpiDatabase","goGlpiPassword"), "goFonServer" => array("goFonAdmin", "goFonPassword", "goFonAreaCode", "goFonCountryCode")); @@ -66,6 +71,9 @@ class servdb extends plugin function execute() { + /* Call parent execute */ + plugin::execute(); + /* Fill templating stuff */ $smarty= get_smarty(); @@ -124,6 +132,14 @@ class servdb extends plugin { $message= array(); + 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)){ foreach (array("goImapAdmin", "goImapName") as $attr){ @@ -132,6 +148,7 @@ class servdb extends plugin } } + /* Check connect string */ if (!preg_match('/^\{[^:]+:[0-9]+.*\}$/', $this->goImapConnect)){ $message[]= sprintf(_("The imap connect string needs to be in the form '%s'."), @@ -189,11 +206,12 @@ class servdb extends plugin foreach($this->objectclasses as $oc){ $objectclasses[]= $oc; } - + + /* Move cn to sieve server */ + $this->goImapSieveServer= $this->cn; + plugin::save(); - - $test = $this->objectclasses; $tmp = array_flip($this->attrs['objectClass']);