Uneditable address book entries no longer have checkboxes next to them on addresses...
[squirrelmail.git] / functions / auth.php
index 5f939cccf1d553c7b281f6c2b07e401e8ecf16f1..72a7b75eca5c6f6b38479f5eb168ac2672e98799 100644 (file)
@@ -3,12 +3,12 @@
 /**
  * auth.php
  *
- * Copyright (c) 1999-2003 The SquirrelMail Project Team
+ * Copyright (c) 1999-2004 The SquirrelMail Project Team
  * Licensed under the GNU GPL. For full terms see the file COPYING.
  *
  * Contains functions used to do authentication.
  *
- * $Id$
+ * @version $Id$
  * @package squirrelmail
  */
 
@@ -43,7 +43,7 @@ function is_logged_in() {
         return;
     } else {
         global $PHP_SELF, $session_expired_post, 
-              $session_expired_location;
+              $session_expired_location, $squirrelmail_language;
 
         /*  First we store some information in the new session to prevent
          *  information-loss.
@@ -58,6 +58,7 @@ function is_logged_in() {
            sqsession_register($session_expired_location,'session_expired_location');
         }
         include_once( SM_PATH . 'functions/display_messages.php' );
+        set_up_language($squirrelmail_language, true);
         logout_error( _("You must be logged in to access this page.") );
         exit;
     }
@@ -218,4 +219,27 @@ function hmac_md5($data, $key='') {
     return $hmac;
 }
 
+/** 
+ * Fillin user and password based on SMTP auth settings.
+ *
+ * @param string $user Reference to SMTP username
+ * @param string $pass Reference to SMTP password (unencrypted)
+ */
+function get_smtp_user(&$user, &$pass) {
+    global $username, $smtp_auth_mech, 
+           $smtp_sitewide_user, $smtp_sitewide_pass;
+
+    if ($smtp_auth_mech == 'none') {
+        $user = '';
+        $pass = '';
+    } elseif ( isset($smtp_sitewide_user) && isset($smtp_sitewide_pass) ) {
+        $user = $smtp_sitewide_user;
+        $pass = $smtp_sitewide_pass;
+    } else {
+        global $key, $onetimepad;
+        $user = $username;
+        $pass = OneTimePadDecrypt($key, $onetimepad);
+    }
+}
+
 ?>