﻿function MsgBox(textstring) {
    alert(textstring);
}
		function calculatetime(tbshiftfrom, tbshiftto, label, break1from, break1to, break2from, break2to, break3from, break3to, break4from, break4to) {
			if( (tbshiftfrom.value == null) || (tbshiftto.value == null) || 
			    (tbshiftfrom.value == '') || (tbshiftto.value == '') )
			{
				label.innerHTML = '?';
				return;
			}
			
			var shiftfromValue = tbshiftfrom.value;
			var shifttoValue = tbshiftto.value;
			var breakstotalValue = 0;

			shiftfromValue = parseInt( convertToMinutes( shiftfromValue ), 10 );
			shifttoValue = parseInt( convertToMinutes( shifttoValue ), 10 );
			
			breakstotalValue = convertBreaksToMinutes(break1from, break1to, break2from, break2to, break3from, break3to, break4from, break4to);
			label.innerHTML = convertMinutesToTime( shiftfromValue, shifttoValue, breakstotalValue );
		}

		function convertToMinutes( timevalue ) {
			var minutes = 0;
			if( timevalue.length < 1 ) {
			} else if( timevalue.indexOf(":") == -1 ) {
				// Invalid time format!
				alert('Invalid format: ' + timevalue);
			}
			else 
			{ // Valid time format
				var result = new Array();
				result = timevalue.split(":",2);
				
				minutes += parseInt(result[0],10) * 60;
				minutes += parseInt(result[1],10);
			}

			return minutes;
		}		


		function convertBreaksToMinutes( break1from, break1to, break2from, break2to, break3from, break3to, break4from, break4to ) {
			var breakstotalValue = 0;

			if( !(break1from.value == '' || break1to.value == '') )
				breakstotalValue += convertTimeToMinutes( convertToMinutes(break1from.value), convertToMinutes(break1to.value) );
			if( !(break2from.value == '' || break2to.value == '') )
				breakstotalValue += convertTimeToMinutes( convertToMinutes(break2from.value), convertToMinutes(break2to.value) );
			if( !(break3from.value == '' || break3to.value == '') )
				breakstotalValue += convertTimeToMinutes( convertToMinutes(break3from.value), convertToMinutes(break3to.value) );
			if( !(break4from.value == '' || break4to.value == '') )
				breakstotalValue += convertTimeToMinutes( convertToMinutes(break4from.value), convertToMinutes(break4to.value) );

			return -breakstotalValue;
		}

		function convertTimeToMinutes( timestart, timeend ) {
			var diffinminutes = 0;
			if( parseInt(timeend,10) - parseInt(timestart,10) < 0 ) {
				// Time passes midnight
				diffinminutes += 1440 - parseInt( timestart, 10 );
				diffinminutes += timeend;
			} else {
				// Time does not pass midnight
				diffinminutes = parseInt(timeend,10) - parseInt(timestart,10);
			}
			
			return diffinminutes;
		}

		function convertMinutesToTime( fromtimeinminutes, totimeinminutes, breakstotalinminutes ) {
			var timeformat = '';

			var diffinminutes = 0;
			if( parseInt(totimeinminutes,10) - parseInt(fromtimeinminutes,10) < 0 ) {
				// Time passes midnight
				diffinminutes += 1440 - parseInt(fromtimeinminutes, 10);
				diffinminutes += totimeinminutes;
			} else {
				// Time does not pass midnight
				diffinminutes = parseInt(totimeinminutes,10) - parseInt(fromtimeinminutes,10);
			}
			
			// subtract breaks from worktime
			if( !(breakstotalinminutes == '') )
				diffinminutes = diffinminutes + breakstotalinminutes;

			var hours = parseInt( diffinminutes / 60, 10 );
			var minutes = diffinminutes % 60;

			timeformat = hours + ' tim';

			if( minutes > 0 ) {
			 timeformat = timeformat + ' ' + minutes + ' min'
			}

			return timeformat;
		}



		function validatetime(field) {
		    var testValue = field.value;

		    // If nothing is entered, skip validation
		    if (testValue == "")
		        return;

		    testValue = testValue.replace('.', ":");
		    testValue = testValue.replace(',', ":");

		    if (testValue.indexOf(":") == -1) {
		        // Does not contain ":"
		        if (isNaN(testValue)) {
		            field.value = "";
		            return;
		        }

		        if (testValue.length == 1) {
		            testValue = "0" + testValue + ":00";
		        }
		        else if (testValue.length == 2) {
		            testValue = testValue + ":00";
		        }
		        else if (testValue.length == 3) {
		            testValue = testValue + "0";
		            testValue = testValue.substr(0, 2) + ":" + testValue.substr(2, 2);
		        }
		        else if (testValue.length >= 4) {
		            testValue = testValue.substr(0, 2) + ":" + testValue.substr(2, 2);
		        }
		    } else {
		        var result = new Array();
		        result = testValue.split(":", 2);

		        if (isNaN(result[0]) || isNaN(result[1]))
		            return;

		        if (result[0].length == 1) {
		            result[0] = "0" + result[0];
		        }

		        if (result[1].length == 1) {
		            result[1] = result[1] + "0";
		        }

		        testValue = result[0] + ":" + result[1];
		    }

		    field.value = testValue;
		}



		function validateamount(field){
			var testValue = field.value;

			// If nothing is entered, skip validation
			if( testValue == "" )
				return;

			if(  (testValue.indexOf(",") > -1)) {
				var result = new Array();
				result = testValue.split(",",2);
				
				if( isNaN( result[0]) || isNaN(result[1]) )
					return;

//				if( result[0].length == 1 ) {
//					result[0] = "0" + result[0];
//				}

				if( result[1].length == 1 ) {
					result[1] = result[1] + "0";
				}

				testValue = result[0] + "," + result[1];
			} else if((testValue.indexOf(".") > -1)) {
				var result = new Array();
				result = testValue.split(".",2);
				
				if( isNaN( result[0]) || isNaN(result[1]) )
					return;

//				if( result[0].length == 1 ) {
//					result[0] = "0" + result[0];
//				}

				if( result[1].length == 1 ) {
					result[1] = result[1] + "0";
				}
				
				testValue = result[0] + "," + result[1];
			} else {
				// Does not contain ":"
				if( isNaN( testValue ) )
					return;
					
				if( testValue.length == 1 ) {
					testValue =  testValue + ",0";
				}
				else if( testValue.length == 2 ) {
					testValue = testValue + ",0";
				}
				else if( testValue.length == 4 ) {
					testValue = testValue.substr(0,2) + "," + testValue.substr(2,2);
				}
			}
			
			field.value = testValue;
		}




		function updateDropDown(dropdown, field, vehiclenumber ){
			found = -1;
			elements = dropdown.options.length;
			
			for( i = 0; i < dropdown.options.length; i++ ) {
				if( vehiclenumber == dropdown.options[i].value )
						found = i;
			}
		
			if( found >= 0 ) {
				dropdown.selectedIndex = found;
			} else {
				dropdown.selectedIndex = 0;
				field.value = "";
				alert('Det finns inget fordon med det numret, var god försök igen.');
			}
		}

		function updateTextBox(field, regnumber){
			field.value = regnumber;
		}


		function selectContent(field) {
			field.select();

}
function FreezeScreen(msg) {
    scroll(0, 0);
    var outerPane = document.getElementById('FreezePane');
    var innerPane = document.getElementById('InnerFreezePane');
    if (outerPane) outerPane.className = 'FreezePaneOn';
    if (innerPane) innerPane.innerHTML = msg;
}  
