merge things from scripts into htdocs.
[platal.git] / htdocs / webredirect.php
diff --git a/htdocs/webredirect.php b/htdocs/webredirect.php
new file mode 100644 (file)
index 0000000..95c478e
--- /dev/null
@@ -0,0 +1,54 @@
+<?php
+/***************************************************************************
+ *  Copyright (C) 2003-2006 Polytechnique.org                              *
+ *  http://opensource.polytechnique.org/                                   *
+ *                                                                         *
+ *  This program is free software; you can redistribute it and/or modify   *
+ *  it under the terms of the GNU General Public License as published by   *
+ *  the Free Software Foundation; either version 2 of the License, or      *
+ *  (at your option) any later version.                                    *
+ *                                                                         *
+ *  This program is distributed in the hope that it will be useful,        *
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of         *
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the          *
+ *  GNU General Public License for more details.                           *
+ *                                                                         *
+ *  You should have received a copy of the GNU General Public License      *
+ *  along with this program; if not, write to the Free Software            *
+ *  Foundation, Inc.,                                                      *
+ *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                *
+ ***************************************************************************/
+
+require_once dirname(__FILE__).'/../include/xorg.inc.php';
+
+list($username, $path) = preg_split('/\//', $_SERVER["REQUEST_URI"], 2, PREG_SPLIT_NO_EMPTY);
+$res = XDB::query(
+        "SELECT  redirecturl
+           FROM  auth_user_quick AS a
+     INNER JOIN  aliases         AS al ON (al.id = a.user_id AND (al.type='a_vie' OR al.type='alias'))
+          WHERE  al.alias = {?}", $username);
+
+if ($url = $res->fetchOneCell()) {
+    $url = preg_replace('@/+$@', '', $url);
+    if ($path) {
+        http_redirect("http://$url/$path");
+    } else {
+        http_redirect("http://$url");
+    }
+}
+
+header("HTTP/1.0 404 Not Found");
+
+?>
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
+<html>
+  <head>
+    <title>404 Not Found</title>
+  </head>
+  <body>
+    <h1>Not Found</h1>
+    The requested URL <?php echo $_SERVER['REQUEST_URI'] ?> was not found on this server.<p>
+    <hr>
+    <address>Apache Server at www.carva.org Port 80</address>
+  </body>
+</html>