Work on installer, fix a couple reply API bugs

master^2
Mike Koch 6 years ago
parent 16b1e7c491
commit 4e01fa7971
No known key found for this signature in database
GPG Key ID: 9BA5D7F8391455ED

@ -61,10 +61,21 @@ class ReplyCreator extends \BaseClass {
} }
$validationModel = new ValidationModel(); $validationModel = new ValidationModel();
if ($ticket->id !== $replyRequest->ticketId) {
$validationModel->errorKeys[] = 'TICKET_ID_TRACKING_NUMBER_MISMATCH';
}
if ($replyRequest->replyMessage === null || trim($replyRequest->replyMessage) === '') { if ($replyRequest->replyMessage === null || trim($replyRequest->replyMessage) === '') {
$validationModel->errorKeys[] = 'MESSAGE_REQUIRED'; $validationModel->errorKeys[] = 'MESSAGE_REQUIRED';
} }
if ($replyRequest->ipAddress === null || trim($replyRequest->ipAddress) === '') {
$validationModel->errorKeys[] = 'IP_REQUIRED';
}
if ($replyRequest->hasHtml === null) {
$validationModel->errorKeys[] = 'HAS_HTML_REQUIRED';
}
if ($heskSettings['email_view_ticket']) { if ($heskSettings['email_view_ticket']) {
if ($replyRequest->emailAddress === null || trim($replyRequest->emailAddress) === '') { if ($replyRequest->emailAddress === null || trim($replyRequest->emailAddress) === '') {
$validationModel->errorKeys[] = 'EMAIL_REQUIRED'; $validationModel->errorKeys[] = 'EMAIL_REQUIRED';
@ -77,7 +88,7 @@ class ReplyCreator extends \BaseClass {
throw new ValidationException($validationModel); throw new ValidationException($validationModel);
} }
if ($modsForHeskSettings['rich_text_for_tickets_for_customers']) { if ($replyRequest->hasHtml) {
$replyRequest->replyMessage = Helpers::heskMakeUrl($replyRequest->replyMessage); $replyRequest->replyMessage = Helpers::heskMakeUrl($replyRequest->replyMessage);
$replyRequest->replyMessage = nl2br($replyRequest->replyMessage); $replyRequest->replyMessage = nl2br($replyRequest->replyMessage);
} }

@ -16,17 +16,14 @@ class CustomerReplyController extends \BaseClass {
$jsonRequest = JsonRetriever::getJsonData(); $jsonRequest = JsonRetriever::getJsonData();
$createReplyByCustomerModel = new CreateReplyRequest(); $createReplyByCustomerModel = new CreateReplyRequest();
$createReplyByCustomerModel->id = $ticketId; $createReplyByCustomerModel->ticketId = intval($ticketId);
$createReplyByCustomerModel->emailAddress = Helpers::safeArrayGet($jsonRequest, 'email'); $createReplyByCustomerModel->emailAddress = Helpers::safeArrayGet($jsonRequest, 'email');
$createReplyByCustomerModel->trackingId = Helpers::safeArrayGet($jsonRequest, 'trackingId'); $createReplyByCustomerModel->trackingId = Helpers::safeArrayGet($jsonRequest, 'trackingId');
$createReplyByCustomerModel->replyMessage = Helpers::safeArrayGet($jsonRequest, 'message'); $createReplyByCustomerModel->replyMessage = Helpers::safeArrayGet($jsonRequest, 'message');
$createReplyByCustomerModel->hasHtml = Helpers::safeArrayGet($jsonRequest, 'html'); $html = Helpers::safeArrayGet($jsonRequest, 'html');
$createReplyByCustomerModel->hasHtml = $html === null ? null : $html === true;
$createReplyByCustomerModel->ipAddress = Helpers::safeArrayGet($jsonRequest, 'ip'); $createReplyByCustomerModel->ipAddress = Helpers::safeArrayGet($jsonRequest, 'ip');
if ($createReplyByCustomerModel->ipAddress === null) {
$createReplyByCustomerModel->ipAddress = hesk_getClientIP();
}
/* @var $modsForHeskSettingsGateway ModsForHeskSettingsGateway */ /* @var $modsForHeskSettingsGateway ModsForHeskSettingsGateway */
$modsForHeskSettingsGateway = $applicationContext->get(ModsForHeskSettingsGateway::clazz()); $modsForHeskSettingsGateway = $applicationContext->get(ModsForHeskSettingsGateway::clazz());
$modsForHesk_settings = $modsForHeskSettingsGateway->getAllSettings($hesk_settings); $modsForHesk_settings = $modsForHeskSettingsGateway->getAllSettings($hesk_settings);

@ -15,8 +15,8 @@
if (!defined('IN_SCRIPT')) {die('Invalid attempt');} if (!defined('IN_SCRIPT')) {die('Invalid attempt');}
// We will be installing this HESK version: // We will be installing this HESK version:
define('HESK_NEW_VERSION','2.7.6'); define('HESK_NEW_VERSION','2.8.1');
define('MODS_FOR_HESK_NEW_VERSION','3.3.0'); define('MODS_FOR_HESK_NEW_VERSION','2018.1.0');
define('REQUIRE_PHP_VERSION','5.3.0'); define('REQUIRE_PHP_VERSION','5.3.0');
define('REQUIRE_MYSQL_VERSION','5.0.7'); define('REQUIRE_MYSQL_VERSION','5.0.7');

Loading…
Cancel
Save