<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Models\Page;

class SitemapController extends Controller
{
    public function index()
    {
        $pages = Page::all()->filter(function ($page) {
            if (!$page->version) {
                return false;
            }
            if ($page->version->redirect) {
                return false;
            }
            if ($page->version->search_exclude) {
                return false;
            }
            if ($page->hasViewPermissions()) {
                return false;
            }
            if (!$page->content->count()) {
                return false;
            }
            return $page->published_at ? true : false;
        });

        return response()->view('sitemap', compact('pages'))
            ->header('Content-Type', 'text/xml');
    }
}
