loading up the forgejo repo on tangled to test page performance
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

at forgejo 51 lines 1.6 kB view raw
1import $ from 'jquery'; 2import {htmlEscape} from 'escape-goat'; 3import {hideElem, showElem} from '../utils/dom.js'; 4 5const {appSubUrl} = window.config; 6 7export function initRepoTemplateSearch() { 8 const $repoTemplate = $('#repo_template'); 9 const checkTemplate = function () { 10 const $templateUnits = $('#template_units'); 11 const $nonTemplate = $('#non_template'); 12 if ($repoTemplate.val() !== '' && $repoTemplate.val() !== '0') { 13 showElem($templateUnits); 14 hideElem($nonTemplate); 15 } else { 16 hideElem($templateUnits); 17 showElem($nonTemplate); 18 } 19 }; 20 $repoTemplate.on('change', checkTemplate); 21 checkTemplate(); 22 23 const changeOwner = function () { 24 $('#repo_template_search') 25 .dropdown({ 26 apiSettings: { 27 url: `${appSubUrl}/repo/search?q={query}&template=true&priority_owner_id=${$('#uid').val()}`, 28 onResponse(response) { 29 const filteredResponse = {success: true, results: []}; 30 filteredResponse.results.push({ 31 name: '', 32 value: '', 33 }); 34 // Parse the response from the api to work with our dropdown 35 for (const repo of response.data) { 36 filteredResponse.results.push({ 37 name: htmlEscape(repo.repository.full_name), 38 value: repo.repository.id, 39 }); 40 } 41 return filteredResponse; 42 }, 43 cache: false, 44 }, 45 46 fullTextSearch: true, 47 }); 48 }; 49 $('#uid').on('change', changeOwner); 50 changeOwner(); 51}