public function delete() { // Get id of quote_request $input = Input::all(); $id = $input['delete']; $quote_request = QuoteRequest::find($id); // Delete Quote PDF if it exists $path = 'quotes/' . $id . '.pdf'; if (file_exists($path)) { unlink($path); } // Delete Artwork image and its thumbnail if they exist if ($quote_request->artwork_image != null) { $path_image = 'uploads/artworks/' . $quote_request->artwork_image; $path_thumbnail = 'uploads/thumbnails/' . $quote_request->artwork_image; if (file_exists($path_image)) { unlink($path_image); } if (file_exists($path_thumbnail)) { unlink($path_thumbnail); } } $quote_request_items = $quote_request->qris; foreach ($quote_request_items as $quote_request_item) { $quote_line_delete = QuoteRequestItem::find($quote_request_item->id); $quote_line_delete->delete(); } $quotes = $quote_request->quotes; foreach ($quotes as $quote) { $quote_lines = $quote->qris; foreach ($quote_lines as $quote_line) { $quote_line_delete = QuoteItem::find($quote_line->id); $quote_line_delete->delete(); } $quote_delete = Quote::find($quote->id); $quote_delete->delete(); } $quote_request->delete(); if (isset($input['customer_id'])) { return redirect('customers/' . $input['customer_id'] . '/history')->with('message', 'Quote / Job has been deleted successfully'); } else { return redirect('/')->with('message', 'Quote / Job has been deleted successfully'); } }
public function post_enter_prices($qr_id, $qid = null) { $quote_request = QuoteRequest::Find($qr_id); // Reset chosen supplier for quotes $quote_request->quote_id = 0; $quote_request->save(); if ($qid == null) { $quote = $quote_request->first_quote(); } else { $quote = Quote::Find($qid); } $input = request::all(); // Invert form array $input = array_except($input, ['_token', 'quote_request_id', 'qid']); $keys = array_keys($input); $first_key = $keys[0]; $count = count($input[$first_key]); $output = []; foreach (range(0, $count - 1) as $i) { foreach ($keys as $key) { $output[$i][$key] = $input[$key][$i]; } } foreach ($output as $item) { $id = $item["id"]; if ($id == "") { // Create new QuoteItem::create($item); } else { $qi = QuoteItem::find($id); $qi->update($item); } } // delete Quote PDF if exists $path = 'quotes/' . $qr_id . '.pdf'; if (file_exists($path)) { unlink($path); } $quote_request_lines = $quote_request->qris; return view('quotes.enter_prices', compact('quote_request', 'quote', 'quote_request_lines'))->with('message', 'Supplier Prices have been Updated'); }