/** * Delete Order Product * * @param type $id = Product ID */ public function action_delete_product($order_id = false, $product_id = false) { if (is_numeric($order_id) && is_numeric($product_id)) { if ($order = \Order\Model_Order::find_one_by_id($order_id)) { if (count($order->products) > 1) { // Get product item to delete if ($product = \Order\Model_Products::find_one_by_id($product_id)) { try { if ($artworks = $product->artwork) { $ysi = \Yousendit\Base::forge(); $ysi->login(); foreach ($artworks as $artwork) { $ysi->delete_artwork($artwork->file_id); } } $product->delete(); \Messages::success('Order product successfully deleted.'); } catch (\Database_Exception $e) { \Messages::error('There was an error while trying to delete order product'); } } } else { \Messages::error('You can\'t delete all order products. Please delete order instead.'); } \Order\Model_Order::recalculate_order($order_id); } } if (is_numeric($order_id)) { \Response::redirect(\Input::referrer(\Uri::create('admin/order/update' . $order_id))); } else { \Response::redirect(\Input::referrer(\Uri::create('admin/order/list'))); } }