/*
 * JSMin
 * Javascript Compressor
 * http://www.crockford.com/
 * http://www.smallsharptools.com/Projects/Packer/
*/

// C:\TeamCity\buildAgent\work\d1c97f83e5a869da\FleetConnect\ShiftACar\Server\www\_scripts\pricecontrol.js

function priceControl(readonlyDiv,editDiv,doneButton,cancelButton,recalculateButton,errorDiv,fieldDiv,hiddenIdField,hiddenIsReadonlyField,pricesWarningDiv,pricesDiv,customerPriceReadonly,customerPriceVatReadonly,marginReadonly,marginVatReadonly,delivererCostReadonly,delivererCostVatReadonly,driverPayReadonly,estimatedMileageField,customerPriceField,delivererCostField,driverPayField){var _serviceUrl="cdnajaxhandler.ashx";var _isReadonly=hiddenIsReadonlyField.val().toLowerCase()=="true";var allFields=jayQ([]).add(estimatedMileageField);if(!_isReadonly){readonlyDiv.addClass("editable");readonlyDiv.click(function(){enableEdit(true,true);return false;});}
else{readonlyDiv.addClass("non-editable");}
cancelButton.click(function(){allFields.removeClass("ui-state-error");enableEdit(false,true);return false;});doneButton.click(function(){var bValid=true;allFields.removeClass("ui-state-error");bValid=bValid&&checkLength(errorDiv,estimatedMileageField,"estimated mileage",1,5);if(bValid){jayQ(document).trigger('SHOW_LOADING');jayQ.ajax({cache:false,async:false,url:_serviceUrl,data:({method:"setprices",uid:hiddenIdField.val(),estimatedmileage:estimatedMileageField.val(),customerprice:customerPriceField.val(),deliverercost:delivererCostField.val(),driverpay:driverPayField.val()}),success:function(data){populateControl(data,true,true);jayQ(document).trigger('HIDE_LOADING');},error:function(data){jayQ(document).trigger('HIDE_LOADING');}});enableEdit(false,true);}
return false;});fieldDiv.keypress(function(e){if(e.keyCode=='13'){doneButton.click();}});recalculateButton.click(function(){jayQ(document).trigger('SHOW_LOADING');jayQ.ajax({cache:false,async:false,url:"CdnAjaxHandler.ashx?method=recalculatequotes",data:({uid:hiddenIdField.val(),estimatedmileage:estimatedMileageField.val()}),success:function(data){populateControl(data,false,true);jayQ(document).trigger('HIDE_LOADING');},error:function(data){jayQ(document).trigger('HIDE_LOADING');}});return false;});jayQ(document).bind('SERVICETYPE_CHANGE',function(e,id,data){refreshControl(hiddenIdField.val(),false);});function refreshControl(id,showEditable){jayQ(document).trigger('SHOW_LOADING');enableEdit(showEditable,true);jayQ.ajax({cache:false,async:false,url:_serviceUrl+"?method=getprices&uid="+id,dataType:"json",success:function(data){populateControl(data,!showEditable,true);jayQ(document).trigger('HIDE_LOADING');},error:function(data){jayQ(document).trigger('HIDE_LOADING');}});}
function populateControl(data,populateReadonly,populateEditable){var mileageChangedAlert=data[0];var mileage=data[1];var agreedPrice=data[2];var margin=data[3];var deliveryQuote=data[4];var driverPay=data[5];var isServiceDefined=(deliveryQuote!=null&&margin!=null&&agreedPrice!=null);if(populateReadonly){if(mileageChangedAlert)
jayQ(document).trigger('MILEAGE_CHANGE',[mileage]);if(!isServiceDefined){pricesWarningDiv.show();pricesDiv.hide();}
else{pricesWarningDiv.hide();pricesDiv.show();customerPriceReadonly.html(agreedPrice.CurrencySymbol+agreedPrice.NetString);customerPriceVatReadonly.html(agreedPrice.GrossFormat);marginReadonly.html(margin.CurrencySymbol+margin.NetString);marginVatReadonly.html(margin.GrossFormat);delivererCostReadonly.html(deliveryQuote.CurrencySymbol+deliveryQuote.NetString);delivererCostVatReadonly.html(deliveryQuote.GrossFormat);driverPayReadonly.html(driverPay.CurrencySymbol+driverPay.NetString);}}
if(populateEditable){estimatedMileageField.val(mileage);customerPriceField.attr('disabled',!isServiceDefined);delivererCostField.attr('disabled',!isServiceDefined);driverPayField.attr('disabled',!isServiceDefined);if(isServiceDefined){customerPriceField.val(agreedPrice.NetString);delivererCostField.val(deliveryQuote.NetString);driverPayField.val(driverPay.NetString);}
else{customerPriceField.val('');delivererCostField.val('');driverPayField.val('');}}}
function enableEdit(enable,doMasking){if(enable){editDiv.show();doneButton.show();cancelButton.show();if(doMasking){editDiv.expose({closeOnEsc:true,closeOnClick:false,opacity:0.2,onClose:function(event){enableEdit(false,false);}});}}
else{editDiv.hide();doneButton.hide();cancelButton.hide();if(doMasking)
jayQ.mask.close();}}}

