various fixes for php5.
[platal.git] / include / platal.inc.php
CommitLineData
0337d704 1<?php
2/***************************************************************************
50a40a33 3 * Copyright (C) 2003-2006 Polytechnique.org *
0337d704 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
8b00e0e0 22function microtime_float()
23{
24 list($usec, $sec) = explode(' ', microtime());
25 return ((float)$usec + (float)$sec);
26}
0337d704 27$TIME_BEGIN = microtime_float();
28
8b00e0e0 29define('AUTH_PUBLIC', 0);
30define('AUTH_COOKIE', 1);
31define('AUTH_MDP', 2);
0337d704 32
8b00e0e0 33define('PERMS_EXT', 'ext');
34define('PERMS_USER', 'user');
35define('PERMS_ADMIN', 'admin');
0337d704 36
37define('SKINNED', 0);
62a66dfc 38define('SIMPLE', 1);
39define('NO_SKIN', 2);
0337d704 40
42a50827 41require dirname(dirname(__FILE__)).'/classes/env.php';
42
43function __autoload($cls)
44{
9ef3c152 45 @include dirname(dirname(__FILE__)).'/classes/'.strtolower($cls).'.php';
42a50827 46}
0337d704 47
8b00e0e0 48function pl_url($path, $query = null, $fragment = null)
49{
50 global $platal;
51
52 $base = $platal->ns . $path . ($query ? '?'.$query : '');
53 return $fragment ? $base.'#'.$fragment : $base;
54}
d90fe33c 55
d1ebc57a 56function pl_self($n = null) {
57 global $platal;
58 return $platal->pl_self($n);
59}
60
8b00e0e0 61function http_redirect($fullurl)
d90fe33c 62{
63 if (count($_SESSION)) {
64 session_write_close();
65 }
8b00e0e0 66 header('Location: '.$fullurl);
d90fe33c 67 exit;
68}
69
8b00e0e0 70function pl_redirect($path, $query = null, $fragment = null)
71{
72 global $globals;
73 http_redirect($globals->baseurl . '/' . pl_url($path, $query, $fragment));
74}
0337d704 75
76// vim:set et sw=4 sts=4 sws=4 foldmethod=marker:
77?>