1: <?php
2:
3: namespace Alpha\View\Renderer\Json;
4:
5: use Alpha\View\Renderer\RendererProviderInterface;
6: use Alpha\Util\Logging\Logger;
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: class RendererProviderJSON implements RendererProviderInterface
51: {
52: 53: 54: 55: 56: 57: 58:
59: private static $logger = null;
60:
61: 62: 63: 64: 65: 66: 67:
68: private $BO;
69:
70: 71: 72: 73: 74:
75: public function __construct()
76: {
77: self::$logger = new Logger('RendererProviderJSON');
78: self::$logger->debug('>>__construct()');
79:
80: self::$logger->debug('<<__construct');
81: }
82:
83: 84: 85:
86: public function setBO($BO)
87: {
88: $this->BO = $BO;
89: }
90:
91: 92: 93:
94: public function createView($fields = array())
95: {
96: return '';
97: }
98:
99: 100: 101:
102: public function editView($fields = array())
103: {
104: return '';
105: }
106:
107: 108: 109:
110: public function listView($fields = array())
111: {
112: self::$logger->debug('>>listView(fields=['.var_export($fields, true).'])');
113:
114: $json = json_encode($this->BO->toArray()).',';
115:
116: self::$logger->debug('<<listView [JSON]');
117:
118: return $json;
119: }
120:
121: 122: 123:
124: public function detailedView($fields = array())
125: {
126: self::$logger->debug('>>detailedView(fields=['.var_export($fields, true).'])');
127:
128: $json = json_encode($this->BO->toArray());
129:
130: self::$logger->debug('<<detailedView [JSON]');
131:
132: return $json;
133: }
134:
135: 136: 137:
138: public function adminView($fields = array())
139: {
140: return '';
141: }
142:
143: 144: 145:
146: public static function displayPageHead($controller)
147: {
148: return '';
149: }
150:
151: 152: 153:
154: public static function ($controller)
155: {
156: return '';
157: }
158:
159: 160: 161:
162: public static function displayUpdateMessage($message)
163: {
164: self::$logger->debug('>>displayUpdateMessage(fields=['.var_export($message, true).'])');
165:
166: $json = json_encode(array('message' => $message));
167:
168: self::$logger->debug('<<displayUpdateMessage [JSON]');
169:
170: return $json;
171: }
172:
173: 174: 175:
176: public static function displayErrorMessage($message)
177: {
178: self::$logger->debug('>>displayErrorMessage(fields=['.var_export($message, true).'])');
179:
180: $json = json_encode(array('message' => $message));
181:
182: self::$logger->debug('<<displayErrorMessage [JSON]');
183:
184: return $json;
185: }
186:
187: 188: 189:
190: public static function renderErrorPage($code, $message)
191: {
192: return '';
193: }
194:
195: 196: 197:
198: public static function renderDeleteForm($URI)
199: {
200: return '';
201: }
202:
203: 204: 205:
206: public static function renderSecurityFields()
207: {
208: return '';
209: }
210:
211: 212: 213:
214: public function renderIntegerField($name, $label, $mode, $value = '')
215: {
216: return '';
217: }
218:
219: 220: 221:
222: public function renderDoubleField($name, $label, $mode, $value = '')
223: {
224: return '';
225: }
226:
227: 228: 229:
230: public function renderBooleanField($name, $label, $mode, $value = '')
231: {
232: }
233:
234: 235: 236:
237: public function renderEnumField($name, $label, $mode, $options, $value = '')
238: {
239: return '';
240: }
241:
242: 243: 244:
245: public function renderDEnumField($name, $label, $mode, $options, $value = '')
246: {
247: return '';
248: }
249:
250: 251: 252:
253: public function renderDefaultField($name, $label, $mode, $value = '')
254: {
255: return '';
256: }
257:
258: 259: 260:
261: public function renderTextField($name, $label, $mode, $value = '')
262: {
263: return '';
264: }
265:
266: 267: 268:
269: public function renderStringField($name, $label, $mode, $value = '')
270: {
271: return '';
272: }
273:
274: 275: 276:
277: public function renderRelationField($name, $label, $mode, $value = '', $expanded = false, $buttons = true)
278: {
279: return '';
280: }
281:
282: 283: 284:
285: public function renderAllFields($mode, $filterFields = array(), $readOnlyFields = array())
286: {
287: self::$logger->debug('>>renderAllFields(fields=['.var_export($fields, true).'])');
288:
289: $json = json_encode(array_diff($this->BO->toArray(), $filterFields));
290:
291: self::$logger->debug('<<renderAllFields [JSON]');
292:
293: return $json;
294: }
295: }
296: