core MDL-19799 Updated print_header and build_navigation to OUTPUT and PAGE equivalents
[moodle.git] / error / index.php
1 <?PHP // $Id$
3     require('../config.php');
4     require_once($CFG->libdir.'/eventslib.php');
6     if ($form = data_submitted()) { // form submitted, do not check referer (original page unknown)!
8     /// Only deal with real users
9         if (!isloggedin()) { 
10             redirect($CFG->wwwroot);
11         }
13     /// Work out who to send the message to
14         if (!$admin = get_admin() ) {
15             print_error('cannotfindadmin', 'debug');
16         }
18         $supportuser = new object;
19         $supportuser->email = $CFG->supportemail ? $CFG->supportemail : $admin->email;
20         $supportuser->firstname = $CFG->supportname ? $CFG->supportname : $admin->firstname;
21         $supportuser->lastname = $CFG->supportname ? '' : $admin->lastname;
22         $supportuser->maildisplay = true;
24     /// Send the message and redirect
25         $eventdata = new object();
26         $eventdata->modulename        = 'moodle';
27         $eventdata->userfrom          = $USER;
28         $eventdata->userto            = $supportuser;
29         $eventdata->subject           = 'Error: '. $form->referer .' -> '. $form->requested;
30         $eventdata->fullmessage       = $form->text;
31         $eventdata->fullmessageformat = FORMAT_PLAIN;
32         $eventdata->fullmessagehtml   = '';
33         $eventdata->smallmessage      = '';
34         events_trigger('message_send', $eventdata);
35         
36         redirect($CFG->wwwroot .'/course/', 'Message sent, thanks', 3);
37         exit;
38     }
40     $site = get_site();
41     $redirecturl = empty($_SERVER['REDIRECT_URL']) ? '' : $_SERVER['REDIRECT_URL'];
42     $httpreferer = empty($_SERVER['HTTP_REFERER']) ? '' : $_SERVER['HTTP_REFERER'];
43     $requesturi  = empty($_SERVER['REQUEST_URI'])  ? '' : $_SERVER['REQUEST_URI'];
44     
45     header("HTTP/1.0 404 Not Found");
46     header("Status: 404 Not Found");
48     $PAGE->set_title($site->fullname .':Error');
49     $PAGE->set_heading($site->fullname .': Error 404');
50     $PAGE->navbar->add('Error 404 - File not Found');
51     echo $OUTPUT->header();
52     echo $OUTPUT->box(get_string('pagenotexist', 'error'). '<br />'.s($requesturi), 'generalbox boxaligncenter');
54     if (isloggedin()) {
55 ?>
56         <center>
57         <p><?php echo get_string('pleasereport', 'error'); ?>
58         <p><form action="<?php echo $CFG->wwwroot ?>/error/index.php" method="post">
59            <textarea rows="3" cols="50" name="text" id="text"></textarea><br />
60            <input type="hidden" name="referer" value="<?php p($httpreferer) ?>">
61            <input type="hidden" name="requested" value="<?php p($requesturi) ?>">
62            <input type="submit" value="<?php echo get_string('sendmessage', 'error'); ?>">
63            </form>
64 <?php
65     } else {
66         echo $OUTPUT->continue_button($CFG->wwwroot);
67     }
68     echo $OUTPUT->footer();
69 ?>