Bladeren bron

added Response::sendRedirect

Piotr Labudda 8 jaren geleden
bovenliggende
commit
72c7c14cd1
1 gewijzigde bestanden met toevoegingen van 21 en 0 verwijderingen
  1. 21 0
      SE/se-lib/Response.php

+ 21 - 0
SE/se-lib/Response.php

@@ -91,6 +91,13 @@ class Response {
 			$response['body'] = $e->getBody();
 			DBG::log($e);
 			Response::sendJsonExit($response);
+		} catch (HttpException $e) {
+			Http::sendHeaderByCode($e->getCode());
+			$response['type'] = 'error';
+			$response['msg'] = $e->getMessage();
+			$response['code'] = "#" . $e->getCode() . "L" . $e->getLine();
+			DBG::log($e);
+			Response::sendJsonExit($response);
 		} catch (Exception $e) {
 			Http::sendHeaderByCode(500);
 			$response['type'] = 'error';
@@ -103,4 +110,18 @@ class Response {
 		Response::sendJsonExit($response);
 	}
 
+	static function sendRedirect($url) {
+		if (!headers_sent()) {
+			header("HTTP/1.1 303 See Other");
+			header("Location: {$url}");
+		} else {
+			echo'<script type="text/javascript">'."window.location.href='{$url}';".'</script>';
+			echo "\n".'<noscript>';
+			echo "\n".'<meta http-equiv="refresh" content="0;url='.$url.'" />';
+			echo "\n".'</noscript>';
+			echo'<p>'.'<a href="'.$url.'">'."dalej".'</a>'.'</p>';
+		}
+		exit;
+	}
+
 }