| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149 |
- <?php
- $GLOBALS['organizrPages'][] = 'error';
- function get_page_error($Organizr)
- {
- if (!$Organizr) {
- $Organizr = new Organizr();
- }
- if ((!$Organizr->hasDB())) {
- return false;
- }
- $nonRoot = isset($_GET['organizr']);
- $nonRootPath = ($nonRoot) ? $Organizr->getRootPath() : '';
- $error = $_GET['vars']['var1'] ?? 404;
- $errorDetails = $Organizr->errorCodes($error);
- $redirect = $_GET['vars']['var2'] ?? null;
- if ($redirect) {
- $Organizr->logger->debug($redirect);
- }
- $GLOBALS['responseCode'] = 200;
- return '
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="utf-8">
- <meta content="IE=edge" http-equiv="X-UA-Compatible">
- <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport">
- <meta content="' . $Organizr->config['description'] . '" name="description">
- <meta content="CauseFX" name="author">
- ' . $Organizr->favIcons($nonRootPath) . '
- <title>Error ' . $Organizr->config['title'] . '</title>
- ' . $Organizr->loadResources(
- [
- 'bootstrap/dist/css/bootstrap.min.css',
- 'css/animate.css',
- 'plugins/bower_components/overlayScrollbars/OverlayScrollbars.min.css',
- 'css/dark.min.css',
- 'css/organizr.min.css',
- 'js/jquery-2.2.4.min.js',
- 'js/jquery-lang.min.js'
- ], $nonRootPath
- ) . '
- ' . $Organizr->setTheme(null, $nonRootPath) . '
- <style id="user-appearance"></style>
- <style id="custom-theme-css"></style>
- <style id="custom-css"></style>
- <!--[if lt IE 9]>
- <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"
- integrity="sha384-0s5Pv64cNZJieYFkXYOTId2HMA2Lfb6q2nAcx2n0RTLUnCAoTTsS0nKEO27XyKcY"
- crossorigin="anonymous"></script>
- <script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"
- integrity="sha384-ZoaMbDF+4LeFxg6WdScQ9nnR1QC2MIRxA1O9KWEXQwns1G8UNyIEZIQidzb0T1fo"
- crossorigin="anonymous"></script>
- <![endif]-->
- </head>
- <body class="fix-header">
- <!-- ============================================================== -->
- <!-- Preloader -->
- <!-- ==============================================================
- <div id="preloader" class="preloader">
- <svg class="circular" viewbox="25 25 50 50">
- <circle class="path" cx="50" cy="50" fill="none" r="20" stroke-miterlimit="10" stroke-width="10"></circle>
- </svg>
- </div>-->
- <!-- ============================================================== -->
- <!-- Wrapper -->
- <!-- ============================================================== -->
- <section id="wrapper">
- <div class="error-box">
- <div class="error-body text-center">
- <h1 class="text-danger">' . $error . '</h1>
- <h2 class="text-uppercase" lang="en">' . $errorDetails['type'] . '</h2>
- <h3 class="text-uppercase" lang="en">' . $errorDetails['description'] . '</h3>
- <p class="text-muted m-t-30 m-b-30">Hey there, ' . $Organizr->user['username'] . ', ' . $Organizr->config['customErrorMessage'] . ' . </p>
- <a href="' . $nonRootPath . '" class="btn btn-danger btn-rounded waves-effect waves-light m-b-40">Back Home</a>
- </div>
- </div>
- </section>
- <script>
- languageList = ' . $Organizr->languagePacks(true) . '
- var langStrings = { "token": {} };
- var lang = new Lang();
- loadLanguageList();
- lang.init({
- currentLang: (getCookie("organizrLanguage")) ? getCookie("organizrLanguage") : "en",
- cookie: {
- name: "organizrLanguage",
- expiry: 365,
- path: "/"
- },
- allowCookieOverride: true
- });
- $.urlParam = function(name){
- let results = new RegExp("[\?&]" + name + "=([^&#]*)").exec(window.location.href);
- if (results == null) {
- return null;
- } else {
- return decodeURI(results[1]) || 0;
- }
- };
- if ($.urlParam("return") !== null && "' . $Organizr->user['groupID'] . '" === "999") {
- local("set", "uri", $.urlParam("return"));
- }
- function localStorageSupport() {
- return (("localStorage" in window) && window["localStorage"] !== null)
- }
- function local(type,key,value=null){
- if (localStorageSupport) {
- switch (type) {
- case "set":
- case "s":
- localStorage.setItem(key,value);
- break;
- case "get":
- case "g":
- return localStorage.getItem(key);
- break;
- case "remove":
- case "r":
- localStorage.removeItem(key);
- break;
- }
- }
- }
- function loadLanguageList(){
- $.each(languageList, function(i,v) {
- lang.dynamic(v.code, "' . $nonRootPath . 'js/langpack/"+v.filename);
- });
- }
- function getCookie(cname) {
- var name = cname + "=";
- var decodedCookie = decodeURIComponent(document.cookie);
- var ca = decodedCookie.split(";");
- for(var i = 0; i <ca.length; i++) {
- var c = ca[i];
- while (c.charAt(0) == " ") {
- c = c.substring(1);
- }
- if (c.indexOf(name) == 0) {
- return c.substring(name.length, c.length);
- }
- }
- return "";
- }
- </script>
- </body>
- </html>
- ';
- }
|