Add POST service-messages endpoint

master
Mike Koch 7 years ago
parent d305ccf9b3
commit 311a48487d
No known key found for this signature in database
GPG Key ID: 9BA5D7F8391455ED

@ -19,6 +19,26 @@ class ServiceMessageHandler extends \BaseClass {
function createServiceMessage($serviceMessage, $heskSettings) { function createServiceMessage($serviceMessage, $heskSettings) {
$this->validate($serviceMessage); $this->validate($serviceMessage);
if ($serviceMessage->icon === null) {
switch ($serviceMessage->style) {
case ServiceMessageStyle::NONE:
$serviceMessage->icon = '';
break;
case ServiceMessageStyle::INFO:
$serviceMessage->icon = 'fa fa-comment';
break;
case ServiceMessageStyle::NOTICE:
$serviceMessage->icon = 'fa fa-exclamation-triangle';
break;
case ServiceMessageStyle::ERROR:
$serviceMessage->icon = 'fa fa-times-circle';
break;
case ServiceMessageStyle::SUCCESS:
$serviceMessage->icon = 'fa fa-check-circle';
break;
}
}
return $this->serviceMessageGateway->createServiceMessage($serviceMessage, $heskSettings); return $this->serviceMessageGateway->createServiceMessage($serviceMessage, $heskSettings);
} }
@ -31,9 +51,6 @@ class ServiceMessageHandler extends \BaseClass {
if ($serviceMessage->createdBy < 1) { if ($serviceMessage->createdBy < 1) {
$validationModel->errorKeys[] = 'MISSING_CREATOR'; $validationModel->errorKeys[] = 'MISSING_CREATOR';
} }
if ($serviceMessage->icon === null || trim($serviceMessage->icon) === '') {
$validationModel->errorKeys[] = 'MISSING_ICON';
}
if ($serviceMessage->message === null || trim($serviceMessage->message) === '') { if ($serviceMessage->message === null || trim($serviceMessage->message) === '') {
$validationModel->errorKeys[] = 'MISSING_MESSAGE'; $validationModel->errorKeys[] = 'MISSING_MESSAGE';
} }

@ -28,6 +28,7 @@ class ServiceMessagesController extends \BaseClass {
private function buildElementModel($data, $userContext) { private function buildElementModel($data, $userContext) {
$serviceMessage = new ServiceMessage(); $serviceMessage = new ServiceMessage();
$serviceMessage->createdBy = $userContext->id; $serviceMessage->createdBy = $userContext->id;
$serviceMessage->title = $data['title'];
$serviceMessage->icon = $data['icon']; $serviceMessage->icon = $data['icon'];
$serviceMessage->message = $data['message']; $serviceMessage->message = $data['message'];
$serviceMessage->published = $data['published']; $serviceMessage->published = $data['published'];

@ -3,6 +3,7 @@
namespace DataAccess\ServiceMessages; namespace DataAccess\ServiceMessages;
use BusinessLogic\DateTimeHelpers;
use BusinessLogic\ServiceMessages\ServiceMessage; use BusinessLogic\ServiceMessages\ServiceMessage;
use BusinessLogic\ServiceMessages\ServiceMessageStyle; use BusinessLogic\ServiceMessages\ServiceMessageStyle;
use DataAccess\CommonDao; use DataAccess\CommonDao;
@ -36,6 +37,13 @@ class ServiceMessagesGateway extends CommonDao {
$serviceMessage->id = hesk_dbInsertID(); $serviceMessage->id = hesk_dbInsertID();
// Get the autogenerated fields
$rs = hesk_dbQuery("SELECT `dt`, `order` FROM `" . hesk_dbEscape($heskSettings['db_pfix']) . "service_messages`
WHERE `id` = " . intval($serviceMessage->id));
$row = hesk_dbFetchAssoc($rs);
$serviceMessage->dateCreated = $row['dt'];
$serviceMessage->order = $row['order'];
$this->close(); $this->close();
return $serviceMessage; return $serviceMessage;

@ -185,7 +185,8 @@ function hesk_service_message($sm)
?> ?>
<div class="<?php echo $style; ?>"> <div class="<?php echo $style; ?>">
<?php echo $faIcon == '' ? '' : '<i class="' . $faIcon . '"></i> '; ?> <?php echo $faIcon == '' ? '' : '<i class="' . $faIcon . '"></i> '; ?>
<b><?php echo $sm['title']; ?></b><?php echo $sm['message']; ?> <b><?php echo $sm['title']; ?></b><br>
<?php echo $sm['message']; ?>
</div> </div>
<br/> <br/>
<?php <?php

Loading…
Cancel
Save