Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <script>
- document.addEventListener('DOMContentLoaded', function () {
- $('.ajax-search-input').on('keyup', function () {
- var query = $(this).val();
- const pathname = location.pathname;
- const languages = ['/nl', '/fr', '/es', '/gb'];
- let searchUrl = '/search?query=';
- const languagePrefix = languages.find(lang => pathname.includes(lang));
- if (languagePrefix) {
- searchUrl = `${languagePrefix}${searchUrl}`;
- }
- if (query.length >= 3) {
- $.ajax({
- url: searchUrl + query,
- success: function (response) {
- var searchResults = $(response).find('.search-result-link');
- if (searchResults.length > 0) {
- var listHtml = '<div class="link-list">';
- searchResults.each(function () {
- var link = $(this).attr('href');
- var title = $(this).find('.search-result-title').text();
- var highlightedTitle = title.replace(new RegExp(query, 'gi'), '<span class="highlight">$&</span>');
- listHtml += '<div class="link-list-item subtitle-2"><a href="' + link + '">' + highlightedTitle + '</a></div>';
- });
- listHtml += '</div>';
- $('.search-ajax-data').html(listHtml).addClass('show-block');
- } else {
- $('.search-ajax-data').empty().removeClass('show-block');
- }
- },
- error: function (xhr, status, error) {
- console.error('AJAX Error: ' + status, error);
- }
- });
- } else {
- $('.search-ajax-data').empty().removeClass('show-block');
- }
- });
- $(document).on('click', function(e){
- if (!$(e.target).closest('.ajax-search-body').length) {
- $('.search-ajax-data').removeClass('show-block');
- }
- });
- });
- </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement