<html><head><title>North52 BPA - Quick Button</title>
<script src="ClientGlobalContext.js.aspx"></script>

<script src="north52_/javascript/jquery" type="text/javascript"></script>

<script src="north52_/javascript/north52_dialog_helper" type="text/javascript"></script>

<script src="north52_/javascript/n52.json2" type="text/javascript"></script>

<script src="north52_/javascript/n52.rest" 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 N52QuickButton = {}; 

 $(document).ready(function () { N52QuickButton.Initialize();
     });


N52QuickButton.Click = function()
{


var e=parent.Xrm.Page.data.entity.getId();
var t=parent.Xrm.Page.data.entity.getEntityName();
var n=e==null?"1":"2";
var r=N52QuickButton.GetShortCode();
var i="<"+t+"></"+t+">";
var s="$select=north52_Result&$filter=north52_name eq "+"'"+r+"' and north52_Parameters eq '"+i+"' and north52_TargetEntityID eq '"+e+"' and north52_FormulaType eq '"+n+"'";

document.getElementById("n52button").disabled = true;
document.getElementById("n52button").textContent  = "In-Progress...";


N52.REST.retrieveMultipleRecords("north52_formulacalculation",s,N52QuickButton.RetrieveFormulaCallBack,function(e){},N52QuickButton.FormulasRetrieveComplete);


}

N52QuickButton.RetrieveFormulaCallBack= function(e)
{
 parent.Xrm.Page.data.refresh(false);

  if(e[0].north52_Result !="NoOp")
   {
        var result =N52JSON.parse(e[0].north52_Result).PropertyValueAction.toString();
        
         if(result !="NoOp")
         {
             parent.Xrm.Page.ui.clearFormNotification('msgbutton');
             parent.Xrm.Page.ui.setFormNotification(result, 'INFO', 'msgbutton');                   
         }
   }

  
    document.getElementById("n52button").disabled = false;
    N52QuickButton.Initialize();
    
}

N52QuickButton.GetQuerystring= function(e)
{
   var t=e.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");
   var n=new RegExp("[\\?&]"+t+"=([^&#]*)");

   var r=n.exec(window.location.href);

   if(r==null)
     return null;

return r[1]
}

N52QuickButton.GetShortCode= function()
{
     var e=N52QuickButton.GetQuerystring("data");
     var t=decodeURIComponent(e);
     var n=t.split("|");

return n[0];
}

N52QuickButton.GetButtonDescription= function()
{
     var e=N52QuickButton.GetQuerystring("data");
     var t=decodeURIComponent(e);
     var n=t.split("|");

return n[1];
}

N52QuickButton.GetButtonStyle= function()
{
     var e= N52QuickButton.GetQuerystring("data");
     var t=decodeURIComponent(e);
     var n=t.split("|");

return n[2];
}

N52QuickButton.FormulasRetrieveComplete= function()
{
   
}

N52QuickButton.Initialize= function()
{

var buttonDescription=N52QuickButton.GetButtonDescription();
var buttonStyle =N52QuickButton.GetButtonStyle();


document.getElementById("n52button").textContent  = buttonDescription;
document.getElementById("n52button").className = buttonStyle ;
}

</script>
<meta charset="utf-8"><meta><meta><meta></head><body style="-ms-word-wrap: break-word;"><button id="n52button" onclick="N52QuickButton.Click();" type="button">Click ME</button></body></html>