Co-authored-by: widlam <mikolaj.widla@gmail.com> Reviewed-on: #213 Reviewed-by: Adam Bem <bema@noreply.example.com> Co-authored-by: Mikolaj Widla <widlam@noreply.example.com> Co-committed-by: Mikolaj Widla <widlam@noreply.example.com>
		
			
				
	
	
		
			54 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| var modalDisplayed = false;
 | |
| var methodToCall = {
 | |
|     name: null,
 | |
|     id: null
 | |
| };
 | |
| 
 | |
| const overlay = $('#overlay');
 | |
| const savedModal = $('#modal-confirm');
 | |
| const dataLossModal = $('#modal-query');
 | |
| const dataLossModalYes = dataLossModal.children().eq(2).children().eq(0);
 | |
| const dataLossModalNo = dataLossModal.children().eq(2).children().eq(1);
 | |
| const allModals = $('.modal');
 | |
| const btnModalClose = $('.modal button');
 | |
| const closeModals = function() {
 | |
|     hideModal(allModals);
 | |
| }
 | |
| const savedModalDisplay = function() {
 | |
|     
 | |
|     showModal(savedModal);
 | |
|     setTimeout(closeModals, 2000);
 | |
| }
 | |
| const dataLossModalDisplay = function(){
 | |
|     showModal(dataLossModal);
 | |
| }
 | |
| 
 | |
| btnModalClose.click(closeModals);
 | |
| overlay.click(closeModals);
 | |
| dataLossModalNo.click(closeModals);
 | |
| dataLossModalYes.click(dropChangesAndClose);
 | |
| 
 | |
| function setMethodToCall(name, id){
 | |
|     methodToCall.name = name;
 | |
|     methodToCall.id = id;
 | |
| }
 | |
| 
 | |
| const dropChangesAndClose = function(){
 | |
|     callMethodByName(methodToCall)
 | |
|     hideModal(dataLossModal);
 | |
| }
 | |
| 
 | |
| function showModal(jmodal){
 | |
|     if(modalDisplayed) return;
 | |
|     overlay.addClass('active');
 | |
|     jmodal.addClass('active');
 | |
|     modalDisplayed = true;
 | |
| }
 | |
| 
 | |
| function hideModal(jmodal){
 | |
|     if(!modalDisplayed) return;
 | |
|     overlay.removeClass('active');
 | |
|     jmodal.removeClass('active');
 | |
|     modalDisplayed = false;
 | |
| }
 |