-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathview.php
70 lines (62 loc) · 1.24 KB
/
view.php
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
61
62
63
64
65
66
67
68
69
70
<?php
class view
{
/**
* The controller this view belongs to.
* @var controller
*/
public $controller = null;
protected function init()
{
// Override me with your own constructor (optional).
}
public function view($controller)
{
$this->controller = $controller;
}
/**
* Called by the layout when its time to display the page.
* Simply just includes the view php script.
*/
public function show($viewFile)
{
include_once($viewFile);
}
public function render($view)
{
require("../app/$view");
}
/**
* Gets the note stored from a controller in setNote().
* You can pass in a string like <p>%</p>, and we'll
* return that string with the note replacing the %.
*/
public function getNote($template=false, $key='note')
{
$note = isset_val($_SESSION[$key]);
$_SESSION[$key] = '';
if($note && $template) $note = str_replace('%', $note, $template);
return $note;
}
/**
* Like getNote, but for errors.
*/
public function getError($template=false)
{
return $this->getNote($template, 'error');
}
/**
* Returns HTML <script> tags to wrap your JS in.
*/
public function addJS($js)
{
$html=<<<HTML
<script type="text/javascript">
// <![CDATA[
$js
// ]]>
</script>
HTML;
return $html;
}
}