/*******************************************************************************
 * Copyright (c) 2016 AT&T Intellectual Property. All rights reserved.
 *******************************************************************************/
Object.defineProperty(Element.prototype, 'outerHeight', {
    'get': function(){
        var height = this.clientHeight;
        height += getStyle(this,'marginTop');
        height += getStyle(this,'marginBottom');
        height += getStyle(this,'borderTopWidth');
        height += getStyle(this,'borderBottomWidth');
        return height;
    }
});

if (document.addEventListener) {
	document.addEventListener('DOMContentLoaded', function () {
		var height = document.querySelector("#footer").outerHeight;
		document.querySelector("#inner").setAttribute("style",
				"margin-bottom:" + height.toString()+ "px");
	});
} else {
	window.attachEvent("onload", function () {
		var height = document.querySelector("#footer").outerHeight;
		document.querySelector("#inner").setAttribute("style",
				"margin-bottom:" + height.toString()+ "px");
	});
}



function getStyle(el, prop) {
	var result = el.currentStyle ? el.currentStyle[prop] :
		document.defaultView.getComputedStyle(el,"")[prop];
	if (parseInt(result,10))
		return parseInt(result,10);
	else
		return 0;
}

function divVisibility(divID) {
	var element = document.querySelector("#"+divID);
	if (element.style.display=="block")
		element.style.display="none";
	else
		element.style.display="block";
}

function datesURL(histPage) {
	var validated=true;
	var yearStart = document.querySelector('#yearStart').value;
	var yearEnd = document.querySelector('#yearEnd').value;
	var monthStart = document.querySelector('#monthStart').value;
	var monthEnd = document.querySelector('#monthEnd').value;
	if (monthStart.length == 1) monthStart = 0 + monthStart;
	if (monthEnd.length == 1) monthEnd = 0 + monthEnd;

	validated &= validateYear(yearStart);
	validated &= validateYear(yearEnd);
	validated &= validateMonth(monthStart);
	validated &= validateMonth(monthEnd);
	
	if (validated) window.location=histPage+"&dates="+yearStart+monthStart+"-"+yearEnd+monthEnd;
	else alert("Please correct your date selections");
}

function userFilter(approvalPage) {
	var user = document.querySelector('#userTextBox').value;
	if (user != "")
		window.location=approvalPage+"?user="+user;
	else
		window.location=approvalPage;
}

function validateYear(year) {
	var today = new Date();
	if (year >= 1900 && year <= today.getFullYear()) return true;
	else return false;
}

function validateMonth(month) {
	if (month) return true;
	else return false;
}

function alterLink(breadcrumbToFind, newTarget) {
	var breadcrumbs = document.querySelector("#breadcrumbs").getElementsByTagName("A");
	for (var i=0; i< breadcrumbs.length;i++) {
		var breadcrumbHref = breadcrumbs[i].getAttribute('href');
		if (breadcrumbHref.indexOf(breadcrumbToFind)>-1) 
			breadcrumbs[i].setAttribute('href', newTarget);
	}
}

// clipBoardData object not cross-browser supported. Only IE it seems
function copyToClipboard(controlId) { 
    var control = document.getElementById(controlId); 
    if (control == null) { 
    	alert("ERROR - control not found - " + controlId); 
    } else { 
    	var controlValue = control.href; 
    	window.clipboardData.setData("text/plain", controlValue); 
    	alert("Copied text to clipboard : " + controlValue); 
    } 
}