<html><head></head><body style="-ms-word-wrap: break-word;">﻿
   ﻿
    <title>Button</title>
    <script src="ClientGlobalContext.js.aspx"></script>
    <script src="bah_SDK.REST.js" type="text/javascript"></script>
    <script src="bah_jquery1.4.1.min.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">
    $(document).ready(function () {
        $('#addReferralButton').click(function () {
            var InOutPatient = parent.Xrm.Page.getAttribute("vhacrm_inpatientoutpatient_code").getValue();
            var InternalNum = parent.Xrm.Page.getAttribute("vhacrm_internalnumber_text").getValue();
            var FromDate = parent.Xrm.Page.getAttribute("vhacrm_fromdate_date").getValue();
            var ToDate = parent.Xrm.Page.getAttribute("vhacrm_todate_date").getValue();
            var Vendor = parent.Xrm.Page.getAttribute("vhacrm_vendor_text").getValue();
            var ServFac = parent.Xrm.Page.getAttribute("vhacrm_servicingfacilityreferralid").getValue();
            var Interaction = parent.Xrm.Page.getAttribute("bah_interactionstorequestid").getValue();
            var validReferal = true;
            var validationmessage = 'You must supply values for '
            if (!InOutPatient) {
                validReferal = false;
                validationmessage += 'Inpatient/Outpatient, ';
            }

            if (!InternalNum) {
                validReferal = false;
                validationmessage += 'Internal Number, ';
            }
					
            if (!FromDate) {
                validReferal = false;
                validationmessage += 'From Date, ';
            }
            if (!ToDate) {
                validReferal = false;
                validationmessage += 'To Date, ';
            }
            if (!Vendor) {
                validReferal = false;
                validationmessage += 'Vendor, ';
            }
            if (!ServFac) {
                validReferal = false;
                validationmessage += 'Servicing Facility, ';
            }
			
			
            if (ToDate != null) {
                if (ToDate < FromDate) {
                    validReferal = false;
                    validationmessage = "";
                    validationmessage += 'To Date must be before From Date  ';
                }
            }


            if (validReferal) {
					var parentid = parent.Xrm.Page.data.entity.getId();
					var parenttype = "incident";
					var veterin = parent.Xrm.Page.getAttribute("customerid").getValue();
//					var veterin = "contact"; 

                var referral = {};
                        referral.vhacrm_name = InternalNum;
                        referral.vhacrm_inpatientoutpatient_code = { Value: InOutPatient };
						referral.vhacrm_fromdate_date  = FromDate;
						referral.vhacrm_todate_date  = ToDate;
						referral.vhacrm_vendor_text  = Vendor;
						referral.vhacrm_servicingfacilityid = { Id: ServFac[0].id, LogicalName: ServFac[0].typename };
						referral.vhacrm_requestid = { Id: parentid, LogicalName: parenttype }; 
						referral.vhacrm_interactionid = { Id: Interaction[0].id, LogicalName: Interaction[0].typename };

						if (veterin) {
	            	        referral.vhacrm_veteranid = { Id: veterin[0].id, LogicalName: veterin[0].typename };
                        }

                debugger;

                SDK.REST.createRecord(
                    referral,
                    "vhacrm_referrals",
                    function (createdReferral) {
                        parent.Xrm.Page.getControl("Referrals").refresh();
                        parent.Xrm.Page.getAttribute("vhacrm_inpatientoutpatient_code").setValue(null);
                        parent.Xrm.Page.getAttribute("vhacrm_internalnumber_text").setValue(null);
                        parent.Xrm.Page.getAttribute("vhacrm_fromdate_date").setValue(null);
                        parent.Xrm.Page.getAttribute("vhacrm_todate_date").setValue(null);
						parent.Xrm.Page.getAttribute("vhacrm_vendor_text").setValue(null);
						parent.Xrm.Page.getAttribute("vhacrm_servicingfacilityreferralid").setValue(null);
                    },
                    function (err) {
                        alert('An error occurred adding the referral: ' + err);
                    }
                );
            }
            else {
                validationmessage = validationmessage.slice(0, -2) + '.';
                alert(validationmessage);
            }
        });
    });

    </script>
    <button name="addReferralButton" id="addReferralButton" type="button">Add Referral</button>
</body></html>