public function delete()
 {
     $api = new SCApi();
     $arr = $api->usersessions_delete(true);
     if ($arr["loggedout"]) {
         SC::transfer();
     }
 }
示例#2
0
 public function invitations_create()
 {
     SC::loginRequired();
     global $current_user;
     try {
         $api = new SCApi();
         $sent_list = $api->boards_invitations_create();
         SC::transfer(SCRoutes::set("boards", "show", array("boardid" => $_GET["boardid"])));
     } catch (Exception $ex) {
         SC::setFlashMessage($ex->getMessage(), "error");
         $this->invitations_new();
     }
 }
示例#3
0
 public function delete()
 {
     SC::loginRequired();
     global $current_user;
     try {
         $api = new SCApi();
         if ($api->memberships_delete()) {
             SC::transfer(SCRoutes::set("users", "memberships_index", array("userid" => $current_user->userid)));
         } else {
             throw new Exception("something went wrong");
         }
     } catch (Exception $ex) {
         SC::setFlashMessage($ex->getMessage(), "error");
         $this->show(true);
     }
 }
示例#4
0
 public function create()
 {
     SC::loginRequired();
     global $current_user;
     switch ($_GET["__content_type"]) {
         case "json":
             $api = new SCApi();
             $thread = $api->boards_threads_create();
             $output = array("transfer" => SCRoutes::set("threads", "show", array("boardid" => $thread->boardid, "threadid" => $thread->messageid)));
             echo SC::jsonify($output);
             break;
         case "html":
         default:
             try {
                 $api = new SCApi();
                 $thread = $api->boards_threads_create();
                 SC::transfer(SCRoutes::set("threads", "show", array("boardid" => $thread->boardid, "threadid" => $thread->messageid)));
             } catch (Exception $ex) {
                 SC::setFlashMessage($ex->getMessage(), "error");
                 $this->_new();
             }
     }
 }
示例#5
0
 public function go_to()
 {
     SC::transfer("board.php?boardid=" . $this->boardid);
 }
示例#6
0
<?php

require_once "config/environment.php";
require_once "sc_lib.php";
try {
    if (strpos($_SERVER["REQUEST_URI"], "index.php") > -1) {
        SC::transfer();
    }
    $uri = $_SERVER["REQUEST_URI"];
    $route_parts = SCRoutes::parseUrl();
    if (!$route_parts) {
        throw new Exception("This page does not exist", 404);
    }
    $route_parts["__content_type"] = SC::getResponseContentType();
    $_GET = array_merge($_GET, $route_parts);
    //var_dump($route_parts);
    $controller_file = SCBASEPATH . "/controllers/" . $route_parts["controller"] . ".php";
    if (file_exists($controller_file)) {
        require_once $controller_file;
        if ($controller) {
            if (method_exists($controller, $route_parts["action"])) {
                $controller->{$route_parts}["action"]();
            } else {
                throw new Exception("The " . $route_parts["action"] . " action has not been defined for the " . $route_parts["controller"] . " controller.", 500);
            }
        } else {
            throw new Exception("The " . $route_parts["controller"] . " controller has not been initialized", 500);
        }
    } else {
        throw new Exception("The " . $route_parts["controller"] . " controller does not exist", 500);
    }
示例#7
0
 public function goHome()
 {
     SC::transfer();
 }
示例#8
0
 static function handleException($ex)
 {
     $code = $ex->getCode() or $code = 400;
     if (in_array($code, array(401, 403))) {
         SC::transfer();
     } else {
         header($ex->getMessage(), true, $code);
         die($ex->getMessage());
     }
 }