mirror of
				https://github.com/go-gitea/gitea
				synced 2025-11-03 21:08:25 +00:00 
			
		
		
		
	Rework delete org and rename org UI (#34762)
# What's the problem of the original implementation Renaming organization will mix with organization's information change make the operation difficult to keep consistent. This PR created a danger zone like what's repository setting. It also moved organization's `rename` and `delete` operations to this zone. The original updating repository will not change the name any more. This is also a step to extract the `updaterepository` function completely. Before:   After:     --------- Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
This commit is contained in:
		@@ -9,9 +9,9 @@ const fomanticDropdownFn = $.fn.dropdown;
 | 
			
		||||
// use our own `$().dropdown` function to patch Fomantic's dropdown module
 | 
			
		||||
export function initAriaDropdownPatch() {
 | 
			
		||||
  if ($.fn.dropdown === ariaDropdownFn) throw new Error('initAriaDropdownPatch could only be called once');
 | 
			
		||||
  $.fn.dropdown.settings.onAfterFiltered = onAfterFiltered;
 | 
			
		||||
  $.fn.dropdown = ariaDropdownFn;
 | 
			
		||||
  $.fn.fomanticExt.onResponseKeepSelectedItem = onResponseKeepSelectedItem;
 | 
			
		||||
  $.fn.fomanticExt.onDropdownAfterFiltered = onDropdownAfterFiltered;
 | 
			
		||||
  (ariaDropdownFn as FomanticInitFunction).settings = fomanticDropdownFn.settings;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -71,7 +71,7 @@ function updateSelectionLabel(label: HTMLElement) {
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function onAfterFiltered(this: any) {
 | 
			
		||||
function onDropdownAfterFiltered(this: any) {
 | 
			
		||||
  const $dropdown = $(this).closest('.ui.dropdown'); // "this" can be the "ui dropdown" or "<select>"
 | 
			
		||||
  const hideEmptyDividers = $dropdown.dropdown('setting', 'hideDividers') === 'empty';
 | 
			
		||||
  const itemsMenu = $dropdown[0].querySelector('.scrolling.menu') || $dropdown[0].querySelector('.menu');
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,7 @@
 | 
			
		||||
import $ from 'jquery';
 | 
			
		||||
import type {FomanticInitFunction} from '../../types.ts';
 | 
			
		||||
import {queryElems} from '../../utils/dom.ts';
 | 
			
		||||
import {hideToastsFrom} from '../toast.ts';
 | 
			
		||||
 | 
			
		||||
const fomanticModalFn = $.fn.modal;
 | 
			
		||||
 | 
			
		||||
@@ -7,6 +9,7 @@ const fomanticModalFn = $.fn.modal;
 | 
			
		||||
export function initAriaModalPatch() {
 | 
			
		||||
  if ($.fn.modal === ariaModalFn) throw new Error('initAriaModalPatch could only be called once');
 | 
			
		||||
  $.fn.modal = ariaModalFn;
 | 
			
		||||
  $.fn.fomanticExt.onModalBeforeHidden = onModalBeforeHidden;
 | 
			
		||||
  (ariaModalFn as FomanticInitFunction).settings = fomanticModalFn.settings;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -27,3 +30,10 @@ function ariaModalFn(this: any, ...args: Parameters<FomanticInitFunction>) {
 | 
			
		||||
  }
 | 
			
		||||
  return ret;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function onModalBeforeHidden(this: any) {
 | 
			
		||||
  const $modal = $(this);
 | 
			
		||||
  const elModal = $modal[0];
 | 
			
		||||
  queryElems(elModal, 'form', (form: HTMLFormElement) => form.reset());
 | 
			
		||||
  hideToastsFrom(elModal.closest('.ui.dimmer') ?? document.body);
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user