?> </a> </td> </tr> <?php $subtotal += $item->subtotal; } ?> <?php if (!empty($items)) { ?> <?php $order_details = \Order\Model_Order::order_info($order->id); ?> <tr class="order_total"> <td class="order_invisible"> </td> <td class="order_invisible"> </td> <td class="order_invisible" colspan="2" align="right"> <?php if (isset($panel_title)) { ?> <a href="<?php echo \Uri::create('admin/order/update/' . (isset($duplicate_order->id) ? $duplicate_order->id : $order->id)); ?> " class="btn btn-mini btn-primary"> Full Edit Order <?php echo isset($duplicate_order->number) ? $duplicate_order->number : $order->number;
<th scope="col" class="noresize">Date Added</th> <th scope="col" class="center" style="width: 40px;">Edit</th> </tr> </thead> <tbody> <?php // var_dump($items); ?> <?php foreach ($items as $item) { ?> <?php $item_info = \Order\Model_Order::order_info($item->id); ?> <tr> <td><?php echo $item->purchase_number; ?> </td> <td> <?php $names = array('Red Eleven Slim Fit Jacket', 'Bellfield Checked Shirt', 'Brogues In multi Color', 'Dark Jacket'); echo $names[(int) rand(0, 3)]; ?> </td> <td title="<?php echo date('d/m/Y \\a\\t H:i:s', $item->created_at); ?>
public function get_search_items($user_id = false) { // Override group_id if its a search $user_id = \Input::get('user_id', $user_id); if ($user_id && \Sentry::user_exists((int) $user_id)) { $user = \Sentry::user((int) $user_id); } $items = \Order\Model_Order::find(function ($query) { if (isset($user)) { $query->where('user_id', $user->id); } $query->where('finished', '1'); $query->order_by('id', 'desc'); }); foreach (\Input::get() as $key => $value) { if (!empty($value) || $value == '0') { switch ($key) { case 'title': foreach ($items as $number => $item) { $full_name = $item->first_name . ' ' . $item->last_name; if (stripos($item->company, $value) === false && stripos($item->id, $value) === false) { if (stripos($full_name, $value) === false) { unset($items[$number]); } } } break; case 'email': foreach ($items as $number => $item) { if (stripos($item->email, $value) === false) { unset($items[$number]); } } break; case 'order_total_from': is_numeric($value) or $value == 0; foreach ($items as $number => $item) { $item_details = \Order\Model_Order::order_info($item->id); if (isset($item_details['total_price']) && $item_details['total_price'] < $value) { unset($items[$number]); } } break; case 'order_total_to': is_numeric($value) or $value == 0; foreach ($items as $number => $item) { $item_details = \Order\Model_Order::order_info($item->id); if (isset($item_details['total_price']) && $item_details['total_price'] > $value) { unset($items[$number]); } } break; case 'date_from': // convert format date to m/d/Y $parts = explode('/', $value); $value = $parts[1] . '/' . $parts[0] . '/' . $parts[2]; if ($date = strtotime($value)) { foreach ($items as $number => $item) { if ($item->created_at < $date) { unset($items[$number]); } } } break; case 'date_to': // convert format date to m/d/Y $parts = explode('/', $value); $value = $parts[1] . '/' . $parts[0] . '/' . $parts[2]; if ($date = strtotime($value)) { foreach ($items as $number => $item) { if ($item->created_at > $date) { unset($items[$number]); } } } break; case 'status': foreach ($items as $number => $item) { if ($value == 'false') { break; } if (stripos($item->status, $value) === false) { unset($items[$number]); } } break; case 'tracking_no': foreach ($items as $number => $item) { if (!$value != '') { break; } if (stripos($item->tracking_no, $value) === false) { unset($items[$number]); } } break; case 'payment_method': foreach ($items as $number => $item) { if ($value == 'false') { break; } if (!empty($item->last_payment)) { if ($item->last_payment->method != $value) { unset($items[$number]); } } } break; case 'user_group': foreach ($items as $number => $item) { if ($value == 'false') { break; } if ($item->user_id && \Sentry::user_exists((int) $item->user_id)) { $user = \Sentry::user((int) $item->user_id); if ($user->in_group($value)) { unset($items[$number]); } } } break; case 'country': foreach ($items as $number => $item) { if ($value == 'false') { break; } if (stripos($item->country, $value) === false) { unset($items[$number]); } } break; case 'state': foreach ($items as $number => $item) { if ($value == 'false') { break; } if (stripos($item->country, $value) === false) { unset($items[$number]); } } break; case 'product_category': foreach ($items as $number => $item) { if ($value == 'false') { break; } // Get order products if (!empty($item->products)) { $exists = array(); foreach ($item->products as $product) { // Find category if (\Product\Model_Product_To_Categories::find(array('where' => array('product_id' => $product->product_id, 'category_id' => $value)))) { $exists[] = $product->id; } } if (empty($exists)) { unset($items[$number]); } } } break; } } } // Reset to empty array if there are no result found by query if (is_null($items)) { $items = array(); } // Initiate pagination $pagination = \Hybrid\Pagination::make(array('total_items' => count($items), 'per_page' => \Input::get('per_page', 10), 'uri_segment' => null)); // Remove unwanted items, and show only required ones $items = array_slice($items, $pagination->offset, $pagination->per_page); return array('items' => $items, 'pagination' => $pagination); }
public function get_search_customer_products($user_id = false) { // Override group_id if its a search $user_id = \Input::get('user_id', $user_id); if ($user_id && \Sentry::user_exists((int) $user_id)) { $user = \Sentry::user((int) $user_id); } $items = \Order\Model_Order::find(function ($query) { if (isset($user)) { $query->where('user_id', $user->id); } //get customer only -- start $customer_list = \Sentry::user()->all('front'); $customer_id_list = array(); foreach ($customer_list as $customer) { array_push($customer_id_list, $customer['id']); } $query->where('user_id', 'in', $customer_id_list); //get customer only -- end $query->where('finished', '1'); $query->order_by('id', 'desc'); }); foreach (\Input::get() as $key => $value) { if (!empty($value) || $value == '0') { switch ($key) { case 'title': if ($value != 'customer_order_select') { foreach ($items as $number => $item) { $full_name = $item->first_name . ' ' . $item->last_name; if (stripos($item->company, $value) === false && stripos($item->id, $value) === false) { if (stripos($full_name, $value) === false) { unset($items[$number]); } } } } break; case 'email': foreach ($items as $number => $item) { if (stripos($item->email, $value) === false) { unset($items[$number]); } } break; case 'order_total_from': is_numeric($value) or $value == 0; foreach ($items as $number => $item) { $item_details = \Order\Model_Order::order_info($item->id); if (isset($item_details['total_price']) && $item_details['total_price'] < $value) { unset($items[$number]); } } break; case 'order_total_to': is_numeric($value) or $value == 0; foreach ($items as $number => $item) { $item_details = \Order\Model_Order::order_info($item->id); if (isset($item_details['total_price']) && $item_details['total_price'] > $value) { unset($items[$number]); } } break; case 'date_from': // convert format date to m/d/Y $parts = explode('/', $value); $value = $parts[1] . '/' . $parts[0] . '/' . $parts[2]; if ($date = strtotime($value)) { foreach ($items as $number => $item) { if ($item->created_at < $date) { unset($items[$number]); } } } break; case 'date_to': // convert format date to m/d/Y $parts = explode('/', $value); $value = $parts[1] . '/' . $parts[0] . '/' . $parts[2]; if ($date = strtotime($value)) { foreach ($items as $number => $item) { if ($item->created_at > $date) { unset($items[$number]); } } } break; case 'status': foreach ($items as $number => $item) { if ($value == 'false') { break; } if (stripos($item->status, $value) === false) { unset($items[$number]); } } break; case 'tracking_no': foreach ($items as $number => $item) { if (!$value != '') { break; } if (stripos($item->tracking_no, $value) === false) { unset($items[$number]); } } break; case 'payment_method': foreach ($items as $number => $item) { if ($value == 'false') { break; } if (!empty($item->last_payment)) { if ($item->last_payment->method != $value) { unset($items[$number]); } } } break; case 'user_group': foreach ($items as $number => $item) { if ($value == 'false') { break; } if ($item->user_id && \Sentry::user_exists((int) $item->user_id)) { $user = \Sentry::user((int) $item->user_id); if ($user->in_group($value)) { unset($items[$number]); } } } break; case 'country': foreach ($items as $number => $item) { if ($value == 'false') { break; } if (stripos($item->country, $value) === false) { unset($items[$number]); } } break; case 'state': foreach ($items as $number => $item) { if ($value == 'false') { break; } if (stripos($item->country, $value) === false) { unset($items[$number]); } } break; case 'product_category': foreach ($items as $number => $item) { if ($value == 'false') { break; } // Get order products if (!empty($item->products)) { $exists = array(); foreach ($item->products as $product) { // Find category if (\Product\Model_Product_To_Categories::find(array('where' => array('product_id' => $product->product_id, 'category_id' => $value)))) { $exists[] = $product->id; } } if (empty($exists)) { unset($items[$number]); } } } break; } } } // Reset to empty array if there are no result found by query if (empty($items)) { $items = array(); } return array('items' => $items); }
public function get_search_items2($user_id = false) { // Override group_id if its a search $user_id = \Input::get('user_id', $user_id); if ($user_id && \Sentry::user_exists((int) $user_id)) { $user = \Sentry::user((int) $user_id); } $items = \Order\Model_Order::find(function ($query) { if (isset($user)) { $query->where('user_id', $user->id); } $query->order_by('main_number', 'desc'); $query->order_by('id', 'asc'); }); foreach (\Input::get() as $key => $value) { if (!empty($value) || $value == '0') { switch ($key) { case 'title': foreach ($items as $number => $item) { $full_name = $item->first_name . ' ' . $item->last_name; if (stripos($item->company, $value) === false) { if (stripos($full_name, $value) === false) { unset($items[$number]); } } } break; case 'email': foreach ($items as $number => $item) { if (stripos($item->email, $value) === false) { unset($items[$number]); } } break; case 'custom_order_status': if (array_key_exists($value, \Config::get('details.status', array()))) { foreach ($items as $number => $item) { if ($item->status != $value) { unset($items[$number]); } } } break; case 'order_total_from': is_numeric($value) or $value = 0; foreach ($items as $number => $item) { $item_details = \Order\Model_Order::order_info($item->id); if ($item_details['total_price'] < $value) { unset($items[$number]); } } break; case 'order_total_to': is_numeric($value) or $value = 0; foreach ($items as $number => $item) { $item_details = \Order\Model_Order::order_info($item->id); if ($item_details['total_price'] > $value) { unset($items[$number]); } } break; case 'date_from': if ($date = strtotime($value)) { foreach ($items as $number => $item) { if ($item->created_at < $date) { unset($items[$number]); } } } break; case 'date_to': if ($date = strtotime($value)) { foreach ($items as $number => $item) { if ($item->created_at > $date) { unset($items[$number]); } } } break; case 'sch_from': if ($date = strtotime($value)) { foreach ($items as $number => $item) { if ($item->sch_delivery < $date) { unset($items[$number]); } } } break; case 'sch_to': if ($date = strtotime($value)) { foreach ($items as $number => $item) { if ($item->sch_delivery > $date) { unset($items[$number]); } } } break; case 'status': foreach ($items as $number => $item) { if ($value == 'false') { break; } if (stripos($item->status, $value) === false) { unset($items[$number]); } } break; case 'invoice_status': foreach ($items as $number => $item) { if ($value == 'false') { break; } if (stripos($item->invoice_status, $value) === false) { unset($items[$number]); } } break; case 'delivery_status': foreach ($items as $number => $item) { if ($value == 'false') { break; } if (stripos($item->delivery_status, $value) === false) { unset($items[$number]); } } break; case 'user_group': foreach ($items as $number => $item) { if ($value == 'false') { break; } if (!\Sentry::user_exists((int) $item->user_id) || !\Sentry::user((int) $item->user_id)->in_group($value)) { unset($items[$number]); } } break; } } } // Reset to empty array if there are no result found by query if (is_null($items)) { $items = array(); } // Initiate pagination $pagination = \Hybrid\Pagination::make(array('total_items' => count($items), 'per_page' => \Input::get('per_page', 10), 'uri_segment' => null)); // Remove unwanted items, and show only required ones $items = array_slice($items, $pagination->offset, $pagination->per_page); return array('items' => $items, 'pagination' => $pagination); }