The "Delete" link when reading a message that was on the second or
[squirrelmail.git] / src / webmail.php
CommitLineData
59177427 1<?php
c6d6fe73 2
21c3249f 3 /**
5bbe20e4 4 ** webmail.php -- Displays the main frameset
21c3249f 5 **
c6d6fe73 6 ** Copyright (c) 1999-2000 The SquirrelMail development team
5bbe20e4 7 ** Licensed under the GNU GPL. For full terms see the file COPYING.
8 **
9 ** This file generates the main frameset. The files that are
10 ** shown can be given as parameters. If the user is not logged in
11 ** this file will verify username and password.
21c3249f 12 **
13 **/
14
5bbe20e4 15 // Before starting the session, the base URI must be known.
16 // Assuming that this file is in the src/ subdirectory (or
17 // something).
18 ereg ("(^.*/)[^/]+/[^/]+$", $PHP_SELF, $regs);
19 $base_uri = $regs[1];
20
21 session_set_cookie_params (0, $base_uri);
2a32fc83 22 session_start();
23
5bbe20e4 24 session_register ("base_uri");
25
441f2d33 26 if (!isset($i18n_php))
27 include ("../functions/i18n.php");
28
21c3249f 29 if(!isset($username)) {
441f2d33 30 set_up_language($squirrelmail_language);
b581fa60 31 echo _("You need a valid user and password to access this page!");
21c3249f 32 exit;
33 }
34
288491a4 35 // Refresh the language cookie.
2a32fc83 36 if (isset($squirrelmail_language)) {
9f2215a1 37 setcookie("squirrelmail_language", $squirrelmail_language, time()+2592000);
2a32fc83 38 }
1b187352 39
7ce342dc 40 include ("../config/config.php");
65b14f90 41 include ("../functions/prefs.php");
19acd99f 42 include ("../functions/imap.php");
27e81758 43 if (!isset($plugin_php))
44 include ("../functions/plugin.php");
3c13b9fb 45 if (!isset($auth_php))
46 include ("../functions/auth.php");
52eefafc 47 if (!isset($strings_php))
48 include ("../functions/strings.php");
27e81758 49
985f7c88 50 if ($force_username_lowercase)
51 $username = strtolower($username);
52
c6d6fe73 53 if (!session_is_registered("user_is_logged_in") || $logged_in != 1) {
27e81758 54 do_hook ("login_before");
52eefafc 55
56 $onetimepad = OneTimePadCreate(strlen($secretkey));
57 $key = OneTimePadEncrypt($secretkey, $onetimepad);
58 session_register("onetimepad");
27e81758 59 // verify that username and password are correct
60 $imapConnection = sqimap_login($username, $key, $imapServerAddress, $imapPort, 0);
1195c340 61 sqimap_logout($imapConnection);
52eefafc 62
63 setcookie("username", $username, 0, $base_uri);
64 setcookie("key", $key, 0, $base_uri);
65 setcookie("logged_in", 1, 0, $base_uri);
66
27e81758 67 do_hook ("login_verified");
68 }
69
3c13b9fb 70 session_register ("user_is_logged_in");
71 $user_is_logged_in = true;
2848c630 72
73 include ("../src/load_prefs.php");
1b187352 74
441f2d33 75 // We'll need this to later have a noframes version
76 set_up_language(getPref($data_dir, $username, "language"));
77
3c13b9fb 78 echo "<html><head>\n";
8105d00f 79 echo "<TITLE>";
7ce342dc 80 echo "$org_title";
8105d00f 81 echo "</TITLE>";
07103a66 82 $ishelp = substr(getenv(REQUEST_URI),-8); // If calling help, set left frame to 300
9a732bb6 83
84 if (ishelp == 'help.php')
85 $bar_size = 300;
86 else
87 $bar_size = $left_size;
88
89 if ($location_of_bar == 'right')
90 {
91 echo "<FRAMESET COLS=\"*, $left_size\" NORESIZE=yes BORDER=0>";
07103a66 92 } else {
93 echo "<FRAMESET COLS=\"$left_size, *\" NORESIZE BORDER=0>";
94 }
ad6787f0 95
96/**
5a7af78b 97 There are three ways to call webmail.php
ad6787f0 98 1. webmail.php
a2222aa3 99 - This just loads the default entry screen.
907165ca 100 2. webmail.php?right_frame=right_main.php&sort=X&startMessage=X&mailbox=XXXX
ad6787f0 101 - This loads the frames starting at the given values.
907165ca 102 3. webmail.php?right_frame=folders.php
103 - Loads the frames with the Folder options in the right frame.
ad6787f0 104
105 This was done to create a pure HTML way of refreshing the folder list since
106 we would like to use as little Javascript as possible.
107**/
907165ca 108 if ($right_frame == "right_main.php") {
ad6787f0 109 $urlMailbox = urlencode($mailbox);
9a732bb6 110 $right_frame_url = "right_main.php?mailbox=$urlMailbox&sort=$sort&startMessage=$startMessage";
c36ed9cf 111 } else if ($right_frame == "options.php") {
9a732bb6 112 $right_frame_url = "options.php";
907165ca 113 } else if ($right_frame == "folders.php") {
9a732bb6 114 $right_frame_url = "folders.php";
ad6787f0 115 } else {
a37f3771 116 if (!isset($just_logged_in)) $just_logged_in = 0;
9a732bb6 117 $right_frame_url = "right_main.php?just_logged_in=$just_logged_in";
118 }
119
120 if ($location_of_bar == 'right')
121 {
122 echo "<FRAME SRC=\"$right_frame_url\" NAME=\"right\">";
123 echo "<FRAME SRC=\"left_main.php\" NAME=\"left\">";
124 }
125 else
126 {
127 echo "<FRAME SRC=\"left_main.php\" NAME=\"left\">";
128 echo "<FRAME SRC=\"$right_frame_url\" NAME=\"right\">";
ad6787f0 129 }
a2222aa3 130
ad6787f0 131?>
21c3249f 132</FRAMESET>
133</HEAD></HTML>