1 <?php
3 /*
4 This code is part of GOsa (https://gosa.gonicus.de)
5 Copyright (C) 2007 Fabian Hickert
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2 of the License, or
10 (at your option) any later version.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program; if not, write to the Free Software
19 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 */
23 class setup_step_7 extends setup_step
24 {
25 var $checks = array();
26 var $schema_readable = FALSE;
27 var $attributes = array();
29 function setup_step_7()
30 {
31 $this->s_title = _("Ldap schema check");
32 $this->s_title_long = _("Ldap schema check");
33 $this->s_info = _("This dialog checks your ldap schema setup");
34 }
37 function execute()
38 {
39 $smarty = get_smarty();
40 $smarty->assign("schema_readable",$this->schema_readable);
41 $smarty->assign("checks",$this->checks);
42 return($smarty -> fetch (get_template_path("../setup/setup_step7.tpl")));
43 }
45 function save_object()
46 {
47 if(isset($_POST['step7_posted'])){
49 /* Get attributes */
50 foreach($this->attributes as $attr){
51 if(isset($_POST[$attr])){
52 $this->$attr = validate($_POST[$attr]);
53 }
54 }
55 }
56 }
59 function check_schema()
60 {
61 $messages= array();
63 $checks["gosaObject"]["VERSION"] = "2.4";
64 $checks["gosaObject"]["FILE"] = "gosa+samba3.schema/gosa.schema";
65 $checks["gosaObject"]["CLASS"] = array("gosaObject");
66 $checks["gosaObject"]["STATUS"] = FALSE;
67 $checks["gosaObject"]["MUST"] = FALSE;
68 $checks["gosaObject"]["MSG"] = ""; // The error message to display
69 $checks["gosaObject"]["INFO"] = _("GOsa object is used to store acls.");
71 $checks["gosaAccount"]["VERSION"] = "2.4";
72 $checks["gosaAccount"]["FILE"] = "gosa+samba3.schema/gosa.schema";
73 $checks["gosaAccount"]["CLASS"] = array("gosaAccount");
74 $checks["gosaAccount"]["STATUS"] = FALSE;
75 $checks["gosaAccount"]["MUST"] = TRUE;
76 $checks["gosaAccount"]["MSG"] = ""; // The error message to display
77 $checks["gosaAccount"]["INFO"] = _("Used to store account specific informations.");
79 $checks["gosaLockEntry"]["VERSION"] = "2.4";
80 $checks["gosaLockEntry"]["FILE"] = "gosa+samba3.schema/gosa.schema";
81 $checks["gosaLockEntry"]["CLASS"] = array("gosaLockEntry");
82 $checks["gosaLockEntry"]["STATUS"] = FALSE;
83 $checks["gosaLockEntry"]["MUST"] = TRUE;
84 $checks["gosaLockEntry"]["MSG"] = ""; // The error message to display
85 $checks["gosaLockEntry"]["INFO"] = _("Used to lock currently edited entries to avoid multiple changes at the same time.");
87 $checks["gosaLockEntry"]["VERSION"] = "2.4";
88 $checks["gosaLockEntry"]["FILE"] = "gosa+samba3.schema/gosa.schema";
89 $checks["gosaLockEntry"]["CLASS"] = array("gosaLockEntry");
90 $checks["gosaLockEntry"]["STATUS"] = FALSE;
91 $checks["gosaLockEntry"]["MUST"] = TRUE;
92 $checks["gosaLockEntry"]["MSG"] = ""; // The error message to display
93 $checks["gosaLockEntry"]["INFO"] = _("Used to lock currently edited entries to avoid multiple changes at the same time.");
95 /* asdfasdf */
98 $checks= array(
99 "gosaObject" => array("version" => "2.4"),
100 "gosaAccount" => array("version" => "2.4"),
101 "gosaLockEntry" => array("version" => "2.4"),
102 "gosaCacheEntry" => array("version" => "2.4"),
103 "gosaDepartment" => array("version" => "2.4"),
105 "goFaxAccount" => array("version" => "1.0.4", "class" => "gofaxAccount","file" => "gofax.schema"),
106 "goFaxSBlock" => array("version" => "1.0.4", "class" => "gofaxAccount","file" => "gofax.schema"),
107 "goFaxRBlock" => array("version" => "1.0.4", "class" => "gofaxAccount","file" => "gofax.schema"),
109 "gosaUserTemplate" => array("version" => "2.4", "class" => "posixAccount","file" => "nis.schema"),
110 "gosaMailAccount" => array("version" => "2.4", "class" => "mailAccount","file" => "gosa+samba3.schema"),
111 "gosaProxyAccount" => array("version" => "2.4", "class" => "proxyAccount","file" => "gosa+samba3.schema"),
112 "gosaApplication" => array("version" => "2.4", "class" => "appgroup","file" => "gosa.schema"),
113 "gosaApplicationGroup" => array("version" => "2.4", "class" => "appgroup","file" => "gosa.schema"),
115 "GOhard" => array("version" => "2.5", "class" => "terminals","file" => "goto.schema"),
116 "gotoTerminal" => array("version" => "2.5", "class" => "terminals","file" => "goto.schema"),
117 "goServer" => array("version" => "2.4","class" => "server","file" => "goserver.schema"),
118 "goTerminalServer" => array("version" => "2.4", "class" => "terminals","file" => "goto.schema"),
119 "goShareServer" => array("version" => "2.4", "class" => "terminals","file" => "goto.schema"),
120 "goNtpServer" => array("version" => "2.4", "class" => "terminals","file" => "goto.schema"),
121 "goSyslogServer" => array("version" => "2.4", "class" => "terminals","file" => "goto.schema"),
122 "goLdapServer" => array("version" => "2.4"),
123 "goCupsServer" => array("version" => "2.4", "class" => array("posixAccount", "terminals"),),
124 "goImapServer" => array("version" => "2.4", "class" => array("mailAccount", "mailgroup"),"file" => "gosa+samba3.schema"),
125 "goKrbServer" => array("version" => "2.4"),
126 "goFaxServer" => array("version" => "2.4", "class" => "gofaxAccount","file" => "gofax.schema"),
127 );
129 }
131 }
133 // vim:tabstop=2:expandtab:shiftwidth=2:filetype=php:syntax:ruler:
134 ?>