mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-30 01:04:25 +01:00 
			
		
		
		
	Reusing `/api/v1` from Gitea UI Pages have pros and cons. Pros: 1) Less code copy Cons: 1) API/v1 have to support shared session with page requests. 2) You need to consider for each other when you want to change something about api/v1 or page. This PR moves all dependencies to API/v1 from UI Pages. Partially replace #16052
		
			
				
	
	
		
			51 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| import $ from 'jquery';
 | |
| import {htmlEscape} from 'escape-goat';
 | |
| 
 | |
| const {appSubUrl} = window.config;
 | |
| 
 | |
| export function initRepoTemplateSearch() {
 | |
|   const $repoTemplate = $('#repo_template');
 | |
|   const checkTemplate = function () {
 | |
|     const $templateUnits = $('#template_units');
 | |
|     const $nonTemplate = $('#non_template');
 | |
|     if ($repoTemplate.val() !== '' && $repoTemplate.val() !== '0') {
 | |
|       $templateUnits.show();
 | |
|       $nonTemplate.hide();
 | |
|     } else {
 | |
|       $templateUnits.hide();
 | |
|       $nonTemplate.show();
 | |
|     }
 | |
|   };
 | |
|   $repoTemplate.on('change', checkTemplate);
 | |
|   checkTemplate();
 | |
| 
 | |
|   const changeOwner = function () {
 | |
|     $('#repo_template_search')
 | |
|       .dropdown({
 | |
|         apiSettings: {
 | |
|           url: `${appSubUrl}/repo/search?q={query}&template=true&priority_owner_id=${$('#uid').val()}`,
 | |
|           onResponse(response) {
 | |
|             const filteredResponse = {success: true, results: []};
 | |
|             filteredResponse.results.push({
 | |
|               name: '',
 | |
|               value: ''
 | |
|             });
 | |
|             // Parse the response from the api to work with our dropdown
 | |
|             $.each(response.data, (_r, repo) => {
 | |
|               filteredResponse.results.push({
 | |
|                 name: htmlEscape(repo.full_name),
 | |
|                 value: repo.id
 | |
|               });
 | |
|             });
 | |
|             return filteredResponse;
 | |
|           },
 | |
|           cache: false,
 | |
|         },
 | |
| 
 | |
|         fullTextSearch: true
 | |
|       });
 | |
|   };
 | |
|   $('#uid').on('change', changeOwner);
 | |
|   changeOwner();
 | |
| }
 |