mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 00:20:25 +08:00 
			
		
		
		
	Split index.js to separate files (#17315)
				
					
				
			* split `index.js` to separate files
* tune clipboard
* fix promise
* fix document
* remove intermediate empty file
* fix async event listener
* use `export function` instead of `export {}`, add more comments
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: 6543 <6543@obermui.de>
			
			
This commit is contained in:
		
							
								
								
									
										49
									
								
								web_src/js/features/repo-template.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								web_src/js/features/repo-template.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,49 @@
 | 
			
		||||
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}/api/v1/repos/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();
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user