<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Models\Order;
use App\Models\Service;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Log;

class TransactionController extends Controller
{
	//THis should also reduce user's available credits
	public function newOrder(Request $request) {
		$user = Auth::user();
		$order = new Order;

		$order->service_id = $request->service;
		$order->user_id = Auth::user()->id;
		$order->quantity = $request->quantity;
		$order->url = $request->url;
		$order->note = $request->note ?: '';
		$order->status = 'processing';

		$cost = ceil($order->quantity*$order->service->price/1000);
		$user->credits = $user->credits - $cost;
		if ($cost > $user->credits) {
			abort(520, 'Insufficient Credits');
		}
		$user->save();
		$order->save();
	}
}