//update the tracking number
$order->trackingNumber = "1z555555555";
//parse entry
if (isset($_REQUEST['entry'])) {
    $entry = ApiLinks::decodeHateoasLink($_REQUEST['entry']);
} else {
    $entry = LSM_API_ENDPOINT . "order/ship";
}
//ensure we have a request to create
$lsm = new LsmCurl();
$lsm->setEndpoint($entry);
$lsm->usePost();
//send the request
$lsm->setParameters($order);
$lsm->sendRequest();
$response = $lsm->getResponseContent();
$status = (int) $lsm->getResponseStatus();
if (!$response || $status < 200 || $status > 204 || @(!$response->isSuccess)) {
    Util::getTemplate('500.php');
    return;
}
Util::getHeader();
if (DEBUG_API_CALLS) {
    echo "<pre class='debug'>";
    var_dump($response);
    echo "</pre>";
}
?>
<div class="row">
    <div class="col-lg-12">
        <h1 class="page-header">Order Successfully Marked As Shipped</h1>
//force a search query
if (!isset($_REQUEST['q']) || empty($_REQUEST['q'])) {
    Util::getTemplate('index.php');
    //@todo change to partners.search.php if feature gets built
    return;
}
if (isset($_REQUEST['entry'])) {
    $entry = ApiLinks::decodeHateoasLink($_REQUEST['entry']);
} else {
    $entry = LSM_API_ENDPOINT . "partner/" . $_REQUEST['q'];
}
$lsm = new LsmCurl();
$lsm->setEndpoint($entry);
$lsm->useGet();
$lsm->sendRequest();
$partner = $lsm->getResponseContent();
if (!$partner || (int) $lsm->getResponseStatus() != 200) {
    Util::getTemplate('500.php');
    return;
}
Util::getHeader();
if (DEBUG_API_CALLS) {
    echo "<pre class='debug'>";
    var_dump($partner);
    echo "</pre>";
}
?>
<div class="row">
    <div class="col-lg-12">
        <h1 class="page-header">Partner Details</h1>
    $entry = ApiLinks::decodeHateoasLink($_REQUEST['entry']);
} else {
    $entry = LSM_API_ENDPOINT . "review/partner";
}
$lsm = new LsmCurl();
$lsm->setEndpoint($entry);
$lsm->usePut();
//build the request
$PartnerReview = new StdClass();
$PartnerReview->partnerID = (int) $_REQUEST['q'];
$PartnerReview->rating = (int) $_REQUEST['rating'];
$PartnerReview->review = $_REQUEST['review'];
$PartnerReview->customerID = Auth::getCustomerId();
$lsm->setParameters($PartnerReview);
$lsm->sendRequest();
$review = $lsm->getResponseContent();
if (!$review || (int) $lsm->getResponseStatus() != 200) {
    Util::getTemplate('500.php');
    return;
}
Util::getHeader();
if (DEBUG_API_CALLS) {
    echo "<pre class='debug'>";
    var_dump($review);
    echo "</pre>";
}
?>

<!-- Page Heading -->
<div class="row">
    <div class="col-lg-12">
 * Displays product search results
 */
if (!Auth::isAuthenticated()) {
    Util::getTemplate('login.php');
    return;
}
//force a search query
if (!isset($_REQUEST['q']) || empty($_REQUEST['q'])) {
    Util::getTemplate('index.php');
    return;
}
$lsm = new LsmCurl();
$lsm->setEndpoint(LSM_API_ENDPOINT . "products/" . $_REQUEST['q']);
$lsm->useGet();
$lsm->sendRequest();
$products = $lsm->getResponseContent();
$status = (int) $lsm->getResponseStatus();
if ($status < 200 || $status > 204) {
    Util::getTemplate('500.php');
    return;
}
Util::getHeader();
?>
    
    <!-- Page Heading -->
    <div class="row">
        <div class="col-lg-12">
            <h1 class="page-header">Products
                <small>Showing products matching: <em><?php 
echo $_REQUEST['q'];
?>
$lsm = new LsmCurl();
$lsm->setEndpoint($entry);
$lsm->useGet();
$lsm->sendRequest();
$order = $lsm->getResponseContent();
if (!$order || (int) $lsm->getResponseStatus() != 200) {
    Util::getTemplate('500.php');
    return;
}
//get product details
$productEntry = LSM_API_ENDPOINT . "product-by-id/" . $order->productID;
$productLsm = new LsmCurl();
$productLsm->setEndpoint($productEntry);
$productLsm->useGet();
$productLsm->sendRequest();
$product = $productLsm->getResponseContent();
if (!$product || (int) $productLsm->getResponseStatus() != 200) {
    Util::getTemplate('500.php');
    return;
}
Util::getHeader();
if (DEBUG_API_CALLS) {
    echo "<pre class='debug'>";
    var_dump($order);
    echo "</pre>";
    echo "<pre class='debug'>";
    var_dump($product);
    echo "</pre>";
}
//get the order status
switch ($order->orderStatusCode) {
//force a search query
if (!isset($_REQUEST['q']) || empty($_REQUEST['q'])) {
    Util::getTemplate('index.php');
    return;
}
//get order details
if (isset($_REQUEST['entry'])) {
    $entry = ApiLinks::decodeHateoasLink($_REQUEST['entry']);
} else {
    $entry = LSM_API_ENDPOINT . "customer/orders/" . $_REQUEST['q'];
}
$lsm = new LsmCurl();
$lsm->setEndpoint($entry);
$lsm->useGet();
$lsm->sendRequest();
$orders = $lsm->getResponseContent();
if (!$orders || (int) $lsm->getResponseStatus() != 200) {
    Util::getTemplate('500.php');
    return;
}
Util::getHeader();
?>

<!-- Page Heading -->
<div class="row">
    <div class="col-lg-12">
        <h1 class="page-header">Customer Order History</h1>
        <p>Showing all orders</p>
    </div>  
</div>
//force a search query
if (!isset($_REQUEST['q']) || empty($_REQUEST['q'])) {
    Util::getTemplate('index.php');
    //@todo change to customers.search.php if feature gets built
    return;
}
if (isset($_REQUEST['entry'])) {
    $entry = ApiLinks::decodeHateoasLink($_REQUEST['entry']);
} else {
    $entry = LSM_API_ENDPOINT . "customer/" . $_REQUEST['q'];
}
$lsm = new LsmCurl();
$lsm->setEndpoint($entry);
$lsm->useGet();
$lsm->sendRequest();
$customer = $lsm->getResponseContent();
if (!$customer || (int) $lsm->getResponseStatus() != 200) {
    Util::getTemplate('500.php');
    return;
}
Util::getHeader();
if (DEBUG_API_CALLS) {
    echo "<pre class='debug'>";
    var_dump($customer);
    echo "</pre>";
}
?>
<div class="row">
    <div class="col-lg-12">
        <h1 class="page-header">Customer Details</h1>
//force a search query
if (!isset($_REQUEST['q']) || empty($_REQUEST['q'])) {
    Util::getTemplate('index.php');
    //@todo change to partners.search.php if feature gets built
    return;
}
if (isset($_REQUEST['entry'])) {
    $entry = ApiLinks::decodeHateoasLink($_REQUEST['entry']);
} else {
    $entry = LSM_API_ENDPOINT . "report/" . $_REQUEST['q'];
}
$lsm = new LsmCurl();
$lsm->setEndpoint($entry);
$lsm->useGet();
$lsm->sendRequest();
$report = $lsm->getResponseContent();
if ((int) $lsm->getResponseStatus() != 200) {
    Util::getTemplate('500.php');
    return;
}
Util::getHeader();
if (DEBUG_API_CALLS) {
    echo "<pre class='debug'>";
    var_dump($report);
    echo "</pre>";
}
?>
<div class="row">
    <div class="col-lg-12">
        <h1 class="page-header">Partner Sales Report <small>All Orders By Product ID</small></h1>
    </div>