Code

Updated Enviroment->Printer settings
[gosa.git] / gosa-core / html / index.php
index 4cd21afb773edb503560b2c043c52dde5c94effd..b26380eeb389ec89152515483ba3f3c503e03b29 100644 (file)
@@ -1,21 +1,23 @@
 <?php
 /*
-   This code is part of GOsa (https://gosa.gonicus.de)
-   Copyright (C) 2003-2005  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
  */
 
 /* Load required includes */
@@ -24,6 +26,11 @@ require_once ("functions.inc");
 require_once ("class_log.inc");
 header("Content-type: text/html; charset=UTF-8");
 
+
+/**
+ * Display the login page and exit().
+ *
+ */
 function displayLogin()
 {
   global $smarty,$message,$config,$ssl,$error_collector;
@@ -35,7 +42,7 @@ function displayLogin()
   }
   $smarty->assign ('date', gmdate("D, d M Y H:i:s"));
   $smarty->assign ('username', $username);
-  $smarty->assign ('personal_img', get_template_path('images/personal.png'));
+  $smarty->assign ('personal_img', get_template_path('images/login-head.png'));
   $smarty->assign ('password_img', get_template_path('images/password.png'));
   $smarty->assign ('directory_img', get_template_path('images/ldapserver.png'));
 
@@ -82,7 +89,7 @@ function displayLogin()
   } else {
     $smarty->assign("php_errors", "");
   }
-
+  $smarty->assign("msg_dialogs", msg_dialog::get_dialogs());
   $smarty->display (get_template_path('headers.tpl'));
   $smarty->display(get_template_path('login.tpl'));
   exit();
@@ -90,9 +97,14 @@ function displayLogin()
 
 
 
+/*****************************************************************************
+ *                               M   A   I   N                               *
+ *****************************************************************************/
+
 /* Set error handler to own one, initialize time calculation
    and start session. */
 session::start();
+session::set('errorsAlreadyPosted',array());
 
 /* Destroy old session if exists. 
    Else you will get your old session back, if you not logged out correctly. */
@@ -126,7 +138,7 @@ if(isset($_POST['javascript']) && $_POST['javascript'] == "true") {
 
 /* Check if gosa.conf (.CONFIG_FILE) is accessible */
 if (!is_readable(CONFIG_DIR."/".CONFIG_FILE)){
-  msg_dialog::display(_("Configuration accessibility"),sprintf(_("GOsa configuration %s/%s is not readable. Aborted."), CONFIG_DIR,CONFIG_FILE),FATAL_ERROR_DIALOG);
+  msg_dialog::display(_("Configuration error"),sprintf(_("GOsa configuration %s/%s is not readable. Aborted."), CONFIG_DIR,CONFIG_FILE),FATAL_ERROR_DIALOG);
   exit();
 }
 
@@ -151,7 +163,7 @@ if (isset ($config->data['MAIN']['COMPILE'])){
 
 /* Check for compile directory */
 if (!(is_dir($smarty->compile_dir) && is_writable($smarty->compile_dir))){
-  msg_dialog::display(_("Smarty"),sprintf(_("Directory '%s' specified as compile directory is not accessible!"),
+  msg_dialog::display(_("Smarty error"),sprintf(_("Directory '%s' specified as compile directory is not accessible!"),
     $smarty->compile_dir),FATAL_ERROR_DIALOG);
   exit();
 }
@@ -169,7 +181,7 @@ $GLOBALS['t_gettext_message_dir'] = $BASE_DIR.'/locale/';
 
 /* Set the text domain as 'messages' */
 $domain = 'messages';
-bindtextdomain($domain, "$BASE_DIR/locale");
+bindtextdomain($domain, LOCALE_DIR);
 textdomain($domain);
 $smarty->assign ('nextfield', 'username');
 
@@ -202,20 +214,20 @@ if ($config->data['MAIN']['FORCESSL'] == 'true' && $ssl != ''){
 $htaccess_authenticated= FALSE;
 if (isset($config->data['MAIN']['HTACCESS_AUTH']) && preg_match('/^(yes|true)$/i', $config->data['MAIN']['HTACCESS_AUTH'])){
   if (!isset($_SERVER['REMOTE_USER'])){
-    print_red(_("There is a problem with the authentication setup. Please inform your system administrator."));
-    display_error_page();
+    msg_dialog::display(_("Configuration error"), _("There is a problem with the authentication setup!"), FATAL_ERROR_DIALOG);
+    exit;
   }
 
   $tmp= process_htaccess($_SERVER['REMOTE_USER'], isset($_SERVER['KRB5CCNAME']));
   $username= $tmp['username'];
   $server= $tmp['server'];
   if ($username == ""){
-    print_red(_("Cannot find a valid user for the current authentication setup."));
-    display_error_page();
+    msg_dialog::display(_("Error"), _("Cannot find a valid user for the current authentication setup!"), FATAL_ERROR_DIALOG);
+    exit;
   }
   if ($server == ""){
-    print_red(_("User information is not uniq accross the configured directories. Cannot authenticated."));
-    display_error_page();
+    msg_dialog::display(_("Error"), _("User information is not unique accross the configured LDAP trees!"), FATAL_ERROR_DIALOG);
+    exit;
   }
 
   $htaccess_authenticated= TRUE;
@@ -240,7 +252,7 @@ if (($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['login'])) || $htacces
   /* Admin-logon and verify */
   $ldap = $config->get_ldap_link();
   if (is_null($ldap) || (is_int($ldap) && $ldap == 0)){
-    print_red (_("Can't bind to LDAP. Please contact the system administrator."));
+    msg_dialog::display(_("LDAP error"), msgPool::ldaperror($ldap->get_error(), $this->dn, 0, get_class()));
     displayLogin();
     exit();
   }
@@ -254,7 +266,7 @@ if (($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['login'])) || $htacces
     $tls =       (isset($config->current['TLS'])       && $config->current['TLS'] == "true");
 
     if(!count($ldap->get_objectclasses())){
-      print_red(_("GOsa cannot retrieve information about the installed schema files. Please make sure, that this is possible."));
+      msg_dialog::display(_("LDAP error"), _("Cannot detect information about the installed LDAP schema!"), ERROR_DIALOG);
       displayLogin();
       exit()  ;
     }else{
@@ -267,7 +279,7 @@ if (($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['login'])) || $htacces
       $checkarr = array();
       foreach($str as $tr){
         if(isset($tr['IS_MUST_HAVE']) && !$tr['STATUS']){
-          print_red($tr['MSG']."<br>"._("Your ldap setup contains old schema definitions. Please re-run the setup."));
+          msg_dialog::display(_("LDAP error"), _("Your LDAP setup contains old schema definitions:")."<br><br><i>".$tr['MSG']."</i>", ERROR_DIALOG);
           displayLogin();
           exit();
         }
@@ -303,8 +315,8 @@ if (($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['login'])) || $htacces
     if ($htaccess_authenticated){
       $ui= ldap_login_user_htaccess($username);
       if ($ui === NULL || !$ui){
-        print_red(_("Authentication via htaccess not possible. Unable to retrieve user information."));
-        display_error_page();
+        msg_dialog::display(_("Authentication error"), _("Cannot retrieve user information for htaccess authentication!"), FATAL_ERROR_DIALOG);
+        exit;
       }
     } else {
       $ui= ldap_login_user($username, $_POST["password"]);
@@ -359,7 +371,7 @@ if (($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['login'])) || $htacces
         $expired= ldap_expired_account($config, $ui->dn, $ui->username);
 
         if ($expired == 1){
-          $message= _("Account locked. Please contact your system administrator.");
+          $message= _("Account locked. Please contact your system administrator!");
           $smarty->assign ('nextfield', 'password');
           new log("security","login","",array(),"Account for user \"$username\" has expired") ;
         } elseif ($expired == 3){
@@ -391,7 +403,7 @@ if (($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['login'])) || $htacces
 /* Fill template with required values */
 $smarty->assign ('date', gmdate("D, d M Y H:i:s"));
 $smarty->assign ('username', $username);
-$smarty->assign ('personal_img', get_template_path('images/personal.png'));
+$smarty->assign ('personal_img', get_template_path('images/login-head.png'));
 $smarty->assign ('password_img', get_template_path('images/password.png'));
 $smarty->assign ('directory_img', get_template_path('images/ldapserver.png'));
 
@@ -412,7 +424,6 @@ if ($ssl != "" && $config->data['MAIN']['WARNSSL'] == 'true'){
 /* Translation of cookie-warning. Whether to display it, is determined by JavaScript */
 $smarty->assign ("cookies", "<b>"._("Warning").":<\/b> "._("Your browser has cookies disabled. Please enable cookies and reload this page before logging in!"));
 
-
 /* Generate server list */
 $servers= array();
 if (isset($_POST['server'])){