Code

Added xml quote to dependencies
[gosa.git] / gosa-core / html / main.php
index d6baecbd0a8dc231e4a8d8798e0208676c80ff86..77bcbc9b16e2c0c578c77c0bbb19981687f12247 100644 (file)
@@ -1,21 +1,23 @@
 <?php
 /*
-   This code is part of GOsa (https://gosa.gonicus.de)
-   Copyright (C) 2003  Cajus Pollmeier
-
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2 of the License, or
-   (at your option) any later version.
-
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ * This code is part of GOsa (http://www.gosa-project.org)
+ * Copyright (C) 2003-2008 GONICUS GmbH
+ *
+ * ID: $$Id$$
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  */
 
 /* Save start time */
@@ -59,10 +61,11 @@ if ($_SERVER['REMOTE_ADDR'] != $ui->ip){
   exit;
 }
 $config= session::get('config');
+$config->check_config_version();
 $config->check_and_reload();
 
 /* Enable compressed output */
-if (isset($config->data['MAIN']['COMPRESSED']) && preg_match('/^(true|on)$/i', $config->data['MAIN']['COMPRESSED'])){
+if ($config->get_cfg_value("compressed") == "true"){
   ob_start("ob_gzhandler");
 }
 
@@ -72,11 +75,7 @@ if(session::get('_LAST_PAGE_REQUEST') == ""){
 }else{
 
   /* check GOsa.conf for defined session lifetime */
-  if(isset($config->data['MAIN']['SESSION_LIFETIME'])){
-    $max_life = $config->data['MAIN']['SESSION_LIFETIME'];
-  }else{
-    $max_life = 60*60*2;
-  }
+  $max_life= $config->get_cfg_value("session_lifetime", 60*60*2);
 
   /* get time difference between last page reload */
   $request_time = (time()- session::get('_LAST_PAGE_REQUEST'));
@@ -97,11 +96,7 @@ if(session::get('_LAST_PAGE_REQUEST') == ""){
 @DEBUG (DEBUG_CONFIG, __LINE__, __FUNCTION__, __FILE__, $config->data, "config");
 
 /* Set template compile directory */
-if (isset ($config->data['MAIN']['COMPILE'])){
-  $smarty->compile_dir= $config->data['MAIN']['COMPILE'];
-} else {
-  $smarty->compile_dir= '/var/spool/gosa/';
-}
+$smarty->compile_dir= $config->get_cfg_value("compile", '/var/spool/gosa');
 
 /* Set default */
 $reload_navigation = false;
@@ -163,8 +158,9 @@ if (!session::is_set('plist')){
   session::set('ui',$ui);
 }
 $plist= session::get('plist');
+
 /* Check for register globals */
-if (isset($global_check) && $config->data['MAIN']['FORCEGLOBALS'] == 'true'){
+if (isset($global_check) && $config->get_cfg_value("forceglobals") == "true"){
   msg_dialog::display(
             _("PHP configuration"),
             _("FATAL: Register globals is on. GOsa will refuse to login unless this is fixed by an administrator."),
@@ -181,7 +177,7 @@ if (session::is_set('plugin_dir')){
 } else {
   $old_plugin_dir= "";
 }
-if (isset($_GET['plug'])){
+if (isset($_GET['plug']) && $plist->plugin_access_allowed($_GET['plug'])){
   $plug= validate($_GET['plug']);
   $plugin_dir= $plist->get_path($plug);
   session::set('plugin_dir',$plugin_dir);
@@ -198,7 +194,7 @@ if (isset($_GET['plug'])){
 }
 
 /* Check if we need to delete a lock */
-if ($old_plugin_dir != $plugin_dir){
+if ($old_plugin_dir != $plugin_dir && $old_plugin_dir != ""){
   if (is_file("$old_plugin_dir/main.inc")){
     $remove_lock= true;
     require_once ("$old_plugin_dir/main.inc");
@@ -212,7 +208,7 @@ eval_sizelimit();
 /* Check for memory */
 if (function_exists("memory_get_usage")){
   if (memory_get_usage() > (to_byte(ini_get('memory_limit')) - 2048000 )){
-    msg_dialog::display(_("Configuration warning"), _("Running out of memory!"), WARNING_DIALOG);
+    msg_dialog::display(_("Configuration error"), _("Running out of memory!"), WARNING_DIALOG);
   }
 }
 
@@ -285,11 +281,15 @@ if (session::get('js')==FALSE){
   $smarty->assign("help_method"," onclick=\"return popup('helpviewer.php$plug','GOsa help');\"");
 }
 
-$smarty->assign ("username", $ui->username);
+if($ui->ignore_acl_for_current_user()){
+  $smarty->assign ("username", "<font color='#FF0000';>"._("User ACL checks disabled")."</font>&nbsp;".$ui->username);
+}else{
+  $smarty->assign ("username", $ui->username);
+}
 $smarty->assign ("go_logo", get_template_path('images/go_logo.png'));
 $smarty->assign ("go_base", get_template_path('images/dtree.png'));
 $smarty->assign ("go_home", get_template_path('images/gohome.png'));
-$smarty->assign ("go_out", get_template_path('images/stop.png'));
+$smarty->assign ("go_out", get_template_path('images/logout.png'));
 $smarty->assign ("go_top", get_template_path('images/go_top.png'));
 $smarty->assign ("go_corner", get_template_path('images/go_corner.png'));
 $smarty->assign ("go_left", get_template_path('images/go_left.png'));
@@ -344,14 +344,12 @@ if (session::is_set('post_cnt')){
 }
 
 /* check if we are using account expiration */
-if((isset($config->data['MAIN']['ACCOUNT_EXPIRATION'])) &&
-    preg_match('/true/i', $config->data['MAIN']['ACCOUNT_EXPIRATION'])){
-
+if ($config->get_cfg_value("account_expiration") == "true"){
   $expired= ldap_expired_account($config, $ui->dn, $ui->username);
 
   if ($expired == 2){
     new log("security","gosa","",array(),"password for user \"$ui->username\" is about to expire") ;
-    msg_dialog::display(_("Password reminder"), _("Your password is about to expire, please change your password!"), INFO_DIALOG);
+    msg_dialog::display(_("Password change"), _("Your password is about to expire, please change your password!"), INFO_DIALOG);
   }
 }
 
@@ -361,20 +359,13 @@ if (is_file("$plugin_dir/main.inc")){
 } else {
   msg_dialog::display(
             _("Plugin"),
-            sprintf(_("FATAL: Can't find any plugin definitions for plugin '%s'!"), $plug),
+            sprintf(_("FATAL: Cannot find any plugin definitions for plugin '%s'!"), $plug),
             FATAL_ERROR_DIALOG);
   exit();
 }
 
 
 /* Print_out last ErrorMessage repeated string. */
-if(isset($_GET['add'])){
-msg_dialog::display("Error"   ,"Kann datei nicht schreiben, bla",ERROR_DIALOG);
-msg_dialog::display("Warning" ,"Kann datei nicht schreiben, bla",WARNING_DIALOG);
-msg_dialog::display("Info"    ,"Kann datei nicht schreiben, bla",INFO_DIALOG);
-msg_dialog::display("Confirm" ,"Kann datei nicht schreiben, bla",CONFIRM_DIALOG);
-}
-
 $smarty->assign("msg_dialogs", msg_dialog::get_dialogs());
 $smarty->assign("contents", $display);
 
@@ -413,7 +404,9 @@ if(isset($_COOKIE['GOsa_Filter_Settings'])){
 }elseif(isset($HTTP_COOKIE_VARS['GOsa_Filter_Settings'])){
   $cookie = unserialize(base64_decode($HTTP_COOKIE_VARS['GOsa_Filter_Settings']));
 }
-if(isset($config->data['MAIN']['SAVE_FILTER']) && preg_match("/true/",$config->data['MAIN']['SAVE_FILTER'])){
+
+/* Save filters? */
+if($config->get_cfg_value("save_filter") == "true"){
   $cookie_vars = array("MultiDialogFilters","CurrentMainBase");
   foreach($cookie_vars as $var){
     if(session::is_set($var)){