Moving to GitHub.
[platal.git] / classes / xorg.php
CommitLineData
a9cd2bab
FB
1<?php
2/***************************************************************************
c441aabe 3 * Copyright (C) 2003-2014 Polytechnique.org *
a9cd2bab
FB
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
22class Xorg extends Platal
23{
6d69b527
FB
24 public function __construct()
25 {
dce1ba39
RB
26 parent::__construct(
27 'auth',
28
29 'admin',
30 'api',
31 'axletter',
32 'bandeau',
33 'carnet',
26cba39a 34 'comletter',
dce1ba39
RB
35 'deltaten',
36 'email',
37 'epletter',
38 'events',
39 'forums',
40 'fusionax',
87d116c4 41 'fxletter',
dce1ba39
RB
42 'gadgets',
43 'geoloc',
44 'googleapps',
45 'lists',
46 'marketing',
47 'newsletter',
48 'openid',
49 'payment',
50 'platal',
51 'poison',
52 'profile',
53 'register',
54 'reminder',
55 'search',
56 'sharingapi',
57 'stats',
58 'survey',
59 'urlshortener'
60 );
6d69b527
FB
61 }
62
63 public function find_hook()
64 {
65 if ($this->path{0} >= 'A' && $this->path{0} <= 'Z') {
66 return self::wiki_hook();
67 }
68 return parent::find_hook();
69 }
70
26ba053e 71 public function force_login(PlPage $page)
a9cd2bab
FB
72 {
73 header($_SERVER['SERVER_PROTOCOL'] . ' 403 Forbidden');
74 if (S::logged()) {
75 $page->changeTpl('core/password_prompt_logged.tpl');
a9cd2bab
FB
76 } else {
77 $page->changeTpl('core/password_prompt.tpl');
a9cd2bab
FB
78 }
79 $page->assign_by_ref('platal', $this);
80 $page->run();
81 }
ff949e76
RB
82
83 public function setup_raven()
84 {
85 $sentry_dsn = self::globals()->core->sentry_dsn;
86
87 if (strlen($sentry_dsn) == 0) {
88 return null;
89 }
90
91 require_once('raven/lib/Raven/Autoloader.php');
92
93 Raven_Autoloader::register();
94
95 return new Raven_Client($sentry_dsn);
96 }
97
98 protected function report_error($error)
99 {
100 parent::report_error($error);
101
102 $raven = $this->setup_raven();
103 if ($raven != null) {
104 $raven->captureException($error);
105 }
106 }
a9cd2bab
FB
107}
108
448c8cdc 109// vim:set et sw=4 sts=4 sws=4 foldmethod=marker fenc=utf-8:
a9cd2bab 110?>