<?php

namespace App\Http\Controllers;

use App\Models\Advert;
use App\Models\Category;
use Carbon\Carbon;

class CategoryController extends Controller
{

    /**
     * 显示分类
     * @param  Category  $category  [description]
     * @return \Illuminate\Contracts\Foundation\Application|\Illuminate\Contracts\View\Factory|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|\Illuminate\View\View [type]             [description]
     */
    public function index(Category $category)
    {
        if ($category->type == Category::TYPE_SHOW && $category->article_id) {
            return redirect("articles/" . $category->article_id);
        } elseif ($category->type == Category::TYPE_LINK && $category->url) {
            return redirect()->away($category->url);
        } else {
            $template = 'show';
            if ($category->template) {
                $template = $category->template;
            }

            $articles = $category->relations($category->type)
                                 ->where('status', 1)
                                 ->latest('sort')
                                 ->latest('created_at')
                                 ->paginate();

            $parent = $category;
            if ($category->childrens->isEmpty() && $category->parent) {
                $parent = $category->parent;
            }

            return view('category.' . $template, compact('articles', 'category', 'parent'));
        }

    }

}
