|
|
|
@ -1,35 +1,34 @@ |
|
|
|
|
import $ from 'jquery'; |
|
|
|
|
import {hideElem, showElem} from '../utils/dom.ts'; |
|
|
|
|
import {queryElems, toggleElem} from '../utils/dom.ts'; |
|
|
|
|
import {fomanticQuery} from '../modules/fomantic/base.ts'; |
|
|
|
|
|
|
|
|
|
const {appSubUrl} = window.config; |
|
|
|
|
|
|
|
|
|
export function initOrgTeamSettings() { |
|
|
|
|
// Change team access mode
|
|
|
|
|
$('.organization.new.team input[name=permission]').on('change', () => { |
|
|
|
|
const val = $('input[name=permission]:checked', '.organization.new.team').val(); |
|
|
|
|
if (val === 'admin') { |
|
|
|
|
hideElem('.organization.new.team .team-units'); |
|
|
|
|
} else { |
|
|
|
|
showElem('.organization.new.team .team-units'); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
function initOrgTeamSettings() { |
|
|
|
|
// on the page "page-content organization new team"
|
|
|
|
|
const pageContent = document.querySelector('.page-content.organization.new.team'); |
|
|
|
|
if (!pageContent) return; |
|
|
|
|
queryElems(pageContent, 'input[name=permission]', (el) => el.addEventListener('change', () => { |
|
|
|
|
// Change team access mode
|
|
|
|
|
const val = pageContent.querySelector<HTMLInputElement>('input[name=permission]:checked')?.value; |
|
|
|
|
toggleElem(pageContent.querySelectorAll('.team-units'), val !== 'admin'); |
|
|
|
|
})); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
export function initOrgTeamSearchRepoBox() { |
|
|
|
|
const $searchRepoBox = $('#search-repo-box'); |
|
|
|
|
function initOrgTeamSearchRepoBox() { |
|
|
|
|
// on the page "page-content organization teams"
|
|
|
|
|
const $searchRepoBox = fomanticQuery('#search-repo-box'); |
|
|
|
|
$searchRepoBox.search({ |
|
|
|
|
minCharacters: 2, |
|
|
|
|
apiSettings: { |
|
|
|
|
url: `${appSubUrl}/repo/search?q={query}&uid=${$searchRepoBox.data('uid')}`, |
|
|
|
|
onResponse(response) { |
|
|
|
|
const items = []; |
|
|
|
|
$.each(response.data, (_i, item) => { |
|
|
|
|
for (const item of response.data) { |
|
|
|
|
items.push({ |
|
|
|
|
title: item.repository.full_name.split('/')[1], |
|
|
|
|
description: item.repository.full_name, |
|
|
|
|
}); |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
return {results: items}; |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
@ -37,3 +36,9 @@ export function initOrgTeamSearchRepoBox() { |
|
|
|
|
showNoResults: false, |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
export function initOrgTeam() { |
|
|
|
|
if (!document.querySelector('.page-content.organization')) return; |
|
|
|
|
initOrgTeamSettings(); |
|
|
|
|
initOrgTeamSearchRepoBox(); |
|
|
|
|
} |
|
|
|
|