{% set searchQuery = craft.app.request.getParam('query') %}
{% set searchPage = craft.app.request.getParam('page') %}
{% set searchFilter = craft.app.request.getParam('filter') | length ? craft.app.request.getParam('filter') : 'all' %}
{% set hasResults = false %}

{# Set searchPage to if not defined #}
{% if not searchPage %}
    {% set searchPage = 1 %}
{% endif %}

{% set unfilteredResults = craft.entries()
    .section([
        'resources'
    ])
    .all()
%}

{% if (searchFilter | length) and (searchFilter != 'all') and (searchQuery | length) %}
    {% set categories = craft.categories()
        .group('resourceCategories')
        .title(searchFilter)
        .all()
    %}

    {% set totalResults = craft.entries()
        .section([
            'resources'
        ])
        .relatedTo(categories)
        .all()
    %}

    {% set pageResults = totalResults | slice((searchPage - 1) * 6, 6) %}
    {% set hasResults = true %}
{% elseif searchQuery | length %}
    {% set totalResults = craft.entries()
        .section([
            'resources'
        ])
        .search(searchQuery)
        .all()
    %}

    {% set pageResults = totalResults | slice((searchPage - 1) * 6, 6) %}
    {% set hasResults = true %}
{% elseif (searchFilter | length) and (searchFilter != 'all') %}
    {% set categories = craft.categories()
        .group('resourceCategories')
        .title(searchFilter)
        .all()
    %}

    {% set totalResults = craft.entries()
        .section([
            'resources'
        ])
        .relatedTo(categories)
        .all()
    %}

    {% set pageResults = totalResults | slice((searchPage - 1) * 6, 6) %}
{% else %}
    {% set totalResults = craft.entries()
        .section([
            'resources'
        ])
        .all()
    %}

    {% set pageResults = totalResults | slice((searchPage - 1) * 6, 6) %}
{% endif %}

<section class="resource-centre-search-results-panel w-full relative bg-white-primary">
    <div class="container-wrapper sm:max-w-7xl sm:mx-auto">
        <div class="padding-wrapper sm:px-8 lg:px-10 sm:py-10 lg:py-12 xl:py-16">
            <div class="content-wrapper w-full flex flex-col justify-center items-center">
                {% include themeDir ~ '/_includes/_blocks/_resource-centre/_resource-centre-title.twig' %}
                {% if hasResults or not searchQuery | length %}
                    {% include themeDir ~ '/_includes/_blocks/_resource-centre/_resource-centre-filters.twig' %}
                {% endif %}
                {% include themeDir ~ '/_includes/_blocks/_resource-centre/_resource-centre-results.twig' %}
                {% if ( hasResults and totalResults | length > 6 ) or ( not searchQuery | length and totalResults | length > 6 ) %}
                    {% include themeDir ~ '/_includes/_blocks/_resource-centre/_resource-centre-pagination.twig' %}
                {% endif %}
            </div>
        </div>
    </div>
</section>