diff --git a/source/webui/pages/admin.php b/source/webui/pages/admin.php new file mode 100644 index 0000000..0a46c19 --- /dev/null +++ b/source/webui/pages/admin.php @@ -0,0 +1,11 @@ +auth(); + +$services = StatusBoard_Service::all(); +$this->smarty->assign('services', $services); + +$users = $auth->listUsers(); +$this->smarty->assign('users', $users); +?> \ No newline at end of file diff --git a/source/webui/pages/admin/incident.php b/source/webui/pages/admin/incident.php new file mode 100644 index 0000000..12ff4dd --- /dev/null +++ b/source/webui/pages/admin/incident.php @@ -0,0 +1,29 @@ +request(); + +$service_id = $request->get('service', 'Sihnon_Exception_InvalidParameters'); +$site_id = $request->get('site', 'Sihnon_Exception_InvalidParameters'); +$incident_id = $request->get('id', 'Sihnon_Exception_InvalidParameters'); + +$service = null; +$site = null; +$incident = null; + +try { + $service = StatusBoard_Service::fromId($service_id); + $site = StatusBoard_Site::fromId($site_id); + $incident = StatusBoard_Incident::fromId($incident_id); +} catch (Sihnon_Exception_ResultCountMismatch $e) { + StatusBoard_Page::redirect('errors/404'); +} + +$statuses = $incident->statusChanges(); + +$this->smarty->assign('service', $service); +$this->smarty->assign('site', $site); +$this->smarty->assign('incident', $incident); +$this->smarty->assign('statuses', $statuses); + +?> \ No newline at end of file diff --git a/source/webui/pages/admin/service.php b/source/webui/pages/admin/service.php new file mode 100644 index 0000000..560c11c --- /dev/null +++ b/source/webui/pages/admin/service.php @@ -0,0 +1,19 @@ +request(); + +$service_id = $request->get('id', 'Sihnon_Exception_InvalidParameters'); +$service = null; +try { + $service = StatusBoard_Service::fromId($service_id); +} catch (Sihnon_Exception_ResultCountMismatch $e) { + StatusBoard_Page::redirect('errors/404'); +} + +$sites = $service->sites(); + +$this->smarty->assign('service', $service); +$this->smarty->assign('sites', $sites); + +?> \ No newline at end of file diff --git a/source/webui/pages/admin/site.php b/source/webui/pages/admin/site.php new file mode 100644 index 0000000..48fbbbb --- /dev/null +++ b/source/webui/pages/admin/site.php @@ -0,0 +1,25 @@ +request(); + +$service_id = $request->get('service', 'Sihnon_Exception_InvalidParameters'); +$site_id = $request->get('id', 'Sihnon_Exception_InvalidParameters'); + +$service = null; +$site = null; + +try { + $service = StatusBoard_Service::fromId($service_id); + $site = StatusBoard_Site::fromId($site_id); +} catch (Sihnon_Exception_ResultCountMismatch $e) { + StatusBoard_Page::redirect('errors/404'); +} + +$open_incidents = $site->openIncidents(); + +$this->smarty->assign('service', $service); +$this->smarty->assign('site', $site); +$this->smarty->assign('open_incidents', $open_incidents); + +?> \ No newline at end of file diff --git a/source/webui/templates/admin.tpl b/source/webui/templates/admin.tpl index 30404ce..3997870 100644 --- a/source/webui/templates/admin.tpl +++ b/source/webui/templates/admin.tpl @@ -1 +1,37 @@ -TODO \ No newline at end of file +
+ Click on a Service to edit its properties, or access any of the sites defined under it. +
+ +{if $services} ++ Click on a User to edit its properties. +
+ +| Date/Time | +Status | + + + {foreach from=$statuses item=status} +
|---|---|
|
+ {StatusBoard_DateTime::fuzzyTime($status->ctime)} + {$status->ctime|date_format:'y-m-d h:i:s'} + |
+ {StatusBoard_Status::name($status->status)} | +