Bug: orange button color was removed in https://github.com/go-gitea/gitea/pull/30475, replaced with red Bug: translation text was not html-escaped Refactor: Replaced as much jQuery as possible, added useful `createElementFromHTML` Refactor: Remove colors checks that don't exist on `.link-action` <img width="381" alt="image" src="https://github.com/go-gitea/gitea/assets/115237/5900bf6a-8a86-4a86-b368-0559cbfea66e"> --------- Co-authored-by: wxiaoguang <wxiaoguang@gmail.com> Co-authored-by: delvh <dev.lh@web.de>
		
			
				
	
	
		
			32 lines
		
	
	
		
			987 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			987 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| import $ from 'jquery';
 | |
| import {svg} from '../../svg.js';
 | |
| import {htmlEscape} from 'escape-goat';
 | |
| import {createElementFromHTML} from '../../utils/dom.js';
 | |
| 
 | |
| const {i18n} = window.config;
 | |
| 
 | |
| export function confirmModal(content, {confirmButtonColor = 'primary'} = {}) {
 | |
|   return new Promise((resolve) => {
 | |
|     const modal = createElementFromHTML(`
 | |
|       <div class="ui g-modal-confirm modal">
 | |
|         <div class="content">${htmlEscape(content)}</div>
 | |
|         <div class="actions">
 | |
|           <button class="ui cancel button">${svg('octicon-x')} ${htmlEscape(i18n.modal_cancel)}</button>
 | |
|           <button class="ui ${confirmButtonColor} ok button">${svg('octicon-check')} ${htmlEscape(i18n.modal_confirm)}</button>
 | |
|         </div>
 | |
|       </div>
 | |
|     `);
 | |
|     document.body.append(modal);
 | |
|     const $modal = $(modal);
 | |
|     $modal.modal({
 | |
|       onApprove() {
 | |
|         resolve(true);
 | |
|       },
 | |
|       onHidden() {
 | |
|         $modal.remove();
 | |
|         resolve(false);
 | |
|       },
 | |
|     }).modal('show');
 | |
|   });
 | |
| }
 |