mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-26 12:27:06 +00:00 
			
		
		
		
	Forbid jQuery is and fix issues (#30016)
				
					
				
			Tested all functionality. --------- Co-authored-by: Yarden Shoham <git@yardenshoham.com>
This commit is contained in:
		| @@ -303,7 +303,7 @@ rules: | |||||||
|   jquery/no-in-array: [2] |   jquery/no-in-array: [2] | ||||||
|   jquery/no-is-array: [2] |   jquery/no-is-array: [2] | ||||||
|   jquery/no-is-function: [2] |   jquery/no-is-function: [2] | ||||||
|   jquery/no-is: [0] |   jquery/no-is: [2] | ||||||
|   jquery/no-load: [2] |   jquery/no-load: [2] | ||||||
|   jquery/no-map: [2] |   jquery/no-map: [2] | ||||||
|   jquery/no-merge: [2] |   jquery/no-merge: [2] | ||||||
| @@ -440,7 +440,7 @@ rules: | |||||||
|   no-jquery/no-is-numeric: [2] |   no-jquery/no-is-numeric: [2] | ||||||
|   no-jquery/no-is-plain-object: [2] |   no-jquery/no-is-plain-object: [2] | ||||||
|   no-jquery/no-is-window: [2] |   no-jquery/no-is-window: [2] | ||||||
|   no-jquery/no-is: [0] |   no-jquery/no-is: [2] | ||||||
|   no-jquery/no-jquery-constructor: [0] |   no-jquery/no-jquery-constructor: [0] | ||||||
|   no-jquery/no-live: [2] |   no-jquery/no-live: [2] | ||||||
|   no-jquery/no-load-shorthand: [2] |   no-jquery/no-load-shorthand: [2] | ||||||
|   | |||||||
| @@ -84,7 +84,7 @@ export function initAdminCommon() { | |||||||
|     hideElem($('.oauth2_use_custom_url_field')); |     hideElem($('.oauth2_use_custom_url_field')); | ||||||
|     $('.oauth2_use_custom_url_field input[required]').removeAttr('required'); |     $('.oauth2_use_custom_url_field input[required]').removeAttr('required'); | ||||||
|  |  | ||||||
|     if ($('#oauth2_use_custom_url').is(':checked')) { |     if (document.getElementById('oauth2_use_custom_url')?.checked) { | ||||||
|       for (const custom of ['token_url', 'auth_url', 'profile_url', 'email_url', 'tenant']) { |       for (const custom of ['token_url', 'auth_url', 'profile_url', 'email_url', 'tenant']) { | ||||||
|         if (applyDefaultValues) { |         if (applyDefaultValues) { | ||||||
|           $(`#oauth2_${custom}`).val($(`#${provider}_${custom}`).val()); |           $(`#oauth2_${custom}`).val($(`#${provider}_${custom}`).val()); | ||||||
| @@ -98,7 +98,7 @@ export function initAdminCommon() { | |||||||
|   } |   } | ||||||
|  |  | ||||||
|   function onEnableLdapGroupsChange() { |   function onEnableLdapGroupsChange() { | ||||||
|     toggleElem($('#ldap-group-options'), $('.js-ldap-group-toggle').is(':checked')); |     toggleElem($('#ldap-group-options'), $('.js-ldap-group-toggle')[0].checked); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   // New authentication |   // New authentication | ||||||
|   | |||||||
| @@ -373,7 +373,7 @@ function initGlobalShowModal() { | |||||||
|  |  | ||||||
|       if (attrTargetAttr) { |       if (attrTargetAttr) { | ||||||
|         $attrTarget[0][attrTargetAttr] = attrib.value; |         $attrTarget[0][attrTargetAttr] = attrib.value; | ||||||
|       } else if ($attrTarget.is('input') || $attrTarget.is('textarea')) { |       } else if ($attrTarget[0].matches('input, textarea')) { | ||||||
|         $attrTarget.val(attrib.value); // FIXME: add more supports like checkbox |         $attrTarget.val(attrib.value); // FIXME: add more supports like checkbox | ||||||
|       } else { |       } else { | ||||||
|         $attrTarget.text(attrib.value); // FIXME: it should be more strict here, only handle div/span/p |         $attrTarget.text(attrib.value); // FIXME: it should be more strict here, only handle div/span/p | ||||||
|   | |||||||
| @@ -139,7 +139,7 @@ export function initRepoCommentForm() { | |||||||
|  |  | ||||||
|       hasUpdateAction = $listMenu.data('action') === 'update'; // Update the var |       hasUpdateAction = $listMenu.data('action') === 'update'; // Update the var | ||||||
|  |  | ||||||
|       const $clickedItem = $(this); |       const clickedItem = this; // eslint-disable-line unicorn/no-this-assignment | ||||||
|       const scope = $(this).attr('data-scope'); |       const scope = $(this).attr('data-scope'); | ||||||
|  |  | ||||||
|       $(this).parent().find('.item').each(function () { |       $(this).parent().find('.item').each(function () { | ||||||
| @@ -148,10 +148,10 @@ export function initRepoCommentForm() { | |||||||
|           if ($(this).attr('data-scope') !== scope) { |           if ($(this).attr('data-scope') !== scope) { | ||||||
|             return true; |             return true; | ||||||
|           } |           } | ||||||
|           if (!$(this).is($clickedItem) && !$(this).hasClass('checked')) { |           if (this !== clickedItem && !$(this).hasClass('checked')) { | ||||||
|             return true; |             return true; | ||||||
|           } |           } | ||||||
|         } else if (!$(this).is($clickedItem)) { |         } else if (this !== clickedItem) { | ||||||
|           // Toggle for other labels |           // Toggle for other labels | ||||||
|           return true; |           return true; | ||||||
|         } |         } | ||||||
|   | |||||||
| @@ -199,7 +199,7 @@ function attachDomEvents($dropdown, $focusable, $menu) { | |||||||
|       if (!$item) $item = $menu.find('> .item.selected'); // when dropdown filters items by input, there is no "value", so query the "selected" item |       if (!$item) $item = $menu.find('> .item.selected'); // when dropdown filters items by input, there is no "value", so query the "selected" item | ||||||
|       // if the selected item is clickable, then trigger the click event. |       // if the selected item is clickable, then trigger the click event. | ||||||
|       // we can not click any item without check, because Fomantic code might also handle the Enter event. that would result in double click. |       // we can not click any item without check, because Fomantic code might also handle the Enter event. that would result in double click. | ||||||
|       if ($item && ($item.is('a') || $item.hasClass('js-aria-clickable'))) $item[0].click(); |       if ($item && ($item[0].matches('a') || $item.hasClass('js-aria-clickable'))) $item[0].click(); | ||||||
|     } |     } | ||||||
|   }); |   }); | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 silverwind
					silverwind