From 5a90d52724c9afa5499a27b65a05033ae6b924b8 Mon Sep 17 00:00:00 2001 From: Antonio Gallo Date: Thu, 7 Apr 2011 20:20:44 +0000 Subject: h-source: improved the way errors are shown --- .../Application/Controllers/GenericController.php | 64 +++++++++++++++++----- 1 file changed, 49 insertions(+), 15 deletions(-) (limited to 'h-source/Application/Controllers') diff --git a/h-source/Application/Controllers/GenericController.php b/h-source/Application/Controllers/GenericController.php index b6a5aac..31271b9 100644 --- a/h-source/Application/Controllers/GenericController.php +++ b/h-source/Application/Controllers/GenericController.php @@ -65,6 +65,8 @@ class GenericController extends BaseController $clean['token'] = sanitizeAlphanum($token); $data['notice'] = null; + $data['submission_response'] = 'error'; + $data['tree'] = $this->getSpecHardLink() . " » " . " insert"; $this->s['registered']->checkStatus(); @@ -103,7 +105,12 @@ class GenericController extends BaseController } } + if ($this->m['HardwareModel']->queryResult) + { + $data['submission_response'] = 'executed'; + } $this->viewRedirect($this->m['HardwareModel']->lastId); + } } } @@ -115,12 +122,21 @@ class GenericController extends BaseController $data['values'] = $this->m['HardwareModel']->getFormValues('insert','sanitizeHtml'); $this->append($data); - - $this->load('top_left'); - $this->load('license_notice'); - $this->load('form'); - $this->load('bottom_left'); - $this->right(); + + if (!isset($_POST['from_client'])) + { + $this->load('top_left'); + $this->load('license_notice'); + $this->load('form'); + $this->load('bottom_left'); + $this->right(); + } + else + { + header ("Content-Type:text/xml"); + $this->clean(); + $this->load('xml_response'); + } } else { @@ -196,6 +212,8 @@ class GenericController extends BaseController $clean['token'] = sanitizeAlphanum($token); $data['notice'] = null; + $data['submission_response'] = 'error'; + $this->s['registered']->checkStatus(); if (isset($_POST['id_hard'])) @@ -238,6 +256,10 @@ class GenericController extends BaseController //carry out the update database action $this->m['HardwareModel']->updateTable('update'); + if ($this->m['HardwareModel']->queryResult) + { + $data['submission_response'] = 'executed'; + } $this->viewRedirect($this->m['HardwareModel']->lastId); } } @@ -252,12 +274,21 @@ class GenericController extends BaseController $data['hiddenInput'] = "\n"; $this->append($data); - - $this->load('top_left'); - $this->load('license_notice'); - $this->load('form'); - $this->load('bottom_left'); - $this->right(); + + if (!isset($_POST['from_client'])) + { + $this->load('top_left'); + $this->load('license_notice'); + $this->load('form'); + $this->load('bottom_left'); + $this->right(); + } + else + { + header ("Content-Type:text/xml"); + $this->clean(); + $this->load('xml_response'); + } } else { @@ -344,11 +375,14 @@ class GenericController extends BaseController protected function viewRedirect($id) { $clean['id'] = (int)$id; - + if ($this->m['HardwareModel']->queryResult) { - $name = encodeUrl($this->m['HardwareModel']->getTheModelName($clean['id'])); - $this->redirect($this->controller.'/view/'.$this->lang.'/'.$clean['id'].'/'.$name.$this->viewStatus); + if (!isset($_POST['from_client'])) + { + $name = encodeUrl($this->m['HardwareModel']->getTheModelName($clean['id'])); + $this->redirect($this->controller.'/view/'.$this->lang.'/'.$clean['id'].'/'.$name.$this->viewStatus); + } } } -- cgit v1.2.3