function setTaxPaymentCalendar(n){taxCalendar=n}function setupOrganisationFields(n,t){var i,r;OrgTaxRates=n;OrgTaxRates.length===0&&showFailureMessage("Warning: Tax calculation cannot be carried out because tax rate of current organisation type has not been set.");ProvTaxThreshold=t;i=$(".projectedRestOfYear");i!=null&&i.keyup(updateSummaryTable);r=$(".ytdTextBox");r!=null&&r.keyup(updateSummaryTable);updateSummaryTable()}function updateSummaryTable(){var n,u,t,f,i,r,e;for(checkAnnualisedROY(),n=getSummaryTableRows(),u=[],t=0;t<n.length;t++)for(f=n[t],i=0;i<f.length;i++)r=f[i],e=getCalculatedValue(r,n),e!==""&&(r.cellVal=e,u.push(r));updateSummaryTableValues(u);checkProvTaxLiable();updateTaxDueAmount()}function updateSummaryTableValues(n){n.forEach(function(n){var t=$("#summaryTable");t.each(function(){$(this).find("tr").each(function(){var i="",t=!1;$(this).find("td").each(function(){i=$.trim($(this).text());i==n.name&&(t=!0);t==!0&&(n.type==cellTypeFullYr&&$(this).find("#calculatedFullYear").each(function(){$(this).text(numberWithCommas(n.cellVal.toFixed(0)));t=!1}),n.type==cellTypeProj&&$(this).find("#projectedSpan").each(function(){$(this).text(numberWithCommas(n.cellVal.toFixed(0)));t=!1}),n.type==cellTypeYTD&&$(this).find("#ytd").each(function(){$(this).text(numberWithCommas(n.cellVal.toFixed(0)));t=!1}))})})})})}function getSummaryTableRows(){var t=$("#summaryTable"),n=[];return t.each(function(){$(this).find("tr").each(function(){var i=[],r=!1,t=0,u="";$(this).find("td").each(function(){var o=!1,n=0,f,e;$(this).find("input").each(function(){o=!0;n=$(this).val()});o||(f=!1,$(this).find("span").each(function(){f==!1&&(n=$.trim($(this).text()),n==""&&(n=0),t==0&&(u=n,t=t+1),f=!0)}));e=getCellType($(this));e!=""&&(r=!0,i.push({name:u,type:e,cellVal:n,cssclass:$(this).attr("class")}))});r&&n.push(i)})}),n}function getCellType(n){var t="";return n.find("#name").each(function(){t=cellTypeName}),n.find("#ytd").each(function(){t=cellTypeYTD}),n.find("#ytdTextBox").each(function(){t=cellTypeYTD}),n.find("#projectedSpan").each(function(){t=cellTypeProj}),n.find("#projectedRestOfYear").each(function(){t=cellTypeProj}),n.find("#calculatedFullYear").each(function(){t=cellTypeFullYr}),t}function isPartnershipAllocation(n){return n.name==partnershipAllocationText?!0:!1}function getCalculatedValue(n,t){var i=0;return canValueBeCalculated(n.cssclass)==!0?(n.type==cellTypeFullYr&&(i=calculateFullYear(n.name,t)),n.type==cellTypeYTD&&(i=calculateYTD(n.name,t)),n.type==cellTypeProj&&(i=calculateProjectedRestOfYear(n.name,t)),isNaN(i)&&(calculatedValue=0),i):""}function calculateYTD(n,t){var i=0,r;return n==provTaxLiableText&&(i=getProvTaxLiable(t,cellTypeYTD,OrgTaxRates)),(n==provTaxDueText||n==terminalTaxDueText)&&(i=getProvTaxDue(t,cellTypeYTD)),n==taxPaidText&&(i=getTaxPaid(t,cellTypeYTD)),n==otherAdjText?i=getOtherAdj(t,cellTypeYTD):n==grossProfitText?i=getManualGrossProfit(t):n==netProfitText?i=getManualNetProfit(t):n==partnershipAllocationText&&(r=parseFloat(findValueFromList(netProfitText,cellTypeYTD,t))-parseFloat(findValueFromList(otherAdjText,cellTypeYTD,t))-parseFloat(findValueFromList(nonDeductibleText,cellTypeYTD,t))-parseFloat(findValueFromList(lossesCFText,cellTypeYTD,t)),i=r),i}function getManualGrossProfit(n){var t=findValueFromList(totalIncomeText,cellTypeYTD,n),i=findValueFromList(totalCOSText,cellTypeYTD,n);return parseFloat(t)-parseFloat(i)}function getManualNetProfit(n){return parseFloat(findValueFromList(grossProfitText,cellTypeYTD,n))-parseFloat(findValueFromList(totalexpensesText,cellTypeYTD,n))+parseFloat(findValueFromList(totalOtherIncomeText,cellTypeYTD,n))}function getOtherAdj(n,t){return parseFloat(findValueFromList(otherAdjText,t,n))}function getTaxPaid(n,t){return parseFloat(findValueFromList(taxPaidText,t,n))}function getTaxableIncome(n,t){var i=findValueFromList(netProfitText,t,n),r=findValueFromList(shareholderSalaryText,t,n),u=findValueFromList(beneficiaryDistributionText,t,n),f=findValueFromList(lossesCFText,t,n),e=findValueFromList(otherAdjText,t,n);return Math.floor(parseFloat(i)-parseFloat(f)-parseFloat(r)-parseFloat(u)-parseFloat(e))}function calcTaxLiable(n,t,r){var u=0,f=getTaxableIncome(n,t);for(i=0;i<r.length;++i)r[i].IncomeFrom>f||(u+=(f-r[i].IncomeTo>0?r[i].IncomeTo-r[i].IncomeFrom:f-r[i].IncomeFrom)*r[i].TaxRate1);return u>0?u:0}function getProvTaxLiable(n,t,i){var r=0,u,f;return t==cellTypeProj?(u=calcTaxLiable(n,cellTypeFullYr,i),f=calcTaxLiable(n,cellTypeYTD,i),r=u-f):r=calcTaxLiable(n,t,i),r>0?r:0}function getProvTaxDue(n,t){var i=findValueFromList(provTaxLiableText,t,n),r=findValueFromList(taxPaidText,t,n);return parseFloat(i)-parseFloat(r)}function calculateProjectedRestOfYear(n,t){var i=0;return n==totalIncomeText,n==grossProfitText&&(i=getProjectedGrossProfit(t)),n==netProfitText&&(i=getProjectedNetProfit(t)),n==provTaxLiableText&&(i=getProvTaxLiable(t,cellTypeProj,OrgTaxRates)),n==taxPaidText&&(i=getTaxPaid(t,cellTypeProj)),(n==provTaxDueText||n==terminalTaxDueText)&&(i=getProvTaxDue(t,cellTypeProj)),n==otherAdjText?i=getOtherAdj(t,cellTypeProj):n==partnershipAllocationText&&(i=parseFloat(findValueFromList(netProfitText,cellTypeProj,t))-parseFloat(findValueFromList(otherAdjText,cellTypeProj,t))-parseFloat(findValueFromList(nonDeductibleText,cellTypeProj,t))-parseFloat(findValueFromList(lossesCFText,cellTypeProj,t))),i}function getProjectedGrossProfit(n){var t=findValueFromList(totalIncomeText,cellTypeProj,n),i=findValueFromList(totalCOSText,cellTypeProj,n);return parseFloat(t)-parseFloat(i)}function getProjectedNetProfit(n){return parseFloat(findValueFromList(grossProfitText,cellTypeProj,n))-parseFloat(findValueFromList(totalexpensesText,cellTypeProj,n))-parseFloat(findValueFromList(totalOtherIncomeText,cellTypeProj,n))}function findValueFromList(n,t,i){var r=0;return i.forEach(function(i){if(i[0].name==n)return i.forEach(function(n){if(n.type==t)return r=parseFloat(n.cellVal.toString().replace(/,/g,"")),!1}),!1}),r}function calculateFullYear(n,t){var r=0,u=0,i=0;return n==provTaxLiableText?i=getProvTaxLiable(t,cellTypeFullYr,OrgTaxRates):(t.forEach(function(t){t[0].name==n&&t.forEach(function(n){n.type==cellTypeYTD&&(r=n.cellVal.toString().replace(/,/g,""));n.type==cellTypeProj&&(u=n.cellVal.toString().replace(/,/g,""))})}),i=parseFloat(r)+parseFloat(u)),i}function canValueBeCalculated(n){return n&&n.indexOf("calculated")>=0}function getInputRowsCells(){return[{name:totalIncomeText,type:cellTypeProj},{name:totalCOSText,type:cellTypeProj},{name:totalexpensesText,type:cellTypeProj},{name:shareholderSalaryText,type:cellTypeYTD},{name:shareholderSalaryText,type:cellTypeProj},{name:lossesCFText,type:cellTypeYTD},{name:lossesCFText,type:cellTypeProj},{name:taxPaidText,type:cellTypeYTD},{name:taxPaidText,type:cellTypeProj},{name:provTaxPaidText,type:cellTypeYTD},{name:provTaxPaidText,type:cellTypeProj},{name:rwtText,type:cellTypeYTD},{name:rwtText,type:cellTypeProj},{name:imputationCreditText,type:cellTypeYTD},{name:imputationCreditText,type:cellTypeProj}]}function getFixedValueRowsCells(){return[{name:totalIncomeText,type:cellTypeYTD},{name:totalCOSText,type:cellTypeYTD},{name:grossProfitText,type:cellTypeYTD},{name:totalexpensesText,type:cellTypeYTD},{name:netProfitText,type:cellTypeYTD}]}function getSelectedYtdData(){return{orgId:$("#orgId").val(),ytd:$("#Organisation_SelectedYTD").val(),year:getSelectedFinYear()}}function getSelectedYTDMthYr(){var n=$("#Organisation_SelectedYTD").val();return{month:n.substring(4,6),year:n.substring(0,4)}}function getSelectedFinYear(){return $("#ListOfFinancialYear").val()}function saveOrgSummary(n,t=false){var r=$("#summaryTable"),i=[],u=[],f=$("#orgId").val(),e=getSelectedYTDMthYr(),o=getSelectedFinYear(),l=e.year,s=e.month,c=new Date,a=c.getFullYear(),h;r.each(function(){var n=!0;$(this).find("tr").each(function(){if(n==!1){var t=0,r=$(this),u=r.data("currency"),e=r.find("td").eq(4).find("select").val();$(this).find("td").each(function(){$(this).find("input:not('.uploadFormula')").each(function(){var n=$(this).data("typeName"),t=$(this).val();i.push({Currency:u,OrgID:f,TypeName:n,Amount:t,PMId:e,FinancialYear:o,ModifiedValueMonth:s})});$(this).find(".saved").each(function(){var n=$(this).data("typeName"),t=$(this).text().trim();i.push({Currency:u,OrgID:f,TypeName:n,Amount:t,PMId:e,FinancialYear:o,ModifiedValueMonth:s})});t=t+1})}n=!1})});$(r).find("input.uploadFormula").each(function(){u.push({typeId:$(this).data("typeid"),formula:$(this).val()})});h={rows:i,settings:u};selectedYTD=getSelectedYtdData();$.ajax({type:"POST",url:"/Organisation/Save",data:{summaryRows:JSON.stringify(h),selectedYTD:JSON.stringify(selectedYTD)},dataType:"json",crossdomain:!1,success:function(i){n&&(i.Success?showSuccessMessage("Organisation summary saved"):showFailureMessage("There was a problem trying to save the summary information: "+i.Error+". Please try again."));t&&i.Success&&location.reload()},failure:function(n){showFailureMessage("There was a problem trying to save the summary information: "+n.Error+". Please try again.")}})}function showSuccessMessage(n,t){n==""&&(n="Success.");t==undefined&&(t=3e3);$.sound_on=!1;$.smallBox({title:n,color:"#2196f3",iconSmall:"fa fa-check fadeInRight animated",timeout:t})}function showFailureMessage(n,t){n==""&&(n="Error.");t==undefined&&(t=3e3);$.sound_on=!1;$.smallBox({title:n,color:"#C46A69",iconSmall:"fa fa-exclamation fadeInRight animated",timeout:t})}function showWarningMessage(n,t){n==""&&(n="Information.");t==undefined&&(t=3e3);$.smallBox({title:n,color:"#ff9900",iconSmall:"fa fa-info fadeInRight animated",timeout:t})}function showConfirmationMessage(n,t){n==""&&(n="Are you sure you want to continue?");$("#dialog_message").text(n);$("#dialog_simple").dialog({width:600,resizable:!1,modal:!0,message:n,title:"Please confirm",buttons:[{html:"<i class='fa fa-check'><\/i>&nbsp; Yes","class":"btn btn-danger",click:function(){$(this).dialog("close");window.open(t,"_self")}},{html:"<i class='fa fa-times'><\/i>&nbsp; No","class":"btn btn-default",click:function(){$(this).dialog("close")}}]})}function setupGoogleCharts(){GChart.Dashboard.load()}function saveSelectedFinancialYear(n,t){var i="selectedFinancialYear"+(t?t:"");$.cookie(i)&&$.removeCookie(i);$.cookie(i,n,{expires:.5,path:"/"});location.reload()}function saveSelectedYTD(){var n=getSelectedYtdData();$.ajax({type:"POST",url:"/Organisation/UpdateSelectedYTD",data:{data:JSON.stringify(n)},dataType:"json",crossdomain:!1,success:function(){location.reload()},failure:function(n){showFailureMessage("There was a problem trying to save the selected YTD: "+n.Error+". Please try again.")}})}function setSelectedFinancialYear(n,t){var i="selectedFinancialYear"+(t?t:"");$.cookie(i)?n=$.cookie(i):n||(n=(new Date).getFullYear());$("#ListOfFinancialYear").val(n)}function calculateProjectedForRow(n){var t=n.find(".PMList").val();if(t==5||t==6){var r=$("#orgId").val(),u=$("#ListOfFinancialYear").val(),i=n.find("input.uploadFormula").val(),f=n.find("#name").text().trim();i||(i=f==totalexpensesText?"["+totalexpensesText+"]+["+totalOverheadsText+"]":"["+f+"]");n.find("input.uploadFormula").val(i);calculateProjectedUsingUpload(r,u,i,function(i){var f=i.Error,o=i.Amount,e=n.find(".uploadFormulaError");if(f!=null){e.attr("title",f).show();console.log(f);return}(e.hide().attr("title",f),(t==5||t==6)&&$("#orgId").val()==r&&$("#ListOfFinancialYear").val()==u)&&(n.find("td.projected").find("input").val(numberWithCommas(o)),updateSummaryTable())})}}function onPMChanged(n){var t=$(n.target).closest("tr"),i=t.find(".PMList").val();i!=1?t.find("td.projected").find("input").attr("readonly",!0).css("background","#9DCDE1"):t.find("td.projected").find("input").attr("readonly",!1).css("background","white");i==3?(setAnnualisedROY(t),updateSummaryTable()):i==5?calculateProjectedForRow(t,!1):i==6&&calculateProjectedForRow(t,!0)}function calculateProjectedUsingUpload(n,t,i,r){var u={orgId:n,year:t,formula:i};$.ajax({type:"POST",url:"/Organisation/CalculateProjectedUsingUpload",data:{data:JSON.stringify(u)},dataType:"json",crossdomain:!0,success:function(n){r(n)},failure:function(n){showFailureMessage("There was a problem trying to save the summary information: "+n.Error+". Please try again.")}})}function setAnnualisedROY(n){var i=0,r=getNumMonthTillEY(),t;i=typeof n.find("#ytdTextBox").val()=="undefined"?n.find("#ytd").text().trim().toString().replace(/,/g,""):n.find("#ytdTextBox").val().toString().replace(/,/g,"");t=(i/(12-r)*r).toFixed(0);isNaN(t)&&(t=0);n.find("td.projected").find("input").val(numberWithCommas(t))}function getNumMonthTillEY(){var n=new Date($("#endCFY").attr("value")),t=new Date($("#endYTD").attr("value"));return DateDiff.inMonths(t,n)}function checkAnnualisedROY(){var n=$("tr[class='Losses C/F']"),t=$("tr[class='Shareholder Salary']");n.find(".PMList").val()==3&&setAnnualisedROY(n);t.find(".PMList").val()==3&&setAnnualisedROY(t)}function updateTaxDueAmount(){var r=$("tr[class='Prov Tax Liable']").find("#calculatedFullYear").text().replace("$","").trim().replace(/,/g,""),t=0,i=0,e=0,o="",u=taxCalendar.length,f=new Date,h=new Date,s=!0,n;if(parseFloat(r)<parseFloat(ProvTaxThreshold)){for(n=0;n<u;n++)i+=taxCalendar[n].Amount;t=r-i}else for(n=0;n<u;n++)e=u-n-1,~taxCalendar[n].PaymentDueDate.indexOf("Date")?(o=taxCalendar[n].PaymentDueDate.substr(6),f=new Date(parseInt(o))):f=new Date(taxCalendar[n].PaymentDueDate),f>h&&s&&(t=(r-i)/e-taxCalendar[n].Amount,s=!1),i+=taxCalendar[n].Amount;t=t.toFixed(0);setTaxDueValues($("span"),t)}function setTaxDueValues(n,t){n.find("#dueAmount").text(numberWithCommas(Math.abs(t)));n.find("#dueType").text(t>=0?"Payment of $":"Refund of $")}function checkProvTaxLiable(){var t=$("tr[class='Prov Tax Liable']").find("#calculatedFullYear").text().replace("$","").trim().replace(/,/g,""),n=$("tr[class='Prov Tax Due']");parseFloat(t)>parseFloat(ProvTaxThreshold)?(n.find("#label").html("Prov Tax Due"),n.find("td.projected").find("#closetDueDates").css("display","block"),n.find("td.projected").find("#terminalDueDates").css("display","none")):(n.find("#label").html("Terminal Tax Due"),n.find("td.projected").find("#closetDueDates").css("display","none"),n.find("td.projected").find("#terminalDueDates").css("display","block"));$("#closetDueDates span.dueDate").text()=="UnknownUnknownUnknownUnknownUnknownUnknown"&&n.find("td.projected").find("#closetDueDates").css("display","none");$("#terminalDueDates span.dueDate").text()=="UnknownUnknownUnknownUnknownUnknownUnknown"&&n.find("td.projected").find("#terminalDueDates").css("display","none")}function numberWithCommas(n){return n.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")}function inputCurrencyFormat(n){(function(t){"use strict";t(function(){var i=t(n),r=i.find("input:not('.SHname'):not('.SHshare'):not('.uploadFormula')");r.on("keyup",function(n){var u=window.getSelection().toString();if(u===""&&t.inArray(n.keyCode,[38,40,37,39])===-1){var r=t(this),i=r.val(),i=i.replace(/[\D\s\._\-]+/g,"");i=i?parseInt(i,10):"";r.val(function(){return i===0?0:numberWithCommas(i)})}});i.on("submit",function(){for(var r=t(this),i=r.serializeArray(),n=0;n<i.length;n++)i[n].value=i[n].value.replace(/[($)\s\._\-]+/g,"")})})})(jQuery)}function saveOtherAdjustments(n){var t=[],i=getSelectedYTDMthYr(),r=i.year,u=i.month,f=$("#orgId").val(),e=0,o="Other Adjustments";n.each(function(){var n=!0;$(this).find("tr").each(function(){if(n==!1){var i=0,s=$(this);$(this).find("td").each(function(){$(this).find("input.ytdTextBox").each(function(){var n=$(this).data("typeName"),i=$(this).val();e+=parseInt(i.toString().replace(/,/g,""));n!=o&&t.push({OrgID:f,TypeName:n,Amount:i,ModifiedValueYear:r,ModifiedValueMonth:u})});i=i+1})}n=!1});t.push({OrgID:f,TypeName:o,Amount:e,ModifiedValueYear:r,ModifiedValueMonth:u})});$.ajax({type:"POST",url:"/Organisation/SaveTaxPayment",data:{data:JSON.stringify(t)},dataType:"json",crossdomain:!0,success:function(){location.reload()},failure:function(n){showFailureMessage("There was a problem trying to save the summary information: "+n.Error+". Please try again.")}})}function updateOtherAdjTotal(){var i=$("#otherAdjustmentsTable"),n=i.find("input"),t=0;n.on("keyup",function(){n.each(function(i){t+=parseInt(n[i].value.toString().replace(/,/g,""))});$("#otherAdjTotal").text(numberWithCommas(t));t=0})}function getTaxRates(n){switch(n){case"1":return CompanyTaxRates;case"2":return TrustTaxRates;case"3":return SoleTraderTaxRates;default:return SoleTraderTaxRates}}var GChart=function(n,t){function e(){while(f<i.length)i[f++]()}function r(n,t,r){for(var s,f,h,c,o=new google.visualization.DataTable,u=0;u<n.columns.length;++u)o.addColumn(n.columns[u].type,n.columns[u].label,n.columns[u].label);for(s=[],f=0;f<n.rows.length;++f){for(h=[],u=0;u<n.columns.length;++u)h.push(n.rows[f][n.columns[u].label]);s.push(h)}o.addRows(s);c=n.options;i.push(function(){var n;switch(r){case"column":n=new google.visualization.ColumnChart(document.getElementById(t));break;case"combo":n=new google.visualization.ComboChart(document.getElementById(t));break;case"line":n=new google.visualization.LineChart(document.getElementById(t));break;case"steppedarea":n=new google.visualization.SteppedAreaChart(document.getElementById(t));break;default:n=new google.visualization.ColumnChart(document.getElementById(t))}n.draw(o,c)});e()}function u(n,i,r){t.ajax("/api/chart?name="+n+"&orgid="+i,{dataType:"json",success:r})}function s(n){u("RevenueByMonth",n,function(n){r(n,"chart_revenue_per_month","combo")});u("NetProfitByMonth",n,function(n){r(n,"chart_netprofit_per_month","combo")});u("ProvTaxByMonth",n,function(n){r(n,"chart_provtax_per_month","combo")});u("ShareholderSalaryByMonth",n,function(n){r(n,"chart_shareholdersalary_per_month","combo")})}var o=n.Dashboard=n.Dashboard||{},i=[],f=0;return o.load=function(){i=[];f=0;var n=t.urlParam();google.charts.load("current",{packages:["corechart"]});google.charts.setOnLoadCallback(function(){s(n)});t(window).resize(e)},n}(GChart||{},jQuery),cellTypeYTD="YTD",cellTypeProj="PROY",cellTypeName="Name",cellTypeFullYr="FY",provTaxLiableText="Prov Tax Liable",provTaxDueText="Prov Tax Due",netProfitText="Net Profit",taxPaidText="Tax Paid",grossProfitText="Gross Profit",totalIncomeText="Total Income",totalOtherIncomeText="Total Other Income",totalCOSText="Total Cost of Sales",totalexpensesText="Total Operating Expenses",totalOverheadsText="Total Overheads",shareholderSalaryText="Shareholder Salary",lossesCFText="Losses C/F",provTaxPaidText="Prov Tax Paid",rwtText="RWT",imputationCreditText="Imputation Credit",terminalTaxDueText="Terminal Tax Due",otherAdjText="Other Adjustments",partnershipAllocationText="Partnership Allocation",nonDeductibleText="Non Deductible Expenses",beneficiaryDistributionText="Beneficiary Distribution",OrgTaxRates,taxCalendar,ProvTaxThreshold,DateDiff,shareholderpage,CompanyTaxRates,SoleTraderTaxRates,TrustTaxRates,core,adminPages;$.urlParam=function(n){var t=window.location.href,i,r,u;return n&&n!=""?(u=new RegExp("[?&]"+n+"=([^&#]*)").exec(t),u==null?null:u[1]||0):(i=t.lastIndexOf("/"),i!=-1)?(r=t.substring(i+1),isNaN(r)?null:r):null};DateDiff={inDays:function(n,t){var i=t.getTime(),r=n.getTime();return parseInt((i-r)/864e5)},inWeeks:function(n,t){var i=t.getTime(),r=n.getTime();return parseInt((i-r)/6048e5)},inMonths:function(n,t){var i=n.getFullYear(),r=t.getFullYear(),u=n.getMonth(),f=t.getMonth();return f+12*r-(u+12*i)},inYears:function(n,t){return t.getFullYear()-n.getFullYear()}};$(function(){$("#organisationSearch2").autocomplete({source:"/Organisation/GetOrganisationSearchData",minLength:2,select:function(n,t){var i=t.item.id;i!="#"&&(location.href="/Organisation/Summary/"+i)},html:!0,open:function(){$(".ui-autocomplete").css("z-index",1e3)}})});shareholderpage=shareholderpage||{};shareholderpage.shareholders=shareholderpage.shareholders||{};shareholderpage.shareholderDetails=shareholderpage.shareholderDetails||{};shareholderpage.shareholderTaxPayments=shareholderpage.shareholderTaxPayments||{},function(n){n.setup=function(){function i(){var i={},r;i.Name=n.find("#Name").val();i.TaxNumber=n.find("#TaxNumber").val();i.EndFinMth=n.find("#EndFinMth").val();i.Email=n.find("#Email").val();i.TypeId=n.find("#TypeId").val();i.Active=n.find("input:radio[name='Active']:checked").val();i.shareholderId=t;i.orgId=n.find("#OrgId").val();r=JSON.stringify({shareholderDetails:i});$.ajax({type:"POST",url:"/Organisation/SaveShareholderDetails",data:r,contentType:"application/json; charset=utf-8",dataType:"json",success:function(){var r,u;showSuccessMessage("Shareholder details updated");r=$("#shareholderTable").find("input[id*='ShareholderId'][value="+i.shareholderId+"]").closest("tr");r.find(".SHname").val(i.Name);r.find("#ShareholderTypeId").val(i.TypeId);u=[{name:"orgId",value:n.find("#OrgId").val()},{name:"shareholderId",value:t}];$.get("/Organisation/GetShareholderTaxCalendar/",u,function(n){var t=$.parseJSON(n);r.find(".ShareholderTaxCalendar").text(JSON.stringify(t.TaxCalendar));r.find(".terminalDueDates").text(DateFormat.format.date(t.NextTerminalTaxDate,"d/M/yyyy"));r.find(".closetDueDates").text(DateFormat.format.date(t.NextProvTaxDate,"d/M/yyyy"))});ShareholderDetailsDialogClose()},failure:function(n){showFailureMessage("There was a problem trying to save the shareholder information: "+n.Error+". Please try again.")}})}var n=$("#ShareholderDetailsDialog"),t=n.find("#ShareholderId").val();$("#shareholderDetailsSave").click(i)}}(shareholderpage.shareholderDetails),function(n){n.setup=function(){function o(){var i=!1;e=n.find("#TaxLiable").val().replace(/,/g,"");r=n.find("#PAYE").val().replace(/,/g,"");u=n.find("#Withholding").val().replace(/,/g,"");t=e-r-u;n.find("#Total_Tax_Liable").val(numberWithCommas(t));parseFloat(t)>=c&&(i=!0);l(t,i,h)}function l(t,i,r){var e=0,u;if(i){var o=0,c="",f=r.length,l=0,s=new Date,a=new Date,h=new Date,v=!0;for(u=0;u<f;u++)l=f-u-1==0?1:f-u-1,~r[u].PaymentDueDate.indexOf("Date")?(c=r[u].PaymentDueDate.substr(6),s=new Date(parseInt(c))):s=new Date(r[u].PaymentDueDate),s<=h?o=parseFloat(n.find("tr."+u).find("#taxPaid").val().replace(/,/g,"")):s>h&&v&&(o=(parseFloat(t)-parseFloat(e))/l,v=!1),u==f-2&&(a=s),u==f-1&&a<h?o=t-e:u==f-1&&(o=0),e+=r[u].Amount,setTaxDueValues(n.find("tr."+u),o)}else n.find("input.dueAmount").each(function(){$(this).val(0)}),n.find("input.taxPaid").each(function(){e+=parseFloat($(this).val().replace(/,/g,""))}),setTaxDueValues(n.find("tr.3"),t-e)}function a(){var r=n.find("#shareholderPAYEWithholding"),t,u;(r.find("#PAYE").data("val")!=r.find("#PAYE").val()||r.find("#Withholding").data("val")!=r.find("#Withholding").val())&&(t={},t.ShareholderId=f,t.DataId=n.find("#ShareholderDataId").val(),t.PAYE=r.find("#PAYE").val().replace(/,/g,""),t.Withholding=r.find("#Withholding").val().replace(/,/g,""),t.FYr=i,u=JSON.stringify({shareholderData:t}),$.ajax({type:"POST",url:"/Organisation/AddOrUpdatPAYEAndWithholding",data:u,contentType:"application/json; charset=utf-8",dataType:"json",success:function(){},failure:function(n){showFailureMessage("There was a problem trying to save the PAYE and Withholding payments: "+n.Error+". Please try again.")}}))}function v(){a();var u=n.find("#shareholderTaxCalendarTable"),t=[],r=0;u.find("tr").each(function(){if(r!=0){var n=$(this).find(".dueDate").text().trim().split("/"),u=new Date(n[2],n[1],n[0]),e=$(this).find(".taxPaid").val()!=""?$(this).find(".taxPaid").val():0;t.push({Mth:u.getMonth(),Yr:u.getFullYear(),FYr:i,Amount:e,Currency:"NZD",ShareholderId:f,TypeId:21})}r+=1});$.ajax({type:"POST",url:"/Organisation/SaveShareholderTaxPaid",data:{records:JSON.stringify(t)},dataType:"json",success:function(){location.reload()},failure:function(n){showFailureMessage("There was a problem trying to save the shareholder taxCalendar: "+n.Error+". Please try again.")}})}var i=$("#Year").val(),n=$("#ShareholderTaxCalendarDialog"),s=n.find("input"),r=0,u=0,t=0,f=n.find("#ShareholderId").val(),h=JSON.parse(n.find("#ShareholderTaxCalendar").val()),c=n.find("#ShareholderProvTaxThreshold").val(),e=0;o();s.on("keyup",function(){o()});$("#shareholderTaxCalendarSave").click(v)}}(shareholderpage.shareholderTaxPayments),function(n){n.setup=function(n,t,r,u,f){function ut(n){var t=$(n.target).closest("tr"),i=t.find("#ShareholderId").val(),r=t.find("#FirstYearProvTax").is(":checked"),u=JSON.stringify({shareholderId:i,orgId:f,firstYearProvTax:r?h:null});$.ajax({type:"POST",url:"/Organisation/UpdateFirstYearProvTax",data:u,contentType:"application/json; charset=utf-8",dataType:"json",success:function(){b(t)},failure:function(n){showFailureMessage("There was a problem trying to save the shareholder prov tax first year: "+n.Error+".")}})}function l(n){var i,t,r;if($(n.target).data("val")!=$(n.target).val()){if($(n.target).data("val",$(n.target).val()),i=$(n.target).closest("tr"),t={},t.ShareholderId=i.find("#ShareholderId").val(),t.DataId=i.find("#DataId").val(),t.FYr=h,t.Percentage=i.find("#Percentage").val()/100,t.TaxPaid=i.find("#TaxPaid").val().replace(/,/g,""),t.OtherIncome=i.find("#OtherIncome").val().replace(/,/g,""),t.Salary=i.find("#Salary").val().replace(/,/g,""),t.TaxLiable=i.find("#TaxLiable").val().replace(/,/g,""),t.TaxDue=i.find("#TaxDue").val().replace(/,/g,""),t.NextTaxDue=i.find("#NextTaxDue").val().replace(/,/g,""),t.RemainingTax=i.find("#RemainingTax").val().replace(/,/g,""),t.ShareholderId<=0)return;r=JSON.stringify({shareholderData:t,orgId:f,termMonth:p,termYear:w});$.ajax({type:"POST",url:"/Organisation/AddOrUpdateShareholderData",data:r,contentType:"application/json; charset=utf-8",dataType:"json",success:function(n){n.DataId!=0&&(i.find('input[name="DataId"]').val(n.DataId),i.find('input[name="DataId"]').attr("value",n.DataId))},failure:function(n){showFailureMessage("There was a problem trying to save the shareholder information: "+n.Error+".")}})}}function ft(n){var i,t,r,u;$(n.target).data("val")!=$(n.target).val()&&(i=$(n.target).closest("tr"),t={},t.Name=i.find("input[id*='shareholderSearch']").val(),t.OrgId=f,t.Active=!0,r={},r.DataId=i.find("#DataId").val(),r.FYr=h,u=JSON.stringify({shareholder:t,shareholderData:r,termMonth:p,termYear:w}),$.ajax({type:"POST",url:"/Organisation/AddShareholder",data:u,contentType:"application/json; charset=utf-8",dataType:"json",success:function(n){g(i,n.NewSId,n.NewDId)},failure:function(n){showFailureMessage("There was a problem trying to save the shareholder information: "+n.Error+". Please try again.")}}))}function s(n){var i=0,r=!1,t;n?(t=0,e.find(".Percentage").each(function(){t+=parseFloat($(this).val().replace(/,/g,""))}),$("#sum-warning #sum").text(t.toFixed(2)),r=Math.abs(t-100)>1e-5):(e.find(".Salary").each(function(){i+=parseFloat($(this).val().replace(/,/g,""))}),$("#sum-warning #sum").text(numberWithCommas(i)),r=Math.abs(i-v)>1e-5);r?$("#sum-warning").show():$("#sum-warning").hide();e.find("tr").each(function(){b($(this))})}function b(n){var t=!1,i,r;n.hasClass("data")&&(otherIncome=n.find("#OtherIncome").val().replace(/,/g,""),taxPaid=n.find("#TaxPaid").val().replace(/,/g,""),PAYE=n.find("#PAYE").val().replace(/,/g,""),withholding=n.find("#Withholding").val().replace(/,/g,""),taxCalendar=JSON.parse(n.find(".ShareholderTaxCalendar").text()),orgTypeId=n.find("#ShareholderTypeId").val(),u?(percentage=n.find("#Percentage").val()/100,salary=(v*percentage).toFixed(0)):(salary=parseFloat(n.find("#Salary").val().replace(/,/g,"")),percentage=(salary*100/sum).toFixed(2)),taxableIncome=parseInt(salary)+parseInt(otherIncome),i=getTaxRates(orgTypeId),taxLiable=ot(taxableIncome,i).toFixed(0),remainingTax=taxLiable-PAYE-withholding,taxDue=taxLiable-taxPaid,parseFloat(remainingTax)>=rt&&(t=!0),nextTaxDue=et(t,taxLiable,remainingTax,taxCalendar,taxPaid),u&&n.find("#Salary").val(numberWithCommas(salary)),n.find("#TaxLiable").val(numberWithCommas(taxLiable)),n.find("#TaxDue").val(numberWithCommas(taxDue)),n.find("#RemainingTax").val(numberWithCommas(remainingTax)),n.find("#NextTaxDue").val(numberWithCommas(nextTaxDue)),r=n.find("#FirstYearProvTax").is(":checked"),t&&!r?k(n,!1):k(n,!0))}function k(n,t){t?($(n).find(".closetDueDates").css("display","none"),$(n).find(".terminalDueDates").css("display","block")):($(n).find(".closetDueDates").css("display","block"),$(n).find(".terminalDueDates").css("display","none"))}function et(n,t,i,r,u){var f;if(n)t=i,u=0;else return t-u;var s=0,h="",e=r.length,c=0,o=new Date,a=new Date,l=!0;for(f=0;f<e;f++)c=e-f-1==0?1:e-f-1,~r[f].PaymentDueDate.indexOf("Date")?(h=r[f].PaymentDueDate.substr(6),o=new Date(parseInt(h))):o=new Date(r[f].PaymentDueDate),o>a&&l&&(s=(t-u)/c-r[f].Amount,l=!1),u+=r[f].Amount;return s.toFixed(0)}function ot(n,t){var r=0;for(i=0;i<t.length;++i)t[i].IncomeFrom>n||(r+=(n-t[i].IncomeTo>0?t[i].IncomeTo-t[i].IncomeFrom:n-t[i].IncomeFrom)*t[i].TaxRate1);return r>0?r:0}function d(n){var t=$(n.target).closest("tr"),r=t.find("#DataId").val(),i,f;r<0?t.remove():(i=t.find("#Name").val(),f=[{name:"shareholderDataIdToRemove",value:r}],$("#RemoveShareholderDataDialog").dialog({resizable:!1,height:"auto",width:400,modal:!0,buttons:[{text:"Remove","class":"btn btn-default",click:function(){$.ajax({type:"POST",url:"/Organisation/DeleteShareholderData",data:f,dataType:"json",success:function(n){n.Success?(showSuccessMessage(i+" has been successfully removed",3e3),t.remove(),$("#RemoveShareholderDataDialog").dialog("close"),s(u)):showFailureMessage(i+" could not be removed.",4e3)}})}},{text:"Cancel","class":"btn btn-default",click:function(){$(this).dialog("close")}}]}),$("#RemoveShareholderDataDialog").dialog("open"))}function g(n,t,i){t=typeof t!="undefined"?t:0;i=typeof i!="undefined"?i:0;t!=0&&n.find('input[name="ShareholderId"]').attr("value",t);i!=0&&n.find('input[name="DataId"]').attr("value",i);n.find(".searchBox").prop("readonly",!0);n.find(".searchBox").prop("tabindex",0);n.find(".searchBox").attr("id","Name");n.find(".searchBox").prop("class","SHname readonly");n.find(".shareholderDetailsDialog").css("display","block");n.find(".shareholderDetailsDialog").click(tt);n.find(".ShareholderTaxCalendarDialog").click(nt)}function st(n,t){var i=$("#shareholderSearch"+t);i.autocomplete({source:function(n,t){$.getJSON("/Organisation/GetShareholderSearchData",{term:n.term,orgId:f},t)},minLength:1,select:function(t,i){if(ht(i.item.id)){g(n,i.item.id);l(t);var r=[{name:"orgId",value:f},{name:"shareholderId",value:i.item.id}];$.get("/Organisation/GetShareholderTaxCalendar/",r,function(t){var i=$.parseJSON(t);n.find(".ShareholderTaxCalendar").text(JSON.stringify(i.TaxCalendar));n.find(".terminalDueDates").text(DateFormat.format.date(i.NextTerminalTaxDate,"d/M/yyyy"));n.find(".closetDueDates").text(DateFormat.format.date(i.NextProvTaxDate,"d/M/yyyy"))})}else showFailureMessage(i.item.label+" is already recorded as a shareholder for this organisation in this financial year.",4e3),$(t.target).data("val",i.item.label)},html:!0,open:function(){$(".ui-autocomplete").css("z-index",1e3)}});i.focus()}function ht(n){return $("#shareholderTable").find("input[name*='ShareholderId'][value="+n+"]").length?!1:!0}function nt(n){var t=$(n.target).closest("tr"),o=t.find("#ShareholderId").val(),u=t.find("#TaxLiable").val(),i=t.find("#PAYE").val(),r=t.find("#Withholding").val(),s=u.replace(/,/g,"")-i.replace(/,/g,"")-r.replace(/,/g,""),e;$("#ShareholderTaxCalendarDialog").dialog({resizable:!1,width:600,title:$("#ShareCalendarTitle").val()});$("#ShareholderTaxCalendarDialog").dialog("open");e=[{name:"orgId",value:f},{name:"shareholderId",value:o},{name:"taxLiable",value:s}];$.get("/Organisation/ShareholderTaxCalendar/",e,function(n){$("#ShareholderTaxCalendarDialog").html(n);$("#ShareholderTaxCalendarDialog").find("#PAYE").val(i);$("#ShareholderTaxCalendarDialog").find("#PAYE").attr("data-val",i);$("#ShareholderTaxCalendarDialog").find("#Withholding").val(r);$("#ShareholderTaxCalendarDialog").find("#Withholding").attr("data-val",r);$("#ShareholderTaxCalendarDialog").find("#TaxLiable").val(u);$("#ShareholderTaxCalendarDialog").find("#ShareholderDataId").val(t.find("#DataId").val())})}function tt(n){var i=$(n.target).closest("tr"),r=i.find("#ShareholderId").val(),t;$("#ShareholderDetailsDialog").dialog({resizable:!1,width:420,title:$("#ShareDetailTitle").val()});$("#ShareholderDetailsDialog").dialog("open");t=[{name:"shareholderId",value:r},{name:"orgId",value:f}];$.get("/Organisation/ShareholderDetails/",t,function(n){$("#ShareholderDetailsDialog").html(n)})}SoleTraderTaxRates=n;CompanyTaxRates=t;TrustTaxRates=r;var h=$("#Year").val(),a=-1,c=1,e=$("#shareholderTable"),o=e.find("input:not('.SHname,#FirstYearProvTax')"),it=e.find('input[id="FirstYearProvTax"]'),f=$("#OrgId").val(),rt=$("#ShareholderProvTaxThreshold").val(),v=$("#ShareholderSalary").val(),y=new Date(parseInt(JSON.parse(e.find("tr.shareholder-template").find(".ShareholderTaxCalendar").text())[3].PaymentDueDate.substr(6))),p=y.getMonth()+1,w=y.getFullYear();s(u);o.on("keyup",function(){s(u)});o.on("focusout",function(n){l(n)});it.change(function(n){ut(n)});$("#users-add").click(function(){var t=$(".shareholder-template"),n=t.clone(),i=t.closest("tbody");n.removeClass("shareholder-template");n.removeAttr("style");n.find(".searchBox").attr("id","shareholderSearch"+c);n.find("#DataId").val(a);n.find(".users-remove").click(d);n.addClass("data");n.find(".firstYearProvTax").html("");i.append(n);st(n,c);inputCurrencyFormat("#shareholderTable");e=$("#shareholderTable");o=e.find("input:not('.SHname')");o.on("keyup",function(){s(u)});o.on("focusout",function(n){l(n)});$shareholderNameInput=e.find("input[id*='shareholderSearch']");$shareholderNameInput.on("focusout",function(n){ft(n)});c+=1;a-=1});$(".shareholderDetailsDialog").click(tt);$(".ShareholderTaxCalendarDialog").click(nt);$(".users-remove").click(d)}}(shareholderpage.shareholders);core=core||function(n){var e=function(){f("Add Organisation","/Organisation/Add",function(){var t=n("#redirect-url").val();t!=null?window.location.replace(t):r()})},o=function(t,i){return i=n.extend(i||{},{dataType:"script",cache:!0,url:t,async:!0}),jQuery.ajax(i)},r=function(){o("/Scripts/jquery.validate.unobtrusive.min.js")},s=function(t,r,u,f,e,o,s,h){var v=this,a,l;typeof o=="undefined"&&(o=!0);a=function(n){c(n,o,s,h,e,f)};l=function(){n("#working").hide();i("There was a problem calling the function. Please try again.",e,o)};u&&r&&typeof r!="string"&&(r=addAntiForgeryToken(r));n.ajax({type:u?"POST":"GET",data:r,url:t,success:a,failure:l,error:l})},h=function(t,i,r,u,f,e){var o=setTimeout(function(){n(t).html("<div class='loader'>Loading...<\/div>")},5e3);r==null&&(r=!1);s(i,u,r,function(i){clearTimeout(o);n(t).html(i);f!=null&&f()},e)},u=function(t){t||(t="There was a problem calling the function. Please try again.");showFailureMessage(t);n("#standard-modal").modal("hide")},f=function(t,i,r,f){n("#standard-modal-title").html(t);n("#standard-modal .modal-body").html("<div class='loader'>Loading...<\/div>");var e=f?{backdrop:f}:"show";n("#standard-modal").modal(e).off("shown.bs.modal");h("#standard-modal .modal-body",i,!1,null,function(){n("#standard-modal").on("shown.bs.modal",function(){r!=null&&typeof r!="undefined"&&r()})},u)},t=function(t,i){var r=n("#has-error").val();r!="True"&&r!="true"?i!==null&&typeof i!="undefined"?i():document.location.reload():t!==null&&typeof t!="undefined"&&t()},c=function(n,t,r,u,f,e){return n.hasOwnProperty("IsRedirect")&&n.IsRedirect===!0?((typeof r=="undefined"||r===null)&&(r="Redirecting..."),(typeof u=="undefined"||u===null)&&(u="Please wait while we redirect you"),setTimeout("document.location.href='"+n.RedirectTo+"'",200)):n.hasOwnProperty("Success")&&n.Success===!0?e&&e(n):n.hasOwnProperty("Success")&&n.Success===!1?i(n,f,t):typeof e!="undefined"&&e!==null?e&&e(n):i("No response received from the server, please try again.",f,t),n},i=function(n,t,i){var r="";typeof n=="string"?r=n:n.hasOwnProperty("Error")&&n.Error&&(r=n.Error);t?t(r):i&&alert(r)},l=function(){t(undefined,function(){var t=n("#new-item-link").val();t?(showSuccessMessage("Organisation updated"),document.location=t):showFailureMessage("There was a problem trying to add this organisation. Please try again.")})},a=function(i){if(i===0){l();return}t(undefined,function(){n("#standard-modal").modal("hide");showSuccessMessage("Organisation updated");document.location.reload()})},v=function(n){f("Organisation Info","/Organisation/Edit/"+n,function(){r()})};return{showAddOrganisation:e,onDialogPostDone:t,onEditOrganisationDone:a,showUpdateOrganisation:v,commonErrorCallback:u}}(jQuery);adminPages=adminPages||{};adminPages.help=adminPages.help||{};adminPages.taxCalendar=adminPages.taxCalendar||{},function(n){n.setup=function(){function b(){var t=$("#ToolSalesTaxPeriod").val();i.find("span.salesTaxPeriodToString").text(t);n.find('input[type="text"]').each(function(){$(this).val(t)})}function f(n){var t=new Date;$("#calendarTable").find('[id*="DueDate"]').each(function(){var t=$(this).attr("value").trim().split("/"),i=new Date(parseInt(t[2])+n,parseInt(t[1])-1,t[0]);$(this).attr("value",("0"+i.getDate()).slice(-2)+"/"+("0"+(i.getMonth()+1)).slice(-2)+"/"+i.getFullYear())})}function k(){f(1)}function d(){f(-1)}function g(){var t=this.value;n.find(".taxBasis").each(function(){$(this).find("select").val(t)})}function nt(){var t=this.value;n.find(".taxType").each(function(){$(this).find("select").val(t)})}function tt(){l();st();a();r(400);i.find("span.addMode").show();h();$(".remove-btn").click(e);$("#divAdd").show();s()}function e(n){$(n.target).closest("tr").remove()}function it(n){var t=$(n.target).closest("tr");t.css("background","#C46A69");t.find("input").attr("readonly",!0).css("background","#c14c4b").css("text-decoration","line-through");t.find("select").attr("disabled",!0).css("background","#c14c4b").css("text-decoration","line-through");t.find(".remove-btn").hide();t.find(".return-btn").show();o(t)}function rt(n){var t=$(n.target).closest("tr");t.css("background","");t.find("input").attr("readonly",!1).css("background","").css("text-decoration","none");t.find("select").attr("disabled",!1).css("background","").css("text-decoration","none");t.find(".remove-btn").show();t.find(".return-btn").hide();o(t)}function o(n){n.find(".dataID").val(-1*n.find(".dataID").val())}function ut(){l();a();r(400);i.find("span.editMode").show();h();$(".remove-btn").click(it);$(".return-btn").click(rt);$("#divAdd").show();s()}function s(){n.find(".datePicker").each(function(){$(this).datepicker({dateFormat:"dd/mm/yy"})})}function h(){$("#divButton").hide();$("#divTable").attr("class","col-sm-12");$("#divSave").show()}function ft(){$("#divButton").show();$("#divTable").attr("class","col-sm-11");$("#divSave").hide()}function et(){var t=$("#calendarTable > tbody > tr:last"),n=t.clone();$("#calendarTable > tbody:last-child").append(n);n.find(".dataID").val(0);n.find("#TaxBasis").val(1);n.find("#TaxType").val(1);n.find("#paymentNum").val(1);c(n.find('[id^="BalanceDueDate"]'));n.find('[id^="BalanceDueDate"]').attr("value","01/01/1999").removeClass("hasDatepicker").datepicker({dateFormat:"dd/mm/yy"});c(n.find('[id^="PaymentDueDate"]'));n.find('[id^="PaymentDueDate"]').attr("value","01/01/1999").removeClass("hasDatepicker").datepicker({dateFormat:"dd/mm/yy"});n.find("#SalesTaxPeriod").val("");r(400);n.find(".remove-btn").click(e)}function c(n){var t=n.attr("id"),i=t.replace(/\d+/g,""),r=i+(parseInt(t.replace(i,""))+1);n.attr("id",r)}function l(){var t="",i,r=0;n.find("tbody tr").each(function(){var n=$("#ToolTaxType"),u=$("#TaxBasis"),f=n.clone().attr("id","TaxType"),e=u.clone();$(this).find("td").each(function(){t=$(this).attr("class");t=="balanceDueDate date"?$(this).html($("<input/>",{value:$(this).val(),id:"BalanceDueDate"+r,"class":"datePicker"})):t=="paymentDueDate date"?$(this).html($("<input/>",{value:$(this).val(),id:"PaymentDueDate"+r,"class":"datePicker"})):t=="paymentNum"?$(this).html($("<input/>",{value:$(this).val(),type:"number","class":"paymentNum",id:"PaymentNum",min:"1"})):t=="taxBasis"?(i=$(this).attr("value"),$(this).html(e),$(this).find("#TaxBasis").val(i)):t=="taxType"?(i=$(this).attr("value"),$(this).html(f),$(this).find("#TaxType").val(i)):t=="salesTaxPeriod"&&$(this).html($("<input/>",{value:$(this).val(),type:"text","class":"salesTaxPeriod",id:"SalesTaxPeriod"}))});r++})}function ot(t){t=$.parseJSON(t);$.each(t,function(t,i){$("<tr>").append($('<td class="dataID">').attr({style:"display:none"}).val(i.ID),$('<td class="taxBasis">').text(i.TaxBasis).attr("value",i.TaxBasisID),$('<td class="taxType">').text(i.TaxType).attr("value",i.TaxTypeID),$('<td class="balanceDueDate date">').text(u(i.BalanceDueDate)).val(u(i.BalanceDueDate)),$('<td class="paymentNum">').text(i.PaymentNum).val(i.PaymentNum),$('<td class="paymentDueDate date">').text(u(i.PaymentDueDate)).val(u(i.PaymentDueDate)),$('<td class="salesTaxPeriod">').text(i.SalesTaxPeriod).val(i.SalesTaxPeriod),$('<td class="buttons"><i class="remove-btn fa fa-lg fa-fw fa-minus-square"><\/i><i class="return-btn fa fa-lg fa-fw fa-retweet" style="display:none;"><\/i>').attr({style:"display:none"})).appendTo(n)})}function a(){$("#toolbar").show();$(".buttons").show()}function v(){$("#toolbar").hide();i.find("span:not(.salesTaxPeriodToString)").hide();$(".buttons").hide()}function st(){n.find(".dataID").each(function(){$(this).val(0)})}function y(n){return n=n.split("/"),n[2]+"-"+n[1]+"-"+n[0]}function ht(){var t=[];n.find("tbody tr").each(function(){t.push({ID:$(this).find(".dataID").val(),TaxBasisID:$(this).find("#TaxBasis").val(),TaxTypeID:$(this).find("#TaxType").val(),BalanceDueDate:y($(this).find('[id^="BalanceDueDate"]').val()),PaymentNum:$(this).find("#PaymentNum").val(),PaymentDueDate:y($(this).find('[id^="PaymentDueDate"]').val()),SalesTaxPeriod:$(this).find("#SalesTaxPeriod").val()})});$.ajax({type:"POST",url:"/TaxCalendar/SaveTaxCalendar",data:{calendarData:JSON.stringify(t)},dataType:"json",success:function(n){n.Success?(showSuccessMessage("Tax calendar has been successfully saved",3e3),w(),v(),p(),$("#divSave").hide(),$("#divAdd").hide(),lt()):showFailureMessage("Tax calendar to save",4e3)}})}function ct(){var n=[{name:"taxBasisID",value:t.find("#TaxBasis").val()},{name:"taxTypeID",value:t.find("#TaxType").val()},{name:"year",value:t.find("#YearList").val()},{name:"month",value:t.find("#MonthList").val()},{name:"salesTaxPeriod",value:t.find("#SalesTaxPeriodList").val()}];$.get("/TaxCalendar/GetTaxCalendar/",n,function(n){w();ot(n);$("#calendar").show();v();r(200);p();ft();at();$("#divAdd").hide()})}function lt(){n.hide()}function at(){n.show()}function p(){$("#ToolTaxBasis").val(1);$("#ToolTaxType").val(1);$("#ToolSalesTaxPeriod").val("");i.find("span.salesTaxPeriodToString").text("")}function r(t){$(".main-well").animate({height:n.height()+t},600)}function w(){n.find("tbody").find("tr").remove()}function u(n){return DateFormat.format.date(n,"dd/MM/yyyy")}$(document).ready(function(){$("#ToolSalesTaxPeriod option[value='All']").remove();$("#ToolTaxType option[value='0']").remove()});var t=$("#sortTable"),n=$("#calendarTable"),i=$("#toolbar");$(".search").click(ct);$(".edit").click(ut);$(".new").click(tt);$(".yearPlus").click(k);$(".yearMinus").click(d);$(".save").click(ht);$("#ToolTaxBasis").change(g);$("#ToolTaxType").change(nt);$("#ToolSalesTaxPeriod").change(b);$(".add-btn").click(et)}}(adminPages.taxCalendar),function(n){n.setup=function(){function i(){$("#helpContent").find("tr").each(function(){$(this).find("input[type!='radio']").length?$(this).find("input").data("record",$(this).find("input").val()):$(this).find("textarea").length?$(this).find("textarea").data("record",$(this).find("textarea").val()):$(this).find("select").length?$(this).find("select").data("record",$(this).find("select").val()):$(this).find("input[type='radio']").length&&$(this).find("input").data("record",$("input[name='published']:checked").val())})}function w(){c=$("#content-form").validate({rules:{title:{required:!0},summary:{required:!0}},messages:{title:{required:"Please enter title"},summary:{required:"Please enter summary"}},submitHandler:function(){s()?alert("There are no changes to save"):(rt(),t?v(r):v(u),i(),y(100),$(".remove").show(),c.resetForm())}})}function b(){$("#helpList tbody").sortable({items:">tr",appendTo:"parent",placeholder:"placeholder-style",cursor:"move",start:function(n,t){$(this).find(".placeholder-style td:nth-child(5)").addClass("hidden-td");$(this).find(".placeholder-style td:nth-child(6)").addClass("hidden-td");$(this).find(".placeholder-style td:nth-child(7)").addClass("hidden-td");$(this).find(".placeholder-style td:nth-child(8)").addClass("hidden-td");$(this).find(".placeholder-style td:nth-child(9)").addClass("hidden-td");t.helper.css("display","table")},stop:function(n,t){t.item.css("display","");d("#helpList")}}).disableSelection();$("#helpList").on("click","tbody> tr",function(){s("pass")?($("#helpList").find(".selected").length>0&&$("#helpList").find("tr").each(function(){$(this).removeClass("selected").css("background","")}),$(this).css("background","#CCCCCC").addClass("selected"),l()):o("Continue","Cancel","select","You will lose unsaved data, are you ok with that?",$(this))})}function k(){s("pass")?(t=!0,f(),$(".remove").hide(),i()):o("Continue","Cancel","add","You will lose unsaved data, are you ok with that?")}function l(){t=!1;$(".remove").show();f();var n=r.find("tr.selected").closest("tr");nt(n);u=n;h();i()}function d(n){$(n+" tr").each(function(){count=$(this).parent().children().index($(this))+1;$(this).find(".displayOrder").html(count)})}function a(){var t=$("#helpList > tbody > tr").length;n.find("#displayOrder").val(t+1)}function o(r,u,e,o,s){$("#confirmDialog").dialog({resizable:!1,height:"auto",width:400,modal:!0,buttons:[{text:r,"class":"btn btn-default",click:function(){if(e=="remove"){var r=n.find("#helpId").val();tt(r);f();$(".remove").hide()}else e=="add"?(t=!0,f(),$(".remove").hide(),i()):e=="select"&&($("#helpList").find(".selected").length>0&&$("#helpList").find("tr").each(function(){$(this).removeClass("selected").css("background","")}),s.css("background","#CCCCCC").addClass("selected"),l());$(this).dialog("close")}},{text:u,"class":"btn btn-default",click:function(){$(this).dialog("close")}}]});$("#confirmDialog").find("p").html(o);$("#confirmDialog").dialog("open")}function g(){o("Remove","Cancel","remove","Are you sure you want to remove this help content?")}function nt(t){n.find("#title").val(t.find(".title").text());n.find("#summary").val(t.find(".summary").text());n.find("#topText").val(t.find(".topText").text());n.find("#bottomText").val(t.find(".bottomText").text());n.find("#contentType option[value="+t.find(".contentType").text()+"]").prop("selected",!0);n.find("#url").val(t.find(".url").text());n.find("#helpId").val(t.find(".helpId").text());n.find("#displayOrder").val(t.find(".displayOrder").text());n.find('input:radio[name="published"][value='+t.find(".published").text()+"]").prop("checked",!0)}function v(i){t?($("<tr>").append($('<td class="displayOrder">').text(n.find("#displayOrder").val()),$('<td class="title">').text(n.find("#title").val()),$('<td class="contentType">').text(n.find("#contentType").val()),$('<td class="published">').text(n.find("input:radio[name='published']:checked").val()),$('<td class="helpId">').text(n.find("#helpId").val()).attr({style:"display:none"}),$('<td class="summary">').text(n.find("#summary").val()).attr({style:"display:none"}),$('<td class="topText">').text(n.find("#topText").val()).attr({style:"display:none"}),$('<td class="bottomText">').text(n.find("#bottomText").val()).attr({style:"display:none"}),$('<td class="url">').text(n.find("#url").val()).attr({style:"display:none"})).appendTo(i),u=i.find("tr:last"),t=!1):(i.find(".displayOrder").text(n.find("#displayOrder").val()),i.find(".title").text(n.find("#title").val()),i.find(".contentType").text(n.find("#contentType").val()),i.find(".published").text(n.find("input:radio[name='published']:checked").val()),i.find(".helpId").text(n.find("#helpId").val()).attr({style:"display:none"}),i.find(".summary").text(n.find("#summary").val()).attr({style:"display:none"}),i.find(".topText").text(n.find("#topText").val()).attr({style:"display:none"}),i.find(".bottomText").text(n.find("#bottomText").val()).attr({style:"display:none"}),i.find(".url").text(n.find("#url").val()).attr({style:"display:none"}))}function tt(r){var f=[{name:"helpIdToRemove",value:r}];$.ajax({type:"POST",url:"/Help/DeleteHelpContent",async:!1,data:f,dataType:"json",success:function(r){r.Success?(showSuccessMessage("The help content "+n.find("#title").val()+" has been successfully removed",3e3),u.remove(),i(),e=!0,t=!0):showFailureMessage("The help content "+n.find("#title").val()+" could not be removed, please try again",4e3)}})}function it(){var n=[];r.find("tbody tr").each(function(){n.push({HelpId:$(this).find(".helpId").text(),DispOrder:$(this).find(".displayOrder").text()})});$.ajax({type:"POST",url:"/Help/UpdateHelpOrder",data:{helpOrderData:JSON.stringify(n)},dataType:"json",success:function(n){n.Success?showSuccessMessage("Help content order has changed",3e3):showFailureMessage(n.Error,4e3)}})}function rt(){var i=$("#pdfUpload").val(),t,r;i!==""&&n.find("#url").val(i.substring(i.lastIndexOf("\\")+1,i.length));t={};t.HelpId=n.find("#helpId").val();t.Title=n.find("#title").val();t.Summary=n.find("#summary").val();t.TopText=n.find("#topText").val();t.BottomText=n.find("#bottomText").val();t.URL=n.find("#url").val();t.ContentType=n.find("#contentType").val();t.Published=n.find("input:radio[name='published']:checked").val();t.DispOrder=n.find("#displayOrder").val();r=JSON.stringify({helpData:t});$.ajax({type:"POST",url:"/Help/SaveHelpContent",data:r,contentType:"application/json; charset=utf-8",dataType:"json",async:!1,success:function(r){r.Success?(showSuccessMessage("Content "+t.Title+" has been successfully saved",3e3),n.find("#helpId").val(r.HelpId),i!==""&&p()):showFailureMessage("Content "+t.Title+", "+r.Error,4e3)}})}function y(t){var i=Math.max(r.height()+t,n.height()+100);$(".main-well").animate({height:i},300)}function f(){n.find("input[type!='radio']:not(#helpId)").each(function(){$(this).val("")});n.find("textarea").each(function(){$(this).val("")});$("#helpId").val(0);a()}function s(t){if(t=typeof t!="undefined"?t:"",e&&t=="pass")return e=!1,!0;var i=!1;return n.find("tr").each(function(){if($(this).find("input[type!='radio']").length){if($(this).find("input").data("record")!==$(this).find("input").val())return i=!0,!1}else if($(this).find("input[type='radio']").length){if($(this).find("input").data("record")!==$("input[name='published']:checked").val())return i=!0,!1}else if($(this).find("textarea").length){if($(this).find("textarea").data("record")!==$(this).find("textarea").val())return i=!0,!1}else if($(this).find("select").length&&$(this).find("select").data("record")!==$(this).find("select").val())return i=!0,!1}),i?(i=!1,!1):!0}function p(){var t;if(window.FormData!==undefined){var u=$("#pdfUpload").get(0),i=u.files,r=new FormData;for(t=0;t<i.length;t++)r.append(i[t].name,i[t]);r.append("dataId",n.find("#helpId").val());$.ajax({url:"/Help/UploadPDF",type:"POST",contentType:!1,processData:!1,data:r,success:function(t){showSuccessMessage(t,4e3);n.find("#url").val(i[0].name)},error:function(n){showFailureMessage(n,3e3)}})}else alert("FormData is not supported.")}function h(){var t=n.find("#contentType").val();t=="pdf"?($("#url").addClass("readonly").prop("readonly",!0),$(".tr-upload").show()):($("#url").removeClass("readonly").prop("readonly",!1),$(".tr-upload").hide(),$("#pdfUpload").val(""))}function ut(){var t={},i;t.HelpId=n.find("#helpId").val();i=$("#pdfUpload").val();i!==""&&(p(),n.find("#url").val(i.substring(i.lastIndexOf("\\")+1,i.length)));t.Title=n.find("#title").val();t.Summary=n.find("#summary").val();t.TopText=n.find("#topText").val();t.BottomText=n.find("#bottomText").val();t.URL=n.find("#url").val();t.ContentType=n.find("#contentType").val();t.Published=n.find("input:radio[name='published']:checked").val();t.DispOrder=n.find("#displayOrder").val();window.open("/Help/Preview?helpData="+JSON.stringify(t))}var r=$("#helpList"),n=$("#helpContent"),u=null,t=!0,c=null,e=!1;b();a();y(100);w();h();i();$(".preview").click(ut);$(".add").click(k);$(".remove").click(g);$(".saveOrder").click(it);$("#contentType").change(h)}}(adminPages.help)