<?php

namespace App\Http\Controllers\Backend;

use App\Models\Hostel;
use App\Models\HostelType;
use App\Models\MoneyInfo;
use App\Models\Renter;
use App\Models\Room;
use App\User;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;

class DashboardController extends AdminController {
	//
	public function getDashboard() {

	    if(!auth('backend')->check())
        {
            return redirect()->back()->with('error', 'Bạn chưa đăng nhập');
        }

        if(auth('backend')->user()->type == User::OWNER)
        {
            $userId = auth('backend')->user()->id;
            $hostels = Hostel::query()->where('owner_id', $userId);
            $hostels = $hostels->get();
            return view( 'admin.dashboard.index', compact('hostels') );

        } else if (auth('backend')->user()->type == User::ADMIN)
        {
            $hostels = Hostel::query()->where('source', '<>', Hostel::SOURCE_CRAWLER)->has('owner')->count();
            $renters = Renter::query()->has( 'hostel' )->count();
            $rooms = Room::query()->has( 'hostel' )->count();
            return view( 'admin.dashboard.index_admin', compact('hostels', 'renters', 'rooms') );
        }

        return redirect()->to(url('admin'));


	}

	public function getDashboardStep1( Request $request ) {
		return view( 'admin.dashboard.step_1' );
	}

	public function getDashboardStep2( Request $request ) {
//		$ownerId     = auth( 'backend' )->user()->id;
		$hostelTypes = HostelType::all();

		return view( 'admin.dashboard.step_2', compact( 'hostelTypes' ) );
	}

	public function getNumberFloor( Request $request ) {
		$floors = $request->input( 'floors' );

		return view( 'admin.dashboard.hostel_info', compact( 'floors' ) );
	}

	public function getNumberRoom( Request $request ) {
		$rooms = $request->input( 'rooms' );
		$floor = $request->input( 'floor' );

		if(auth('backend')->check())
        {
            $ownerId =auth('backend')->user()->id;
        } else {
		    $ownerId = 105;
        }

		$roomTypes = \DB::table('room_types')->where('owner_id', $ownerId)
			->get();

		return view( 'admin.dashboard.rooms', compact( 'rooms', 'floor', 'roomTypes' ) );
	}
}
