Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 350 lines (267 sloc) 11.163 kb
4e17e6c @thomascube Initial revision
thomascube authored
1 <?php
2 /*
3 +-----------------------------------------------------------------------+
4 | RoundCube Webmail IMAP Client |
967b342 @thomascube Disable installer by default; add config option to enable it again
thomascube authored
5 | Version 0.1-20080328 |
4e17e6c @thomascube Initial revision
thomascube authored
6 | |
0714b7e @thomascube Add config parameter to disable the installer warning
thomascube authored
7 | Copyright (C) 2005-2008, RoundCube Dev. - Switzerland |
15fee7b @thomascube Moved config files to config/*inc.php.dist
thomascube authored
8 | Licensed under the GNU GPL |
4e17e6c @thomascube Initial revision
thomascube authored
9 | |
10 | Redistribution and use in source and binary forms, with or without |
11 | modification, are permitted provided that the following conditions |
12 | are met: |
13 | |
14 | o Redistributions of source code must retain the above copyright |
15 | notice, this list of conditions and the following disclaimer. |
16 | o Redistributions in binary form must reproduce the above copyright |
17 | notice, this list of conditions and the following disclaimer in the |
18 | documentation and/or other materials provided with the distribution.|
19 | o The names of the authors may not be used to endorse or promote |
20 | products derived from this software without specific prior written |
21 | permission. |
22 | |
23 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
24 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
25 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
26 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
27 | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
28 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
29 | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
30 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
31 | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
32 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
33 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
34 | |
35 +-----------------------------------------------------------------------+
36 | Author: Thomas Bruederli <roundcube@gmail.com> |
37 +-----------------------------------------------------------------------+
38
39 $Id$
40
41 */
42
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
43 // include environment
44 require_once 'program/include/iniset.php';
15a9d1c @thomascube Optimized loading time; added periodic mail check; added EXPUNGE command
thomascube authored
45
4e17e6c @thomascube Initial revision
thomascube authored
46 // define global vars
47 $OUTPUT_TYPE = 'html';
8c2e58b @thomascube Minor improvements and bugfixes (see changelog)
thomascube authored
48 $MAIN_TASKS = array('mail','settings','addressbook','logout');
4e17e6c @thomascube Initial revision
thomascube authored
49
50 // catch some url/post parameters
e34ae17 @thomascube Fixed XSS vulnerability (Bug #1484109)
thomascube authored
51 $_task = strip_quotes(get_input_value('_task', RCUBE_INPUT_GPC));
52 $_action = strip_quotes(get_input_value('_action', RCUBE_INPUT_GPC));
597170f @thomascube Added new languages, hierarchical folder tree and attachments in forw…
thomascube authored
53 $_framed = (!empty($_GET['_framed']) || !empty($_POST['_framed']));
4e17e6c @thomascube Initial revision
thomascube authored
54
e34ae17 @thomascube Fixed XSS vulnerability (Bug #1484109)
thomascube authored
55 // use main task if empty or invalid value
56 if (empty($_task) || !in_array($_task, $MAIN_TASKS))
03f8558 @thomascube Strip tags on _auth, _action, _task parameters
thomascube authored
57 $_task = 'mail';
58
2f2f15b @thomascube Little improvements for message parsing and encoding
thomascube authored
59
60 // set output buffering
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
61 if ($_action != 'get' && $_action != 'viewsource') {
2f2f15b @thomascube Little improvements for message parsing and encoding
thomascube authored
62 // use gzip compression if supported
03fcc16 @till * fixing warning reported in #1484851
till authored
63 if (function_exists('ob_gzhandler')
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
64 && !ini_get('zlib.output_compression')
65 && ini_get('output_handler') != 'ob_gzhandler') {
2f2f15b @thomascube Little improvements for message parsing and encoding
thomascube authored
66 ob_start('ob_gzhandler');
03fcc16 @till * fixing warning reported in #1484851
till authored
67 }
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
68 else {
2f2f15b @thomascube Little improvements for message parsing and encoding
thomascube authored
69 ob_start();
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
70 }
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
71 }
2f2f15b @thomascube Little improvements for message parsing and encoding
thomascube authored
72
42b1135 @thomascube Several bugfixes and feature improvements
thomascube authored
73
4e17e6c @thomascube Initial revision
thomascube authored
74 // start session with requested task
75 rcmail_startup($_task);
76
77 // set session related variables
bac7d17 @thomascube Fixed bugs #1364122, #1468895, ticket #1483811 and other minor bugs
thomascube authored
78 $COMM_PATH = sprintf('./?_task=%s', $_task);
79 $SESS_HIDDEN_FIELD = '';
4e17e6c @thomascube Initial revision
thomascube authored
80
81
82 // add framed parameter
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
83 if ($_framed) {
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
84 $COMM_PATH .= '&_framed=1';
ccfda89 @thomascube Fixed session expiration issue with SQLite
thomascube authored
85 $SESS_HIDDEN_FIELD .= "\n".'<input type="hidden" name="_framed" value="1" />';
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
86 }
4e17e6c @thomascube Initial revision
thomascube authored
87
88
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
89 // init output class
90 if (!empty($_GET['_remote']) || !empty($_POST['_remote'])) {
91 rcmail_init_json();
92 }
93 else {
94 rcmail_load_gui();
95 }
4e17e6c @thomascube Initial revision
thomascube authored
96
8affba5 @thomascube Improved error handling in DB connection failure
thomascube authored
97
98 // check DB connections and exit on failure
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
99 if ($err_str = $DB->is_error()) {
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
100 raise_error(array(
101 'code' => 603,
102 'type' => 'db',
103 'message' => $err_str), FALSE, TRUE);
104 }
8affba5 @thomascube Improved error handling in DB connection failure
thomascube authored
105
106
4e17e6c @thomascube Initial revision
thomascube authored
107 // error steps
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
108 if ($_action=='error' && !empty($_GET['_code'])) {
4e17e6c @thomascube Initial revision
thomascube authored
109 raise_error(array('code' => hexdec($_GET['_code'])), FALSE, TRUE);
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
110 }
4e17e6c @thomascube Initial revision
thomascube authored
111
112 // try to log in
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
113 if ($_action=='login' && $_task=='mail') {
0a020ca @thomascube Added host auto-selection and correct password encoding for IMAP login
thomascube authored
114 $host = rcmail_autoselect_host();
4e17e6c @thomascube Initial revision
thomascube authored
115
116 // check if client supports cookies
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
117 if (empty($_COOKIE)) {
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
118 $OUTPUT->show_message("cookiesdisabled", 'warning');
119 }
f15c268 @thomascube Don't allow empty user names but empty passwords
thomascube authored
120 else if ($_SESSION['temp'] && !empty($_POST['_user']) && isset($_POST['_pass']) &&
d7a2878 @till * committed patch from #1484231
till authored
121 rcmail_login(trim(get_input_value('_user', RCUBE_INPUT_POST), ' '),
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
122 get_input_value('_pass', RCUBE_INPUT_POST, true, 'ISO-8859-1'), $host)) {
aad6e2a @thomascube New session authentication, should fix bugs #1483951 and #1484299; te…
thomascube authored
123 // create new session ID
124 unset($_SESSION['temp']);
125 sess_regenerate_id();
126
127 // send auth cookie if necessary
128 rcmail_authenticate_session();
129
4e17e6c @thomascube Initial revision
thomascube authored
130 // send redirect
131 header("Location: $COMM_PATH");
132 exit;
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
133 }
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
134 else {
fc67251 @thomascube Show appropriate warning on connection error
thomascube authored
135 $OUTPUT->show_message($IMAP->error_code == -1 ? 'imaperror' : 'loginfailed', 'warning');
b9183e5 @thomascube Use common function to mark the user session as not logged in
thomascube authored
136 rcmail_kill_session();
4e17e6c @thomascube Initial revision
thomascube authored
137 }
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
138 }
4e17e6c @thomascube Initial revision
thomascube authored
139
140 // end session
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
141 else if (($_task=='logout' || $_action=='logout') && isset($_SESSION['user_id'])) {
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
142 $OUTPUT->show_message('loggedout');
eaa3947 @alecpl #1483863: empty trash and expunge inbox on logout
alecpl authored
143 rcmail_logout_actions();
4e17e6c @thomascube Initial revision
thomascube authored
144 rcmail_kill_session();
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
145 }
4e17e6c @thomascube Initial revision
thomascube authored
146
bac7d17 @thomascube Fixed bugs #1364122, #1468895, ticket #1483811 and other minor bugs
thomascube authored
147 // check session and auth cookie
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
148 else if ($_action != 'login' && $_SESSION['user_id'] && $_action != 'send') {
149 if (!rcmail_authenticate_session()) {
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
150 $OUTPUT->show_message('sessionerror', 'error');
4e17e6c @thomascube Initial revision
thomascube authored
151 rcmail_kill_session();
152 }
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
153 }
4e17e6c @thomascube Initial revision
thomascube authored
154
155
156 // log in to imap server
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
157 if (!empty($USER->ID) && $_task=='mail') {
7902df4 @thomascube Fixed SSL support; improved Courier compatibility; some visual enhanc…
thomascube authored
158 $conn = $IMAP->connect($_SESSION['imap_host'], $_SESSION['username'], decrypt_passwd($_SESSION['password']), $_SESSION['imap_port'], $_SESSION['imap_ssl']);
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
159 if (!$conn) {
fc67251 @thomascube Show appropriate warning on connection error
thomascube authored
160 $OUTPUT->show_message($IMAP->error_code == -1 ? 'imaperror' : 'sessionerror', 'error');
b9183e5 @thomascube Use common function to mark the user session as not logged in
thomascube authored
161 rcmail_kill_session();
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
162 }
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
163 else {
7902df4 @thomascube Fixed SSL support; improved Courier compatibility; some visual enhanc…
thomascube authored
164 rcmail_set_imap_prop();
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
165 }
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
166 }
4e17e6c @thomascube Initial revision
thomascube authored
167
168
169 // not logged in -> set task to 'login
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
170 if (empty($USER->ID)) {
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
171 if ($OUTPUT->ajax_call)
172 $OUTPUT->remote_response("setTimeout(\"location.href='\"+this.env.comm_path+\"'\", 2000);");
42b1135 @thomascube Several bugfixes and feature improvements
thomascube authored
173
4e17e6c @thomascube Initial revision
thomascube authored
174 $_task = 'login';
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
175 }
4e17e6c @thomascube Initial revision
thomascube authored
176
177
719a257 @thomascube Some bugfixes, security issues + minor improvements
thomascube authored
178 // check client X-header to verify request origin
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
179 if ($OUTPUT->ajax_call) {
180 if (empty($CONFIG['devel_mode']) && !rc_request_header('X-RoundCube-Referer')) {
719a257 @thomascube Some bugfixes, security issues + minor improvements
thomascube authored
181 header('HTTP/1.1 404 Not Found');
182 die("Invalid Request");
183 }
184 }
185
4e17e6c @thomascube Initial revision
thomascube authored
186
597170f @thomascube Added new languages, hierarchical folder tree and attachments in forw…
thomascube authored
187 // set task and action to client
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
188 $OUTPUT->set_env('task', $_task);
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
189 if (!empty($_action)) {
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
190 $OUTPUT->set_env('action', $_action);
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
191 }
4e17e6c @thomascube Initial revision
thomascube authored
192
193
194
195 // not logged in -> show login page
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
196 if (empty($USER->ID)) {
330127a @thomascube Disable PHP notices + check for installer script on login page
thomascube authored
197 // check if installer is still active
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
198 if ($CONFIG['enable_installer'] && is_readable('./installer/index.php')) {
199 $OUTPUT->add_footer(html::div(array('style' => "background:#ef9398; border:2px solid #dc5757; padding:0.5em; margin:2em auto; width:50em"),
200 html::tag('h2', array('style' => "margin-top:0.2em"), "Installer script is still accessible") .
201 html::p(null, "The install script of your RoundCube installation is still stored in its default location!") .
202 html::p(null, "Please <b>remove</b> the whole <tt>installer</tt> folder from the RoundCube directory because .
203 these files may expose sensitive configuration data like server passwords and encryption keys
204 to the public. Make sure you cannot access the <a href=\"./installer/\">installer script</a> from your browser.")
205 )
206 );
207 }
330127a @thomascube Disable PHP notices + check for installer script on login page
thomascube authored
208
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
209 $OUTPUT->task = 'login';
210 $OUTPUT->send('login');
4e17e6c @thomascube Initial revision
thomascube authored
211 exit;
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
212 }
4e17e6c @thomascube Initial revision
thomascube authored
213
214
1cded85 @thomascube Re-design of caching (new database table added\!); some bugfixes; Pos…
thomascube authored
215 // handle keep-alive signal
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
216 if ($_action=='keep-alive') {
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
217 $OUTPUT->reset();
218 $OUTPUT->send('');
1cded85 @thomascube Re-design of caching (new database table added\!); some bugfixes; Pos…
thomascube authored
219 exit;
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
220 }
1cded85 @thomascube Re-design of caching (new database table added\!); some bugfixes; Pos…
thomascube authored
221
4e17e6c @thomascube Initial revision
thomascube authored
222 // include task specific files
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
223 if ($_task=='mail') {
4e17e6c @thomascube Initial revision
thomascube authored
224 include_once('program/steps/mail/func.inc');
88375ff @thomascube Added RSS output (experimental)
thomascube authored
225
b190970 @thomascube Introducing preview pane and conditional skin tags
thomascube authored
226 if ($_action=='show' || $_action=='preview' || $_action=='print')
4e17e6c @thomascube Initial revision
thomascube authored
227 include('program/steps/mail/show.inc');
228
229 if ($_action=='get')
230 include('program/steps/mail/get.inc');
231
232 if ($_action=='moveto' || $_action=='delete')
233 include('program/steps/mail/move_del.inc');
234
235 if ($_action=='mark')
236 include('program/steps/mail/mark.inc');
237
238 if ($_action=='viewsource')
239 include('program/steps/mail/viewsource.inc');
240
fba1f5a @thomascube New class rcube_user + send message disposition notification
thomascube authored
241 if ($_action=='sendmdn')
242 include('program/steps/mail/sendmdn.inc');
243
4e17e6c @thomascube Initial revision
thomascube authored
244 if ($_action=='send')
245 include('program/steps/mail/sendmail.inc');
246
247 if ($_action=='upload')
248 include('program/steps/mail/upload.inc');
249
4315b00 added ability to insert attached images in HTML editor
svncommit authored
250 if ($_action=='compose' || $_action=='remove-attachment' || $_action=='display-attachment')
4e17e6c @thomascube Initial revision
thomascube authored
251 include('program/steps/mail/compose.inc');
252
253 if ($_action=='addcontact')
254 include('program/steps/mail/addcontact.inc');
15a9d1c @thomascube Optimized loading time; added periodic mail check; added EXPUNGE command
thomascube authored
255
5e35126 @thomascube Added folder purge function and some checks
thomascube authored
256 if ($_action=='expunge' || $_action=='purge')
15a9d1c @thomascube Optimized loading time; added periodic mail check; added EXPUNGE command
thomascube authored
257 include('program/steps/mail/folders.inc');
258
259 if ($_action=='check-recent')
260 include('program/steps/mail/check_recent.inc');
261
262 if ($_action=='getunread')
263 include('program/steps/mail/getunread.inc');
4e17e6c @thomascube Initial revision
thomascube authored
264
8d07583 @thomascube Use HTTP-POST requests for actions that change application state
thomascube authored
265 if ($_action=='list' && isset($_REQUEST['_remote']))
4e17e6c @thomascube Initial revision
thomascube authored
266 include('program/steps/mail/list.inc');
267
4647e1b @thomascube Started implementing search function
thomascube authored
268 if ($_action=='search')
dd53e2b @thomascube Started integrating GoogieSpell
thomascube authored
269 include('program/steps/mail/search.inc');
270
271 if ($_action=='spell')
272 include('program/steps/mail/spell.inc');
4647e1b @thomascube Started implementing search function
thomascube authored
273
88375ff @thomascube Added RSS output (experimental)
thomascube authored
274 if ($_action=='rss')
275 include('program/steps/mail/rss.inc');
3ea0e32 @thomascube Quota display as image
thomascube authored
276
01c86f2 @thomascube Minor bugfixes
thomascube authored
277 // make sure the message count is refreshed
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
278 $IMAP->messagecount($_SESSION['mbox'], 'ALL', true);
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
279 }
4e17e6c @thomascube Initial revision
thomascube authored
280
281
282 // include task specific files
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
283 if ($_task=='addressbook') {
4e17e6c @thomascube Initial revision
thomascube authored
284 include_once('program/steps/addressbook/func.inc');
285
286 if ($_action=='save')
287 include('program/steps/addressbook/save.inc');
288
289 if ($_action=='edit' || $_action=='add')
290 include('program/steps/addressbook/edit.inc');
291
292 if ($_action=='delete')
293 include('program/steps/addressbook/delete.inc');
294
295 if ($_action=='show')
296 include('program/steps/addressbook/show.inc');
297
8d07583 @thomascube Use HTTP-POST requests for actions that change application state
thomascube authored
298 if ($_action=='list' && $_REQUEST['_remote'])
4e17e6c @thomascube Initial revision
thomascube authored
299 include('program/steps/addressbook/list.inc');
d1d2c4f adding files and modifications for public ldap search
svncommit authored
300
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
301 if ($_action=='search')
302 include('program/steps/addressbook/search.inc');
303
304 if ($_action=='copy')
305 include('program/steps/addressbook/copy.inc');
306
307 if ($_action=='mailto')
308 include('program/steps/addressbook/mailto.inc');
309 }
4e17e6c @thomascube Initial revision
thomascube authored
310
311
312 // include task specific files
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
313 if ($_task=='settings') {
4e17e6c @thomascube Initial revision
thomascube authored
314 include_once('program/steps/settings/func.inc');
315
316 if ($_action=='save-identity')
317 include('program/steps/settings/save_identity.inc');
318
319 if ($_action=='add-identity' || $_action=='edit-identity')
320 include('program/steps/settings/edit_identity.inc');
321
322 if ($_action=='delete-identity')
323 include('program/steps/settings/delete_identity.inc');
324
325 if ($_action=='identities')
326 include('program/steps/settings/identities.inc');
327
328 if ($_action=='save-prefs')
329 include('program/steps/settings/save_prefs.inc');
330
aade7b9 @thomascube Finalized 0.1beta2 release
thomascube authored
331 if ($_action=='folders' || $_action=='subscribe' || $_action=='unsubscribe' ||
332 $_action=='create-folder' || $_action=='rename-folder' || $_action=='delete-folder')
4e17e6c @thomascube Initial revision
thomascube authored
333 include('program/steps/settings/manage_folders.inc');
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
334 }
4e17e6c @thomascube Initial revision
thomascube authored
335
336
337 // parse main template
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
338 $OUTPUT->send($_task);
539cd47 @thomascube Fix for URL injection vulnerability (Bug #1307966)
thomascube authored
339
4e17e6c @thomascube Initial revision
thomascube authored
340
539cd47 @thomascube Fix for URL injection vulnerability (Bug #1307966)
thomascube authored
341 // if we arrive here, something went wrong
f115416 @thomascube Merged branch devel-addressbook from r443 back to trunk
thomascube authored
342 raise_error(array(
343 'code' => 404,
344 'type' => 'php',
345 'line' => __LINE__,
346 'file' => __FILE__,
47124c2 @thomascube Changed codebase to PHP5 with autoloader + added some new classes fro…
thomascube authored
347 'message' => "Invalid request"), true, true);
539cd47 @thomascube Fix for URL injection vulnerability (Bug #1307966)
thomascube authored
348
d1d2c4f adding files and modifications for public ldap search
svncommit authored
349 ?>
Something went wrong with that request. Please try again.