{"id":1035,"date":"2026-02-15T17:41:21","date_gmt":"2026-02-15T17:41:21","guid":{"rendered":"https:\/\/theosbrews.co.uk\/index.php\/events-grid-style\/"},"modified":"2026-02-15T17:41:21","modified_gmt":"2026-02-15T17:41:21","slug":"events-grid-style","status":"publish","type":"page","link":"https:\/\/theosbrews.co.uk\/index.php\/events-grid-style\/","title":{"rendered":"Events \u2013 Grid Style"},"content":{"rendered":"                <div class='mage list_with_filter_section mep_event_list' id='mage-container'>\n\t\t\t\t\t                            <div class=\"all_filter_item mep_event_list_sec\" id='mep_event_list_abr69da3e78acf8f'\n                                 data-unq-id=\"abr69da3e78acf8f\"\n                                 data-style=\"grid\"\n                                 data-column=\"3\"\n                                 data-cat=\"0\"\n                                 data-org=\"0\"\n                                 data-tag=\"0\"\n                                 data-city=\"\"\n                                 data-country=\"\"\n                                 data-status=\"upcoming\"\n                                 data-year=\"\"\n                                 data-sort=\"ASC\"\n                                 data-show=\"-1\"\n                                 data-pagination=\"yes\"\n                                 data-pagination-style=\"load_more\"\n                            >\n                                <div class=\"mage_grid_box \" id=\"\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t    <div class='filter_item mep-event-list-loop mix column_style event-availabe-seat  mep_event_grid_item  abr69da3e78acf8fmage-47 abr69da3e78acf8fmage-46 '\r\n         data-title=\"Coffee Tasting Experience &#8211; High Coffee Bar\"\r\n         data-city-name=\"CHESTER\"\r\n         data-state=\"CHESHIRE\"\r\n         data-date=\"2026-04-22\"\r\n         data-category=\"Training Event\"\r\n         data-organizer=\"theosbrews.co.uk\"\r\n         style=\"width:calc(33.333333333333% - 14px);\">\r\n\t\t\t\t                    <div class=\"mep-ev-start-date\">\r\n                        <div class=\"mep-day\">22<\/div>\r\n                        <div class=\"mep-month\">Apr<\/div>\r\n                    <\/div>\r\n\t\t\t\t\t\t\r\n\t\t                <div class=\"mep_list_thumb mpwem_style\">\r\n                    <div data-href=\"https:\/\/theosbrews.co.uk\/index.php\/event\/become-a-barista\/\" data-bg-image=\"https:\/\/theosbrews.co.uk\/wp-content\/uploads\/2026\/02\/cropped-theosbrews-logo__1_-removebg-preview.png\"><\/div>\r\n\t\t\t\t\t                <div class=\"mepev-ribbons\">\r\n\t\t\t\t\t                <\/div>\r\n\t\t\t\t\t\t\t\t<\/div>\r\n\t\t\t\t        <div class=\"mep_list_event_details\">\r\n            <a href=\"https:\/\/theosbrews.co.uk\/index.php\/event\/become-a-barista\/\">\r\n                <h5 class='mep_list_title'>Coffee Tasting Experience &#8211; High Coffee Bar<\/h5>\r\n\t\t\t\t                    <p class=\"list_price\">Price: <span class=\"woocommerce-Price-amount amount\">10.00<span class=\"woocommerce-Price-currencySymbol\">&pound;<\/span><\/span><\/p>\r\n\t\t\t\t\t                    <div class=\"list_content upcomming_organizer\">\r\n                        <span class=\"far fa-list-alt\"><\/span>\r\n\t\t\t\t\tOrganized By: theosbrews.co.uk                    <\/div>\r\n\t\t\t                    <div class=\"list_content upcomming_location\">\r\n                        <span class=\"fas fa-map-marker-alt\"><\/span>\r\n\t\t\t\t\t\tLocation :  High Coffee Bar                    <\/div>\r\n\t\t\t\t                    <div class=\"list_content upcomming_date_only_only\">\r\n                        <span class=\"far fa-calendar-alt\"><\/span>April 22, 2026  4:00 pm - 5:30 pm                    <\/div>\r\n\t\t\t\t            <\/a>\r\n\t\t\t        <\/div>\r\n\t\t    <\/div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t                                <\/div>\n                            <\/div>\n\t\t\t\t\t\t\t                <input type=\"hidden\" name=\"pagination_per_page\" value=\"6\"\/>\n                <input type=\"hidden\" name=\"pagination_style\" value=\"load_more\"\/>\n\t\t\t\t                <\/div>\n                <script>\n                    jQuery(document).ready(function () {\n                        var containerEl = document.querySelector('#mep_event_list_abr69da3e78acf8f');\n                        var mixer = mixitup(containerEl, {\n                            selectors: {\n                                target: '.mep-event-list-loop',\n                                control: '[data-mixitup-control]'\n                            }\n                        });\n                        \/\/ Handle title filter input\n                        jQuery('input[name=\"filter_with_title\"]').on('keyup', function () {\n                            var searchText = jQuery(this).val().toLowerCase();\n                            var items = jQuery('.mep-event-list-loop');\n                            items.each(function () {\n                                var itemTitle = jQuery(this).data('title').toLowerCase();\n                                if (itemTitle.indexOf(searchText) > -1) {\n                                    jQuery(this).show();\n                                } else {\n                                    jQuery(this).hide();\n                                }\n                            });\n                        });\n                        \/\/ Handle date filter change\n                        jQuery('input[name=\"filter_with_date\"]').on('change', function () {\n                            var selectedDate = jQuery(this).val();\n                            var items = jQuery('.mep-event-list-loop');\n                            if (!selectedDate) {\n                                items.show();\n                            } else {\n                                var filterDate = new Date(selectedDate);\n                                filterDate.setHours(0, 0, 0, 0); \/\/ Reset time part for date comparison\n                                items.each(function () {\n                                    var itemDate = new Date(jQuery(this).data('date'));\n                                    itemDate.setHours(0, 0, 0, 0); \/\/ Reset time part for date comparison\n                                    if (itemDate.getTime() === filterDate.getTime()) {\n                                        jQuery(this).show();\n                                    } else {\n                                        jQuery(this).hide();\n                                    }\n                                });\n                            }\n                        });\n                        \/\/ Handle state filter change\n                        jQuery('select[name=\"filter_with_state\"]').on('change', function () {\n                            var state = jQuery(this).val();\n                            var items = jQuery('.mep-event-list-loop');\n                            if (state === '') {\n                                items.show();\n                            } else {\n                                items.each(function () {\n                                    var itemState = jQuery(this).data('state');\n                                    if (itemState === state) {\n                                        jQuery(this).show();\n                                    } else {\n                                        jQuery(this).hide();\n                                    }\n                                });\n                            }\n                        });\n                        \/\/ Handle city filter change\n                        jQuery('select[name=\"filter_with_city\"]').on('change', function () {\n                            applyAllFilters();\n                        });\n                        \/\/ Handle category filter change\n                        jQuery('select[name=\"filter_with_category\"]').on('change', function () {\n                            applyAllFilters();\n                        });\n                        \/\/ Handle organizer filter change\n                        jQuery('select[name=\"filter_with_organizer\"]').on('change', function () {\n                            applyAllFilters();\n                        });\n                        \/\/ Combined filter function that applies all filters\n                        function applyAllFilters() {\n                            var titleFilter = jQuery('input[name=\"filter_with_title\"]').val().toLowerCase();\n                            var dateFilter = jQuery('input[name=\"filter_with_date\"]').val();\n                            var stateFilter = jQuery('select[name=\"filter_with_state\"]').val();\n                            var cityFilter = jQuery('select[name=\"filter_with_city\"]').val();\n                            var categoryFilter = jQuery('select[name=\"filter_with_category\"]').val();\n                            var organizerFilter = jQuery('select[name=\"filter_with_organizer\"]').val();\n                            var visibleCount = 0;\n                            jQuery('.mep-event-list-loop').each(function () {\n                                var $item = jQuery(this);\n                                var show = true;\n                                \/\/ Title filter\n                                if (titleFilter) {\n                                    var itemTitle = ($item.data('title') || '').toLowerCase();\n                                    if (itemTitle.indexOf(titleFilter) === -1) {\n                                        show = false;\n                                    }\n                                }\n                                \/\/ Date filter\n                                if (show && dateFilter) {\n                                    var itemDate = $item.data('date');\n                                    if (itemDate) {\n                                        var filterDate = new Date(dateFilter);\n                                        filterDate.setHours(0, 0, 0, 0);\n                                        var itemDateObj = new Date(itemDate);\n                                        itemDateObj.setHours(0, 0, 0, 0);\n                                        if (itemDateObj.getTime() !== filterDate.getTime()) {\n                                            show = false;\n                                        }\n                                    } else {\n                                        show = false;\n                                    }\n                                }\n                                \/\/ State filter\n                                if (show && stateFilter) {\n                                    var itemState = $item.data('state') || '';\n                                    if (itemState !== stateFilter) {\n                                        show = false;\n                                    }\n                                }\n                                \/\/ City filter\n                                if (show && cityFilter) {\n                                    var itemCity = $item.data('city-name') || '';\n                                    if (itemCity !== cityFilter) {\n                                        show = false;\n                                    }\n                                }\n                                \/\/ Category filter\n                                if (show && categoryFilter) {\n                                    var itemCategory = $item.data('category') || '';\n                                    \/\/ Check if category matches (can be comma-separated)\n                                    var itemCategories = itemCategory.split(',').map(function (c) {\n                                        return c.trim();\n                                    });\n                                    if (itemCategories.indexOf(categoryFilter) === -1) {\n                                        show = false;\n                                    }\n                                }\n                                \/\/ Organizer filter\n                                if (show && organizerFilter) {\n                                    var itemOrganizer = $item.data('organizer') || '';\n                                    \/\/ Check if organizer matches (can be comma-separated)\n                                    var itemOrganizers = itemOrganizer.split(',').map(function (o) {\n                                        return o.trim();\n                                    });\n                                    if (itemOrganizers.indexOf(organizerFilter) === -1) {\n                                        show = false;\n                                    }\n                                }\n                                if (show) {\n                                    $item.show();\n                                    visibleCount++;\n                                } else {\n                                    $item.hide();\n                                }\n                            });\n                            \/\/ Update count display\n                            jQuery('.qty_count').text(visibleCount);\n                        }\n                        \/\/ Update title filter to use combined function\n                        jQuery('input[name=\"filter_with_title\"]').off('keyup').on('keyup', function () {\n                            applyAllFilters();\n                        });\n                        \/\/ Update date filter to use combined function\n                        jQuery('input[name=\"filter_with_date\"]').off('change').on('change', function () {\n                            applyAllFilters();\n                        });\n                        \/\/ Update state filter to use combined function\n                        jQuery('select[name=\"filter_with_state\"]').off('change').on('change', function () {\n                            applyAllFilters();\n                        });\n\t\t\t\t\t\t                    });\n                <\/script>\n                \n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-1035","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/theosbrews.co.uk\/index.php\/wp-json\/wp\/v2\/pages\/1035","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/theosbrews.co.uk\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/theosbrews.co.uk\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/theosbrews.co.uk\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/theosbrews.co.uk\/index.php\/wp-json\/wp\/v2\/comments?post=1035"}],"version-history":[{"count":1,"href":"https:\/\/theosbrews.co.uk\/index.php\/wp-json\/wp\/v2\/pages\/1035\/revisions"}],"predecessor-version":[{"id":1055,"href":"https:\/\/theosbrews.co.uk\/index.php\/wp-json\/wp\/v2\/pages\/1035\/revisions\/1055"}],"wp:attachment":[{"href":"https:\/\/theosbrews.co.uk\/index.php\/wp-json\/wp\/v2\/media?parent=1035"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}