Merge branch 'platal-0.9.17'
[platal.git] / htdocs / webredirect.php
1 <?php
2 /***************************************************************************
3 * Copyright (C) 2003-2008 Polytechnique.org *
4 * http://opensource.polytechnique.org/ *
5 * *
6 * This program is free software; you can redistribute it and/or modify *
7 * it under the terms of the GNU General Public License as published by *
8 * the Free Software Foundation; either version 2 of the License, or *
9 * (at your option) any later version. *
10 * *
11 * This program is distributed in the hope that it will be useful, *
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
14 * GNU General Public License for more details. *
15 * *
16 * You should have received a copy of the GNU General Public License *
17 * along with this program; if not, write to the Free Software *
18 * Foundation, Inc., *
19 * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
20 ***************************************************************************/
21
22 require_once 'xorg.inc.php';
23
24 new Platal('core');
25
26 global $globals;
27 list($username, $path) = preg_split('/\//', $_SERVER["REQUEST_URI"], 2, PREG_SPLIT_NO_EMPTY);
28 $res = XDB::query(
29 "SELECT redirecturl
30 FROM auth_user_quick AS a
31 INNER JOIN aliases AS al ON (al.id = a.user_id AND (al.type='a_vie' OR al.type='alias'))
32 WHERE al.alias = {?}
33 GROUP BY redirecturl", $username);
34
35 if ($url = $res->fetchOneCell()) {
36 $url = preg_replace('@/+$@', '', $url);
37 if ($path) {
38 http_redirect("http://$url/$path");
39 } else {
40 http_redirect("http://$url");
41 }
42 }
43
44 header("HTTP/1.0 404 Not Found");
45
46 ?>
47 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
48 <html>
49 <head>
50 <title>404 Not Found</title>
51 </head>
52 <body>
53 <h1>Not Found</h1>
54 The requested URL <?php echo $_SERVER['REQUEST_URI'] ?> was not found on this server.<p>
55 <hr>
56 <address>Apache Server at www.carva.org Port 80</address>
57 </body>
58 </html>
59 <?php
60 // vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
61 ?>