anchor.diff:  	
   	//Delete Test Btn.
   	$('#delbtn').on('click', function (e) {
  -		p.tests.splice(testItor,1);
  +		if(p.tests[testItor].hasOwnProperty('del')
  +				&& typeof p.tests[testItor].del != 'undefined'){
  +			if(p.tests[testItor].del == false){
  +				p.tests[testItor].del = true;
  +				$(this).text('Recover');
  +				disableTestGUI();
  +			}else{
  +				p.tests[testItor].del = false;		
  +				$(this).text('Delete');
  +				enableTestGUI();
  +			}
  +		}else{
  +			console.log('[2_recover]');
  +			p.tests[testItor].del = true;
  +			$(this).text('Recover');
  +			disableTestGUI();
  +		}
  +		window.sessionStorage.setItem('tests',JSON.stringify(p));
   	});
   		
   	//New Test Btn.
   	$('#newbtn').on('click', function (e) {
  -		p.tests.splice(testItor,0,{"dirty":true,"isnew":true,"serialNo":testItor});
  -		window.localStorage.setItem("tests",JSON.stringify(p));
  +		p.tests.splice(testItor,0,{"dirty":true,"isnew":true,"serialNo":testItor+1});
  +		window.sessionStorage.setItem("tests",JSON.stringify(p));
   		curMode = edit;
   		showTest4Edit();
   	});
  
positive.code: 			        console.log("[AJAX_fail]: " + errorThrown);	
  			        
  			    }
  			});
  			showTest4View();
  		}
  	});
  
negative.code: 			curTestObj.tips = [];
  			if(typeof $('textarea[name="tips"]').val() != 'undefined'){
  				curTestObj.tips=$('textarea[name="tips"]').val();	
  			}
  		}
  		
  		//we need to increment serial# by 1 for tests after new test.
  		if(curTestObj.hasOwnProperty('isnew')
  				&& curTestObj.isnew == true){
  			var index = curTestObj.serialNo;
  			var t;
  			for(var i = index; i < p.tests.length; ++i){
  				t = p.tests[i];
  				t.serialNo += 1;
  				t.question[0] = t.question[0].substring(t.question[0].indexOf('.'));
  				t.question[0] = t.serialNo + t.question[0];
  			}
  		}
  	}
  