summaryrefslogtreecommitdiff
path: root/lib/minz/Response.php
blob: fcf53c5b1168da33cb41fb511d1b3a53fcf8b5da (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<?php
/** 
 * MINZ - Copyright 2011 Marien Fressinaud
 * Sous licence AGPL3 <http://www.gnu.org/licenses/>
*/

/**
 * Response représente la requête http renvoyée à l'utilisateur
 */
class Response {
	private static $header = 'HTTP/1.0 200 OK';
	private static $body = '';
	
	/**
	 * Mets à jour le body de la Response
	 * @param $text le texte à incorporer dans le body
	 */
	public static function setBody ($text) {
		self::$body = $text;
	}
	
	/**
	 * Mets à jour le header de la Response
	 * @param $code le code HTTP, valeurs possibles
	 *	- 200 (OK)
	 *	- 403 (Forbidden)
	 *	- 404 (Forbidden)
	 *	- 500 (Forbidden) -> par défaut si $code erroné
	 *	- 503 (Forbidden)
	 */
	public static function setHeader ($code) {
		switch ($code) {
		case 200 :
			self::$header = 'HTTP/1.0 200 OK';
			break;
		case 403 :
			self::$header = 'HTTP/1.0 403 Forbidden';
			break;
		case 404 :
			self::$header = 'HTTP/1.0 404 Not Found';
			break;
		case 500 :
			self::$header = 'HTTP/1.0 500 Internal Server Error';
			break;
		case 503 :
			self::$header = 'HTTP/1.0 503 Service Unavailable';
			break;
		default :
			self::$header = 'HTTP/1.0 500 Internal Server Error';
		}
	}

	/**
	 * Envoie la Response à l'utilisateur
	 */
	public static function send () {
		header (self::$header);
		echo self::$body;
	}
}