Code

Updated Log DB service
[gosa.git] / plugins / admin / systems / class_goLogDBServer.inc
1 <?php
2 require_once("class_goService.inc");
4 class goLogDBServer extends goService{
5         
6   var $cli_summary      = "This pluign is used within the ServerService Pluign \nand indicates that this server supports asterisk management.";
7   var $cli_description  = "Some longer text\nfor help";
8   var $cli_parameters   = array("eins" => "Eins ist toll", "zwei" => "Zwei ist noch besser");
10   /* This plugin only writes its objectClass */
11   var $objectclasses    = array("goLogDBServer");
12   var $attributes       = array("goLogDBServerUser", "goLogDBServerPassword", "goLogDB" );
13   var $StatusFlag       = "goLogDBServerStatus";
15   /* This class can't be assigned twice so it conflicts with itsself */
16   var $conflicts        = array("goLogDBServer");
18   var $DisplayName      = "";
19   var $dn               = NULL;
20   var $acl;
21   var $cn                   = "";
22   var $goLogDBServerStatus  = "";
23   var $goLogDBServerUser   = "";
24   var $goLogDBServerPassword= "";  
25   var $goLogDB              = "gosa_log";  
28   function goLogDBServer($config,$dn)
29   {
30     plugin::plugin($config,$dn);
31     $this->DisplayName = _("Logging database");
32   }
35   function execute()
36   { 
37     $smarty = get_smarty(); 
39     $tmp = $this->plInfo();
40     foreach($tmp['plProvidedAcls'] as $name => $translation){
41       $smarty->assign($name."ACL",$this->getacl($name));
42     }
44     foreach($this->attributes as $attr){
45       $smarty->assign($attr,$this->$attr);
46     }
47     return($smarty->fetch(get_template_path("goLogDBServer.tpl",TRUE,dirname(__FILE__))));
48   }
51   function getListEntry()
52   {
53     $fields = goService::getListEntry();
54     $fields['Message']      = _("Logging database");
55     $fields['AllowEdit']    = true;
56     return($fields);
57   }
60   function check()
61   { 
62     $message = plugin::check();
63     if (empty($this->goLogDBServerUser)){
64       $message[]= sprintf_("The attribute user is empty or contains invalid characters.");
65     }
66     if (empty($this->goLogDBServerPassword)){
67       $message[]= sprintf_("The attribute password is empty or contains invalid characters.");
68     }
69     if (empty($this->goLogDB)){
70       $message[]= sprintf_("The attribute database is empty or contains invalid characters.");
71     }
72     return($message);
73   }
76   function save_object()
77   {
78     if(isset($_POST['goLogDBServerPosted'])){
79       plugin::save_object();
80     }
81   } 
83   /* Return plugin informations for acl handling */
84   function plInfo()
85   {
86     return (array(
87           "plShortName"   => _("Logging database"),
88           "plDescription" => _("Logging database")." ("._("Services").")",
89           "plSelfModify"  => FALSE,
90           "plDepends"     => array(),
91           "plPriority"    => 97,
92           "plSection"     => array("administration"),
93           "plCategory"    => array("server"),
95           "plProvidedAcls"=> array(
96             "start"         => _("Start"),
97             "stop"          => _("Stop"),
98             "restart"       => _("Restart"),
99             "goLogDBServerUser"    => _("User"),
100             "goLogDBServerPassword" => _("Password"),
101             "goLogDB"       => _("Database"))
102           ));
103   }
105 // vim:tabstop=2:expandtab:shiftwidth=2:filetype=php:syntax:ruler:
106 ?>