<html>
<head>
	<title>Load reports</title>
	<script src="ClientGlobalContext.js.aspx"></script>
	<script src="bah_jquery1.4.1.min.js" type="text/javascript"></script>
	<script src="bah_SDK.REST.js" type="text/javascript"></script>
	<link href="north52_purecss.css" rel="stylesheet" type="text/css">
	<style type="text/css">
		html, body{ height: 100%; overflow: auto;  border-width: 0px; }
		body {  padding: 0;  margin: 0;  }
	</style>

<script type="text/javascript">
var _ssn = "";
var _enddatestring = "";
var _startdatestring = "";

function loadReports() {
	var startdate = parent.window.Xrm.Page.getAttribute("vhacrm_startdateofservice_date").getValue();
	if(startdate != null) {
		_startdatestring = (startdate.getMonth() + 1) + "/" + startdate.getDate() + "/" + startdate.getFullYear();
	}
	else{
		alert("You must supply values for service start and end date.");
		return;
	}
	
	var enddate = parent.window.Xrm.Page.getAttribute("vhacrm_enddateofservice_date").getValue();
	if(enddate != null) {
		_enddatestring = (enddate.getMonth() + 1) + "/" + enddate.getDate() + "/" + enddate.getFullYear();
	}
	else{
		alert("You must supply values for service start and end date.");
		return;
	}
	
	if(parent.window.Xrm.Page.getAttribute("bah_veteranid") != null) {
		var veteranId = parent.window.Xrm.Page.getAttribute("bah_veteranid").getValue();
		if(veteranId != null){
			if(veteranId[0].id != null){
				retrieveVeteran(veteranId[0].id);
			}
		}
	}
	else {
		alert("You must select a veteran.");
		return;
	}
}

function retrieveVeteran(id){
	var selectFields = "bah_dob_date";
	selectFields += ",bah_edipi_text";
	selectFields += ",bah_ssn_text";
	selectFields += ",FirstName";
	selectFields += ",LastName";
	
	var expandFields = "";
	
	//retrieve veteran
	SDK.REST.retrieveRecord(id.toString(), "Contact", selectFields, expandFields, retrieveVeteranSuccessCallback, retrieveVeteranErrorCallback);
}

function retrieveVeteranErrorCallback() {
	//do nothing
}

///executes mvi search to get icn
function retrieveVeteranSuccessCallback(result){
	if (result.bah_ssn_text != "" && result.bah_ssn_text != null) {
		_ssn = result.bah_ssn_text;
		_ssn = _ssn.replace(/-/g, "");
		SDK.REST.retrieveMultipleRecords("bah_keyvaluepair", 
		"$select=*&$filter=endswith(bah_name_text, 'Report')", 
		function(data){
			if(data.length>0) {
				for(var i=0;i<data.length;i++){
					loadReport(data[i].bah_name_text,data[i].bah_stringvalue_text);
				}
			}
		},
		function(error){
			//do nothing
		},
		function(){
			//do nothing on completion
		});
	}
}

function loadReport(name, path){
	var webresource = null;
	var webresourceUrl = "";
	var params = "";
	
	switch(name) {
		case "Inpatient Claims Report":
			//statement_from_date,statement_to_date,is_current,member_id
			params += "&member_id="+_ssn;
			params += "&is_current=Y";
			params += "&statement_from_date="+encodeURIComponent(_startdatestring);
			params += "&statement_to_date="+encodeURIComponent(_enddatestring);
			webresourceUrl = path + params + "&rc:parameters=false";
			webresource = parent.window.Xrm.Page.ui.controls.get("IFRAME_claimsearch");
			break;
		case "Outpatient Authorizations Report":
			//StartDate,EndDate,ssn
			params += "&ssn="+_ssn;
			params += "&StartDate="+encodeURIComponent(_startdatestring);
			params += "&EndDate="+encodeURIComponent(_enddatestring);
			webresourceUrl = path + params + "&rc:parameters=false";
			webresource = parent.window.Xrm.Page.ui.controls.get("IFRAME_authsearch");
			break;
		/*case "Outpatient Claims Report":
			//service_date_from,service_date_to,member_id,is_current
			params += "&member_id="+_ssn;
			params += "&is_current=Y";
			params += "&service_date_from="+encodeURIComponent(_startdatestring);
			params += "&service_date_to="+encodeURIComponent(_enddatestring);
			webresourceUrl = path + params + "&rc:parameters=false";
			webresource = parent.window.Xrm.Page.ui.controls.get("IFRAMENAME HERE");
			break;*/
	}
	if(webresource != null && webresourceUrl.length>0){
		webresource.setSrc(webresourceUrl);	
	}
}

</script>
</head>
<body style="-ms-word-wrap: break-word;">
<button id="savebutton" class="undefined" onclick="loadReports();">Search</button>
</body>
</html>