1jQuery(document).ready(function($){if($('.trf-resources-form').length){$('.trf-resources-form').each(function(){var $form=$(this);var $container=$form.closest('.trf-resources-form-container');var trfNonce=$form.data('nonce');var currentRequest=null;var $parentSelect=$form.find('.trf-parent-category');var $resourceWanted=$form.find('.trf-resource-wanted');var $results=$form.find('.trf-resources-results');$container.data('currentRequest',null);$parentSelect.on('change',function(){var parentCatId=$(this).val();$resourceWanted.html('<option value="">Select</option>').prop('disabled',!0);$results.empty();if(!parentCatId)return;var prevRequest=$container.data('currentRequest');if(prevRequest){prevRequest.abort()} 2$resourceWanted.html('<option value="">Loading available resources...</option>');var request=$.ajax({url:trf_ajax.ajax_url,type:'POST',data:{action:'trf_fetch_resource_wanted',parent_id:parentCatId,nonce:trfNonce},success:function(response){$resourceWanted.html(response).prop('disabled',!1)},error:function(xhr,status,error){if(status!=='abort'){$resourceWanted.html('<option value="">Error loading options</option>')}},complete:function(){$container.data('currentRequest',null)}});$container.data('currentRequest',request)});$resourceWanted.on('change',function(){var parentCatId=$parentSelect.val();var resourceWantedId=$(this).val();if(!parentCatId||!resourceWantedId){$results.empty();return} 3var prevRequest=$container.data('currentRequest');if(prevRequest){prevRequest.abort()} 4$results.html('<p>Loading results...</p>');var request=$.ajax({url:trf_ajax.ajax_url,type:'POST',data:{action:'trf_fetch_resources',parent_id:parentCatId,resource_wanted_id:resourceWantedId,nonce:trfNonce},success:function(response){$results.html(response)},error:function(xhr,status,error){if(status!=='abort'){$results.html('<p>Error loading results. Please try again.</p>')}},complete:function(){$container.data('currentRequest',null)}});$container.data('currentRequest',request)})})} 5function truncateText(selector,maxLength){document.querySelectorAll(selector).forEach(el=>{let strongEl=el.querySelector('strong');if(strongEl){let text=strongEl.textContent.trim();if(text.length>maxLength){strongEl.textContent=text.substring(0,maxLength)+'...'}}})} 6truncateText('.latest-news-footer .dtq-post-list-title',45)});document.addEventListener('DOMContentLoaded',function(){const brokenElems=document.querySelectorAll('[class*="ârf-sidebar-grid-sectionâ"], [class*="ârf-sidebar-grid-sectionâ"]');brokenElems.forEach(function(el){let currentClass=el.getAttribute('class')||'';currentClass=currentClass.replace(/[âââââ]/g,'').replace(/\s+/g,' ').trim();if(!currentClass.includes(' rf-sidebar-grid-section ')){if(!currentClass.includes('rf-sidebar-grid-section')){currentClass=' '+currentClass+' rf-sidebar-grid-section '}else{currentClass=currentClass.replace('rf-sidebar-grid-section',' rf-sidebar-grid-section ')}} 7el.setAttribute('class',currentClass)})})
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.