T207 save confirmation implemented
This commit is contained in:
		@@ -35,7 +35,7 @@
 | 
				
			|||||||
.modal div.header {
 | 
					.modal div.header {
 | 
				
			||||||
	width: 384px;
 | 
						width: 384px;
 | 
				
			||||||
	height: 24px;
 | 
						height: 24px;
 | 
				
			||||||
	background: gray;
 | 
						background: #2e3133;
 | 
				
			||||||
	color: white;
 | 
						color: white;
 | 
				
			||||||
	font-size: 24px;
 | 
						font-size: 24px;
 | 
				
			||||||
	font-weight: 700;
 | 
						font-weight: 700;
 | 
				
			||||||
@@ -65,7 +65,7 @@
 | 
				
			|||||||
	width: 370px;
 | 
						width: 370px;
 | 
				
			||||||
	padding: 10px;
 | 
						padding: 10px;
 | 
				
			||||||
	background: #f0f0f0;
 | 
						background: #f0f0f0;
 | 
				
			||||||
	color: black;
 | 
						color: #2e3133;
 | 
				
			||||||
	min-height: 16px;
 | 
						min-height: 16px;
 | 
				
			||||||
	text-align: justify;
 | 
						text-align: justify;
 | 
				
			||||||
	font-size: 16px;
 | 
						font-size: 16px;
 | 
				
			||||||
@@ -99,6 +99,6 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
.r-exclamation:before {
 | 
					.r-exclamation:before {
 | 
				
			||||||
	content: '!';
 | 
						content: '!';
 | 
				
			||||||
	color: cyan;
 | 
						color: #3bc4f1;
 | 
				
			||||||
	font-style: normal;
 | 
						font-style: normal;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -180,7 +180,9 @@
 | 
				
			|||||||
            <button>No</button>
 | 
					            <button>No</button>
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
    </div>
 | 
					    </div>
 | 
				
			||||||
 | 
					    <script type="text/javascript" src="/js/modal.js"></script>
 | 
				
			||||||
    <script type="text/javascript" src="/js/uianimation.js"></script>
 | 
					    <script type="text/javascript" src="/js/uianimation.js"></script>
 | 
				
			||||||
    <script type="text/javascript" src="/js/datatransfer.js"></script>
 | 
					    <script type="text/javascript" src="/js/datatransfer.js"></script>
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
</body>
 | 
					</body>
 | 
				
			||||||
</html>
 | 
					</html>
 | 
				
			||||||
@@ -8,6 +8,8 @@ var jsonIndex = 0;
 | 
				
			|||||||
var htable_row = 0;
 | 
					var htable_row = 0;
 | 
				
			||||||
var host = getDomain();
 | 
					var host = getDomain();
 | 
				
			||||||
var dataModified = false;
 | 
					var dataModified = false;
 | 
				
			||||||
 | 
					var discardChanges = false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const C_UUID = 'mock-uuid';
 | 
					const C_UUID = 'mock-uuid';
 | 
				
			||||||
const setModified = function(){
 | 
					const setModified = function(){
 | 
				
			||||||
    setDataModified();
 | 
					    setDataModified();
 | 
				
			||||||
@@ -96,16 +98,12 @@ function getCookie(cname) {
 | 
				
			|||||||
    return '';
 | 
					    return '';
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function displaySaveConfirmation(){
 | 
					 | 
				
			||||||
    alert('message has been saved');
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function updateData(){
 | 
					function updateData(){
 | 
				
			||||||
    var updatedJson = generateJson();
 | 
					    var updatedJson = generateJson();
 | 
				
			||||||
    const dataSaved = function () {
 | 
					    const dataSaved = function () {
 | 
				
			||||||
        displaySaveConfirmation();
 | 
					 | 
				
			||||||
        setDataOrigin();
 | 
					        setDataOrigin();
 | 
				
			||||||
        getData();
 | 
					        getData();
 | 
				
			||||||
 | 
					        savedModalDisplay();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    var request = $.ajax({
 | 
					    var request = $.ajax({
 | 
				
			||||||
        url: host + '/mock/json',
 | 
					        url: host + '/mock/json',
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										45
									
								
								src/main/resources/static/js/modal.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								src/main/resources/static/js/modal.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,45 @@
 | 
				
			|||||||
 | 
					var modalDisplayed = false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					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');
 | 
				
			||||||
 | 
					//TODO: Implement in datatransfer
 | 
				
			||||||
 | 
					const closeModals = function() {
 | 
				
			||||||
 | 
					    hideModal(allModals);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					const savedModalDisplay = function() {
 | 
				
			||||||
 | 
					    console.log('SavedModal displayed');
 | 
				
			||||||
 | 
					    showModal(savedModal);
 | 
				
			||||||
 | 
					    setTimeout(closeModals, 2000);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					const dataLossModalDisplay = function(){
 | 
				
			||||||
 | 
					    showModal(dataLossModal);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					const dropChangesAndClose = function(){
 | 
				
			||||||
 | 
					    discardChanges = true;
 | 
				
			||||||
 | 
					    hideModal(dataLossModal);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function showModal(jmodal){
 | 
				
			||||||
 | 
					    if(modalDisplayed) return;
 | 
				
			||||||
 | 
					    overlay.toggleClass('active');
 | 
				
			||||||
 | 
					    jmodal.addClass('active');
 | 
				
			||||||
 | 
					    modalDisplayed = true;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function hideModal(jmodal){
 | 
				
			||||||
 | 
					    if(!modalDisplayed) return;
 | 
				
			||||||
 | 
					    overlay.toggleClass('active');
 | 
				
			||||||
 | 
					    jmodal.removeClass('active');
 | 
				
			||||||
 | 
					    modalDisplayed = false;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					btnModalClose.click(closeModals);
 | 
				
			||||||
 | 
					overlay.click(closeModals);
 | 
				
			||||||
 | 
					dataLossModalNo.click(closeModals);
 | 
				
			||||||
 | 
					dataLossModalYes.click(dropChangesAndClose);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -35,7 +35,7 @@
 | 
				
			|||||||
.modal div.header {
 | 
					.modal div.header {
 | 
				
			||||||
	width: 384px;
 | 
						width: 384px;
 | 
				
			||||||
	height: 24px;
 | 
						height: 24px;
 | 
				
			||||||
	background: gray;
 | 
						background: #2e3133;
 | 
				
			||||||
	color: white;
 | 
						color: white;
 | 
				
			||||||
	font-size: 24px;
 | 
						font-size: 24px;
 | 
				
			||||||
	font-weight: 700;
 | 
						font-weight: 700;
 | 
				
			||||||
@@ -65,7 +65,7 @@
 | 
				
			|||||||
	width: 370px;
 | 
						width: 370px;
 | 
				
			||||||
	padding: 10px;
 | 
						padding: 10px;
 | 
				
			||||||
	background: #f0f0f0;
 | 
						background: #f0f0f0;
 | 
				
			||||||
	color: black;
 | 
						color: #2e3133;
 | 
				
			||||||
	min-height: 16px;
 | 
						min-height: 16px;
 | 
				
			||||||
	text-align: justify;
 | 
						text-align: justify;
 | 
				
			||||||
	font-size: 16px;
 | 
						font-size: 16px;
 | 
				
			||||||
@@ -99,6 +99,6 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
.r-exclamation:before {
 | 
					.r-exclamation:before {
 | 
				
			||||||
	content: '!';
 | 
						content: '!';
 | 
				
			||||||
	color: cyan;
 | 
						color: #3bc4f1;
 | 
				
			||||||
	font-style: normal;
 | 
						font-style: normal;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -180,7 +180,9 @@
 | 
				
			|||||||
            <button>No</button>
 | 
					            <button>No</button>
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
    </div>
 | 
					    </div>
 | 
				
			||||||
 | 
					    <script type="text/javascript" src="/js/modal.js"></script>
 | 
				
			||||||
    <script type="text/javascript" src="/js/uianimation.js"></script>
 | 
					    <script type="text/javascript" src="/js/uianimation.js"></script>
 | 
				
			||||||
    <script type="text/javascript" src="/js/datatransfer.js"></script>
 | 
					    <script type="text/javascript" src="/js/datatransfer.js"></script>
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
</body>
 | 
					</body>
 | 
				
			||||||
</html>
 | 
					</html>
 | 
				
			||||||
@@ -8,6 +8,8 @@ var jsonIndex = 0;
 | 
				
			|||||||
var htable_row = 0;
 | 
					var htable_row = 0;
 | 
				
			||||||
var host = getDomain();
 | 
					var host = getDomain();
 | 
				
			||||||
var dataModified = false;
 | 
					var dataModified = false;
 | 
				
			||||||
 | 
					var discardChanges = false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const C_UUID = 'mock-uuid';
 | 
					const C_UUID = 'mock-uuid';
 | 
				
			||||||
const setModified = function(){
 | 
					const setModified = function(){
 | 
				
			||||||
    setDataModified();
 | 
					    setDataModified();
 | 
				
			||||||
@@ -96,16 +98,12 @@ function getCookie(cname) {
 | 
				
			|||||||
    return '';
 | 
					    return '';
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function displaySaveConfirmation(){
 | 
					 | 
				
			||||||
    alert('message has been saved');
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function updateData(){
 | 
					function updateData(){
 | 
				
			||||||
    var updatedJson = generateJson();
 | 
					    var updatedJson = generateJson();
 | 
				
			||||||
    const dataSaved = function () {
 | 
					    const dataSaved = function () {
 | 
				
			||||||
        displaySaveConfirmation();
 | 
					 | 
				
			||||||
        setDataOrigin();
 | 
					        setDataOrigin();
 | 
				
			||||||
        getData();
 | 
					        getData();
 | 
				
			||||||
 | 
					        savedModalDisplay();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    var request = $.ajax({
 | 
					    var request = $.ajax({
 | 
				
			||||||
        url: host + '/mock/json',
 | 
					        url: host + '/mock/json',
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										45
									
								
								target/classes/static/js/modal.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								target/classes/static/js/modal.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,45 @@
 | 
				
			|||||||
 | 
					var modalDisplayed = false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					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');
 | 
				
			||||||
 | 
					//TODO: Implement in datatransfer
 | 
				
			||||||
 | 
					const closeModals = function() {
 | 
				
			||||||
 | 
					    hideModal(allModals);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					const savedModalDisplay = function() {
 | 
				
			||||||
 | 
					    console.log('SavedModal displayed');
 | 
				
			||||||
 | 
					    showModal(savedModal);
 | 
				
			||||||
 | 
					    setTimeout(closeModals, 2000);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					const dataLossModalDisplay = function(){
 | 
				
			||||||
 | 
					    showModal(dataLossModal);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					const dropChangesAndClose = function(){
 | 
				
			||||||
 | 
					    discardChanges = true;
 | 
				
			||||||
 | 
					    hideModal(dataLossModal);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function showModal(jmodal){
 | 
				
			||||||
 | 
					    if(modalDisplayed) return;
 | 
				
			||||||
 | 
					    overlay.toggleClass('active');
 | 
				
			||||||
 | 
					    jmodal.addClass('active');
 | 
				
			||||||
 | 
					    modalDisplayed = true;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function hideModal(jmodal){
 | 
				
			||||||
 | 
					    if(!modalDisplayed) return;
 | 
				
			||||||
 | 
					    overlay.toggleClass('active');
 | 
				
			||||||
 | 
					    jmodal.removeClass('active');
 | 
				
			||||||
 | 
					    modalDisplayed = false;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					btnModalClose.click(closeModals);
 | 
				
			||||||
 | 
					overlay.click(closeModals);
 | 
				
			||||||
 | 
					dataLossModalNo.click(closeModals);
 | 
				
			||||||
 | 
					dataLossModalYes.click(dropChangesAndClose);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		Reference in New Issue
	
	Block a user