﻿// JScript File
function toggle( targetId ) {
	if ( document.getElementById ) {
	    if ( document.getElementById(targetId) != null ){
		    target = document.getElementById( targetId );
		    if ( target.style.display == "none" ) {
		    target.style.display = "block";
		    } else {
		    target.style.display = "none";
		    }
	    }
	}
}

// JScript File
function View( targetId, bshow ) {
	if ( document.getElementById ) {
	    if ( document.getElementById(targetId) != null ){
		    target = document.getElementById( targetId );
		    if ( bshow == true ) {
		    target.style.display = "block";
		    } else {
		    target.style.display = "none";
		    }
	    }
	}
}

function OpenDocument(elementid, orgid, vehicleid){
    var elementRef = document.getElementById(elementid);
    if(elementRef.selectedIndex != -1){
        //var surl = "http://www.datafleet.com.au/res/vehicledocuments/" + vehicleid + "_" + elementRef.options[elementRef.selectedIndex].text;
        var surl = "res/vehicledocuments/" + orgid + "/" + vehicleid + "_" + elementRef.options[elementRef.selectedIndex].text;
        var newWindow = window.open(surl, '_blank', 'status=0,toolbar=0,location=0,menubar=0');
        newWindow.focus();
    }
}


function CalcDTR(elementId, tbelementId){
     var elementRef = document.getElementById(elementId);
     var checkBoxArray = elementRef.getElementsByTagName('input');
     var d1, d2, days, km1, km2, kmCount, s, a, dtr;
     var n = 0;
     var CheckedBoxes = new Array();
     for (var i=0; i<checkBoxArray.length; i++){
        var checkBoxRef = checkBoxArray[i];
        if ( checkBoxRef.checked == true ){
        var labelArray = checkBoxRef.parentNode.getElementsByTagName('label');
            if ( labelArray.length > 0 ){
                CheckedBoxes[n] = labelArray[0].innerHTML
                n++;
            }
        }
     }
    if(CheckedBoxes.length > 0){
        s = CheckedBoxes[0];//first item is beginning date
        a = s.split(", ");
        km1 = parseInt(a[1]);
        d1 = new Date(a[0]);
        s = CheckedBoxes[CheckedBoxes.length-1];//Last item is ending
        a = s.split(", ");
        km2 = parseInt(a[1]);
        d2 = new Date(a[0]);
        
        days = days_between(d1, d2);
        kmCount = km2 - km1;
        dtr = kmCount/days;
        if(isNaN(dtr)){
            document.getElementById(tbelementId).value = 0;
        }else{
            document.getElementById(tbelementId).value = Math.round(dtr);
        }
    }
}

function days_between(date1, date2) {
    var ONE_DAY = 1000 * 60 * 60 * 24; // The number of milliseconds in one day
    var date1_ms = date1.getTime(); // Convert both dates to milliseconds
    var date2_ms = date2.getTime();
    var difference_ms = Math.abs(date1_ms - date2_ms); // Calculate the difference in milliseconds
    return Math.round(difference_ms/ONE_DAY); // Convert back to days and return
}

/********************Tooltip************************/
var tooltip=function(){
 var id = 'tt';
 var top = 0;
 var left = 6;
 var maxw = 250;
 var speed = 10;
 var timer = 10;
 var endalpha = 95;
 var alpha = 0;
 var tt,t,c,b,h;
 var ie = document.all ? true : false;
 return{
  show:function(v,w){
   if(tt == null){
    tt = document.createElement('div');
    tt.setAttribute('id',id);
    t = document.createElement('div');
    t.setAttribute('id',id + 'top');
    c = document.createElement('div');
    c.setAttribute('id',id + 'cont');
    b = document.createElement('div');
    b.setAttribute('id',id + 'bot');
    tt.appendChild(t);
    tt.appendChild(c);
    tt.appendChild(b);
    document.body.appendChild(tt);
    tt.style.opacity = 0;
    tt.style.filter = 'alpha(opacity=0)';
    document.onmousemove = this.pos;
   }
   tt.style.display = 'block';
   c.innerHTML = v;
   tt.style.width = w ? w + 'px' : 'auto';
   if(!w && ie){
    t.style.display = 'none';
    b.style.display = 'none';
    tt.style.width = tt.offsetWidth;
    t.style.display = 'block';
    b.style.display = 'block';
   }
  if(tt.offsetWidth > maxw){tt.style.width = maxw + 'px'}
  h = parseInt(tt.offsetHeight) + top;
  clearInterval(tt.timer);
  tt.timer = setInterval(function(){tooltip.fade(1)},timer);
  },
  pos:function(e){
   var u = ie ? event.clientY + document.documentElement.scrollTop : e.pageY;
   var l = ie ? event.clientX + document.documentElement.scrollLeft : e.pageX;
   tt.style.top = (u - 40) + 'px';
   tt.style.left = (l + left) + 'px';
  },
  fade:function(d){
   var a = alpha;
   if((a != endalpha && d == 1) || (a != 0 && d == -1)){
    var i = speed;
   if(endalpha - a < speed && d == 1){
    i = endalpha - a;
   }else if(alpha < speed && d == -1){
     i = a;
   }
   alpha = a + (i * d);
   tt.style.opacity = alpha * .01;
   tt.style.filter = 'alpha(opacity=' + alpha + ')';
  }else{
    clearInterval(tt.timer);
     if(d == -1){tt.style.display = 'none'}
  }
 },
 hide:function(){
  clearInterval(tt.timer);
   tt.timer = setInterval(function(){tooltip.fade(-1)},timer);
  }
 };
}();
