Only allow getTicketById
This commit is contained in:
parent
d7876bfe50
commit
1a502e7a1e
@ -1,6 +1,6 @@
|
||||
<?php
|
||||
|
||||
require('/../models/ticket.php');
|
||||
require(__DIR__ . '/../models/ticket.php');
|
||||
|
||||
|
||||
class TicketRepository {
|
||||
@ -9,8 +9,8 @@ class TicketRepository {
|
||||
}
|
||||
|
||||
public static function getTicketForId($id, $settings) {
|
||||
|
||||
$connection = new mysqli($settings['db_host'], $settings['db_user'], $settings['db_pass'], $settings['db_name']);
|
||||
|
||||
if ($connection->connect_error)
|
||||
{
|
||||
return ('An error occurred when establishing a connection to the database.');
|
||||
@ -26,35 +26,6 @@ class TicketRepository {
|
||||
return self::generateTicketModel($result);
|
||||
}
|
||||
|
||||
public static function getTicketForTrackingId($id, $settings)
|
||||
{
|
||||
$connection = new mysqli($settings['db_host'], $settings['db_user'], $settings['db_pass'], $settings['db_name']);
|
||||
if ($connection->connect_error)
|
||||
{
|
||||
return ('An error occurred when establishing a connection to the database.');
|
||||
}
|
||||
|
||||
$sql = self::getDefaultSql($settings).
|
||||
'WHERE T.trackid = '.$id;
|
||||
$results = $connection->query($sql);
|
||||
|
||||
//-- There should only be one result as Tracking IDs should be unique. If there are two, return a 422 response.
|
||||
if ($results->num_rows > 1)
|
||||
{
|
||||
header(http_response_code(422));
|
||||
return;
|
||||
} elseif ($results->num_rows == 0)
|
||||
{
|
||||
//-- No ticket found. Return a 404.
|
||||
header(http_response_code(404));
|
||||
return;
|
||||
} else {
|
||||
$result = $results->fetch_assoc();
|
||||
$connection->close();
|
||||
return self::generateTicketModel($result);
|
||||
}
|
||||
}
|
||||
|
||||
private static function generateTicketModel($result) {
|
||||
$ticket = new Ticket();
|
||||
|
||||
|
@ -3,21 +3,16 @@
|
||||
//-- This service will return ticket information for a specific ticket ID (NOT TRACKING ID)
|
||||
header('Content-Type: application/json');
|
||||
define('IN_SCRIPT',1);
|
||||
define('HESK_PATH','/../../');
|
||||
define('HESK_PATH','../../');
|
||||
|
||||
require(HESK_PATH . 'hesk_settings.inc.php');
|
||||
include('/../repositories/ticketRepository.php');
|
||||
include(HESK_PATH . 'hesk_settings.inc.php');
|
||||
include(__DIR__ . '/../repositories/ticketRepository.php');
|
||||
|
||||
if(isset($_GET['id']))
|
||||
{
|
||||
$ticket = TicketRepository::getTicketForId($_GET['id'], $hesk_settings);
|
||||
echo json_encode($ticket);
|
||||
}
|
||||
elseif (isset($_GET['trackingid']))
|
||||
{
|
||||
$ticket = TicketRepository::getTicketForTrackingId($_GET['trackingid'], $hesk_settings);
|
||||
echo json_encode($ticket);
|
||||
}
|
||||
else
|
||||
{
|
||||
header(http_response_code(400));
|
Loading…
x
Reference in New Issue
Block a user