Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 297 lines (224 sloc) 9.74 kb
4e17e6c Thomas B. Initial revision
thomascube authored
1 <?php
2 /*
a6f90e1 Aleksander Machniak -fixed disclaimer
alecpl authored
3 +-------------------------------------------------------------------------+
4 | RoundCube Webmail IMAP Client |
5 | Version 0.1-20080506 |
6 | |
7 | Copyright (C) 2005-2008, RoundCube Dev. - Switzerland |
8 | |
9 | This program is free software; you can redistribute it and/or modify |
10 | it under the terms of the GNU General Public License version 2 |
11 | as published by the Free Software Foundation. |
12 | |
13 | This program is distributed in the hope that it will be useful, |
14 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
16 | GNU General Public License for more details. |
17 | |
18 | You should have received a copy of the GNU General Public License along |
19 | with this program; if not, write to the Free Software Foundation, Inc., |
20 | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
21 | |
22 +-------------------------------------------------------------------------+
23 | Author: Thomas Bruederli <roundcube@gmail.com> |
24 +-------------------------------------------------------------------------+
4e17e6c Thomas B. Initial revision
thomascube authored
25
26 $Id$
27
28 */
29
47124c2 Thomas B. Changed codebase to PHP5 with autoloader + added some new classes from t...
thomascube authored
30 // include environment
31 require_once 'program/include/iniset.php';
15a9d1c Thomas B. Optimized loading time; added periodic mail check; added EXPUNGE command
thomascube authored
32
4e17e6c Thomas B. Initial revision
thomascube authored
33 // define global vars
34 $OUTPUT_TYPE = 'html';
2f2f15b Thomas B. Little improvements for message parsing and encoding
thomascube authored
35
36 // set output buffering
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
37 if ($RCMAIL->action != 'get' && $RCMAIL->action != 'viewsource') {
2f2f15b Thomas B. Little improvements for message parsing and encoding
thomascube authored
38 // use gzip compression if supported
03fcc16 Till! * fixing warning reported in #1484851
till authored
39 if (function_exists('ob_gzhandler')
47124c2 Thomas B. Changed codebase to PHP5 with autoloader + added some new classes from t...
thomascube authored
40 && !ini_get('zlib.output_compression')
41 && ini_get('output_handler') != 'ob_gzhandler') {
2f2f15b Thomas B. Little improvements for message parsing and encoding
thomascube authored
42 ob_start('ob_gzhandler');
03fcc16 Till! * fixing warning reported in #1484851
till authored
43 }
47124c2 Thomas B. Changed codebase to PHP5 with autoloader + added some new classes from t...
thomascube authored
44 else {
2f2f15b Thomas B. Little improvements for message parsing and encoding
thomascube authored
45 ob_start();
47124c2 Thomas B. Changed codebase to PHP5 with autoloader + added some new classes from t...
thomascube authored
46 }
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
47 }
2f2f15b Thomas B. Little improvements for message parsing and encoding
thomascube authored
48
42b1135 Thomas B. Several bugfixes and feature improvements
thomascube authored
49
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
50 // init application and start session with requested task
51 $RCMAIL = rcmail::get_instance();
4e17e6c Thomas B. Initial revision
thomascube authored
52
47124c2 Thomas B. Changed codebase to PHP5 with autoloader + added some new classes from t...
thomascube authored
53 // init output class
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
54 $OUTPUT = (!empty($_GET['_remote']) || !empty($_POST['_remote'])) ? $RCMAIL->init_json() : $RCMAIL->load_gui((!empty($_GET['_framed']) || !empty($_POST['_framed'])));
4e17e6c Thomas B. Initial revision
thomascube authored
55
8affba5 Thomas B. Improved error handling in DB connection failure
thomascube authored
56
57 // check DB connections and exit on failure
47124c2 Thomas B. Changed codebase to PHP5 with autoloader + added some new classes from t...
thomascube authored
58 if ($err_str = $DB->is_error()) {
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
59 raise_error(array(
60 'code' => 603,
61 'type' => 'db',
62 'message' => $err_str), FALSE, TRUE);
63 }
8affba5 Thomas B. Improved error handling in DB connection failure
thomascube authored
64
65
4e17e6c Thomas B. Initial revision
thomascube authored
66 // error steps
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
67 if ($RCMAIL->action=='error' && !empty($_GET['_code'])) {
4e17e6c Thomas B. Initial revision
thomascube authored
68 raise_error(array('code' => hexdec($_GET['_code'])), FALSE, TRUE);
47124c2 Thomas B. Changed codebase to PHP5 with autoloader + added some new classes from t...
thomascube authored
69 }
4e17e6c Thomas B. Initial revision
thomascube authored
70
71 // try to log in
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
72 if ($RCMAIL->action=='login' && $RCMAIL->task=='mail') {
1854c45 Thomas B. More code cleanup + oop-ization
thomascube authored
73 $host = $RCMAIL->autoselect_host();
4e17e6c Thomas B. Initial revision
thomascube authored
74
75 // check if client supports cookies
47124c2 Thomas B. Changed codebase to PHP5 with autoloader + added some new classes from t...
thomascube authored
76 if (empty($_COOKIE)) {
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
77 $OUTPUT->show_message("cookiesdisabled", 'warning');
78 }
f15c268 Thomas B. Don't allow empty user names but empty passwords
thomascube authored
79 else if ($_SESSION['temp'] && !empty($_POST['_user']) && isset($_POST['_pass']) &&
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
80 $RCMAIL->login(trim(get_input_value('_user', RCUBE_INPUT_POST), ' '),
47124c2 Thomas B. Changed codebase to PHP5 with autoloader + added some new classes from t...
thomascube authored
81 get_input_value('_pass', RCUBE_INPUT_POST, true, 'ISO-8859-1'), $host)) {
aad6e2a Thomas B. New session authentication, should fix bugs #1483951 and #1484299; testi...
thomascube authored
82 // create new session ID
83 unset($_SESSION['temp']);
84 sess_regenerate_id();
85
86 // send auth cookie if necessary
1854c45 Thomas B. More code cleanup + oop-ization
thomascube authored
87 $RCMAIL->authenticate_session();
aad6e2a Thomas B. New session authentication, should fix bugs #1483951 and #1484299; testi...
thomascube authored
88
4e17e6c Thomas B. Initial revision
thomascube authored
89 // send redirect
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
90 header("Location: {$RCMAIL->comm_path}");
4e17e6c Thomas B. Initial revision
thomascube authored
91 exit;
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
92 }
47124c2 Thomas B. Changed codebase to PHP5 with autoloader + added some new classes from t...
thomascube authored
93 else {
fc67251 Thomas B. Show appropriate warning on connection error
thomascube authored
94 $OUTPUT->show_message($IMAP->error_code == -1 ? 'imaperror' : 'loginfailed', 'warning');
1854c45 Thomas B. More code cleanup + oop-ization
thomascube authored
95 $RCMAIL->kill_session();
4e17e6c Thomas B. Initial revision
thomascube authored
96 }
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
97 }
4e17e6c Thomas B. Initial revision
thomascube authored
98
99 // end session
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
100 else if (($RCMAIL->task=='logout' || $RCMAIL->action=='logout') && isset($_SESSION['user_id'])) {
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
101 $OUTPUT->show_message('loggedout');
1854c45 Thomas B. More code cleanup + oop-ization
thomascube authored
102 $RCMAIL->logout_actions();
103 $RCMAIL->kill_session();
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
104 }
4e17e6c Thomas B. Initial revision
thomascube authored
105
bac7d17 Thomas B. Fixed bugs #1364122, #1468895, ticket #1483811 and other minor bugs
thomascube authored
106 // check session and auth cookie
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
107 else if ($RCMAIL->action != 'login' && $_SESSION['user_id'] && $RCMAIL->action != 'send') {
1854c45 Thomas B. More code cleanup + oop-ization
thomascube authored
108 if (!$RCMAIL->authenticate_session()) {
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
109 $OUTPUT->show_message('sessionerror', 'error');
1854c45 Thomas B. More code cleanup + oop-ization
thomascube authored
110 $RCMAIL->kill_session();
4e17e6c Thomas B. Initial revision
thomascube authored
111 }
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
112 }
4e17e6c Thomas B. Initial revision
thomascube authored
113
114
115 // log in to imap server
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
116 if (!empty($RCMAIL->user->ID) && $RCMAIL->task == 'mail') {
1854c45 Thomas B. More code cleanup + oop-ization
thomascube authored
117 if (!$RCMAIL->imap_connect()) {
118 $RCMAIL->kill_session();
47124c2 Thomas B. Changed codebase to PHP5 with autoloader + added some new classes from t...
thomascube authored
119 }
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
120 }
4e17e6c Thomas B. Initial revision
thomascube authored
121
122
123 // not logged in -> set task to 'login
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
124 if (empty($RCMAIL->user->ID)) {
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
125 if ($OUTPUT->ajax_call)
126 $OUTPUT->remote_response("setTimeout(\"location.href='\"+this.env.comm_path+\"'\", 2000);");
42b1135 Thomas B. Several bugfixes and feature improvements
thomascube authored
127
1854c45 Thomas B. More code cleanup + oop-ization
thomascube authored
128 $RCMAIL->set_task('login');
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
129 }
4e17e6c Thomas B. Initial revision
thomascube authored
130
131
719a257 Thomas B. Some bugfixes, security issues + minor improvements
thomascube authored
132 // check client X-header to verify request origin
47124c2 Thomas B. Changed codebase to PHP5 with autoloader + added some new classes from t...
thomascube authored
133 if ($OUTPUT->ajax_call) {
134 if (empty($CONFIG['devel_mode']) && !rc_request_header('X-RoundCube-Referer')) {
719a257 Thomas B. Some bugfixes, security issues + minor improvements
thomascube authored
135 header('HTTP/1.1 404 Not Found');
136 die("Invalid Request");
137 }
138 }
139
4e17e6c Thomas B. Initial revision
thomascube authored
140
141 // not logged in -> show login page
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
142 if (empty($RCMAIL->user->ID)) {
330127a Thomas B. Disable PHP notices + check for installer script on login page
thomascube authored
143 // check if installer is still active
47124c2 Thomas B. Changed codebase to PHP5 with autoloader + added some new classes from t...
thomascube authored
144 if ($CONFIG['enable_installer'] && is_readable('./installer/index.php')) {
145 $OUTPUT->add_footer(html::div(array('style' => "background:#ef9398; border:2px solid #dc5757; padding:0.5em; margin:2em auto; width:50em"),
146 html::tag('h2', array('style' => "margin-top:0.2em"), "Installer script is still accessible") .
147 html::p(null, "The install script of your RoundCube installation is still stored in its default location!") .
148 html::p(null, "Please <b>remove</b> the whole <tt>installer</tt> folder from the RoundCube directory because .
149 these files may expose sensitive configuration data like server passwords and encryption keys
150 to the public. Make sure you cannot access the <a href=\"./installer/\">installer script</a> from your browser.")
151 )
152 );
153 }
330127a Thomas B. Disable PHP notices + check for installer script on login page
thomascube authored
154
bbf15d8 Aleksander Machniak - fixed task setting on login
alecpl authored
155 $OUTPUT->set_env('task', 'login');
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
156 $OUTPUT->task = 'login';
157 $OUTPUT->send('login');
4e17e6c Thomas B. Initial revision
thomascube authored
158 exit;
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
159 }
4e17e6c Thomas B. Initial revision
thomascube authored
160
161
1cded85 Thomas B. Re-design of caching (new database table added\!); some bugfixes; Postgr...
thomascube authored
162 // handle keep-alive signal
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
163 if ($RCMAIL->action=='keep-alive') {
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
164 $OUTPUT->reset();
165 $OUTPUT->send('');
1cded85 Thomas B. Re-design of caching (new database table added\!); some bugfixes; Postgr...
thomascube authored
166 exit;
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
167 }
1cded85 Thomas B. Re-design of caching (new database table added\!); some bugfixes; Postgr...
thomascube authored
168
4e17e6c Thomas B. Initial revision
thomascube authored
169 // include task specific files
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
170 if ($RCMAIL->task=='mail') {
4e17e6c Thomas B. Initial revision
thomascube authored
171 include_once('program/steps/mail/func.inc');
88375ff Thomas B. Added RSS output (experimental)
thomascube authored
172
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
173 if ($RCMAIL->action=='show' || $RCMAIL->action=='preview' || $RCMAIL->action=='print')
4e17e6c Thomas B. Initial revision
thomascube authored
174 include('program/steps/mail/show.inc');
175
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
176 if ($RCMAIL->action=='get')
4e17e6c Thomas B. Initial revision
thomascube authored
177 include('program/steps/mail/get.inc');
178
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
179 if ($RCMAIL->action=='moveto' || $RCMAIL->action=='delete')
4e17e6c Thomas B. Initial revision
thomascube authored
180 include('program/steps/mail/move_del.inc');
181
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
182 if ($RCMAIL->action=='mark')
4e17e6c Thomas B. Initial revision
thomascube authored
183 include('program/steps/mail/mark.inc');
184
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
185 if ($RCMAIL->action=='viewsource')
4e17e6c Thomas B. Initial revision
thomascube authored
186 include('program/steps/mail/viewsource.inc');
187
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
188 if ($RCMAIL->action=='sendmdn')
fba1f5a Thomas B. New class rcube_user + send message disposition notification
thomascube authored
189 include('program/steps/mail/sendmdn.inc');
190
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
191 if ($RCMAIL->action=='send')
4e17e6c Thomas B. Initial revision
thomascube authored
192 include('program/steps/mail/sendmail.inc');
193
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
194 if ($RCMAIL->action=='upload')
4e17e6c Thomas B. Initial revision
thomascube authored
195 include('program/steps/mail/upload.inc');
196
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
197 if ($RCMAIL->action=='compose' || $RCMAIL->action=='remove-attachment' || $RCMAIL->action=='display-attachment')
4e17e6c Thomas B. Initial revision
thomascube authored
198 include('program/steps/mail/compose.inc');
199
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
200 if ($RCMAIL->action=='addcontact')
4e17e6c Thomas B. Initial revision
thomascube authored
201 include('program/steps/mail/addcontact.inc');
15a9d1c Thomas B. Optimized loading time; added periodic mail check; added EXPUNGE command
thomascube authored
202
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
203 if ($RCMAIL->action=='expunge' || $RCMAIL->action=='purge')
15a9d1c Thomas B. Optimized loading time; added periodic mail check; added EXPUNGE command
thomascube authored
204 include('program/steps/mail/folders.inc');
205
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
206 if ($RCMAIL->action=='check-recent')
15a9d1c Thomas B. Optimized loading time; added periodic mail check; added EXPUNGE command
thomascube authored
207 include('program/steps/mail/check_recent.inc');
208
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
209 if ($RCMAIL->action=='getunread')
15a9d1c Thomas B. Optimized loading time; added periodic mail check; added EXPUNGE command
thomascube authored
210 include('program/steps/mail/getunread.inc');
4e17e6c Thomas B. Initial revision
thomascube authored
211
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
212 if ($RCMAIL->action=='list' && isset($_REQUEST['_remote']))
4e17e6c Thomas B. Initial revision
thomascube authored
213 include('program/steps/mail/list.inc');
214
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
215 if ($RCMAIL->action=='search')
dd53e2b Thomas B. Started integrating GoogieSpell
thomascube authored
216 include('program/steps/mail/search.inc');
217
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
218 if ($RCMAIL->action=='spell')
dd53e2b Thomas B. Started integrating GoogieSpell
thomascube authored
219 include('program/steps/mail/spell.inc');
4647e1b Thomas B. Started implementing search function
thomascube authored
220
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
221 if ($RCMAIL->action=='rss')
88375ff Thomas B. Added RSS output (experimental)
thomascube authored
222 include('program/steps/mail/rss.inc');
3ea0e32 Thomas B. Quota display as image
thomascube authored
223
01c86f2 Thomas B. Minor bugfixes
thomascube authored
224 // make sure the message count is refreshed
47124c2 Thomas B. Changed codebase to PHP5 with autoloader + added some new classes from t...
thomascube authored
225 $IMAP->messagecount($_SESSION['mbox'], 'ALL', true);
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
226 }
4e17e6c Thomas B. Initial revision
thomascube authored
227
228
229 // include task specific files
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
230 if ($RCMAIL->task=='addressbook') {
4e17e6c Thomas B. Initial revision
thomascube authored
231 include_once('program/steps/addressbook/func.inc');
232
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
233 if ($RCMAIL->action=='save')
4e17e6c Thomas B. Initial revision
thomascube authored
234 include('program/steps/addressbook/save.inc');
235
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
236 if ($RCMAIL->action=='edit' || $RCMAIL->action=='add')
4e17e6c Thomas B. Initial revision
thomascube authored
237 include('program/steps/addressbook/edit.inc');
238
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
239 if ($RCMAIL->action=='delete')
4e17e6c Thomas B. Initial revision
thomascube authored
240 include('program/steps/addressbook/delete.inc');
241
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
242 if ($RCMAIL->action=='show')
4e17e6c Thomas B. Initial revision
thomascube authored
243 include('program/steps/addressbook/show.inc');
244
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
245 if ($RCMAIL->action=='list' && $_REQUEST['_remote'])
4e17e6c Thomas B. Initial revision
thomascube authored
246 include('program/steps/addressbook/list.inc');
d1d2c4f adding files and modifications for public ldap search
svncommit authored
247
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
248 if ($RCMAIL->action=='search')
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
249 include('program/steps/addressbook/search.inc');
250
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
251 if ($RCMAIL->action=='copy')
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
252 include('program/steps/addressbook/copy.inc');
253
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
254 if ($RCMAIL->action=='mailto')
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
255 include('program/steps/addressbook/mailto.inc');
256 }
4e17e6c Thomas B. Initial revision
thomascube authored
257
258
259 // include task specific files
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
260 if ($RCMAIL->task=='settings') {
4e17e6c Thomas B. Initial revision
thomascube authored
261 include_once('program/steps/settings/func.inc');
262
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
263 if ($RCMAIL->action=='save-identity')
4e17e6c Thomas B. Initial revision
thomascube authored
264 include('program/steps/settings/save_identity.inc');
265
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
266 if ($RCMAIL->action=='add-identity' || $RCMAIL->action=='edit-identity')
4e17e6c Thomas B. Initial revision
thomascube authored
267 include('program/steps/settings/edit_identity.inc');
268
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
269 if ($RCMAIL->action=='delete-identity')
4e17e6c Thomas B. Initial revision
thomascube authored
270 include('program/steps/settings/delete_identity.inc');
271
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
272 if ($RCMAIL->action=='identities')
4e17e6c Thomas B. Initial revision
thomascube authored
273 include('program/steps/settings/identities.inc');
274
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
275 if ($RCMAIL->action=='save-prefs')
4e17e6c Thomas B. Initial revision
thomascube authored
276 include('program/steps/settings/save_prefs.inc');
277
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
278 if ($RCMAIL->action=='folders' || $RCMAIL->action=='subscribe' || $RCMAIL->action=='unsubscribe' ||
279 $RCMAIL->action=='create-folder' || $RCMAIL->action=='rename-folder' || $RCMAIL->action=='delete-folder')
4e17e6c Thomas B. Initial revision
thomascube authored
280 include('program/steps/settings/manage_folders.inc');
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
281 }
4e17e6c Thomas B. Initial revision
thomascube authored
282
283
284 // parse main template
197601e Thomas B. Next step: introduce the application class 'rcmail' and get rid of some ...
thomascube authored
285 $OUTPUT->send($RCMAIL->task);
539cd47 Thomas B. Fix for URL injection vulnerability (Bug #1307966)
thomascube authored
286
4e17e6c Thomas B. Initial revision
thomascube authored
287
539cd47 Thomas B. Fix for URL injection vulnerability (Bug #1307966)
thomascube authored
288 // if we arrive here, something went wrong
f115416 Thomas B. Merged branch devel-addressbook from r443 back to trunk
thomascube authored
289 raise_error(array(
290 'code' => 404,
291 'type' => 'php',
292 'line' => __LINE__,
293 'file' => __FILE__,
47124c2 Thomas B. Changed codebase to PHP5 with autoloader + added some new classes from t...
thomascube authored
294 'message' => "Invalid request"), true, true);
539cd47 Thomas B. Fix for URL injection vulnerability (Bug #1307966)
thomascube authored
295
d1d2c4f adding files and modifications for public ldap search
svncommit authored
296 ?>
Something went wrong with that request. Please try again.