PageSourceSearch

https://sealanes.com.au/Themes/BPDTHEME01/Min/js/themeTwo.min.js?v=20250109A-1877380961

js sealanes.com.au collected 2026-10-06 08:45:12 UTC 1,386,026 bytes, 147 lines download raw bytes

1(function(n){var t="dataBinding",i="dataBound",r="change",u="itemchange",f={name:"mvvmwidget",options:{viewTemplate:"",refreshOnItemChange:!1,allowCustomOptions:!1,allowCustomArrayOptions:!1,disableSourceInit:!1},_widgetID:null,getWidgetId:function(){return this._widgetID===null&&(this._widgetID=this.name+"_"+n.cv.css.guid()),this._widgetID},initialise:function(t){var i=this,r=null,u,f,e;i.sharedClassObjCheckAndSetup();n.cv.css.sharedClassObj.addClass(this.name,this);i.options.allowCustomOptions&&i._createCustomOptions();u=n(t).children(":first");u.data("view")||(u=n(t));u.data("view")?i.view=u.html():(i._viewAppended=!0,i.options.itemTemplate!==undefined&&(i.options.itemTemplateId=i.name+"-item-template-"+kendo.guid(),i._itemTemplateAppended=!0),i.options.viewTemplate?i.viewTemplate=i.options.viewTemplate:(i.viewTemplate="",r=n.isFunction(i._buildViewTemplate)?i._buildViewTemplate():null,r!=null&&(i.viewTemplate=r,r=null)),f=kendo.template(i.viewTemplate),n.isFunction(i.viewTemplateParsing)&&i.viewTemplateParsing(i.options),i.view=f(i.options),n.isFunction(i.viewTemplateParsed)&&i.viewTemplateParsed(i.options),i.options.itemTemplateId&&(i.itemTemplate="",r=i._buildItemTemplate(),r!=null&&(i.itemTemplate=r,r=null),i.view+=i.itemTemplate),n.isFunction(i.viewAppending)&&i.viewAppending(),i.element.html(i.view),n.isFunction(i.viewAppended)&&i.viewAppended());i.viewModel=i._getViewModel();i.element.children().length>1&&(e=i.element.html(),i.element.html("<div class='cv-widget-view-wrapper'>"+e+"<\/div>"));i.bindViewToViewModelAndInitDataSource()},bindViewToViewModelAndInitDataSource:function(){var t,i;n.cv.css.trigger(n.cv.css.eventnames.viewModelBinding,{widgetName:this.name,widgetElement:this.element,viewModel:this.viewModel});t=this.element.children(":first");n.isFunction(this.viewModelBinding)&&this.viewModelBinding();this._tagNestedWidgetsToSkipInit(t);kendo.bind(t,this.viewModel);this._untagNestedWidgetsToSkipInit(t);n.isFunction(this.viewModelBound)&&this.viewModelBound();n.cv.css.trigger(n.cv.css.eventnames.viewModelBound,{widgetName:this.name,widgetElement:this.element,viewModel:this.viewModel});this.options.dataSource&&(this._dataSource(),n.isFunction(this.initDataSource)&&!this.options.disableSourceInit&&(i=this.options.dataSource instanceof kendo.data.DataSource||n.isArray(this.options.dataSource)&&this.options.dataSource.length>0,i||this.initDataSource()))},_tagNestedWidgetsToSkipInit:function(t,i){i===void 0&&(i=!0);t.find("[data-role]").each(function(){n(this).data("cvNestedWidget")&&n.data(this,"_cv_skipInit",i)})},_untagNestedWidgetsToSkipInit:function(n){this._tagNestedWidgetsToSkipInit(n,!1)},reinstateViewModelFromHistoryState:function(){var i=this.getHistoryState(),t;return i&&i.viewModelState?(t=this._getViewModel(),t=kendo.observable(n.extend(t,i.viewModelState)),this.viewModel=t,this.bindViewToViewModelAndInitDataSource(),!0):!1},setupSinglePageHistoryStateHandler:function(t,i){var r=this.getWidgetId();this.saveUiStateToCurrentHistoryState(t);n.cv.util.addPopStateEventHandler(function(n){n.state&&n.state[r]&&n.state[r].uiState&&i(n.state[r].uiState)})},saveViewModelToCurrentHistoryState:function(n){this.saveHistoryState(this.getViewModelJson(n),"viewModelState",!1)},saveUiStateToCurrentHistoryState:function(n){this.saveHistoryState(n,"uiState",!1)},addNewUiHistoryState:function(n){this.saveHistoryState(n,"uiState",!0)},saveHistoryState:function(t,i,r){var u={},f;u[i]=t;r||(f=this.getHistoryState(),u=n.extend(f,u));n.cv.util.saveHistoryState(this.getWidgetId(),u,r)},getHistoryState:function(){return window.history.state&&window.history.state[this.getWidgetId()]},getViewModelJson:function(t){var i=this.viewModel.toJSON();return n.cv.util.removePropertiesInJsonObject(i,t),i},saveViewModelJsonToCurrentHistoryState:function(n){this.saveHistoryState(n,"viewModelState",!1)},events:[t,i],items:function(){return[]},setDataSource:function(n){this.options.dataSource=n;this._dataSource()},_dataSource:function(){var t=this;t.dataSource&&t._refreshHandler?t.dataSource.unbind(r,t._refreshHandler):t._refreshHandler=n.proxy(t.refresh,t);t.dataSource=kendo.data.DataSource.create(t.options.dataSource);
1t.viewModel&&t.viewModel.set("dataSource",t.dataSource);t.dataSource.bind(r,t._refreshHandler);t.options.autoBind&&t.dataSource.fetch()},refresh:function(n){var r=this;r.refreshing||(n.action!=u||r.options.refreshOnItemChange)&&(r.refreshing=!0,r.trigger(t),r.viewModel.updateViewModelFromDataSource(),r.trigger(i),r.refreshing=!1)},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},_createCustomOptions:function(){var t=this,i=t.options;_.each(n(t.element).data(),function(n,r){(typeof n!="object"||t.options.allowCustomArrayOptions&&_.isArray(n))&&typeof n!="function"&&!_.has(i,r)&&(t.options[r]=n)})},_buildItemTemplate:function(){this._buildItemTemplateStartScriptTag();var t=this._buildItemTemplateBody();n.cv.util.hasValue(t)&&(this.itemTemplate+=t);this._buildItemTemplateEndScriptTag()},_buildItemTemplateStartScriptTag:function(){this.itemTemplate+='<script type="text/x-kendo-template" id="'+this.options.itemTemplateId+'">'},_buildItemTemplateBody:function(){},_buildItemTemplateEndScriptTag:function(){this.itemTemplate+="<\/script>"},getClassValue:function(t){return(this.sharedClassObjCheckAndSetup(),n.cv.css.sharedClassObj.observableClassObjects[this.name]&&n.cv.css.sharedClassObj.observableClassObjects[this.name].obj)?n.cv.css.sharedClassObj.observableClassObjects[this.name].obj.get(t):null},setClassValue:function(t,i){this.sharedClassObjCheckAndSetup();n.cv.css.sharedClassObj.observableClassObjects[this.name]||n.cv.css.sharedClassObj.addClass(name,this);n.cv.css.sharedClassObj.observableClassObjects[this.name].obj||(n.cv.css.sharedClassObj.observableClassObjects[this.name].obj=kendo.observable({}));n.cv.css.sharedClassObj.observableClassObjects[this.name].obj.set(t,i)},sharedClassObjCheckAndSetup:function(){n.cv.css.sharedClassObj||(n.cv.css.sharedClassObj={observableClassObjects:{},addClass:function(n,t){var i=this;i.observableClassObjects[n]?i.observableClassObjects[n].currentActiveWidgets.push(t):i.observableClassObjects[n]={currentActiveWidgets:[t],obj:null}}})}};n.cv.ui.widget(f)})(jQuery);
2(function(n,t){var i="messageShown",r="urlMessage",u={name:"message",options:{dataSource:[],fadeTime:"slow",queryStringMessageParameters:["message"],queryStringMessageType:n.cv.css.messageTypes.warning,messageTypesRequiringConfirmation:[],autoBind:!0,displayUrlMessages:!0,fadeOutMessages:!1,viewTemplate:null,itemViewTemplate:null},events:["dataBinding","dataBound",i],viewModel:null,view:null,_viewAppended:!1,_itemViewAppended:!1,initialise:function(t){var i=this,r=n(t).children(":first"),u,f,e;r.data("view")?i.view=r.html():(i._viewAppended=!0,i.options.itemViewTemplate||(i.options.itemViewTemplate=i.name+"-item-template-"+kendo.guid(),i._itemViewAppended=!0),u=i.options.viewTemplate?n("#"+i.options.viewTemplate).html():i._getDefaultViewTemplate(),f=kendo.template(u),i.view=f(i.options),i._itemViewAppended&&(i.view+=i._getDefaultItemViewTemplate()),i.element.html(i.view));i.viewModel=i._getViewModel();e=i.element.children(":first");kendo.bind(e,i.viewModel);n.cv.css.bind(n.cv.css.eventnames.message,n.proxy(i.viewModel.insertMessage,i.viewModel))},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},insertMessage:function(n){var t=this;t.viewModel.insertMessage(n)},_getViewModel:function(){var u=this,o=function(){var i,e;u.options.dataSource.length==0&&(i=[],u.options.dataSource=i);s();u.options.displayUrlMessages&&(e=n.cv.util.queryStringValue("messageType")||u.options.queryStringMessageType,n.each(u.options.queryStringMessageParameters,function(i,u){var o=n.cv.util.queryStringValue(u);o!=t&&o.length>0&&f.insertMessage({message:o,type:e,source:r,clearExisting:!1})}))},s=function(){u.dataSource=kendo.data.DataSource.create(u.options.dataSource);u.options.autoBind&&u.dataSource.fetch();f.updateItemList()},e=function(){return!u.dataSource||u.dataSource.view().length==0?[]:(n.each(u.dataSource.view(),function(t,i){i.Index=t;i.removeMessage=function(){u.dataSource.remove(i);n.cv.css.nonconfirmedMessageBeingShown=!1}}),u.dataSource.view())},f;return kendo.data.binders.fadeIn=kendo.data.Binder.extend({refresh:function(){var t=this.bindings.fadeIn.get();t&&(n(this.element).css({display:"none"}).fadeIn(u.options.fadeTime),u.trigger(i))}}),f=kendo.observable({dataSource:u.options.dataSource,fadeMessageIn:!0,message:"",hasMessages:function(){return this.get("itemList").length},updateItemList:function(){this.set("itemList",e())},itemList:e(),insertMessage:function(t){var i=this;t.clearAllExisting?this.removeAllMessagesFromSource():t.clearExisting&&t.source&&this.removeExistingMessagesFromSource(t.source,t.messageGroup);t.message!==""&&(t.execCommand_preventDefault=function(n){n.preventDefault()},t.execCommand_hide=function(){u.dataSource.remove(this);n.cv.css.nonconfirmedMessageBeingShown=!1;i.updateItemList();
2n(".tooltip-error.validation.error input:visible").first().focus()},_.indexOf(u.options.messageTypesRequiringConfirmation,t.type)!==-1?(t.requiresConfirmation=!0,t.allowFadeOut=!1):(t.requiresConfirmation=!1,t.allowFadeOut=u.options.fadeOutMessages),t.additionalClasses=t.additionalClasses?t.additionalClasses+" "+t.type:t.type,u.dataSource.add(t),t.requiresConfirmation||(n.cv.css.nonconfirmedMessageBeingShown=!0));this.updateItemList()},removeExistingMessagesFromSource:function(t,i){for(var e=u.dataSource.data(),o=e.length,r,f=o-1;f>=0;f--)r=e[f],r.source&&r.source===t&&(n.cv.util.isNullOrWhitespace(i)?u.dataSource.remove(r):r.messageGroup===i&&u.dataSource.remove(r))},removeAllMessagesFromSource:function(){for(var t=u.dataSource.data(),r=t.length,i,n=r-1;n>=0;n--)i=t[n],u.dataSource.remove(i)}}),o(),f},_getDefaultViewTemplate:function(){var n=this;return['<div data-view="true">',"   <div>",'       <div class="itemList" data-bind="source: itemList" data-template="'+n.options.itemViewTemplate+'"><\/div>',"   <\/div>","<\/div>"].join("\n")},_getDefaultItemViewTemplate:function(){var n=this;return['<script type="text/x-kendo-template" id="'+n.options.itemViewTemplate+'">','   <div data-bind="attr: { class: type }">','       <span data-bind="text: message"><\/span>','       <a href="" class="close" alt="Close">×<\/a>',"   <\/div>","<\/script>"].join("\n")}};n.cv.ui.widget(u)})(jQuery);
3(function(n){var t="change",i={name:"pager",options:{dataSource:[],table:"",recordCount:"",pageSize:10,pageSizes:"5,10,25,50",pageSizesAppend:"",pageNumberLinksPerPage:10,includeInBrowserHistory:!0,arrowClass:"arrow",arrowUnavailableClass:"unavailable",autoBind:!0,callPageSize:!0,firstPageText:"<span class='cv-ui-type-font-entypo'style='font-size: 32px; line-height: 8px'>Ç<\/span>",previousPageText:"<span class='cv-ui-type-font-entypo'style='font-size: 32px; line-height: 8px'>Å<\/span>",previous10Text:"…",next10Text:"…",nextPageText:"<span class='cv-ui-type-font-entypo'style='font-size: 32px; line-height: 8px'>Ä<\/span>",lastPageText:"<span class='cv-ui-type-font-entypo'style='font-size: 32px; line-height: 8px'>É<\/span>",noItemsToDisplayText:"No items to display",viewTemplate:null,pageTemplate:"",alwaysShowTotalDisplayed:!1,showExportToCsv:!1},view:null,viewModel:null,initialise:function(t){var i=this,r=n(t).children(":first"),u,f,e;r.data("view")?i.view=r.html():(i._viewAppended=!0,i.options.pageTemplate||(i.options.pageTemplate="pageTemplate",i._itemViewAppended=!0),u=i.options.viewTemplate?n("#"+i.options.viewTemplate).html():i._getDefaultViewTemplate(),f=kendo.template(u),i.view=f(i.options),i._itemViewAppended&&(i.view+=i._getDefaultPageTemplate()),i.element.html(i.view));i.viewModel=i._getViewModel();e=n(i.element).children(":first");kendo.bind(e,i.viewModel);i.options.table?i.refresh():i.options.dataSource&&i._dataSource();n.cv.css.bind(n.cv.css.eventnames.isSearchingWithOptions,function(n){i.viewModel.set("isSearchingWithOptions",n.enabled)})},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},refresh:function(){var n=this;n.viewModel.dataSource=n.options.dataSource;n.viewModel.updateProperties()},setDataSource:function(n){this.options.dataSource=n;this._dataSource()},_dataSource:function(){var i=this;i.dataSource&&i._refreshHandler?i.dataSource.unbind(t,i._refreshHandler):i._refreshHandler=n.proxy(i.refresh,i);i.dataSource=kendo.data.DataSource.create(i.options.dataSource);(i.options.callPageSize||i.dataSource._pageSize!==i.options.pageSize)&&i.dataSource.pageSize(parseInt(i.options.pageSize));i.dataSource.bind(t,i._refreshHandler);i.options.autoBind&&i.dataSource.fetch()},_getViewModel:function(){var t=this,u=function(){var i,r;return t.options.table?(i=n.cv.util.queryStringValue("Page"+t.options.table),!i||i.length==0)?1:(r=parseInt(i),isNaN(r)?1:r):t.options.dataSource&&t.options.dataSource.page?t.options.dataSource.page():1},f=function(){var i,r;return t.options.table?(i=n.cv.util.queryStringValue("PageSize"+t.options.table),!i||i.length==0)?isNaN(t.options.pageSize)?10:t.options.pageSize:(r=parseInt(i),isNaN(r)?10:r):t.options.dataSource?t.options.dataSource.page?t.options.dataSource.pageSize():isNaN(t.options.pageSize)?10:t.options.pageSize:10},e=function(){return t.options.table?t.options.recordCount:t.options.dataSource&&t.options.dataSource.total?t.options.dataSource.total():0},r=function(n,i){var r=n;return i&&(r+=n.length>
30?" ":"",r+=t.options.arrowUnavailableClass),r},i=kendo.observable({currentPage:u(),pageSize:f(),recordCount:e(),isSearchingWithOptions:!1,updateProperties:function(){this.set("currentPage",u());this.set("pageSize",f());this.set("recordCount",e())},currentPageStartRecord:function(){var n=this.get("currentPage"),t=this.get("pageSize"),i=this.get("recordCount");return i==0?0:(n-1)*t+1},currentPageEndRecord:function(){var i=this.get("currentPage"),r=this.get("pageSize"),n=this.get("recordCount"),t=r*i+this.get("infiniteScrollingRecordsLoaded");return t>n?n:t},firstPage:function(){this.set("currentPage",1)},previousPage:function(){this.onFirstPage()||this.set("currentPage",this.get("currentPage")-1)},nextPage:function(){this.onLastPage()||this.set("currentPage",this.get("currentPage")+1)},lastPage:function(){this.set("currentPage",this.pageCount())},gotoPage:function(n){isNaN(n)||this.set("currentPage",n)},pageSelected:function(){var i=this.get("currentPage"),r;t.options.table?(r={},r["Page"+t.options.table]=i,r["PageSize"+t.options.table]=this.get("pageSize"),n.cv.util.redirect(window.location.href,r,!t.options.includeInBrowserHistory)):t.options.dataSource&&t.options.dataSource.page&&t.options.dataSource._page!==i&&i>0&&t.options.dataSource.page(i)},onFirstPage:function(){return this.get("currentPage")==1||this.get("recordCount")==0},onLastPage:function(){var n=this.get("currentPage"),t=this.pageCount();return n==t||this.get("recordCount")==0},pageSizes:t.options.pageSizes,pageSizesAppend:t.options.pageSizesAppend,pageSizeDataSource:function(){var i=this.get("pageSizes"),t=i,r;return typeof i=="string"&&(t=i.split(",")),r=this.get("pageSizesAppend"),n.cv.util.hasContent(r)&&(t.push(r),t=_.sortBy(t,function(n){return Number(n.text)}),t=_.uniq(t,!1,function(n){return n.text})),new kendo.data.ObservableArray(t)},pageDataSource:function(){var f=[],h,o,l;if(this.get("recordCount")==0)f.push({cssClass:"",pageText:t.options.noItemsToDisplayText,page:0});else{var c=t.options.pageNumberLinksPerPage,i=this.get("currentPage"),u=this.pageCount(),e=c>0?u<c?u:c:u,s=1;for(i>e&&(s=Math.floor((i-1)/e)*e+1),h=s+e-1,h>u&&(h=u),t.options.firstPageText!=""&&f.push({cssClass:r(t.options.arrowClass,i==1),pageText:t.options.firstPageText,page:1}),t.options.previousPageText!=""&&f.push({cssClass:r(t.options.arrowClass,i==1),pageText:t.options.previousPageText,page:i-1<1?1:i-1}),i>e&&f.push({cssClass:"",pageText:t.options.previous10Text,page:s-1}),o=s;o<=h;o++)l=o==i?"current":"",f.push({cssClass:l,pageText:o,page:o});h<u&&f.push({cssClass:"",pageText:t.options.next10Text,page:s+e});t.options.nextPageText!=""&&f.push({cssClass:r(t.options.arrowClass,i==u),pageText:t.options.nextPageText,page:i+1>u?u:i+1});t.options.lastPageText!=""&&f.push({cssClass:r(t.options.arrowClass,i==u),pageText:t.options.lastPageText,page:u});n.each(f,function(n,i){i.selectPage=function(){t.viewModel.gotoPage(this.page)}})}return new kendo.data.ObservableArray(f)},pageCount:function(){var n=this.get("pageSize"),t=Math.floor(this.get("recordCount")/n);return this.get("recordCount")%n!=0&&(t+=1),t},hasNoPages:function(){return this.pageCount()==0},hasMultiplePages:function(){return this.pageCount()>1},hasInfiniteScrolling:!1,infiniteScrollingPageSize:12,infiniteScrollingRecordsLoaded:0,infiniteScrollingInit:function(n){this.set("hasInfiniteScrolling",!0);this.set("infiniteScrollingPageSize",n);this.set("showTotalRecordsDisplayed",t.options.alwaysShowTotalDisplayed)},infiniteScrollingPageLoaded:function(n){var t=n.recordsLoaded;this.set("infiniteScrollingRecordsLoaded",this.get("infiniteScrollingRecordsLoaded")+t)},showTotalProductsDisplayed:function(){return this.get("showTotalRecordsDisplayed")},showTotalRecordsDisplayed:!0,exportToCSV:function(){n.cv.css.trigger(n.cv.css.eventnames.exportToCSV)}});return i.bind("change",function(n){var r,u;n.field=="currentPage"&&i.pageSelected();n.field=="pageSize"&&(t.options.table||t.options.dataSource.pageSize(parseInt(i.pageSize)),r=i.get("currentPage"),r!=1?i.set("currentPage",1):i.pageSelected());n.field==="recordCount"&&(u=parseInt(i.get("currentPage")),u>i.pageCount()&&i.set("currentPage",i.lastPage()))}),n.cv.css.bind(n.cv.css.eventnames.infiniteScrollingInit,n.proxy(i.infiniteScrollingInit,i)),n.cv.css.bind(n.cv.css.eventnames.infiniteScrollingPageLoaded,n.proxy(i.infiniteScrollingPageLoaded,i)),i},_getDefaultViewTemplate:function(){return'\t<div data-view="true"><div>\n\t\t<div class="row">\n\t\t\t<div class="two columns">\n\t\t\t\t<span class="cv-ui-elements-resultsreturned"><span data-bind="text: recordCount"><\/span> Records, <span data-bind="text: pageCount"><\/span> Pages<\/span>\n\t\t\t<\/div>\n\t\t\t<div class="four columns">\n\t\t\t\t<select data-bind="source: pageSizeDataSource, value: pageSize" style="width: auto"><\/select> per page\n\t\t\t<\/div>\n\t\t\t<div class="six columns">\n\t\t\t\t<ul class="pagination cv-ui-elements-pagination" data-bind="source: pageDataSource" data-template="pageTemplate"><\/ul>\n\t\t\t<\/div>\n\t\t<\/div>\n\t<\/div><\/div>'},_getDefaultPageTemplate:function(){return'<script type="text/x-kendo-template" id="pageTemplate">\n\t<li data-bind="attr: { class: cssClass }"><a href="javascript:$.noop()" alt="" data-bind="html: pageText, click: selectPage"><\/a><\/li>\n<\/script>'}};n.cv.ui.widget(i)})(jQuery);
4(function(n){var t="change",i="sortOptionsRendered",r={name:"sorter",options:{dataSource:[],table:"",sortBy:"",includePleaseSelect:!0,pleaseSelectText:"Please Select...",sortOptions:"ProductCode,Description",sortOptionsTextField:"text",sortOptionsValueField:"value",includeInBrowserHistory:!0,viewTemplate:null,itemViewTemplate:null,isSortByColumn:!1},events:[t,i],view:null,viewModel:null,initialise:function(t){var i=this,r=n(t).children(":first"),u,f,e;r.data("view")?i.view=r.html():(i._viewAppended=!0,i.options.itemViewTemplate||(i.options.itemViewTemplate=i.name+"-item-template-"+kendo.guid(),i._itemViewAppended=!0),u=i.options.viewTemplate?n("#"+i.options.viewTemplate).html():i._getDefaultViewTemplate(),f=kendo.template(u),i.view=f(i.options),i._itemViewAppended&&(i.view+=i._getDefaultPageTemplate()),i.element.html(i.view));i.viewModel=i._getViewModel();e=n(i.element).children(":first");kendo.bind(e,i.viewModel);i.options.table?(i.options.dataSource=null,i.refresh()):i.options.dataSource&&i._dataSource();n.cv.css.bind(n.cv.css.eventnames.sortByOrderTemplateColumn,n.proxy(i.viewModel.sortBySelectedColumn,i.viewModel))},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},refresh:function(){var n=this;n.viewModel.dataSource=n.options.dataSource;n.viewModel.updateProperties()},setDataSource:function(n){this.options.dataSource=n;this._dataSource()},_dataSource:function(){var i=this;i.dataSource&&i._refreshHandler?i.dataSource.unbind(t,i._refreshHandler):i._refreshHandler=n.proxy(i.refresh,i);i.dataSource=kendo.data.DataSource.create(i.options.dataSource);i.dataSource.bind(t,i._refreshHandler);i.options.autoBind&&i.dataSource.fetch()},_getViewModel:function(){var t=this,u=function(){var i;if(t.options.dataSource){var u=t.options.dataSource.sort(),r="",o="";return u&&u.length>0&&(r=u[0].field,o=u[0].dir),r.length>0&&o!=undefined&&o.length>0&&(r+=" "+o),e(r),r}if(i=n.cv.util.queryStringValue("Sort"+t.options.table),!i||i.length==0){if(t.options.sortBy!="")return t.options.sortBy;if(t.options.includePleaseSelect)return t.options.pleaseSelectText;i=""}return f(i),i},f=function(i){var r=t.viewModel.get("sortOptionsDataSource");
4n.each(r,function(n,r){r[t.options.sortOptionsValueField]==i&&r.set("isCurrentSort",!0)})},e=function(n){if(t.viewModel&&t.viewModel!=undefined&&n.length>0){var i=t.viewModel.get("sortOptionsDataSource");t.options.includePleaseSelect||(i=_.filter(i,function(n){return n[t.options.sortOptionsValueField]!=""}),t.viewModel.set("sortOptionsDataSource",i))}},o=function(){var i=t.options.sortOptions,r={};return n.isArray(t.options.sortOptions)?(r[t.options.sortOptionsTextField]=t.options.pleaseSelectText,r[t.options.sortOptionsValueField]=""):(i=t.options.sortOptions.split(","),r=t.options.pleaseSelectText),(t.options.includePleaseSelect||!t.options.includePleaseSelect&&u()=="")&&(i=n.merge([r],i)),n.each(i,function(n,i){i.sort=function(){t.viewModel.set("currentSort",i[t.options.sortOptionsValueField])}}),i},r=kendo.observable({currentSort:u(),direction:"",updateProperties:function(){this.set("skipSort",!0);this.set("currentSort",u());this.set("skipSort",!1);t.trigger(i)},skipSort:!1,sortOptions:t.options.sortOptions,sortOptionsDataSource:o(),sortSelected:function(){var u;if(!t.options.isSortByColumn){var i=this.get("currentSort"),r=i.split(" ").pop(),f=r.toLowerCase()=="asc"||r.toLowerCase()=="desc"?r.toLowerCase():"asc";(r.toLowerCase()=="asc"||r.toLowerCase()=="desc")&&t.options.dataSource&&(i=i.substring(0,i.lastIndexOf(" ")));this.set("direction",r.toLowerCase()=="asc"||r.toLowerCase()=="desc"?r:"");t.options.dataSource?i&&t.options.dataSource.sort({field:i,dir:f}):(u={},u["Sort"+t.options.table]=i!=t.options.pleaseSelectText?i:"",u["Page"+t.options.table]=1,n.cv.util.redirect(window.location.href,u,!t.options.includeInBrowserHistory))}},sortBySelectedColumn:function(n){t.options.dataSource&&n&&(this.set("currentSort",n.sortColumn+" "+n.sortDirection),this.set("direction",n.sortDirection),t.options.dataSource.sort({field:n.sortColumn,dir:n.sortDirection}))}});return r.bind("change",function(n){n.field=="currentSort"&&(r.get("skipSort")||r.sortSelected())}),r},_getDefaultViewTemplate:function(){}};n.cv.ui.widget(r)})(jQuery);
5(function(n,t){var i=window.kendo,v=i.ui,r=i.keys,u=".kendoComboBox",f=i.support,e=f.placeholder,o="focus",s="k-state-selected",h="filter",c="accept",l=null,a={name:"SelectCode",extend:"ComboBox",options:{showValue:!1},initialise:function(){var n=this;n.ns=u;n.input.on("focus"+u,function(){n.trigger(o)})},value:function(n){var i=this,r;if(n!==t)n!==null&&(n=n.toString()),i._valueCalled=!0,r=i._index(n),r>-1?(i.select(r),i.text(n)):(i.current(l),i._custom(n),i.text(n),i._placeholder()),i._old=i._accessor(),i._oldIndex=i.selectedIndex;else return i._accessor()},_keydown:function(n){var t=this,i=n.keyCode;if(t._last=i,clearTimeout(t._typing),!t.popup.visible()&&(i==r.UP||i==r.DOWN)){n.preventDefault();return}i==r.TAB||t._move(n)||(t.dataSource&&t.dataSource._data&&(t.dataSource._data.isSearching=!0),t._search())},_select:function(n){var i=this,e,r,u=i._data(),f=i._highlight(n);i.selectedIndex=f;f!==-1&&(i._state===h&&(i._state=c),i._current.addClass(s),u=u[f],e=i._text(u),r=i._value(u),i._prev=i.options.showValue?i.input[0].value=r:i.input[0].value=e,i._accessor(r!==t?r:e,f),i._placeholder(),i._optionID&&i._current.attr("aria-selected",!0))},_adjustListWidth:function(){var t=this.list,i="width",n=t[0].style.width,r=this.wrapper;if(t.data(i)||!n)return n=300,t.css({fontFamily:r.css("font-family"),width:n}).data(i,n),!0},_aria:function(){},_input:function(){var i=this,t=i.element.removeClass("k-input")[0],c=t.tabIndex,s=t.accessKey,u=i.wrapper,h="input.k-input",r,f,o=t.name||"";o&&(o='name="'+o+'_input" ');r=u.find(h);r[0]||(u.append('<span tabindex="-1" unselectable="on" class="k-state-default" style="background-color: transparent"><input '+o+'class="k-input" type="text" autocomplete="off"/><\/span>').append(i.element),r=u.find(h));f=r[0];f.tabIndex=c;f.style.cssText=t.style.cssText;t.maxLength>-1&&(f.maxLength=t.maxLength);r.addClass(t.className).val(t.value).css({width:"100%",height:t.style.height}).show();e&&r.attr("placeholder",i.options.placeholder);s&&(t.accessKey="",r[0].accessKey=s);i._focused=i.input=r;i._inputWrapper=n(u[0].firstChild);i._arrow=u.find(".k-icon").attr({role:"button",tabIndex:-1});t.id&&i._arrow.attr("aria-controls",i.ul[0].id)}};n.cv.ui.widget(a)})(jQuery);
6(function(n){var t="templatechanged",i={name:"templatedList",options:{viewTemplate:null,types:"List,Grid,DetailList",templateClasses:"list-template,grid-template,detailed-list-template",autobind:!1,autoScrollToTop:!1,scrollSpeed:"fast",scrollTarget:"html,body",saveUsersSelection:!1,userSelectionField:"",userDetailsJsonFieldGroup:"",defaultType:"List",currentType:"",replaceContainer:"",scrollC
6ontainer:"",triggerEvents:!1},_viewAppended:!1,events:[t],initialise:function(t){var i=this,r=null,u=n(t).children(":first"),f,e;u.data("view")&&(r=u.html());r||(i.options.viewTemplate||(i.options.viewTemplate=i._getDefaultViewTemplate()),f=kendo.template(i.options.viewTemplate),r=f(i.options),n(t).append(r),i._viewAppended=!0);i.viewModel=i._getViewModel();e=n(t).children(":first");kendo.bind(e,i.viewModel);i.options.autobind&&i.viewModel.setCurrentType();i.viewModel.set("isInitialLoad",!1);n.cv.css.bind(n.cv.css.eventnames.templatedListChanged,n.proxy(i.viewModel.templatedListChanged,i.viewModel));i.viewModel.templatedListChanged(i.viewModel.get("currentType"))},destroy:function(){var n=this;n.element.removeData(n.name);n._viewAppended&&n.element.empty()},_getViewModel:function(){var i=this,u=function(){return currentType},r=n.extend(kendo.observable(i.options),{defaultType:i.options.defaultType,currentType:"",isInitialLoad:!0,typeSelected:function(){var t=n.inArray(this.get("currentType"),this.typesDataSource());t>-1&&this.swapType(t)},setCurrentType:function(){var n=i.options.currentType!=""?i.options.currentType:i.options.defaultType;this.set("currentType",n)},types:i.options.types,typesDataSource:function(){var n=this.get("types");return n.split(",")},templateClasses:i.options.templateClasses,templateClassesDataSource:function(){var n=this.get("templateClasses");return n.split(",")},isType1Active:function(){return this.typesDataSource().length>0&&this.get("currentType")==this.typesDataSource()[0]},isType2Active:function(){return this.typesDataSource().length>1&&this.get("currentType")==this.typesDataSource()[1]},isType3Active:function(){return this.typesDataSource().length>2&&this.get("currentType")==this.typesDataSource()[2]},showType1:function(){this.templateClassesDataSource().length>0&&this.typesDataSource().length>0&&this.set("currentType",this.typesDataSource()[0])},showType2:function(){this.templateClassesDataSource().length>1&&this.typesDataSource().length>1&&this.set("currentType",this.typesDataSource()[1])},showType3:function(){this.templateClassesDataSource().length>2&&this.typesDataSource().length>2&&this.set("currentType",this.typesDataSource()[2])},swapType:function(r){if(i.options.replaceContainer!=""){var u=i.options.replaceContainer+".product-grid";n.each(this.templateClassesDataSource(),function(t,i){n(u).removeClass(i)});n(u).addClass(this.templateClassesDataSource()[r]);i.trigger(t,{currentType:this.get("currentType")});n.cv.css.trigger(n.cv.css.eventnames.templatedListChanged,this.get("currentType"));this.get("isInitialLoad")||(this.saveUserSelection(),this.scrollPage())}},templatedListChanged:function(t){this.get("currentType")!=t&&(this.set("isInitialLoad",!0),this.set("currentType",t),this.set("isInitialLoad",!1));const r=i.options.replaceContainer+".product-grid";n(r).find(".owl-carousel").each(function(){const t=n(this).data("owl.carousel");t&&t.onResize()})},scrollPage:function(){var t=i.options.scrollContainer.length>0?i.options.scrollContainer:i.options.replaceContainer;i.options.autoScrollToTop&&t!=""&&n(i.options.scrollTarget).animate({scrollTop:n(t).offset().top},i.options.scrollSpeed)},saveUserSelection:function(){if(i.options.saveUsersSelection&&i.options.userSelectionField!=""&&i.options.userDetailsJsonFieldGroup!=""&&n.cv&&n.cv.css&&n.cv.css.user){var t=this,r=this.getCurrentUser();r.done(function(r){if(r&&r.data&&r.data.length>0){var u={_objectKey:r.data[0]._objectKey};u[i.options.userSelectionField]=t.get("currentType");n.cv.css.user.setCurrentUserDetails({updateData:u,jsonFieldGroup:i.options.userDetailsJsonFieldGroup})}})}},getCurrentUser:function(){var t=n.Deferred(),r=n.cv.css.localGetUser();return r==null?t=n.cv.css.getCurrentUser({triggerEvents:i.options.triggerEvents}):t.resolve({data:[r]}),t}});return r.bind("change",function(n){n.field=="currentType"&&r.typeSelected()}),r},_getDefaultViewTemplate:function(){var n=this;return""}};n.cv.ui.widget(i)})(jQuery);
7(function(n){var t="menuItemShow",i="menuItemHide",r={name:"megaMenu",options:{openTimeout:200,closeTimeout:100,useTimout:!0,activeItem
7Class:"active",menuActiveClass:"active",highlightCurrentMenu:!0,currentMenuClass:"current",parentItems:"#menu > li",showEvent:"mouseenter",closeEvent:"mouseleave",defaultMenuClass:"",subCategoryMenuSectionSelector:"",subCategoryMenuSelectorAttr:"",enableJavascriptManipulation:!1,maxNumberOfColumns:4,flowLeftToRight:!1,menuitemhover:null,viewTemplate:""},events:["menuitemhover",t,i],viewModel:null,view:null,_viewAppended:!1,_activeMenuItem:"",initialise:function(t){var i=this,r=n(t).children(":first"),u,f;r.data("view")?i.view=r.html():(i.options.viewTemplate||(i.options.viewTemplate=i._getDefaultViewTemplate()),u=kendo.template(i.options.viewTemplate),i.view=u(i.options),n(t).append(i.view),i._viewAppended=!0);i.options.enableJavascriptManipulation&&n.cv.util.columnizeMegaMenu(i.element,i.options.maxNumberOfColumns,i.options.flowLeftToRight);i.viewModel=i._getViewModel();f=n(i.element).children(":first");kendo.bind(f,i.viewModel)},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},showMenuItem:function(n){var t=this;t.viewModel.showItem(n)},hideMenuItem:function(n){var t=this;t.viewModel.hideItem(n)},_getViewModel:function(){var r=this,f=function(){var i=decodeURIComponent(window.location.pathname),t=null;r.options.highlightCurrentMenu&&(n(r.options.parentItems).each(function(){var r=this,u=n(r).find("a[href='"+i+"']");return n(u).length>0?(t=r,!1):!0}),t!=null&&n(t).length>0&&n(t).addClass(r.options.currentMenuClass))},e=function(){var t=r.element.find(r.options.parentItems);n.each(t,function(t,i){n(i).bind(r.options.showEvent,function(){u.showItem(i)});n.cv.util.isNullOrWhitespace(r.options.subCategoryMenuSectionSelector)&&n(i).bind(r.options.closeEvent,function(){u.hideItem(i)})})},u=kendo.observable({currentTimeOutID:"",isMenuOpen:!1,menuActiveClass:function(){var n=r.options.defaultMenuClass;return this.get("isMenuOpen")&&(n+=" "+r.options.menuActiveClass),n},showItem:function(i){var u,f;window.clearTimeout(this.get("currentTimeOutID"));u=this;n(i).attr(r.options.subCategoryMenuSelectorAttr)&&(i=n(n(i).attr(r.options.subCategoryMenuSelectorAttr)));r.options.useTimout&&!this.get("isMenuOpen")?(f=window.setTimeout(function(){u.hideActiveItem();n(i).addClass(r.options.activeItemClass);u.set("isMenuOpen",!0)},r.options.openTimeout),this.set("currentTimeOutID",f)):(this.hideActiveItem(),n(i).addClass(r.options.activeItemClass),this.set("isMenuOpen",!0));r.trigger(t,{item:i})},hideItem:function(t){var u,f;window.clearTimeout(this.get("currentTimeOutID"));u=this;n(t).attr(r.options.subCategoryMenuSelectorAttr)&&(t=n(n(t).attr(r.options.subCategoryMenuSelectorAttr)));r.options.useTimout?(f=window.setTimeout(function(){u.hideActiveItem();n(t).removeClass(r.options.activeItemClass);u.set("isMenuOpen",!1)},r.options.closeTimeout),this.set("currentTimeOutID",f)):(this.hideActiveItem(),n(t).removeClass(r.options.activeItemClass),this.set("isMenuOpen",!1));r.trigger(i,{item:t})},hideActiveItem:function(){var t=r.options.parentItems;n.cv.util.isNullOrWhitespace(r.options.subCategoryMenuSectionSelector)||(t=r.options.subCategoryMenuSectionSelector);r.element.find(t).removeClass(r.options.activeItemClass)},showDefaultMenu:function(){n(r.options.parentItems)[0]&&this.showItem(n(r.options.parentItems)[0])}});return e(),f(),u},_getDefaultViewTemplate:function(){return""}};n.cv.ui.widget(r)})(jQuery);
8(function(n){var u="change",f="selected",i="bottom",r="top",t="both",e={name:"cvGrid",options:{dataSource:[],columns:null,autoBind:!0,selected:null,selectOnRowClick:!1,searchFields:null,searchPosition:r,pageable:!1,pagerPosition:i,viewTemplate:null,itemTemplateId:null},events:["dataBinding","dataBound",f],viewModel:null,view:null,items:function(){return this.element.find("tbody").children()},setDataSource:function(n){this.options.dataSource=n;this._dataSource();this.refresh()},_viewAppended:!1,_itemViewAppended:!1,initialise:function(t){var i=this,r=n(t).children(":first"),u,f,e;r.data("view")?i.view=r.html():(i._viewAppended=!0,i.options.itemTemplateId||(i.options.itemTemplateId=i.name+"-item-template-"+kendo.guid(),i._itemViewAppended=!0),u=i.options.viewTemplate?n("#"+i.options.viewTemplate).html():i._getViewTemplate(),f=kendo.template(u),i.view=f(i.options),i._itemViewAppended&&(i.view+=i._getDefaultItemViewTemplate()),i.element.html(i.view));i.viewModel=i._getViewModel();e=i.element.children(":first");kendo.bind(e,i.viewModel);i._dataSource()},_dataSource:function(){var t=this;t.dataSource&&t._refreshHandler?t.dataSource.unbind(u,t._refreshHandler):t._refreshHandler=n.proxy(t.refresh,t);t.dataSource=kendo.data.DataSource.create(t.options.dataSource);t.dataSource.bind(u,t._refreshHandler);t.options.autoBind&&t.dataSource.fetch()},refresh:function(){var n=this;n.viewModel.dataSource=n.options.dataSource;n.viewModel.updateItemList()},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this,r=function(i,r){r.click&&r.name&&(i["execCommand_"+r.name]=function(){n.proxy(r.click,i)(i,t)})},u=function(){return t.dataSource?(n.each(t.dataSource.view(),function(i,u){u.execCommand_destroy=function(){t.dataSource.remove(u);t.dataSource.sync()};u.execCommand_select=function(){t.trigger(f,u)};n.each(t.options.columns,function(t,i){i.command&&(n.isArray(i.command)?n.each(i.command,function(n,t){r(u,t)}):r(u,i.command))})}),t.dataSource.view()):[]},i=kendo.observable(n.extend(t.options,{dataSource:t.options.dataSource,isProcessing:!1,updateItemList:function(){this.set("itemList",u())}
8,itemList:u(),sortBy:function(n){var i=t.options.dataSource.sort(),r="asc";i&&i.length>0&&i[0].field==n&&i[0].dir=="asc"&&(r="desc");t.options.dataSource.sort({field:n,dir:r})}}));return n.each(t.options.columns,function(n,t){t.sortable&&(i["sort"+t.field]=function(){i.sortBy(t.field)})}),i},_getColumnHeading:function(n){if(n.headerTemplate)return n.headerTemplate;if(!n.title&&!n.field)return"&nbsp;";var t=n.title?n.title:n.field;return n.sortable?"<a href='javascript:$.noop()' data-bind='click: sort"+n.field+"'>"+t+"<\/a>":t},_getViewTemplate:function(){var n=this;return n._getDefaultViewTemplate()},_getDefaultViewTemplate:function(){var t=this,n="<div>";return n+=t._getDefaultSearchTopTemplate(),n+=t._getDefaultPagerTopTemplate(),n+=t._getDefaultTableTemplate(),n+=t._getDefaultPagerBottomTemplate(),n+=t._getDefaultSearchBottomTemplate(),n+"<\/div>"},_getDefaultTableTemplate:function(){var t=this,i="<div class='cv-ui-element-table-area'><table class='twelve hover-blue'><thead><tr>";return n.each(t.options.columns,function(n,r){i+="<th "+t._getColumnAttributes(n,r)+">"+t._getColumnHeading(r)+"<\/th>"}),i+="<\/tr><\/thead>",i+="<tbody data-bind='source: itemList' data-template='"+t.options.itemTemplateId+"'>",i+="<\/tbody><\/table><\/div>"},_getColumnAttributes:function(t,i){var r="",u=!1;return i.attributes&&n.each(i.attributes,function(n,t){r+=" "+n+'="'+t+'"';n=="class"&&(u=!0)}),t!=0||u||(r=' class="padding-left"'+r),i.width&&(r+=' width="'+i.width+'"'),r},_getDefaultSearchTopTemplate:function(){var n=this;return n.options.searchFields&&(n.options.searchPosition==t||n.options.searchPosition==r)?"<div data-role='search' data-search-fields='#= searchFields#' data-bind='source: dataSource'><\/div>":""},_getDefaultSearchBottomTemplate:function(){var n=this;return n.options.searchFields&&(n.options.searchPosition==t||n.options.searchPosition==i)?"<div data-role='search' data-search-fields='#= searchFields#' data-bind='source: dataSource'><\/div>":""},_getDefaultPagerTopTemplate:function(){var n=this;return n.options.pageable&&(n.options.pagerPosition==t||n.options.pagerPosition==r)?"<div data-role='pager' data-bind='source: dataSource' data-auto-bind='#= widget.options.autoBind #'><\/div>":""},_getDefaultPagerBottomTemplate:function(){var n=this;return n.options.pageable&&(n.options.pagerPosition==t||n.options.pagerPosition==i)?"<div data-role='pager' data-bind='source: dataSource' data-auto-bind='#= widget.options.autoBind #'><\/div>":""},_getCommandHtml:function(n){var t="<a href='javascript:$.noop()' data-bind='click: execCommand_"+n.name+"'>";return t+=n.text?n.text:n.name,t+"<\/a>"},_getAttributes:function(t){var i="";return t.attributes&&n.each(t.attributes,function(n,t){i+=" "+n+'="'+t+'"'}),i},_getDefaultItemViewTemplate:function(){var i=this,t="<script type='text/x-kendo-template' id='"+i.options.itemTemplateId+"'>";return t+=i.options.selectOnRowClick?"<tr data-bind='click: execCommand_select'>":"<tr>",n.each(i.options.columns,function(r,u){t+="<td"+i._getColumnAttributes(r,u)+">";u.template?t+=u.template:u.format&&u.field?t+="#= kendo.format('"+u.format+"',"+u.field+") #":u.field?t+="#= "+u.field+"#":u.command?n.isArray(u.command)?n.each(u.command,function(n,r){t+=i._getCommandHtml(r)}):t+=i._getCommandHtml(u.command):t+="&nbsp;";t+="<\/td>"}),t+="<\/tr><\/script>"}};n.cv.ui.widget(e)})(jQuery);
9(function(n){var r="change",i="startswith",t="contains",u={name:"search",options:{defaultSearchType:i,dataSource:[],searchFields:"Description",table:"",autoBind:!0,includeInBrowserHistory:!0,includeSearchTypeSelection:!0,textSearchTitle:"Search",textContainsLabel:"Contains",textStartsWithLabel:"Starts With",viewTemplate:null},view:null,viewModel:null,initialise:function(t){var i=this,u=n(t).children(":first"),r;u.data("view")?i.view=u.html():(r=null,r=i.options.viewTemplate?i.options.viewTemplate:kendo.template(i._getDefaultViewTemplate()),i.view=r(i.options));i.options.table?i.refresh():i.options.dataSource&&i._dataSource()},refresh:function(){var t=this,i;t.viewModel?t.viewModel.updateProperties():(n(t.element).html(t.view),t._viewAppended=!0,t.viewModel=t._getViewModel(),i=n(t.element).children(":first"),kendo.bind(i,t.viewModel))},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},setDataSource:function(n){this.options.dataSource=n;this._dataSource()},_dataSource:function(){var t=this;t.dataSource&&t._refreshHandler?t.dataSource.unbind(r,t._refreshHandler):t._refreshHandler=n.proxy(t.refresh,t);t.dataSource=kendo.data.DataSource.create(t.options.dataSource);t.dataSource.bind(r,t._refreshHandler);t.options.autoBind&&t.dataSource.fetch()},_getViewModel:function(){var r=this,u=function(t){var i=n.cv.util.queryStringValue("filter"+r.o
9ptions.table),u,f;return i?(u=i.substring(1,i.length-1).split(","),f=u[0].split(":"),f[t]):null},f=function(){var t,n;return r.options.table?(t=u(2),t?t:""):(n=r.dataSource.filter(),n&&n.filters&&n.filters.length!=0?n.filters[0].value.toString():"")},e=function(){if(r.options.table){var n=u(1);if(n)return n=="sw"?i:t}return r.options.defaultSearchType};return kendo.observable(n.extend(self.options,{searchText:f(),searchTextKeyUp:function(n){n.which==13&&(n.preventDefault(),this.search())},searchType:e(),updateProperties:function(){},getFilter:function(){var i=r.options.table?"":[],e=r.options.searchFields.split(","),u=this.get("searchType"),f=n.trim(this.get("searchText"));return n.each(e,function(n,e){var o,s;r.options.table?(i.length>0&&(i+=","),o=u==t?"lk":"sw",i+="("+e+":"+o+":"+f+")"):(o=u==t?"contains":"startswith",s={field:e,operator:o,value:f},i.push(s))}),i},search:function(){var t,i;r.options.table?(t={},t["filter"+r.options.table]=this.getFilter(),n.cv.util.redirect(window.location.href,t,!r.options.includeInBrowserHistory)):r.dataSource&&r.dataSource.filter&&(i=this.getFilter(),r.dataSource.filter({logic:"or",filters:i}))},clearSearch:function(){this.set("searchText","");r.dataSource.filter({})}}))},_getDefaultViewTemplate:function(){var r=this,n='<div class="search"><div class="row clearfix"><label>#= textSearchTitle #<\/label><input type="text" data-bind="value: searchText, events: {keyup: searchTextKeyUp}" /><input type="button" data-bind="click: search" /><\/div>';return r.options.includeSearchTypeSelection&&(n+='<div class="row clearfix"><input type="radio" name="searchRadio" value="'+t+'" data-bind="checked: searchType" /><label class="radio-label">#= textContainsLabel #<\/label><input type="radio" name="searchRadio" value="'+i+'" data-bind="checked: searchType" /><label class="radio-label">#= textStartsWithLabel #<\/label><\/div>'),n+"<\/div>"}};n.cv.ui.widget(u)})(jQuery);
10(function(n){var t="change",i="widgetInitialised",r={name:"productSearch",options:{suggestionsDataSource:[],staticContentSearchMode:"Disabled",pageContentSearchResultPopupClass:"page-content-search-result-popup",searchSuggestions:!0,productSuggestions:!1,searchPageUrl:"/ProductDisplay.aspx",searchPageUrlPriorPurchase:"/ProductDisplay.aspx?PriorPurchases=true",priorPurchaseSearchTicked:!1,searchPageUrlUserFavourites:"/ProductDisplay.aspx?UserFavourites=true",userFavouritesSearchTicked:!1,searchQueryStringKey:"ProductSearch",categoryFilterParam:"FilterProduct",productSearchFilterElement:"[data-role='productsearchfilter']",productSearchFilterData:"productSearchFilter",productFilterField:"",productFilterType:"",categoryFilters:[],categoryFilter:"",searchTypeParam:"SearchType",searchTypeFilter:"",productSearchTermStringKey:"ProductSearchTerm",currentSearchTerm:"",searchOnChange:!1,includeInBrowserHistory:!0,retainCurrentSearchStringKey:"RetainCurrentSearch",retainCurrentSearch:!0,change:null,useSuggestions:!1,useSearchAndProductSuggestions:!1,allowEmptySearch:!0,triggerMessages:!0,clearExistingMessages:!0,bindAutoComplete:!1,isProductFilterSearch:!1,enableRetainProductSearchTermWithPreview:!1,enableSearchProductOnInitialLoadWithPreview:!1,textFieldPrompt:"Product Search :",searchButtonText:"Go",pleaseEnterASearchValue:"Please enter a search value",viewTemplate:"",includeHeadingsAsDataItems:!0,searchSuggestionHeadingPositionSelector:"li:has(span.search-item):first",productSuggestionHeadingPositionSelector:"li:has(span.product-item):first",searchSuggestionsHeadingTemplateId:"",productSuggestionsHeadingTemplateId:"",showPreview:!1,popupId:"",excludedCategories:"",excludeProductsInExcludedCategories:!0,excludedProducts:"",numberOfProductsToDisplay:9,showLevels:0,searchTermValue:"",doGlobalSearch:!1,limitProductAndStaticContentResult:!1,productSearchResultLimit:0,staticContentSearchResultLimit:0,returnTypeOrder:null,enablePreviewDefaultTemplateDisplay:!1,previewDefaultTemplateDelay:400,previewTemplatePopupId:""},events:[t,i],viewModel:null,view:null,_viewAppended:!1,initialise:function(t){var r=this,u=n(t).children(":first"),f,e;u.data("view")?r.view=u.html():(r.options.viewTemplate||(r.options.viewTemplate=r._getDefaultViewTemplate()),f=kendo.template(r.options.viewTemplate),r.view=f(r.options),n(t).append(r.view),r._viewAppended=!0);r.viewModel=r._getViewModel();e=n(r.element).children(":first");kendo.bind(e,r.viewModel);r.options.bindAutoComplete&&r._autoCompleteBinding();r.trigger(i)},initialised:function(){var t=this,i;t.options.showPreview&&t.options.enableSearchProductOnInitialLoadWithPreview&&t.options.enableRetainProductSearchTermWithPreview&&(i=localStorage.getItem(t.options.productSearchTermStringKey)||"",n.cv.util.hasContent(i)&&(t.viewModel.set("isInitialSearchOnLoad",!0),t.kendoAutoComplete.search()));t.options.enablePreviewDefaultTemplateDisplay&&(n.cv.css.bind(n.cv.css.eventnames.productSearchDefaultTemplateShown,n.proxy(t.viewModel.handleTemplateShown,t.viewModel)),n.cv.css.bind(n.cv.css.eventnames.productSearchDefaultTemplateClicked,n.proxy(t.viewModel.handleTemplateClicked,t.viewModel)))},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},_autoCompleteBinding:function(){var t=this;if(t.autoCompleteInput=n(t.element).find("input[data-text-field='SearchKey']"),t.searchButton=n(t.element).find("button"),t.kendoAutoComplete=t.autoCompleteInput.data("kendoAutoComplete"),t.autoCompleteInput.keydown(function(i){if(i.which===13&&(i.preventDefault(),i.stopPropagation(),t.searchButton.click()),i.which==27&&(i.preventDefault(),i.stopPropagation(),n.cv.util.isNullOrWhitespace(t.autoCompleteInput.val())&&t.options.enablePreviewDefaultTemplateDisplay)){var r=n("#"+t.options.previewTemplatePopupId);r.is(":visible")&&(t.viewModel.set("skipNextFocus",!0),t.viewModel.closeTemplatePreview())}}),t.options.enablePreviewDefaultTemplateDisplay){t.autoCompleteInput.on("input",function(){var i=t.autoCompleteInput.val();n.cv.util.isNullOrWhitespace(i)&&t.viewModel.get("currentFilterValue")!=i&&t.viewModel.searchInputFocus();
10t.viewModel.set("currentFilterValue",i)});t.autoCompleteInput.on("focus",n.proxy(t.viewModel.searchInputFocus,t.viewModel))}n.cv.util.hasValue(t.kendoAutoComplete)&&t.kendoAutoComplete.bind("select",t.viewModel._autoCompleteSelected)},_getViewModel:function(){var i=this,o=function(){var t=n.cv.util.queryStringValue(i.options.categoryFilterParam),r,f;t!=undefined&&t.toLowerCase().indexOf("categorycode")!==-1&&(r=t.split(":"),f=r.length>2?r[2]:"",u.set("categoryFilter",f))},f,r,e,u;return((i.options.showPreview||i.options.useSuggestions||i.options.searchSuggestions||i.options.productSuggestions)&&i.options.suggestionsDataSource===[]||i.options.suggestionsDataSource.length==0)&&(i.options.suggestionsDataSource=i.options.showPreview?n.cv.data.dataSource({method:"search/predictivesearchwithpreviewjson",params:function(t){var r=n.cv.util.hasValue(t.filter.filters,"[0]")?t.filter.filters[0].value:"";return i.viewModel.retainSearchTerm(r),{searchPageUrl:i.options.searchPageUrl,searchTerm:r,numberOfProductsToDisplay:i.options.numberOfProductsToDisplay,excludedCategories:i.options.excludedCategories,excludeProductsInExcludedCategories:i.options.excludeProductsInExcludedCategories,excludedProducts:i.options.excludedProducts,showLevels:i.options.showLevels,filter:"SearchKey",isPriorPurchase:u.get("priorPurchaseSearchTicked"),isUserFavourites:u.get("userFavouritesSearchTicked"),categoryFilter:i.options.doGlobalSearch?"":u.getCategoryFilter()}},requestStart:function(){i.viewModel.set("isGettingSuggestions",!0)},requestEnd:function(t){var r,u,f;i.viewModel.set("isGettingSuggestions",!1);t.response.data&&(r=n("#"+i.options.popupId),u=r.siblings(".fancybox-close"),t.response.data.length>0?(r.html(t.response.data[0].Html),f=r.find("[data-role='product']"),n.each(f,function(n,t){kendo.init(t)}),i.options.enableSearchProductOnInitialLoadWithPreview&&i.options.enableRetainProductSearchTermWithPreview&&i.viewModel.get("isInitialSearchOnLoad")?i.viewModel.set("isInitialSearchOnLoad",!1):(r.parent().addClass("fancybox-wrap fancybox-desktop fancybox-type-inline fancybox-opened"),r.next("a").addClass("fancybox-item fancybox-close"),u.length===0&&(u=r.siblings(".fancybox-close")),u.show(),r.show(),i.viewModel.closeTemplatePreview()),n.cv.css.trigger(n.cv.css.eventnames.searchPreviewLoaded,{productImpressions:t.response.data[0].ProductImpressions}),n.cv.css.trigger(n.cv.css.eventnames.productSearchWithPreviewProductCategoryListRendered,{widgetId:"#"+i.options.popupId}),n.cv.css.trigger(n.cv.css.eventnames.productSearched,{searchTerm:i.viewModel.get("currentSearchTerm"),searchType:ProductSearchType.Preview,searchFrom:i.options.name})):(r.html(""),u.hide(),r.hide()))}}):i.options.useSearchAndProductSuggestions?n.cv.data.dataSource({method:"search/predictiveSearchJson2",params:function(t){var r=n.cv.util.hasValue(t.filter.filters,"[0]")?t.filter.filters[0].value:"";return i.viewModel.set("currentSearchTerm",r),{searchTerm:r,searchSuggestions:i.options.searchSuggestions,productSuggestions:i.options.productSuggestions,isPriorPurchase:u.get("priorPurchaseSearchTicked"),isUserFavourites:u.get("userFavouritesSearchTicked"),filter:"SearchKey",includeHeadings:i.options.includeHeadingsAsDataItems,staticContentSearchMode:i.options.staticContentSearchMode,limitProductAndStaticContentResult:i.options.limitProductAndStaticContentResult,maxProductSearchResult:i.options.limitProductAndStaticContentResult?i.options.productSearchResultLimit:0,maxStaticContentSearchResult:i.options.limitProductAndStaticContentResult?i.options.staticContentSearchResultLimit:0,returnTypeOrder:n.cv.util.hasContent(i.options.returnTypeOrder)?i.options.returnTypeOrder:null}},requestStart:function(){i.viewModel.closeTemplatePreview()},requestEnd:function(){n.cv.css.trigger(n.cv.css.eventnames.productSearched,{searchTerm:i.viewModel.get("currentSearchTerm"),searchType:ProductSearchType.Preview,searchFrom:i.options.name})}}):n.cv.data.dataSource({method:"search/predictiveSearchJson",params:function(t){var r=n.cv.util.hasValue(t.filter.filters,"[0]")?t.filter.filters[0].value:"";return i.viewModel.set("currentSearchTerm",r),{searchTerm:r,filter:"SearchKey"}},requestStart:function(){i.viewModel.closeTemplatePreview()},requestEnd:function(){n.cv.css.trigger(n.cv.css.eventnames.productSearched,{searchTerm:i.viewModel.get("currentSearchTerm"),searchType:ProductSearchType.Preview,searchFrom:i.options.name})}})),f=n.cv.util.queryStringValue(i.options.retainCurrentSearchStringKey),r="",n.cv.util.isNullOrWhitespace(f)===!1&&(i.options.retainCurrentSearch=f.toLowerCase()==="true"),i.options.retainCurrentSearch&&(r=n.cv.util.queryStringValue(i.options.searchQueryStringKey),n.cv.util.isNullOrWhitespace(r)||r!=="%"||(r=""),e=n.cv.util.queryStringValue("ContentSearchTerm"),n.cv.util.hasContent(e)&&(r=e)),i.options.enableRetainProductSearchTermWithPreview&&(r=localStorage.getItem(i.options.productSearchTermStringKey)||""),u=kendo.observable({isSearching:!1,isGettingSuggestions:!1,isInitialSearchOnLoad:!1,suggestionsDataSource:i.options.suggestionsDataSource,priorPurchaseSearchTicked:i.options.priorPurchaseSearchTicked,userFavouritesSearchTicked:i.options.userFavouritesSearchTicked,categoryFilters:i.options.categoryFilters,categoryFilter:i.options.categoryFilter,searchTypeFilter:i.options.searchTypeFilter,parsedDefaultTemplate:"",parsedDefaultTemplateLoaded:!1,skipNextFocus:!1,currentFilterValue:"",isDefaultTemplateShowing:!1,templateClickRecorded:!1,suggestionType:"",selectedSEOUrl:"",searchText:r?r.length!=0?i.options.useSuggestions||i.options.searchSuggestions||i.options.productSuggestions?{SearchTermValue:r,SearchKey:r}:r:null:null,searchTextWhenEnterKeyPressed:null,searchInputKeyUp:function(n){n.which==13&&(n.preventDefault(),n.stopPropagation(),this.search())},searchInputBound:function(t){var s=n(t.sender.list),u=i.options,c,a,e,o;if(i.options.searchSuggestions===!0&&!n.cv.util.isNullOrWhitespace(i.options.searchSuggestionHeadingPositionSelector)&&!n.cv.util.isNullOrWhitespace(i.options.searchSuggestionsHeadingTemplateId)&&(s.find(i.options.searchSuggestionHeadingPositionSelector).prepend(n("#"+i.options.searchSuggestionsHeadingTemplateId).html()),u.staticContentSearchMode==="IncludeStaticContentSearch")){var r=s.find(u.searchSuggestionHeadingPositionSelector),h="div.k-list-scroller",l="div.k-list-container",v=r.closest(h).find("li"),f=0;r.closest(h).addClass(u.pageContentSearchResultPopupClass);r.closest(l).addClass(u.pageContentSearchResultPopupClass);n.each(v,function(t,i){f+=parseInt(n(i).css("height"))});f>0&&(f+=70,c=f+"px",r.closest(h).css("height",c),r.closest(l).css("height",c))}if(i.options.productSuggestions!==!0||n.cv.util.isNullOrWhitespace(i.options.productSuggestionHeadingPositionSelector)||n.cv.util.isNullOrWhitespace(i.options.productSuggestionsHeadingTemplateId)||s.find(i.options.productSuggestionHeadingPositionSelector).prepend(n("#"+i.options.productSuggestionsHeadingTemplateId).html()),i.options.showPreview===!0&&(a=n(t.sender.list),a.closest(".k-animation-container").hide()),e=n("li",t.sender.ul),e.length>1&&e.removeClass("k-state-focused"),o=e.find(".view-more-related-products").closest("li"),o.length>0){o.removeClass("k-item");o.on("mouseover",function(){return!1})}},searchInputFocus:function(){var t=this;t.get("isDefaultTemplateShowing")||setTimeout(function(){var r=n(":focus");r.attr("id")===i.autoCompleteInput.attr("id")&&n.cv.util.isNullOrWhitespace(i.autoCompleteInput.val())&&t.loadDefaultTemplate()},i.options.previewDefaultTemplateDelay)},loadDefaultTemplate:function(){var t=this,i=n.Deferred();t.get("parsedDefaultTemplateLoaded")?i.resolve({data:{Success:!0,Value:t.get("parsedDefaultTemplate")}}):i=n.cv.css.product.getSearchPreviewDefaultTemplateParsed();i.done(function(n){var i=n.data;i.Success&&(t.set("parsedDefaultTemplateLoaded",!0),t.set("parsedDefaultTemplate",i.Value),t.showDefaultTemplate())})},showDefaultTemplate:function(){var r=this,u,t,f;if(r.get("skipNextFocus")){r.set("skipNextFocus",!1);return}u=n(":focus");u.attr("id")===i.autoCompleteInput.attr("id")&&n.cv.util.isNullOrWhitespace(i.autoCompleteInput.val())&&(t=n("#"+i.options.previewTemplatePopupId),t.html(r.get("parsedDefaultTemplate")),t.is(":visible")||t.parent().show(),n.cv.css.lazyLoadWidget(),n.cv.css.initCarouselSliders(t),n.cv.css.initialiseKendoControl
10s(t),f=t.find("[data-role='product']"),n.each(f,function(n,t){kendo.init(t)}),setTimeout(function(){t.find(".widget-banner-slider").each(function(){n(this).data("owlCarousel")&&n(this).data("owlCarousel").owl.refresh()})},500),setTimeout(function(){r.bindClickEventOnDefaultTemplate(t)},100),r.set("isDefaultTemplateShowing",!0),n.cv.css.trigger(n.cv.css.eventnames.productSearchDefaultTemplateShown),r.closePreview())},bindClickEventOnDefaultTemplate:function(t){var i=function(t){t.stopPropagation();n.cv.css.trigger(n.cv.css.eventnames.productSearchDefaultTemplateClicked)},r=t.find("*").filter(function(t,i){var r=n._data(i,"events");return r&&r.click?!0:!1});r.each(function(){n(this).on("click",i)});t.on("click",i)},handleTemplateShown:function(){var t=this;t.set("templateClickRecorded",!1);n.cv.css.product.updateSearchDefaultTemplateStats({templateShown:!0})},handleTemplateClicked:function(){var t=this;t.get("templateClickRecorded")||(n.cv.css.product.updateSearchDefaultTemplateStats({templateClick:!0}),t.set("templateClickRecorded",!0))},closeTemplatePreview:function(){var t=n("#"+i.options.previewTemplatePopupId);t.parent().hide();i.viewModel.set("isDefaultTemplateShowing",!1)},searchFiltering:function(n){var t=this;n.filter.value||(n.preventDefault(),n.sender.close(),i.options.enablePreviewDefaultTemplateDisplay&&t.get("currentFilterValue")!=n.filter.value&&i.viewModel.searchInputFocus())},getProductSearchFilter:function(){var t="";return n(i.options.productSearchFilterElement).each(function(){var r=n(this).data(i.options.productSearchFilterData);r&&(t=r.buildFilter())}),t},getCategoryFilter:function(){return"CategoryCode:sw:"+this.get("categoryFilter")},useProductFilterSearch:function(){return i.options.isProductFilterSearch&&!n.cv.util.isNullOrWhitespace(i.options.productFilterField)&&!n.cv.util.isNullOrWhitespace(i.options.productFilterType)},_autoCompleteSelected:function(t){var r=i.viewModel,f=i.autoCompleteInput.val(),e;t.sender&&t.sender._last&&t.sender._last===13&&n.cv.util.hasContent(f)&&(e=i.options.useSuggestions||i.options.searchSuggestions||i.options.productSuggestions?{SearchTermValue:f,SearchKey:f}:f,r.set("searchTextWhenEnterKeyPressed",e));i.viewModel.set("viewMoreProductsClicked",t.dataItem.SuggestionType==="ViewMoreRelatedProducts");u.get("viewMoreProductsClicked")===!0&&t.item.addClass("k-item");r.set("suggestionType",t.dataItem.SuggestionType);r.set("selectedSEOUrl",t.dataItem.SEOUrl);t.sender&&t.sender._last&&t.sender._last===13&&n("li.k-state-focused",t.sender.ul).length===0&&(r.set("suggestionType",""),r.set("selectedSEOUrl",""));i.kendoAutoComplete.unbind("close",r._autoCompleteClosed);i.kendoAutoComplete.bind("close",r._autoCompleteClosed);r.set("staticContentSearchClicked",t.dataItem.IsPageContentSearch===!0)},_autoCompleteClosed:function(n){if(i.kendoAutoComplete.unbind("close",i.viewModel._autoCompleteClosed),u.get("viewMoreProductsClicked")===!0)n.preventDefault();else{var t=i.viewModel,r=t.get("searchTextWhenEnterKeyPressed");n.sender&&n.sender._last&&n.sender._last===13&&r!==null&&(t.set("searchText",r),t.set("searchTextWhenEnterKeyPressed",null));t.search()}},staticContentSearchClicked:!1,viewMoreProductsClicked:!1,searchPageContent:function(t){n.cv.util.hasContent(t)!==!1&&n.cv.util.redirect("/page-content-search-result",{ContentSearchTerm:encodeURIComponent(t)},!i.options.includeInBrowserHistory)},viewMoreProducts:function(t){var r=t.data.SearchTermValue;n.cv.util.hasValue(r)&&(n.cv.util.redirect("/search?ProductSearch="+r,null,!i.options.includeInBrowserHistory),t.preventDefault(),t.stopPropagation())},viewPageItem:function(t){var r=t.data.SearchTermValue;n.cv.util.hasValue(r)&&(n.cv.util.redirect(r,null,!i.options.includeInBrowserHistory),t.preventDefault(),t.stopPropagation())},viewMorePages:function(t){var r=t.data.SearchTermValue;n.cv.util.hasValue(r)&&(n.cv.util.redirect("/page-content-search-result?ContentSearchTerm="+r,null,!i.options.includeInBrowserHistory),t.preventDefault(),t.stopPropagation())},retainSearchTerm:function(n){i.options.enableRetainProductSearchTermWithPreview&&localStorage.setItem(i.options.productSearchTermStringKey,n);i.viewModel.set("currentSearchTerm",n)},processPriorPurchasesUserFavouritesSearch:function(){i.kendoAutoComplete.search()},search:function(){var t={},r,e,u,o,s,h,f,c,a,l;if(this.get("searchText")!=null?i.options.useSuggestions||i.options.searchSuggestions||i.options.productSuggestions?(r=this.get("searchText").SearchTermValue!=null&&this.get("searchText").SearchTermValue!=""?this.get("searchText").SearchTermValue:this.get("searchText").SearchKey,r||(r=this.get("searchText"))):r=this.get("searchText"):(r="",t.AttemptedEmptySearch=encodeURIComponent("true")),n.cv.css.trigger(n.cv.css.eventnames.productSearched,{searchTerm:r,searchType:ProductSearchType.Click,searchFrom:i.options.name}),n.trim(r).length!=0||i.options.allowEmptySearch){if(u=i.options,this.get("staticContentSearchClicked")||u.staticContentSearchMode==="SearchStaticContentOnly"){this.searchPageContent(r);return}u.staticContentSearchMode==="IncludeStaticContentSearch"&&(t.StaticContentSearchMode=u.staticContentSearchMode,t.StaticContentSearchTerm=encodeURIComponent(r));this.set("isSearching",!0);n.cv.util.isNullOrWhitespace(this.get("searchTypeFilter"))||(t[i.options.searchTypeParam]=this.get("searchTypeFilter"));this.useProductFilterSearch()?(a=i.options.productFilterField.split(","),l=[],n.each(a,function(n,t){l.push("{0}:{1}:{2}".format(t,i.options.productFilterType,r))}),t[i.options.searchQueryStringKey]=encodeURIComponent("%"),t.searchAll=encodeURIComponent("true"),t.FilterProduct=l.join("|"),n.cv.util.redirect(i.options.searchPageUrl,t,!i.options.includeInBrowserHistory)):(o=!1,s=!1,t[i.options.searchQueryStringKey]=encodeURIComponent(r),h=this.get("categoryFilter"),h.length>0&&i.options.doGlobalSearch===!1&&(f=h.toLowerCase(),f!=="userfavourites=true"&&f!=="priorpurchases=true"?t[i.options.categoryFilterParam]=this.getCategoryFilter():f!=="userfavourites=true"?s=!0:o=!0),c=this.get("selectedSEOUrl"),e=this.getProductSearchFilter(),e.length>0&&(t.FilterFeature=e),r!=null?this.get("priorPurchaseSearchTicked")&&this.get("userFavouritesSearchTicked")?(t.PriorPurchases=!0,t.UserFavourites=!0,n.cv.util.redirect(i.options.searchPageUrl,t,!i.options.includeInBrowserHistory)):s||this.get("priorPurchaseSearchTicked")?n.cv.util.redirect(i.options.searchPageUrlPriorPurchase,t,!i.options.includeInBrowserHistory):o||this.get("userFavouritesSearchTicked")?n.cv.util.redirect(i.options.searchPageUrlUserFavourites,t,!i.options.includeInBrowserHistory):this.get("suggestionType")==="ProductItem"&&n.cv.util.hasContent(c)?n.cv.util.redirect(c,null,!i.options.includeInBrowserHistory):n.cv.util.redirect(i.options.searchPageUrl,t,!i.options.includeInBrowserHistory):this.set("isSearching",!1))}else n.cv.util.notify(this,i.options.pleaseEnterASearchValue,n.cv.css.messageTypes.error,{triggerMessages:i.options.triggerMessages,clearExisting:i.options.clearExistingMessages,source:i.name})},closePreview:function(){var t=n("#"+i.options.popupId),r=t.siblings(".fancybox-close");r.hide();t.hide();t.parent().removeClass("fancybox-wrap fancybox-desktop fancybox-type-inline fancybox-opened");t.next("a").removeClass("fancybox-item fancybox-close")}}),i.options.searchOnChange&&u.bind("change",function(n){n.field=="searchText"&&(i.trigger(t,n),u.search())}),o(),u},_getDefaultViewTemplate:function(){var n=this,t="<div><label>"+n.options.textFieldPrompt+"<\/label>";return t+=n.options.useSuggestions||n.options.searchSuggestions||n.options.productSuggestions?"<input type='text' data-role='autocomplete' data-text-field='SearchKey' data-bind='source: suggestionsDataSource, value: searchText' data-value-update='keyup' />
10":"<input type='text' data-bind='value: searchText, events: {keyup: searchInputKeyUp}' data-value-update='keyup' />",t+("<button data-bind='click: search'>"+n.options.searchButtonText+"<\/button><\/div>")}};n.cv.ui.widget(r)})(jQuery);
11var StockAvailability;(function(n){n.NotApplicable="NotApplicable";n.InStock="InStock";n.LowStock="LowStock";n.OutOfStock="OutOfStock"})(StockAvailability||(StockAvailability={})),function(n){var t="productAddedToCart",i="productAddedToFavourites",r="productAddToCartFail",u="productAddToFavouritesFail",f="productRemovedFromFavourites",e="productRemovedFromFavouritesFail",s="out-of-stock",h="in-stock",c="low-stock",o="please-see-attributes",l="cart-product-availability",a={name:"product",extend:"mvvmwidget",extendEvents:[t,i,r,u,f,e],options:{viewTemplate:null,isMainProductPurchaseDetailsInstance:!1,translationParams:"",productCode:"",updateUiFromProductData:!1,productData:[{}],quantityBreaks:[],itemsOnOrder:0,qtyOnBackOrder:0,availableQty:0,priceForOne:0,priceForOneInc:0,priceForOneEx:0,nettPriceForOne:0,nettPriceForOneInc:0,nettPriceForOneEx:0,customerShowTaxAs:"",priceRrp:0,nettPrice:0,quantity:0,defaultQuantity:-1,initialQuantityOverride:0,autoPopulateQty:!0,defaultCostCentreCode:"",noteIsExtendedLineDescription:!0,clearExistingMessages:!1,triggerMessages:!1,triggerFavouritesMessages:!0,allowOrderEntryForProduct:!0,allowDecimals:!1,blurElementOnKeyup:!0,addToCartRefreshTime:600,enableOrderLineNotes:!1,useCostCentres:!1,useOrderEntry:!1,isFavourite:!1,isUserFavouritesPage:!1,multiUpdateThrottleTimeout:400,addSelectedAttributeCodeToOrder:!1,forceOrderPackQty:!1,campaignCode:"",selectedUom:"",showAltPrice:!1,hideFooterZone:!1,hidePricing:!1,redirectToAfterAddToCart:!1,ordersPageUrl:"/cart",triggerGetPriceOnQtyChange:!1,loadProductDataFromVariable:!1,unitOfMeasureOptions:[],allCombinedUoms:"",extendedAttributes:"",productSliderSelector:".product-slider",outOfStock:!1,availableClass:"",enableStoreAvailabilityClickAndCollect:!1,currentPickupStoreName:"",showPickupSelectProductAttributes:!1,showPickupAvailable:!1,showPickupAvailableBackOrder:!1,showPickupIndentProductCall:!1,showPickupLowStockCall:!1,showPickupStoreNotSet:!1,showPickupUnavailable:!1,showDeliverySelectProductAttributes:!1,showDeliveryAvailable:!1,showDeliveryAvailableBackOrder:!1,showDeliveryIndentProductCall:!1,showDeliveryUnavailable:!1,showDeliveryStoreNotSet:!1,storeAvailClickAndCollectDeliveryDisplayMode:"",showDeliveryAvailableTwoToFiveDays:!1,showDeliveryAvailableThreeToSixDays:!1,showDeliveryAvailableFiveToSevenDays:!1,showDeliverySpecialOrder:!1,showEmailDelivery:!1,checkNearbyStoresPickupAvailMaximumStores:3,includeCurrentStoreInNearbyStoresAvailCheck:!0,textProductNoNearbyStoresHaveAvail:"This item is either not currently available for pickup from any stores near to your current store, or there are no other stores close by.",textProductErrorCheckingNearbyStoresAvail:"Error checking availability from nearby stores near to your current store, or there are no other stores close by.",attributedProductList:null,pleaseSelectAttributeText:"Please select the {0}",attributeValueArray:"",prontoStockWarehouseRecord:"",packQuantity:1,packQuantityTarget:"packQuantity",quantityTarget:"quantity",showBlankQtyAsDefault:!1,rcQuickViewZoneSelector:".cv-zone-product-5",rcQuickViewCloseButtonHtml:"<div class='close-overlay cv-ico-general-cross3'>Close<\/div>",rcQuickViewSlideToggleSelector:".cv-zone-product-5 .close-overlay",productGallerySliderSelector:".product-gallery-slider",alwaysDisplayQuantityInCartPrompt:!1,textProductAddedToCart:"Your products have been successfully added to your cart",textQuantityMustBeNumeric:"Please enter whole numbers greater than zero",pleaseOrderInPackQuantity:"Must Order in pack quantity of {0}'s",textProductAddedToFavourites:"Your product has been successfully added to your favourites",textDefaultErrorAddingToFavourites:"Error adding this product to your favourites, it may already exist",textDefaultRemoveFavouriteSuccess:"Your product has been successfully removed from your favourites",textDefaultRemoveFavouriteFail:"Error removing this product from your favourites, it may have already been removed",defaultPleaseSelectAttribute:"Please ensure you have selected all product options",textAddToCartButtonLabel:"Add to Cart",textAddToF
11avouritesButtonLabel:"Add to Favourites",gtmPageType:"",quickViewPopupId:"",isShowingProductQuickViewModal:!1,attributeProductAddToCartMode:"Master",imageSrc:"",imageAltTag:"",masterImageSrc:"",masterImageAltTag:"",referenceType:"",integratedChildImagePath:"",showWarningWhenProductAlreadyInCart:!1,warningMessageWhenProductAlreadyInCart:"",warningHeaderWhenProductAlreadyInCart:"Warning",whseCode:"",thirdPartyBasePrice:"",zipMinPrice:0,zipMaxPrice:0,isZipSummary:!1,zipType:"ZipMoney",thirdPartyInstallments:4,afterpayMinPrice:0,afterpayMaxPrice:0,isAfterpaySummary:!1,openpayDepositPercent:0,openpayInstallments:4,openpayMinPrice:0,openpayMaxPrice:0,isOpenpaySummary:!1,payRightDepositPercent:10,payRightMinPrice:0,payRightMaxPrice:0,isPayRightSummary:!1,poaProductPricingMessage:"",poaResourceMessage:"",addToOrderCheckMinQuantityEnabled:!1,addToOrderCheckMinQuantityAddOnError:!1,minQuantityEnableAddingOnErrorMessage:"Product added to cart but minimum order quantity has not been met.",minQuantityDisableAddingOnErrorMessage:"Product has not been added to the cart. Minimum quantity has not been met.",productMinQuantity:0,minQuantity:0,increaseQtyStepFromZero:0,addToCartQtyStepFromZero:0,increaseQuantitiesInPackQty:!1,addMinimumQuantityToCart:!1,loadViewModelFromVariable:!1,braintreePayPalExpressEnabled:!1,braintreePayPalExpressButtonId:"",braintreePayPalExpressButtonList:null,braintreePayPalExpressButtonsOptions:null,braintreePayPalPayLaterMessagesContainterId:"",searchId:0,searchPos:0,extendedAttributesDelimiter:";",isGivexGiftCard:!1,givexModalId:"",deliveryDateIsRequiredErrorMsg:"Delivery Date is required.",deliveryDateInPastErrorMsg:"Delivery Date must not be in the past.",recipientsNameIsRequiredErrorMsg:"Recipients Name is required.",recipientsEmailIsRequiredErrorMsg:"Recipients Email is required.",recipientsEmailInvalidErrorMsg:"Recipients Email is Invalid.",sendersNameIsRequiredErrorMsg:"Senders Name is required.",sendersEmailIsRequiredErrorMsg:"Senders Email is required.",sendersEmailInvalidErrorMsg:"Senders Email is Invalid.",messageIsRequiredErrorMsg:"Message is required.",enableUomPricingByCoreProductPriceLogic:!1,itemPrice:0,altItemPrice:0,attributedProductPriceDisplayField:"",rrpAttributedProductPriceDisplayField:"",attributedProductsPriceRange:"",attributedProductsPriceRangeEx:"",attributedProductsPriceRangeInc:"",rrpAttributedProductsPriceRange:"",rrpAttributedProductsPriceRangeEx:"",rrpAttributedProductsPriceRangeInc:"",disableBackOrderForUnavailableProductVariants:!1},initialise:function(t,i){var r=this,u=r.options,f=r.viewModel,s=n(r.element).attr("data-quick-view-popup-id"),h=n(r.element).attr("data-product-code"),e,o;n.cv.css.bind(n.cv.css.eventnames.orderChanged,n.proxy(function(){f.getQuantityInCart()},r));s&&(i.quickViewPopupId=s);h&&(i.productCode=h);n.type(u.afterpayMinPrice)==="string"&&(u.afterpayMinPrice=parseFloat(u.afterpayMinPrice),i.afterpayMinPrice=u.afterpayMinPrice);n.type(u.afterpayMaxPrice)==="string"&&(u.afterpayMaxPrice=parseFloat(u.afterpayMaxPrice),i.afterpayMaxPrice=u.afterpayMaxPrice);r.translateParameters(t);r._updatePriceBreaksThrottled=_.debounce(function(){f._updatePriceBreaks()},u.multiUpdateThrottleTimeout);e=r.getAllCombinedUomsList();e.length>0&&(o=e[0],f.set(f.getShowUomPrice(o),!0),f.set("selectedUom",o),f._updateSelectedUomInAddProductToOrderTemplate(f.get("selectedUom")));r.options.braintreePayPalExpressEnabled&&f.initBraintreePayPalExpressButton(r.options.braintreePayPalExpressButtonId,r.options.braintreePayPalExpressButtonList,r.options.braintreePayPalExpressButtonsOptions)},getAllCombinedUomsList:function(){var t=this.options.allCombinedUoms;return n.cv.util.hasContent(t)==!1?[]:t.toString().split(",")},addToCart:function(n){var t=this,r=t.viewModel,u=t.options.triggerMessages,i=n===!0||n===!1;return i&&(t.options.triggerMessages=n),r.addToCart().always(function(){i&&(t.options.triggerMessages=u)})},translateParameters:function(t){var i=this;i.options.translationParams.length>0&&n.each(i.options.translationParams.split(","),function(r,u){i.options[u]!=undefined&&i.options[u]!=n(t).data(u)&&(i.options[u]=n(t).data(u))})},getInitialQty:function(){var n=this,i=n.options.showBlankQtyAsDefault?"":n.viewModel&&n.viewModel.defaultQuantity!==-1?n.viewModel.defaultQuantity:n.options.quantity,t=n.options.initialQuantityOverride>0?n.options.initialQuantityOverride:n.options.forceOrderPackQty?n.options.quantity.toString().length>0?i:n.options.packQuantity:i;return t=parseFloat(t),isNaN(t)||t===0?n.options.showBlankQtyAsDefault?"":0:t},_updatePriceBreaksThrottled:n.noop,_getViewModel:function(){var t=this,i={};return t.options.loadViewModelFromVariable?n.cv.util.hasValue(n.cv.css.product.productViewModel)?i=n.cv.css.product.productViewModel:(n.extend(t.options,n.cv.css.product.getWidgetOptionsForProductViewModel()),i=t._getDefaultViewModel(),n.cv.css.product.productViewModel=i):i=t._getDefaultViewModel(),t.clearClonedQuickViewPopup(),i},clearClonedQuickViewPopup:function(){n(".owl-item.cloned .product-quick-view-popup").remove()},_getDefaultViewModel:function(){var a=this,y,v;
11return n.type(a.options.productCode)!=="string"&&(a.options.productCode=a.element.attr("data-product-code")||""),a.options.masterProductCode=a.element.attr("data-master-product-code")||null,y=a.options.braintreePayPalExpressEnabled?n.cv.css.braintree.getBraintreePayPalExpressButtonViewModel():null,v=kendo.observable(n.extend({},a.options,y,{useOrderEntry:a.options.useOrderEntry,isProcessing:!1,isAddingToCart:!1,isAddingToFavourites:!1,isCheckoutWithPayPalExpress:!1,productAlreadyExistsInCart:!1,hasOutOfStockNotify:!1,notifyEmailAddress:"",isWithinZipLimit:!1,isUnderZipLimit:!1,isOverZipLimit:!1,isNoPriceZip:!1,isWithinAfterpayLimit:!1,isUnderAfterpayLimit:!1,isOverAfterpayLimit:!1,isNoPriceAfterpay:!1,isWithinOpenpayLimit:!1,isUnderOpenpayLimit:!1,isOverOpenpayLimit:!1,isNoPriceOpenpay:!1,isWithinPayRightLimit:!1,minQuantity:a.options.minQuantity,priceRRP:a.options.priceRrp,allAttributesRefreshed:!1,resetQty:function(){this.set("quantity",a.getInitialQty())},packQuantityFloat:function(){var t=this,n=parseFloat(t.get("packQuantity"));return isNaN(n)?0:n},showZipPopup:function(t){n.cv.util.showZipPopup(t,a.options.zipType)},showProductQuickViewModal:function(t){var r,i,e,f,u;v.set("isShowingProductQuickViewModal",!0);r="#"+v.get("quickViewPopupId");n.cv.util.setQuickViewTarget(t.currentTarget);i=n(r);e=v.get("productCode");n.fancybox.showLoading();a.viewModel.set("isContentLoading",!0);f=a.viewModel.get("productQuickViewModal");u=n.Deferred();f?(i.html(f),u.resolve()):u=n.cv.css.product.productQuickViewModal({productCode:e}).done(function(n){i.html(n.data);a.viewModel.set("productQuickViewModal",n.data)});u.done(function(){var u,e,f;i.product(a.options);u=i.find("[data-role='productattributegrid']");kendo.unbind(u);u.find(".form-number").each(function(t,i){var u=n(i),r;kendo.unbind(u);r=u.data("kendoNumericTextBox");r!==undefined&&(r.destroy(),r.wrapper.remove())});kendo.init(u);n(r+" input.form-number").each(function(t,i){n(i).closest("[data-role]").hasClass("widget-product-attribute-grid")||n.cv.util.kendoNumericTextBox(i)});n.cv.util.bindKendoWidgets(n(a.element[0]));e=i.parents().find(a.options.productSliderSelector).length>0;e&&(f=i.closest(a.options.productSliderSelector),f.length>0&&n(f[0]).parent().append(i));n.cv.util.productGallery(r+" "+a.options.productGallerySliderSelector);n.fancybox({href:r,topRatio:"0.25",padding:"0",parent:"form:first",beforeShow:function(){n.fancybox.showLoading()},afterShow:function(){n.fancybox.hideLoading();n(r+" img.cv-lazy")&&n.cv.css.trigger(n.cv.css.eventnames.templatedListChanged);var i=n(".fancybox-overlay").find(r);i.html()!==undefined&&i.html().length<10&&(n.fancybox.close(),a.viewModel.showProductQuickViewModal(t))},afterLoad:function(){a.viewModel.set("isContentLoading",!1)},beforeClose:function(){v.set("isShowingProductQuickViewModal",!1)},afterClose:function(){n.fancybox.hideLoading()}})})},campaignCode:n.cv.util.isNullOrWhitespace(a.options.campaignCode)?n.cv.util.queryStringValue("CampaignCode"):a.options.campaignCode,getQuantityInCart:function(){var i=this,r=i.get("productCode"),u=0,t;n.cv.util.isNullOrWhitespace(r)||(t=n.cv.css.localGetCurrentOrderLines(),t&&t.length!==0&&n.each(t,function(n,t){t.StockCode===r&&(u+=t.OrderedQty)}));i.set("quantityInCart",u)},quantityInCartVisible:function(){return this.get("alwaysDisplayQuantityInCartPrompt")||this.get("quantityInCart")>0},qtyOnBackOrderVisible:function(){return this.get("qtyOnBackOrder")>0},viewLivePricingForProduct:function(){var t=this;t.set("isProcessing",!0);n.cv.css.product.getRenderedProductListItemZonedTemplate({productCode:t.get("productCode"),campaignCode:t.get("campaignCode")}).done(function(i){var r,u,f;i.data.Success?(a.destroy(),r=n("<div>"+i.data.Messages[0]+"<\/div>").find(".product").first(),n(a.element).replaceWith(r),u=r.find(a.options.rcQuickViewZoneSelector),u.prepend(a.options.rcQuickViewCloseButtonHtml),r.find(a.options.rcQuickViewSlideToggleSelector).click(function(){u.slideToggle()}),r.addClass("is-quick-view"),u.find(".form-number").each(function(t,i){n.cv.util.kendoNumericTextBox(i)}),kendo.init(r),u.slideToggle(),f={widgetElement:r},n.cv.util.hasValue(i.data.AdditionalData)&&n.cv.util.hasValue(i.data.AdditionalData.SiteTrackerDetails)&&
11(f.productImpressions=i.data.AdditionalData.SiteTrackerDetails),n.cv.css.trigger(n.cv.css.eventnames.quickViewProductLoaded,f)):n.each(i.data.Messages,function(i,r){t.setMessage(r,n.cv.css.messageTypes.error)})}).always(function(){t.set("isProcessing",!1)})},execCommand_outOfStockNotify:function(){var t=this,i;t.get("hasOutOfStockNotify")?(i={productCodes:t.get("productCode"),onChange:function(n){t.set("hasOutOfStockNotify",n)},data:null},n.cv.css.trigger(n.cv.css.eventnames.stockAvailabilityNotifyRemove,i)):(i={productCodes:t.get("productCode"),hasOutOfStockNotify:t.get("hasOutOfStockNotify"),onChange:function(n){t.set("hasOutOfStockNotify",n)},data:null},n.cv.css.trigger(n.cv.css.eventnames.stockAvailabilityNotifyShowPopup,i))},enableOrderLineNotes:function(){return this.get("useOrderEntry")&&a.options.enableOrderLineNotes},useCostCentres:function(){return this.get("useOrderEntry")&&a.options.useCostCentres},_triggerChangesForInitialValues:function(){n.cv.util.isNullOrWhitespace(a.options.selectedUom)&&(this.set("selectedUom",a.options.selectedUom),this._updateSelectedUomInAddProductToOrderTemplate(this.get("selectedUom")));a.options.showAltPrice===!0&&this.set("showAltPrice",a.options.showAltPrice)},_setInitialQuantities:function(){var n=a.getInitialQty();this.set("quantity",n);this.set("lastValidQuantity",n)},quantity:0,lastValidQuantity:0,allowOrderEntryForProduct:a.options.allowOrderEntryForProduct,isFavourite:a.options.isFavourite,addProductKeyUp:function(t){t.which==13&&(t.preventDefault(),t.stopPropagation(),this.addToCart(),a.options.blurElementOnKeyup&&n(t.target).blur())},masterProductCode:n.cv.util.hasValue(a.options.masterProductCode)?a.options.masterProductCode:a.options.productCode,productCode:a.options.productCode,productData:a.options.productData[0],_setProductData:function(){var t=this,r=a.options.productData,i=n.cv.util.hasValue(r,"[0]")?r[0]:n.cv.util.hasValue(r)?r:"{}",u;a.options.loadProductDataFromVariable&&(u=n.cv.css.product.getCurrent(),i=n.cv.util.hasValue(u)?u:i);i=t._ensureProductData(i);t.set("productData",i);t.updatePayLaterMessages();i.Availability===StockAvailability.NotApplicable?t.set("masterProductProductData",i):n.cv.util.hasContent(i.productCode)&&t.set("productCode",i.productCode);i.Price!=undefined&&(t.setZipSummaryVisibility(t.thirdPartyInstallmentPrice(),!1),t.setAfterpaySummaryVisibility(t.thirdPartyInstallmentPrice(!1),!1),t.setOpenpaySummaryVisibility(t.thirdPartyInstallmentPrice(!1),!1),t.setPayRightSummaryVisibility(t.thirdPartyInstallmentPrice(),!1))},_ensureProductData:function(t){var i=this;return n.cv.util.isDeclared(t.productCode)||(t.productCode=t.ProductCode),n.cv.util.isDeclared(t.masterProductCode)||(t.masterProductCode=i.get("masterProductCode")),t.IsMasterProduct=i.isMasterProduct(),t.IsAttributedProductCode=i.get("IsAttributedProductCode"),t},setZipSummaryVisibility:function(n,t){var i=this;i.updatePaymentSummaryVisibility(n,t,a.options.isZipSummary,"isWithinZipLimit","isUnderZipLimit","isOverZipLimit","isNoPriceZip",a.options.zipMinPrice,a.options.zipMaxPrice)},setAfterpaySummaryVisibility:function(n,t){var i=this;i.updatePaymentSummaryVisibility(n,t,a.options.isAfterpaySummary,"isWithinAfterpayLimit","isUnderAfterpayLimit","isOverAfterpayLimit","isNoPriceAfterpay",a.options.afterpayMinPrice,a.options.afterpayMaxPrice)},setOpenpaySummaryVisibility:function(n,t){var i=this;i.updatePaymentSummaryVisibility(n,t,a.options.isOpenpaySummary,"isWithinOpenpayLimit","isUnderOpenpayLimit","isOverOpenpayLimit","isNoPriceOpenpay",a.options.openpayMinPrice,a.options.openpayMaxPrice)},setPayRightSummaryVisibility:function(n,t){var i=this;i.updatePaymentSummaryVisibility(n,t,a.options.isPayRightSummary,"isWithinPayRightLimit","","","",a.options.payRightMinPrice,a.options.payRightMaxPrice)},updatePaymentSummaryVisibility:function(n,t,i,r,u,f,e,o,s){var h=this;if(i!==!1||a.options.isMainProductPurchaseDetailsInstance!==!1){if(t){h.setVmField(r,!1);h.setVmField(u,!1);h.setVmField(f,!1);h.setVmField(e,!1);return}var c=n>0,l=c&&n<o,v=c&&n>s,y=l||v,p=c&&y==!1;h.setVmField(e,c==!1);h.setVmField(r,p);h.setVmField(u,l);h.setVmField(f,v)}},setVmField:function(t,i){n.cv.util.hasContent(t)&&this.set(t,i)},_updateUiFromProductData:function(){var n=this,t;n.isMasterProduct()&&n.get("forceOrderPackQty")&&(t=n.get("productData.PackQty"),n.set("packQuantity",t),n.get("quantity")%t!=0&&n.setQuantity(t));n._updateAvailability();n._updateAllowOrderEntry();n._updateQtyOnBackOrder();n._updateUnitOfMeasure();n._updateUserFavouritesProductDisplayIcon();n.set("forceNextQtyCheck",!0);n._updatePriceBreaks(!1)},populateProductData:function(t){t===void 0&&(t=!0);
11var i=this,u={productCode:i.get("productCode"),validMode:1,isAttributeSelection:i.isMasterProduct()&&i.isAllAttributesSelected()},r=n.Deferred();return t?(r=a.options.hideFooterZone?n.cv.css.product.getProductDetailNoPrices(u):n.cv.css.product.getProductDetail(u),r.done(function(n){var t,r;n.data.length>0&&(t=i._ensureProductData(n.data[0]),t.IsQuantityBreaksLiveOrDefaultSuppressed&&(r=i.get("productData").QuantityBreaksLiveOrDefault,t.QuantityBreaksLiveOrDefault=r),i.set("productData",t),i.updatePayLaterMessages(),t.Price!=undefined&&(i.setZipSummaryVisibility(i.thirdPartyInstallmentPrice(),!1),i.setAfterpaySummaryVisibility(i.thirdPartyInstallmentPrice(!1),!1),i.setOpenpaySummaryVisibility(i.thirdPartyInstallmentPrice(!1),!1),i.setPayRightSummaryVisibility(i.thirdPartyInstallmentPrice(),!1)));i._updateUiFromProductData()})):(i.set("productData",i.masterProductProductData),i._updateUiFromProductData(),r.resolve()),r},stockAvailability:StockAvailability.NotApplicable,showInStock:function(){var n=this;return n.get("stockAvailability")==StockAvailability.InStock},showLowStock:function(){var n=this;return n.get("stockAvailability")==StockAvailability.LowStock},showOutOfStock:function(){var n=this;return n.get("stockAvailability")==StockAvailability.OutOfStock},showAttributedProductAvailabilityPrompt:function(){var n=this;return n.get("stockAvailability")==StockAvailability.NotApplicable},availabilityClass:function(){var t=this,i=t.get("stockAvailability"),n,r=t.isAllAttributesSelected()===!1;if(t.isMasterProduct()&&r)n=o;else switch(i){case StockAvailability.InStock:n=h;break;case StockAvailability.LowStock:n=c;break;case StockAvailability.OutOfStock:n=s;break;default:n=o}return l+" "+n},pricePerUnit:n.cv.util.isNullOrWhitespace(a.options.customerShowTaxAs)?a.options.nettPriceForOne:a.options.customerShowTaxAs==="inc"?a.options.nettPriceForOneInc:a.options.nettPriceForOneEx,extendedPrice:isNaN(a.options.quantity)||isNaN(a.options.priceForOne.toString().replace("$",""))?0:a.options.quantity*a.options.priceForOne.toString().replace("$",""),lastCheckedQty:0,forceNextQtyCheck:!1,_setQuantityBreakData:function(n,t){var i=this;n=isNaN(n)?0:parseFloat(n);i.set("quantityBreaksData",{NettPrice:n,QuantityBreaksLiveOrDefault:t})},quantityBreaksData:{},hasQuantityBreaks:function(){var i=this,n=i.get("productData"),t=i.get("quantityBreaksData");return t&&t.QuantityBreaksLiveOrDefault&&t.QuantityBreaksLiveOrDefault.length>0||n&&n.QuantityBreaksLiveOrDefault&&n.QuantityBreaksLiveOrDefault.length>0},showPickupSelectProductAttributes:a.options.showPickupSelectProductAttributes,showPickupAvailable:a.options.showPickupAvailable,showPickupAvailableBackOrder:a.options.showPickupAvailableBackOrder,showPickupIndentProductCall:a.options.showPickupIndentProductCall,showPickupLowStockCall:a.options.showPickupLowStockCall,showPickupStoreNotSet:a.options.showPickupStoreNotSet,showPickupUnavailable:a.options.showPickupUnavailable,showDeliverySelectProductAttributes:a.options.showDeliverySelectProductAttributes,showDeliveryAvailable:a.options.showDeliveryAvailable,showDeliveryAvailableBackOrder:a.options.showDeliveryAvailableBackOrder,showDeliveryIndentProductCall:a.options.showDeliveryIndentProductCall,showDeliveryUnavailable:a.options.showDeliveryUnavailable,showDeliveryStoreNotSet:a.options.showDeliveryStoreNotSet,showDeliveryAvailableTwoToFiveDays:a.options.showDeliveryAvailableTwoToFiveDays,showDeliveryAvailableThreeToSixDays:a.options.showDeliveryAvailableThreeToSixDays,showDeliveryAvailableFiveToSevenDays:a.options.showDeliveryAvailableFiveToSevenDays,showDeliverySpecialOrder:a.options.showDeliverySpecialOrder,showEmailDelivery:a.options.showEmailDelivery,nearbyStoreLocations:[],noNearbyStoreLocations:!1,_updateAvailability:function(t){var r=this,i;t=n.cv.util.hasValue(t)?t:!0;i=r.get("productData");i&&!n.cv.util.isNullOrWhitespace(i.ProductCode)&&(r._setClickAndCollectStoreAvailabilityIcons(),a.options.isListenerWidget||a.options.loadProductDataFromVariable&&n.cv.css.product.setCurrent(i),r.set("stockAvailability",i.Availability))},_updateUnitOfMeasure:function(){var i=this,t=i.get("productData"),r=[],u=!1;t&&!n.cv.util.isNullOrWhitespace(t.ProductCode)&&(u=t.UOMOnlyDisplayAltUnit&&!n.cv.util.isNullOrWhitespace(t.AltUnitDescription),u||r.push({UOMValue:t.UnitDescRaw,UOMText:t.UnitDescriptionRaw}),n.cv.util.isNullOrWhitespace(t.AltUnitDescription)||r.push({UOMValue:t.AltUnitDesc,UOMText:t.AltUnitDescription}),i.set("unitOfMeasureOptions",new kendo.data.ObservableArray(r)),i.set("selectedUom",r[0].UOMValue),i._updateSelectedUomInAddProductToOrderTemplate(i.get("selectedUom")),i.set("showAltPrice",!1))},_updateAllowOrderEntry:function(){var i=this,t=i.get("productData"),r;t&&!n.cv.util.isNullOrWhitespace(t.ProductCode)&&(r=t.AllowOrderEntryForProduct,i.set("allowOrderEntryForProduct",r))},_updateUserFavouritesProductDisplayIcon:function(){var i=this,t=i.get("productData");t&&!n.cv.util.isNullOrWhitespace(t.ProductCode)&&i.set("isFavourite",t.IsInUserFavourites)},_updateQtyOnBackOrder:function(){var i=this,t=i.get("productData");t&&n.cv.util.hasValue(t.QtyOnBackOrderForCustomer)&&i.set("qtyOnBackOrder",t.QtyOnBackOrderForCustomer)},_setClickAndCollectStoreAvailabilityIcons:function(){var n,t;if(a.options.enableStoreAvailabilityClickAndCollect&&(n=this,t=n.get("productData"),t!==undefined)){var i=t.GetDeliveryOptionClickAndCollectAsString,u=t.GetDeliveryOptionTransferZoneClickAndCollectAsString,r=t.GetPickupOptionClickAndCollectAsString;if(i==="EmailOnly"||r==="EmailOnly"?(n.set("showEmailDelivery",!0),n.set("showDeliverySelectProductAttributes",!1),n.set("showDeliveryAvailable",!1),n.set("showDeliveryIndentProductCall",!1),n.set("showDeliveryUnavailable",!1),n.set("showDeliveryAvailableBackOrder",!1),n.set("showDeliveryStoreNotSet",!1),n.set("showPickupSelectProductAttributes",!1),n.set("showPickupAvailable",!1),n.set("showPickupIndentProductCall",!1),n.set("showPickupLowStockCall",!1),n.set("showPickupStoreNotSet",!1),n.set("showPickupUnavailable",!1),n.set("showPickupAvailableBackOrder",!1)):n.set("showEmailDelivery",!1),a.options.storeAvailClickAndCollectDeliveryDisplayMode==="Standard")switch(i){case"StoreNotSet":n.set("showDeliverySelectProductAttributes",!1);n.set("showDeliveryAvailable",!1);n.set("showDeliveryIndentProductCall",!1);n.set("showDeliveryUnavailable",!1);n.set("showDeliveryAvailableBackOrder",!1);n.set("showDeliveryStoreNotSet",!0);break;case"SelectProductAttributes":n.set("showDeliverySelectProductAttributes",!0);n.set("showDeliveryAvailable",!1);n.set("showDeliveryIndentProductCall",!1);n.set("showDeliveryUnavailable",!1);n.set("showDeliveryAvailableBackOrder",!1);n.set("showDeliveryStoreNotSet",!1);break;case"Available":n.set("showDeliverySelectProductAttributes",!1);n.set("showDeliveryAvailable",!0);n.set("showDeliveryIndentProductCall",!1);n.set("showDeliveryUnavailable",!1);n.set("showDeliveryAvailableBackOrder",!1);n.set("showDeliveryStoreNotSet",!1);break;case"AvailableBackOrder":n.set("showDeliverySelectProductAttributes",!1);n.set("showDeliveryAvailable",!1);n.set("showDeliveryIndentProductCall",!1);n.set("showDeliveryUnavailable",!1);n.set("showDeliveryAvailableBackOrder",!0);n.set("showDeliveryStoreNotSet",!1);break;case"CallToOrderIndentProduct":n.set("showDeliverySelectProductAttributes",!1);n.set("showDeliveryAvailable",!1);n.set("showDeliveryIndentProductCall",!0);n.set("showDeliveryUnavailable",!1);n.set("showDeliveryAvailableBackOrder",!1);n.set("showDeliveryStoreNotSet",!1);break;case"Unavailable":n.set("showDeliverySelectProductAttributes",!1);n.set("showDeliveryAvailable",!1);n.set("showDeliveryIndentProductCall",!1);n.set("showDeliveryUnavailable",!0);n.set("showDeliveryAvailableBackOrder",!1);n.set("showDeliveryStoreNotSet",!1);break;case"NotApplicable":n.set("showDeliverySelectProductAttributes",!1);n.set("showDeliveryAvailable",!1);n.set("showDeliveryIndentProductCall",!1);n.set("showDeliveryUnavailable",!1);n.set("showDeliveryAvailableBackOrder",!1);n.set("showDeliveryStoreNotSet",!1)}else switch(u){case"SelectProductAttributes":n.set("showDeliverySelectProductAttributes",!0);n.set("showDeliveryAvailable",!1);n.set("showDeliveryAvailableTwoToFiveDays",!1);n.set("showDeliveryAvailableThreeToSixDays",!1);n.set("showDeliveryAvailableFiveToSevenDays",!1);n.set("showDeliverySpecialOrder",!1);n.set("showDeliveryUnavailable",!1);break;case"Available":n.set("showDeliverySelectProductAttributes",!1);n.set("showDeliveryAvailable",!0);n.set("showDeliveryAvailableTwoToFiveDays",!1);n.set("showDeliveryAvailableThreeToSixDays",!1);n.set("showDeliveryAvailableFiveToSevenDays",!1);n.set("showDeliverySpecialOrder",!1);n.set("showDeliveryUnavailable",!1);break;case"TwoToFiveDays":n.set("showDeliverySelectProductAttributes",!1);n.set("showDeliveryAvailable",!1);n.set("showDeliveryAvailableTwoToFiveDays",!0);n.set("showDeliveryAvailableThreeToSixDays",!1);n.set("showDeliveryAvailableFiveToSevenDays",!1);n.set("showDeliverySpecialOrder",!1);n.set("showDeliveryUnavailable",!1);break;case"ThreeToSixDays":n.set("showDeliverySelectProductAttributes",!1);n.set("showDeliveryAvailable",!1);n.set("showDeliveryAvailableTwoToFiveDays",!1);n.set("showDeliveryAvailableThreeToSixDays",!0);n.set("showDeliveryAvailableFiveToSevenDays",!1);n.set("showDeliverySpecialOrder",!1);n.set("showDeliveryUnavailable",!1);break;case"FiveToSevenDays":n.set("showDeliverySelectProductAttributes",!1);n.set("showDeliveryAvailable",!1);n.set("showDeliveryAvailableTwoToFiveDays",!1);n.set("showDeliveryAvailableThreeToSixDays",!1);n.set("showDeliveryAvailableFiveToSevenDays",!0);n.set("showDeliverySpecialOrder",!1);n.set("showDeliveryUnavailable",!1);break;case"SpecialOrder":n.set("showDeliverySelectProductAttributes",!1);n.set("showDeliveryAvailable",!1);n.set("showDeliveryAvailableTwoToFiveDays",!1);n.set("showDeliveryAvailableThreeToSixDays",!1);n.set("showDeliveryAvailableFiveToSevenDays",!1);n.set("showDeliverySpecialOrder",!0);n.set("showDeliveryUnavailable",!1);break;case"Unavailable":case"PickupOnly":n.set("showDeliverySelectProductAttributes",!1);n.set("showDeliveryAvailable",!1);n.set("showDeliveryAvailableTwoToFiveDays",!1);n.set("showDeliveryAvailableThreeToSixDays",!1);n.set("showDeliveryAvailableFiveToSevenDays",!1);n.set("showDeliverySpecialOrder",!1);n.set("showDeliveryUnavailable",!0);break;case"NotApplicable":n.set("showDeliverySelectProductAttributes",!1);n.set("showDeliveryAvailable",!1);n.set("showDeliveryAvailableTwoToFiveDays",!1);n.set("showDeliveryAvailableThreeToSixDays",!1);n.set("showDeliveryAvailableFiveToSevenDays",!1);n.set("showDeliverySpecialOrder",!1);n.set("showDeliveryUnavailable",!1)}switch(r){case"SelectProductAttributes":n.set("showPickupSelectProductAttributes",!0);n.set("showPickupAvailable",!1);n.set("showPickupIndentProductCall",!1);n.set("showPickupLowStockCall",!1);n.set("showPickupStoreNotSet",!1);n.set("showPickupUnavailable",!1);n.set("showPickupAvailableBackOrder",!1);break;case"Available":n.set("showPickupSelectProductAttributes",!1);n.set("showPickupAvailable",!0);n.set("showPickupIndentProductCall",!1);n.set("showPickupLowStockCall",!1);n.set("showPickupStoreNotSet",!1);n.set("showPickupUnavailable",!1);n.set("showPickupAvailableBackOrder",!1);break;case"AvailableBackOrder":n.set("showPickupSelectProductAttributes",!1);n.set("showPickupAvailable",!1);n.set("showPickupIndentProductCall",!1);n.set("showPickupLowStockCall",!1);n.set("showPickupStoreNotSet",!1);n.set("showPickupUnavailable",!1);n.set("showPickupAvailableBackOrder",!0);break;case"CallToOrderIndentProduct":n.set("showPickupSelectProductAttributes",!1);n.set("showPickupAvailable",!1);n.set("showPickupIndentProductCall",!0);n.set("showPickupLowStockCall",!1);n.set("showPickupStoreNotSet",!1);n.set("showPickupUnavailable",!1);n.set("showPickupAvailableBackOrder",!1);break;case"CallStoreLowStock":n.set("showPickupSelectProductAttributes",!1);n.set("showPickupAvailable",!1);n.set("showPickupIndentProductCall",!1);n.set("showPickupLowStockCall",!0);n.set("showPickupStoreNotSet",!1);n.set("showPickupUnavailable",!1);n.set("showPickupAvailableBackOrder",!1);break;case"StoreNotSet":n.set("showPickupSelectProductAttributes",!1);n.set("showPickupAvailable",!1);n.set("showPickupIndentProductCall",!1);n.set("showPickupLowStockCall",!1);n.set("showPickupStoreNotSet",!0);n.set("showPickupUnavailable",!1);n.set("showPickupAvailableBackOrder",!1);break;case"Unavailable":n.set("showPickupSelectProductAttributes",!1);n.set("showPickupAvailable",!1);n.set("showPickupIndentProductCall",!1);n.set("showPickupLowStockCall",!1);n.set("showPickupStoreNotSet",!1);n.set("showPickupUnavailable",!0);n.set("showPickupAvailableBackOrder",!1)}}},getDataView:function(t){var i=[];return n.each(t,function(t,r){r.index=t;var u=n.cv.util.getFieldItemData(r);i.push(u)}),i},findNearestPickupStores:function(){var t=this,r=t.get("productC
11ode"),u=a.options.checkNearbyStoresPickupAvailMaximumStores,i="";return t.set("isProcessing",!0),t.set("nearbyStoreLocations",[]),t.set("noNearbyStoreLocations",!1),n.cv.css.product.findNearestPickupStoresForProduct({productCode:r,numberOfStores:u,includeCurrentStore:a.options.includeCurrentStoreInNearbyStoresAvailCheck}).done(function(r){r.data?r.data.length>0?(n.each(r.data,function(n,i){i.StoreLocation.StoreLocationDetailsFieldData&&(i.StoreLocation.StoreLocationDetailsFieldData=t.getDataView(i.StoreLocation.StoreLocationDetailsFieldData))}),t.set("nearbyStoreLocations",r.data)):t.set("noNearbyStoreLocations",!0):(i=r.errorMessage!=null?r.errorMessage:a.options.textProductErrorCheckingNearbyStoresAvail,t.setMessage(i,n.cv.css.messageTypes.error));t.set("isProcessing",!1);n.fancybox.update()}),!0},_setExtendedPrice:function(){var t=this,r=t.get("pricePerUnit").toString().replace("$",""),u=t.get("quantity"),i=0;i=isNaN(u)||isNaN(r)?0:u*parseFloat(r);t.set("extendedPrice",i);n.cv.css.trigger(n.cv.css.eventnames.productExtendedPriceUpdated,{productCode:t.get("productCode"),extendedPrice:i})},_getPriceFromQuantityBreaks:function(t){var e=this,r=e.get("quantityBreaksData").QuantityBreaksLiveOrDefault,u,f,i;if(!n.cv.util.hasValue(r)||r.length===0){if(u=e.get("productData"),!n.cv.util.hasValue(u)||!n.cv.util.hasValue(u.QuantityBreaksLiveOrDefault))return null;r=u.QuantityBreaksLiveOrDefault}return f=null,i=_.find(r,function(n){return n.BreakEnd>=t||n.BreakEnd===-1}),n.cv.util.hasValue(i)&&n.cv.util.hasValue(i.NettPrice)&&(f=n.cv.util.isNullOrWhitespace(a.options.customerShowTaxAs)?i.NettPrice:a.options.customerShowTaxAs==="inc"?i.NettPriceInc:i.NettPriceEx),f},_productCodeCheckedAndNoBreaks:!1,_updatePriceBreaks:function(t){var i,r,u,f;if(t===void 0&&(t=!0),i=this,r=i.get("quantity"),r!==i.get("lastCheckedQty")||i.get("forceNextQtyCheck")!==!1){if(i.set("lastCheckedQty",r),i.get("_productCodeCheckedAndNoBreaks")){i._setExtendedPrice();return}if(u=i._getPriceFromQuantityBreaks(r),n.cv.util.hasValue(u)){i.set("pricePerUnit",u);i._setExtendedPrice();return}if(t===!1){i._setExtendedPrice();return}f=i.packQuantityFloat();n.cv.css.product.getPriceForQty({productCode:i.get("productCode"),quantity:r===""?i.get("forceOrderPackQty")&&f!==0?f:1:r,includeQuantityBreaks:!0}).done(function(t){n.cv.util.hasValue(t.data.QuantityBreakInformation)||i.set("_productCodeCheckedAndNoBreaks",!0);var r=n.cv.util.isNullOrWhitespace(a.options.customerShowTaxAs)?t.data.NettPriceForOne:a.options.customerShowTaxAs==="inc"?t.data.NettPriceForOneInc:t.data.NettPriceForOneEx;i._setQuantityBreakData(r,t.data.QuantityBreakInformation);i.set("pricePerUnit",parseFloat(r));i._setExtendedPrice()})}},updatePriceBreaks:function(){a._updatePriceBreaksThrottled()},getQuantity:function(){var n=this;return n.get("quantity")},setQuantity:function(n){var t=this;t.set("quantity",n)},checkMasterProductAndAllOptionsSelected:function(){var t=this;return t.isMasterProduct()&&n.cv.util.isNullOrWhitespace(t.whseCode)&&t.isAllAttributesSelected()===!1?t.pleaseSelectAttributeText().length>0?t.pleaseSelectAttributeText():a.options.defaultPleaseSelectAttribute:null},deliveryDateErrorMsg:"",recipientsNameErrorMsg:"",recipientsEmailErrorMsg:"",sendersNameErrorMsg:"",sendersEmailErrorMsg:"",giftCardMessageErrorMsg:"",isDeliveryDateValid:function(){return n.cv.util.isNullOrWhitespace(this.get("deliveryDateErrorMsg"))},isRecipientsNameValid:function(){return n.cv.util.isNullOrWhitespace(this.get("recipientsNameErrorMsg"))},isRecipientsEmailValid:function(){return n.cv.util.isNullOrWhitespace(this.get("recipientsEmailErrorMsg"))},isSendersNameValid:function(){return n.cv.util.isNullOrWhitespace(this.get("sendersNameErrorMsg"))},isSendersEmailValid:function(){return n.cv.util.isNullOrWhitespace(this.get("sendersEmailErrorMsg"))},isGiftCardMessageValid:function(){return n.cv.util.isNullOrWhitespace(this.get("giftCardMessageErrorMsg"))},checkGiveXGiftCardAllOptionsSelectedAndSetExtendedAttributes:function(){var t,u,f,i,r,e;return a.options.isGivexGiftCard===!1?null:(t=this,t.set("deliveryDateErrorMsg",""),t.set("recipientsNameErrorMsg",""),t.set("recipientsEmailErrorMsg",""),t.set("sendersNameErrorMsg",""),t.set("sendersEmailErrorMsg",""),t.set("giftCardMessageErrorMsg",""),n.cv.util.isNullOrWhitespace(t.deliveryDate))?(i=a.options.deliveryDateIsRequiredErrorMsg,t.set("deliveryDateErrorMsg",i),i):(u=n.cv.util.dates.format(new Date,"yyyy-MM-dd"),f=n.cv.util.dates.format(t.deliveryDate,"yyyy-MM-dd"),n.cv.util.dates.compare(f,u)<0)?(i=a.options.deliveryDateInPastErrorMsg,t.set("deliveryDateErrorMsg",i),i):n.cv.util.isNullOrWhitespace(t.recipientsName)?(i=a.options.recipientsNameIsRequiredErrorMsg,t.set("recipientsNameErrorMsg",i),i):n.cv.util.isNullOrWhitespace(t.recipientsEmail)?(i=a.options.recipientsEmailIsRequiredErrorMsg,t.set("recipientsEmailErrorMsg",i),i):n.cv.util.validateField(t.recipientsEmail,"email")===!1?(i=a.options.recipientsEmailInvalidErrorMsg,t.set("recipientsEmailErrorMsg",i),i):n.cv.util.isNullOrWhitespace(t.sendersName)?(i=a.options.sendersNameIsRequiredErrorMsg,t.set("sendersNameErrorMsg",i),i):n.cv.util.isNullOrWhitespace(t.sendersEmail)?(i=a.options.sendersEmailIsRequiredErrorMsg,t.set("sendersEmailErrorMsg",i),i):n.cv.util.validateField(t.sendersEmail,"email")===!1?(i=a.options.sendersEmailInvalidErrorMsg,t.set("sendersEmailErrorMsg",i),i):n.cv.util.isNullOrWhitespace(t.giftCardMessage)?(i=a.options.messageIsRequiredErrorMsg,t.set("giftCardMessageErrorMsg",i),i):(r=a.options.extendedAttributesDelimiter[0],e=n.cv.util.dates.format(t.deliveryDate,"yyyy-MM-dd"),t.set("recipientsName",n.cv.util.removeDelimitersFromString(t.re
11cipientsName,a.options.extendedAttributesDelimiter)),t.set("recipientsEmail",n.cv.util.removeDelimitersFromString(t.recipientsEmail,a.options.extendedAttributesDelimiter)),t.set("sendersName",n.cv.util.removeDelimitersFromString(t.sendersName,a.options.extendedAttributesDelimiter)),t.set("sendersEmail",n.cv.util.removeDelimitersFromString(t.sendersEmail,a.options.extendedAttributesDelimiter)),t.set("giftCardMessage",n.cv.util.removeDelimitersFromString(t.giftCardMessage,a.options.extendedAttributesDelimiter)),t.set("extendedAttributes",e+r+t.recipientsName+r+t.recipientsEmail+r+t.sendersName+r+t.sendersEmail+r+t.giftCardMessage),t.set("noteIsExtendedLineDescription",!1),null)},increaseQty:function(){var t=this,i=t.checkMasterProductAndAllOptionsSelected();if(n.cv.util.hasValue(i)){t.setMessage(i,n.cv.css.messageTypes.error);return}n.cv.util.kendoNumericTextBoxIncrease(this,undefined,undefined,t.get("minQuantity"));a.options.triggerGetPriceOnQtyChange&&this.updatePriceBreaks()},decreaseQty:function(){var t=this,i=t.checkMasterProductAndAllOptionsSelected();if(n.cv.util.hasValue(i)){t.setMessage(i,n.cv.css.messageTypes.error);return}n.cv.util.kendoNumericTextBoxDecrease(t,t.get("minQuantity"));a.options.triggerGetPriceOnQtyChange&&this.updatePriceBreaks()},isMasterProduct:function(){var n=this;return n.get("attributedProductList")!=null&&n.get("attributedProductList").length>0},productAttributesHasBeenInit:!1,currentProductAttributesLocal:[],currentProductAttributes:function(){var t=this,u=t.get("attributedProductList"),r,o,i,h,f,s,c;if(t.get("productAttributesHasBeenInit")==!1){t.set("productAttributesHasBeenInit",!0);var l=[],v=0,e=!0;if(t.isMasterProduct()&&u.length>0){r=u[0][5].HasTextButtonOrThumbnailButton==="true";t.set("hasTextButtonOrThumbnailButton",r);r&&(t.set("isProcessing",!0),n.cv.css.product.getAllAttributeCombinations({productCode:t.get("productCode")}).done(function(t){var r,i;if(n.cv.util.hasValue(t,t.data)&&t.data.length>0)for(n.cv.css.trigger(n.cv.css.eventnames.allAttributeCombinationsLoaded,t.data),r=function(i){var r=_.find(u,function(n){return n[0]===t.data[i].AttributedProductProduct[0].ProductCode});n.cv.util.hasValue(r)&&(r[5].AvailableQty=t.data[i].AttributedProductProduct[0].AvailableQty,r[5].NettPrice=t.data[i].AttributedProductProduct[0].NettPrice,r[5].NettPriceForOne=t.data[i].AttributedProductProduct[0].NettPriceForOne,r[5].NettPriceForOneEx=t.data[i].AttributedProductProduct[0].NettPriceForOneEx,r[5].NettPriceForOneInc=t.data[i].AttributedProductProduct[0].NettPriceForOneInc,r[5].RRPPriceForOne=t.data[i].AttributedProductProduct[0].RRPPriceForOne,r[5].RRPPriceForOneInc=t.data[i].AttributedProductProduct[0].RRPPriceForOneInc,r[5].RRPPriceForOneEx=t.data[i].AttributedProductProduct[0].RRPPriceForOneEx,r[5].RRPPriceFromFirst=t.data[i].AttributedProductProduct[0].RRPPriceFromFirst,r[5].RRPPriceFromFirstInc=t.data[i].AttributedProductProduct[0].RRPPriceFromFirstInc,r[5].RRPPriceFromFirstEx=t.data[i].AttributedProductProduct[0].RRPPriceFromFirstEx,r[5].RRPPriceFromDefault=t.data[i].AttributedProductProduct[0].RRPPriceFromDefault,r[5].RRPPriceFromDefaultInc=t.data[i].AttributedProductProduct[0].RRPPriceFromDefaultInc,r[5].RRPPriceFromDefaultEx=t.data[i].AttributedProductProduct[0].RRPPriceFromDefaultEx)},i=0;i<t.data.length;i++)r(i);a.viewModel.setAttributedProductsPriceRange()}).always(function(){t.set("isProcessing",!1)}));for(o in u[0][2])i=o.split("_")[1],h=i==="D",l.push({nameForDisplay:o.split("_")[0],name:o,val:"",index:v,isSelect:h,showRadio:e&&i==="R",showTextButton:i==="T",showThumbnailButton:i==="N",showSelect:e&&h,showPleaseSelect:i==="D"||i==="R"?!e:!1,hasTextButtonOrThumbnailButton:r,updateShowSettings:function(){var t=this,r=a.viewModel.nextEmptyAttribute(),i=n.cv.util.hasValue(r)===!1||r.index>=t.index||r.index<t.index&&(t.showTextButton||t.showThumbnailButton);t.set("showPleaseSelect",!i);t.isSelect===!0?t.set("showSelect",i):t.showTextButton===!0?t.set("showTextButton",i):t.showThumbnailButton===!0?t.set("showThumbnailButton",i):t.set("showRadio",i)},attributeOptionsSource:[],updateAttributeOptionsSource:function(i){var u=this,w=u.parent().parent(),c=w.get("attributedProductList"),it=u.index,y=w.currentProductAttributesLocal,e=[],b=u.isSelect===!0?[kendo.observable({id:"",text:"Please Select",attrName:u.name,img:"",tags:"",noCombo:!1,outOfStock:!1,unavailable:!1})]:[],rt=u.showThumbnailButton===!0,ut=w.get("_tagCombinations"),l,k,s,d,g,p,h,o;if(c){for(l=0;l<c.length;l++){if(k=!1,u.hasTextButtonOrThumbnailButton===!1)for(s=0;s<y.length;s++)y[s].index<it&&y[s].val!==c[l][2][y[s].name]&&(k=!0);d=c[l][2][u.name];_.contains(e,d)||k||e.push(d)}for(g=function(f){var y="",s=n.cv.util.hasValue(i)&&i.length>0,o=!1,a,h,l,p,v;r&&(a=_.find(ut,function(n){return n.option===u.name&&n.tag===e[f]}),n.cv.util.hasValue(a)&&rt&&(y=a.thumbnail),n.cv.util.hasValue(i)&&i.length>0&&(h=c,_.each(i,function(n){h=_.filter(h,function(t){return t[2][n.name]===n.val})}),l=_.filter(h,function(n){return n[2][u.name]===e[f]}),p=t.get("disableBackOrderForUnavailableProductVariants"),n.cv.util.hasValue(l)&&l.length>0?(s=!1,p?(v=_.find(l,function(n){return n[5].AvailableQty>0}),o=(n.cv.util.hasValue(v)&&v.length>0)===!1):o=!1):(s=!0,o=!0)));b.push(kendo.observable({id:e[f],text:e[f],attrName:u.name,img:y,tags:e[f],noCombo:s,outOfStock:o,unavailable:o||s}))},p=0;p<e.length;p++)g(p)}if(u.set("attributeOptionsSource",b),h=_.filter(b,function(n){return n.unavailable===!1&&n.id!==""}),n.cv.util.hasValue(h)&&h.length===1){u.set("val",h[0].id);var nt=a.viewModel,tt=nt.get("_tagCombinations"),v=_.find(tt,function(n){return n.option===h[0].attrName&&n.value===h[0].id});n.cv.util.hasValue(v)&&(v.currentProductAttributes=f,v.allTagCombinations=tt,v.enforceTagOrderComparison=nt.get("enforceTagOrderComparison"),n.cv.css.trigger(n.cv.css.eventnames.productVariantSelected,v))}o=a.viewModel.nextEmptyAttribute(this);n.cv.util.hasValue(o)&&(o.showThumbnailButton===!0||o.showTextButton===!0)?o.attributeOptionsSource.length===0&&o.updateAttributeOptionsSource():n.cv.util.hasValue(o)===!1&&n.cv.util.hasValue(i)&&i.length>0&&_.each(i,function(n){var t=[];t=n.showPleaseSelect||n.showRadio?_.filter(n.attributeOptionsSource,function(t){return t.id!==n.val&&t.id!==""}):_.filter(n.attributeOptionsSource,function(t){return t.id!==n.val});_.each(t,function(n){n.set("noCombo",!0);n.set("unavailable",!0)})})},showImage:!0,onVariantClicked:function(t){var e=this.name,r=t.data.id,u=this,o=a.viewModel,s=o.get("_tagCombinations"),f=_.find(s,function(n){return n.option===u.name&&n.value===r}),i;n.cv.util.hasValue(f)?n.cv.util.hasValue(f.currentProductAttributes)&&(i=_.find(f.currentProductAttributes,function(n){return n.name===e}),n.cv.util.hasValue(i)&&(i.val===r?(i.set("val",""),i.resetAttributeOptionsSource(),t.preventDefault(),t.stopPropagation()):i.val===""&&i.set("val",r))):u.val===""&&u.set("val",r)},resetAttributeOptionsSource:function(){for(var i,r=t.get("currentProductAttributesLocal"),f=[],n=[],u=0;u<r.length;u++)i=r[u],i.val!==""?n.push(i):f.push(i),i.updateAttributeOptionsSource();_.each(f,function(t){t.updateAttributeOptionsSource(n)});n=_.filter(r,function(n){return n.val!==""});n.length>1&&_.each(n,function(t){t.updateAttributeOptionsSource(n)});a.viewModel.setAttributedProductsPriceRange()},updateWidget:function(i){var l;i===void 0&&(i=!0);var e=this,u=a.viewModel,s=u.currentProductAttributesLocal,h=u.get("_tagCombinations"),f=_.find(h,function(n){return n.option===e.name&&n.value===e.val}),c=u.get("masterImageSrc"),o=u.get("masterImageAltTag");n.cv.util.hasValue(f)&&(f.currentProductAttributes=s,n.cv.util.hasContent(f.img)&&(c=(f.referenceType==="IntegratedChild"?u.get("integratedChildImagePath"):"")+f.img,o=n.cv.util.hasContent(f.alt)?f.alt:o),f.allTagCombinations=h,f.enforceTagOrderComparison=u.get("enforceTagOrderComparison"),n.cv.css.trigger(n.cv.css.eventnames.productVariantSelected,f));u.set("imageSrc",c);u.set("imageAltTag",o);r===!1?_.each(s,function(n){if(n.index>e.index){n.set("val","");n.updateAttributeOptionsSource(e);var t=n.attributeOptionsSource;t.length===2&&n.set("val",t[1].id)}n.updateShowSettings()}):this.resetAttributeOptionsSource();i&&u.setProductCodeToAttributedProductCode();l=u.isAllAttributesSelected()&&t.get("IsAttributedProductCode")===!0?t.get("productC
11ode"):"";t.getQuantityInCart();n.cv.css.trigger(n.cv.css.eventnames.allAttributesForProductSelected,l)}}),e=!1,v++;t._createTagCombinations()}for(t.set("currentProductAttributesLocal",l),f=t.get("currentProductAttributesLocal"),s=0;s<f.length;s++)f[s].updateAttributeOptionsSource();c=_.find(u,function(n){return n[1]===!0});n.cv.util.hasValue(c)&&(_.each(f,function(n){n.set("val",c[2][n.name]);n.updateWidget(!1)}),t.setProductCodeToAttributedProductCode());t.get("productData")&&(n.cv.css.trigger(n.cv.css.eventnames.attributedProductSelected,t.get("productData").toJSON()),t._updateUiFromProductData())}return t.get("currentProductAttributesLocal")},_createTagCombinations:function(){for(var r,e,o,f=this,i=f.get("attributedProductList"),u=[],t=0;t<i.length;t++)if(_.isArray(i[t])&&i[t].length>3){r=i[t][2];e=function(f){var l,o,e;if(r.hasOwnProperty(f)&&i[t][3][f.substring(0,f.indexOf("_"))]!=undefined){var s=f.substring(0,f.indexOf("_")),h=r[f],c="";f.indexOf("_N")>-1&&(l=JSON.parse(i[t][5].ProductMedia.replace(/&quot;/g,'"')),o=_.find(l.media,function(n){return n.attribute===s&&n.value===h}),n.cv.util.hasValue(o)&&(c=o.reference));e={option:f,attribute:s,value:h,tag:i[t][3][f.substring(0,f.indexOf("_"))],img:i[t][5].ProductImage,alt:i[t][5].ProductImageAltTag,referenceType:i[t][5].ReferenceType,thumbnail:c};_.where(u,e).length===0&&(e.img!=undefined&&(e.img="/Images/ProductImages/"+(e.referenceType=="IntegratedChild"?"250":"Small")+"/"+e.img.split("\\").pop().split("/").pop()),u.push(e))}};for(o in r)e(o)}f.set("_tagCombinations",u)},_tagCombinations:[],pleaseSelectAttributeText:function(){var i=this,t=i.nextEmptyAttribute();return n.cv.util.hasValue(t)?a.options.pleaseSelectAttributeText.replace("{0}",t.nameForDisplay):""},nextEmptyAttribute:function(t){var i=this.currentProductAttributesLocal;return _.find(i,function(i){return t?i!==t&&n.cv.util.isNullOrWhitespace(i.val):n.cv.util.isNullOrWhitespace(i.val)})},isAllAttributesSelected:function(){return n.cv.util.hasValue(this.nextEmptyAttribute())===!1},clearAllSelections:function(){for(var r,t,u=this,n=u.get("currentProductAttributesLocal"),i=0;i<n.length;i++)r=n[i],r.updateAttributeOptionsSource(),r.set("val","");for(t=0;t<n.length;t++)n[t].updateWidget(!0);u.setAttributedProductsPriceRange()},setAttributedProductsPriceRange:function(){var t=this,o=t.get("attributedProductList"),it=t.currentProductAttributesLocal,rt=t.get("disableBackOrderForUnavailableProductVariants"),s=t.get("attributedProductPriceDisplayField"),h=t.get("rrpAttributedProductPriceDisplayField"),c,u;if((t.set("attributedProductsPriceRange",""),t.set("attributedProductsPriceRangeEx",""),t.set("attributedProductsPriceRangeInc",""),t.set("rrpAttributedProductsPriceRange",""),t.set("rrpAttributedProductsPriceRangeEx",""),t.set("rrpAttributedProductsPriceRangeInc",""),!n.cv.util.isNotDeclaredOrNullOrWhitespace(s)||!n.cv.util.isNotDeclaredOrNullOrWhitespace(h))&&t.isAllAttributesSelected()!==!0&&o&&(c=_.filter(it,function(n){return n.val!==""}),u=o,_.each(c,function(n){u=_.filter(u,function(t){return rt?t[2][n.name]===n.val&&t[5].AvailableQty>0:t[2][n.name]===n.val})}),n.cv.util.hasValue(u))){var f=0,e=0,l="",a="",v="",y="",p="",w="",b="",k="",d="",g="",nt="",tt="",i=s.replace("productData.",""),r=h.replace("productData.","");i=t.removeIncExFromPriceFieldName(i);r=t.removeIncExFromPriceFieldName(r);_.each(u,function(n){var t=parseFloat(n[5].NettPrice);isNaN(t)&&(t=0);(f===0||t<f)&&(f=t,l=n[5][i],v=n[5][i+"Ex"],p=n[5][i+"Inc"],b=n[5][r],d=n[5][r+"Ex"],nt=n[5][r+"Inc"]);(e===0||t>e)&&(e=t,a=n[5][i],y=n[5][i+"Ex"],w=n[5][i+"Inc"],k=n[5][r],g=n[5][r+"Ex"],tt=n[5][r+"Inc"])});e>f&&(t.set("attributedProductsPriceRange",l+" - "+a),t.set("attributedProductsPriceRangeEx",v+" - "+y),t.set("attributedProductsPriceRangeInc",p+" - "+w),t.set("rrpAttributedProductsPriceRange",b+" - "+k),t.set("rrpAttributedProductsPriceRangeEx",d+" - "+g),t.set("rrpAttributedProductsPriceRangeInc",nt+" - "+tt))}},removeIncExFromPriceFieldName:function(n){return n.substring(n.length-2)==="Ex"?n=n.substring(0,n.length-2):n.substring(n.length-3)==="Inc"&&(n=n.substring(0,n.length-3)),n},setProductCodeToAttributedProductCode:function(){var t=this,i,f,r,e,u,o;if(t.isAllAttributesSelected()===!0&&(i=t.get("attributedProductList"),f=t.currentProductAttributesLocal,i))for(r=0;r<i.length;r++){for(e=!0,u=0;u<f.length;u++)if(f[u].val!=i[r][2][f[u].name]){e=!1;break}
11if(e===!0){t.set("productCode",i[r][0]);t.set("IsAttributedProductCode",i[r][5].IsAttributedProductCode==="true");t.populateProductData(!0).done(function(){n.cv.css.trigger(n.cv.css.eventnames.attributedProductSelected,t.get("productData").toJSON())});return}}t.setZipSummaryVisibility(-1,!1);t.setAfterpaySummaryVisibility(-1,!1);t.setOpenpaySummaryVisibility(-1,!0);t.setPayRightSummaryVisibility(-1,!0);t.set("productCode",a.options.productCode);o=n.cv.util.hasValue(t.masterProductProductData)===!1;t.populateProductData(o).done(function(){n.cv.util.hasValue(t.masterProductProductData)===!1&&t.set("masterProductProductData",t.get("productData"));n.cv.css.trigger(n.cv.css.eventnames.attributedProductSelected,t.get("productData").toJSON())})},itemsOnOrder:a.options.itemsOnOrder.toString().length==0?0:isNaN(a.options.itemsOnOrder)?0:a.options.itemsOnOrder,availableQty:a.options.availableQty,orderedMoreThanAvailable:function(){var n=this.get("itemsOnOrder");return n>0?n>this.get("availableQty"):this.getQuantityInCart()>this.get("availableQty")},costCentreCode:a.options.defaultCostCentreCode,productNotes:"",message:"",clearExistingMessages:a.options.clearExistingMessages,triggerMessages:a.options.triggerMessages,setMessage:function(t,i,r){n.cv.util.notify(this,t,i,{triggerMessages:a.options.triggerMessages,source:a.name,consolidationGroup:r})},getProductAddParams:function(){var t=this,n={},i=t.get("productCode"),u=t.get("masterProductCode"),r=a.options.addSelectedAttributeCodeToOrder&&i!==u||a.options.masterProductCode!=null&&a.options.masterProductCode!=a.options.productCode;
11n.productCode=r?i:u;n.quantity=t.get("quantity");n.costCentre=t.get("costCentreCode");n.notes=t.get("productNotes");n.noteIsExtendedLineDescription=a.options.noteIsExtendedLineDescription;n.refreshOrderTimeout=a.options.addToCartRefreshTime;n.uom=t.get("selectedUom");n.campaignCode=t.get("campaignCode");n.gtmPageType=a.options.gtmPageType;n.whseCode=a.options.whseCode;n.extendedAttributes=t.get("extendedAttributes");switch(a.options.attributeProductAddToCartMode){case"Child":this._childAttributes(n,r);break;case"Master":this._masterAttributes(n,r,i)}return n},_childAttributes:function(t,i){var r=this,f=r.get("attributedProductList"),e=f&&n.grep(f,function(n){return n[0]===t.productCode&&n[4]===!0}).length>0,u;!i&&r.get("attributesForProduct")&&r.get("attributesForProduct").length>0?t.attributes=r.get("attributesForProduct").split(";"):e&&(u=[],_.each(r.currentProductAttributes(),function(n){u.push(n.nameForDisplay+":"+n.val)}),t.attributes=u)},_masterAttributes:function(t,i,r){var u=this,f=i?[]:u.get("attributedProductList"),e,o,s;!i&&u.get("attributesForProduct")&&u.get("attributesForProduct").length>0?t.attributes=u.get("attributesForProduct").split(";"):f&&f.length>0&&(e=_.find(f,function(n){var t=n[0];return t===r}),n.cv.util.hasValue(e)&&(o=[],s=e[2],_.each(u.currentProductAttributes(),function(n){var t=n.name,i=s[t];o.push(n.nameForDisplay+":"+i)}),t.attributes=o))},resetDefaults:function(n){var t=this;t.set("itemsOnOrder",parseInt(t.get("itemsOnOrder"))+parseInt(n.quantity));t.set("quantity",n.forceQty||a.getInitialQty());t.set("lastValidQuantity","");t.set("productNotes","");t.set("costCentreCode",a.options.defaultCostCentreCode);t.set("qtyOnBackOrder",a.options.qtyOnBackOrder);t.set("extendedAttributes","");t.set("extendedAttribute","")},triggerAddedToCart:function(i){var r=this,u=n.cv.css.messageTypes.success,f=n.cv.util.hasValue(i.message)?i.message:i,e;a.trigger(t,{productCode:r.get("productCode"),quantity:r.get("quantity")==""?1:r.get("quantity"),msg:f});r.get("redirectToAfterAddToCart")!=!0||r.get("isCheckoutWithPayPalExpress")||n.cv.util.redirect("/"+r.get("ordersPageUrl"),{},!1);a.options.triggerMessages&&(f.length===0?a.options.addToOrderCheckMinQuantityEnabled==!0&&a.options.addToOrderCheckMinQuantityAddOnError==!0&&r.get("quantity")<r.get("productMinQuantity")?r.setMessage(n.cv.util.string.format(a.options.minQuantityEnableAddingOnErrorMessage,r.get("productCode"),r.get("quantity"),r.get("productMinQuantity")),n.cv.css.messageTypes.warning):(e=function(){r.setMessage(a.options.textProductAddedToCart.format(r.get("productCode")),u)},a.options.showWarningWhenProductAlreadyInCart&&r.get("productAlreadyExistsInCart")?n.cv.util.showOverlayMessage(a.options.warningHeaderWhenProductAlreadyInCart,a.options.warningMessageWhenProductAlreadyInCart.replace("{0}",r.get("productCode")),!0,e):e()):(n.cv.util.hasValue(i.result)&&i.result.length>0?n.each(i.result,function(t,i){return n.cv.util.isNullOrWhitespace(i.SubstitutedStockCode)?!0:(u=n.cv.css.messageTypes.info,!1)}):i.message.toLowerCase().indexOf("substituted")>=0&&(u=n.cv.css.messageTypes.info),r.setMessage(f,u,n.cv.util.hasValue(i.consolidationGroup)?i.consolidationGroup:null)));r.getQuantityInCart()},triggerAddToCartFail:function(t){var i=this;a.trigger(r,{productCode:i.get("productCode"),errorMessage:t});i.setMessage(t,n.cv.css.messageTypes.error)},triggerAddedToFavourites:function(t){var r=this;t=typeof t!="undefined"?t:"";a.trigger(i,{productCode:r.get("productCode"),msg:t});r.setMessage(t,n.cv.css.messageTypes.success)},triggerAddToFavouritesFail:function(t){var i=this;a.trigger(u,{productCode:i.get("productCode"),errorMessage:t});i.setMessage(t,n.cv.css.messageTypes.error)},triggerRemoveFavourite:function(t){var i=this;a.trigger(f,{productCode:i.get("productCode"),msg:t});i.setMessage(t,n.cv.css.messageTypes.success);a.options.isUserFavouritesPage&&n.cv.css.trigger(n.cv.css.eventnames.favouriteRemoved)},triggerRemoveFavouriteFail:function(t){var i=this;a.trigger(e,{productCode:i.get("productCode"),errorMessage:t});i.setMessage(t,n.cv.css.messageTypes.error)},isQuantityValid:function(){var n=this,i=!0,t=n.getQuantity();return(isNaN(t)||!a.options.allowDecimals&&t%1!=0||t<=0)&&(i=!1),i?n.set("lastValidQuantity",t):n.setQuantity(n.get("lastValidQuantity")),i},checkoutWithPayPalExpress:function(t){var i=this,r,u;if(i.set("isCheckoutWithPayPalExpress",!0),r=i.checkGiveXGiftCardAllOptionsSelectedAndSetExtendedAttributes(),n.cv.util.hasValue(r)){i.triggerAddToCartFail(r);i.set("isCheckoutWithPayPalExpress",!1);return}a.options.enableStoreAvailabilityClickAndCollect?(i.set("isCheckoutWithPayPalExpress",!1),u={e:t,addToCart:function(r){i.set("isCheckoutWithPayPalExpress",!0);n.cv.util.hasValue(r)&&(i.set("braintreeNonce",r.braintreeNonce),i.set("braintreePayPalExpressPayload",r.braintreePayPalExpressPayload));i.addToCart(t)}
11,validate:function(){return i.validateAddToCart(null)!==!1},getFinalPaymentAmount:function(){return i.getFinalPaymentAmount()},getProductPrice:function(){var n=i.get("productData");return n?n.Price:null}},n.cv.css.trigger(n.cv.css.eventnames.showDeliveryOptionPopup,u)):i.addToCart(t)},validateAddToCart:function(t){var i=this,e=i.checkGiveXGiftCardAllOptionsSelectedAndSetExtendedAttributes(),u,f;if(n.cv.util.hasValue(e))return i.triggerAddToCartFail(e),i.set("isCheckoutWithPayPalExpress",!1),!1;var o=i.packQuantityFloat(),r=i.getProductAddParams(),s=!1,h=1;if(n.cv.util.hasValue(t)&&(u=n(t.currentTarget),u.is("input")&&u.blur(),r.searchId=u.data("searchId"),r.searchPos=u.data("searchPos"),s=u.data("enableIncreaseQuantitiesByUserPreferences"),h=u.data("productAddToCartQuantityByUserPreferences")),e=i.checkMasterProductAndAllOptionsSelected(),n.cv.util.hasValue(e))return i.triggerAddToCartFail(e),i.set("isCheckoutWithPayPalExpress",!1),!1;if((n.cv.util.isNotDeclaredOrNullOrWhitespace(r.quantity)||r.quantity===0)&&i.get("autoPopulateQty")===!0)s?(f=i.get("forceOrderPackQty")&&o>1?o:h,r.quantity=f,i.set("quantity",f)):n.cv.util.hasValue(i.get("addToCartQtyStepFromZero"))?(f=i.get("addToCartQtyStepFromZero"),r.quantity=f,i.set("quantity",f)):(r.quantity=1,i.set("quantity",1));else{if(r.quantity.length==0)return i.set("isCheckoutWithPayPalExpress",!1),!1;if(i.get("forceOrderPackQty")&&n.cv.util.getRemainder(r.quantity,o)!==0&&o!==0)return i.triggerAddToCartFail(a.options.pleaseOrderInPackQuantity.format(i.get("packQuantity"))),i.set("isCheckoutWithPayPalExpress",!1),!1}return a.options.addToOrderCheckMinQuantityEnabled==!0&&(a.options.addToOrderCheckMinQuantityAddOnError==!1||i.get("isCheckoutWithPayPalExpress"))&&i.get("quantity")<i.get("productMinQuantity")?(i.triggerAddToCartFail(n.cv.util.string.format(a.options.minQuantityDisableAddingOnErrorMessage,i.get("productCode"),i.get("quantity"),i.get("productMinQuantity"))),i.set("isCheckoutWithPayPalExpress",!1),!1):(i.clearErrorMessage(),!i.isQuantityValid())?(i.triggerAddToCartFail(a.options.textQuantityMustBeNumeric),i.set("isCheckoutWithPayPalExpress",!1),!1):r},addToCart:function(t){var i=this,f=i.validateAddToCart(t),r,u;return f===!1?null:(r=f,i.set("isProcessing",!0),i.get("isCheckoutWithPayPalExpress")===!1&&i.set("isAddingToCart",!0),a.options.showWarningWhenProductAlreadyInCart&&i.set("productAlreadyExistsInCart",n.cv.util.cartHasProduct(i.get("productCode"))),u=n.cv.util.hasValue(t)?n(t.target):null,_.extend(n.cv.css._proxyMeta,n.cv.util.getBaseProxyMeta(a)),n.cv.css.addToCurrentOrder(r).done(function(f){var e,o;i.set("isProcessing",!1);i.set("isAddingToCart",!1);e=f.data;e&&e.editOrderOk===!0?(i.triggerAddedToCart(e),i.get("isCheckoutWithPayPalExpress")===!0&&(o={e:t},a.options.braintreePayPalExpressEnabled&&(o.braintreePayload=i.get("braintreePayPalExpressPayload")),n.cv.css.trigger(n.cv.css.eventnames.checkoutWithPayPalExpress,o)),u&&u.data&&u.data("isSubstitute")===!0&&n.cv.css.trigger(n.cv.css.eventnames.hideAlternatesPopup),i.isMasterProduct()&&i.get("forceOrderPackQty")&&(r.forceQty=i.get("packQuantity"))):(i.triggerAddToCartFail(e.message),r.quantity=0);i.resetDefaults(r)}))},onBraintreePayPalExpressPaymentApproved:function(){var n=this;n.checkoutWithPayPalExpress(null)},validateBraintreePayPalExpressCheckout:function(){var n=this;return n.validateAddToCart(null)!==!1},updatePayLaterMessages:function(){var i=this,r=a.options.braintreePayPalPayLaterMessagesContainterId,t;n.cv.util.hasContent(r)&&a.options.braintreePayPalExpressEnabled&&(t=i.get("productData"),i.updateBraintreePayLaterMessages("product",t?t.Price:null))},givexPaylExpressButtonClicked:function(){var t=this;n.fancybox({href:"#"+a.options.givexModalId,afterShow:function(){a.options.braintreePayPalExpressEnabled&&!a.options.enableStoreAvailabilityClickAndCollect&&t.initBraintreePayPalExpressButton(a.options.braintreePayPalExpressButtonId,a.options.braintreePayPalExpressButtonList,a.options.braintreePayPalExpressButtonsOptions,!0)}})},getFinalPaymentAmount:function(){var u=this,f=u.get("productData"),t;if(!n.cv.util.hasValue(f))return null;if(t=f.Price,t>0){var i=n.cv.css.localGetCurrentOrder(),e=n.cv.util.hasContent(i)&&i.TotalPaymentBalanceAfterEnteredGiftCards>0?i.TotalPaymentBalanceAfterEnteredGiftCards:0,r=u.get("quantity");return r>0==!1&&(r=1),t*r+e}return null}
11,addToFavourites:function(){var t=this,r=t.get("productCode").toString(),u=!1,i="",f;t.set("isProcessing",!0);t.set("isAddingToFavourites",!0);_.extend(n.cv.css._proxyMeta,n.cv.util.getBaseProxyMeta(a));f=n.cv.css.userFavourites.addFavourite({productCode:r});n.when(f).done(function(f){t.set("isProcessing",!1);t.set("isAddingToFavourites",!1);t.set("triggerMessages",a.options.triggerFavouritesMessages);t.set("clearExistingMessages",!0);n.cv.css.userFavourites.defaults&&n.cv.css.userFavourites.defaults.returnMessageOnAddFavourite?(i=f.data.Messages[0],f.data.Success&&(u=!0)):f.data=="True"?(u=!0,i=a.options.textProductAddedToFavourites.format(r)):i=f.errorMessage!=null?f.errorMessage:a.options.textDefaultErrorAddingToFavourites.format(r);u?(t.triggerAddedToFavourites(i),t.set("isFavourite",!0),a.options.isUserFavouritesPage&&n(a.element).removeClass("favourite-removed")):t.triggerAddToFavouritesFail(i);t.set("triggerMessages",a.options.triggerMessages);t.set("clearExistingMessages",a.options.clearExistingMessages)})},removeFromFavourites:function(){var t=this,r=t.get("productCode").toString(),u=!1,i="",f;t.set("isProcessing",!0);t.set("isAddingToFavourites",!0);f=n.cv.css.userFavourites.defaults&&n.cv.css.userFavourites.defaults.returnMessageOnRemoveFavourite;n.cv.css.userFavourites.removeFavourites({productCodes:[r]},f).done(function(e){t.set("isProcessing",!1);t.set("isAddingToFavourites",!1);t.set("triggerMessages",a.options.triggerFavouritesMessages);t.set("clearExistingMessages",!0);f?(i=e.data.Messages[0],u=e.data.Success):e.data.toString().toLowerCase()==="true"?(u=!0,i=a.options.textDefaultRemoveFavouriteSuccess.format(r),t.set("isFavourite",!1)):i=a.options.textDefaultRemoveFavouriteFail.format(r);u?(t.triggerRemoveFavourite(i),t.set("isFavourite",!1),a.options.isUserFavouritesPage&&n(a.element).addClass("favourite-removed")):t.triggerRemoveFavouriteFail(i);t.set("triggerMessages",a.options.triggerMessages);t.set("clearExistingMessages",a.options.clearExistingMessages)})},clearErrorMessage:function(){var t=this,i;t.set("message","");i=t.get("clearExistingMessages");t.set("clearExistingMessages",!0);t.set("message","");a.options.triggerMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"product",clearExisting:t.get("clearExistingMessages")});t.set("clearExistingMessages",i)},showAltPrice:!1,showUomPricePrefix:"showUomPrice",getShowUomPrice:function(n){return this.showUomPricePrefix+n.replace("-","uomhyphen")},uomSelected:function(t){var i=this,r=a.getAllCombinedUomsList(),u,f;r.length===0?(i.set("showAltPrice",a.options.showAltPrice===!0?!0:t.item.index()===1),i._updateSelectedUomInAddProductToOrderTemplate(t.dataItem.value)):a.options.enableUomPricingByCoreProductPriceLogic?(u=t.dataItem.value,n.cv.css.product.getFormattedPriceForUOM({productCode:i.productCode,uom:u,includeTax:a.options.customerShowTaxAs==="inc"}
11).done(function(n){n.data.price==null?i.set("priceNotApplicable",!0):i.get("showAltPrice")?(i.set("altItemPrice",n.data.price),i.set("allowOrderEntryForProduct",n.data.allowOrderEntry)):(i.set("itemPrice",n.data.price),i.set("allowOrderEntryForProduct",n.data.allowOrderEntry));i._updateSelectedUomInAddProductToOrderTemplate(u)})):(f=r[t.item.index()],n.each(r,function(n,t){i.set(i.getShowUomPrice(t),!1)}),i.set(i.getShowUomPrice(f),!0),i._updateSelectedUomInAddProductToOrderTemplate(f))},_updateSelectedUomInAddProductToOrderTemplate:function(t){n(".widget-add-product-to-order-template").each(function(){var i=n(this).data("addProductToOrderTemplate");i&&i.viewModel.set("selectedUom",t)})},thirdPartyInstallment:function(){var i=this,t=i.thirdPartyInstallmentPrice();return t===0?0:n.cv.util.calculateAfterpayInstalment(t,a.options.thirdPartyInstallments)},thirdPartyInstallmentPrice:function(t){var r,u,i;return(t===void 0&&(t=!0),r=this,u=r.get("productData"),u&&!n.cv.util.isNullOrWhitespace(a.options.thirdPartyBasePrice)&&!n.cv.util.isNullOrWhitespace(u.ProductCode)&&n.cv.util.hasValue(r.get(a.options.thirdPartyBasePrice)))?(i=r.get(a.options.thirdPartyBasePrice),!t&&(i===a.options.poaProductPricingMessage||i===a.options.poaResourceMessage))?i:(i=i.replace(/[^0-9.-]+/g,""),isNaN(i)||isNaN(a.options.thirdPartyInstallments)||a.options.thirdPartyInstallments===0)?0:parseFloat(i):0},openpayDepositAmount:function(){return this.openpayInstallmentAmount(!0)},openpayInstallmentAmount:function(t){var f;t===void 0&&(t=!1);var r=this,i=a.options,u=r.get("productData");return u&&!n.cv.util.isNullOrWhitespace(i.thirdPartyBasePrice)&&!n.cv.util.isNullOrWhitespace(u.ProductCode)&&n.cv.util.hasValue(r.get(i.thirdPartyBasePrice))?(f=r.get(i.thirdPartyBasePrice).replace(/[^0-9.-]+/g,""),n.cv.util.calculateOpenPayInstallments(f,i.openpayInstallments,i.openpayDepositPercent,t)):0},payRightDepositAmount:function(){var t=this,n=a.options,i=t.get(n.thirdPartyBasePrice).replace(/[^0-9.-]+/g,"");return Number((i*n.payRightDepositPercent/100).toFixed(2))},guid:n.cv.css.guid(),hasGetPriceButtonBeenClicked:!1,hasPriceFromGetPriceButton:!1,priceNotApplicable:!1,isGettingPrice:!1,priceFromGetPriceButton:0,onGetPrice:function(){var t=this;t.set("hasGetPriceButtonBeenClicked",!1);t.set("hasPriceFromGetPriceButton",!1);t.set("priceNotApplicable",!1);t.set("isGettingPrice",!0);t.set("priceFromGetPriceButton",0);n.cv.css.product.checkPrice({productCode:v.productData.ProductCode}).done(function(n){n.data.price==null?t.set("priceNotApplicable",!0):(t.set("hasPriceFromGetPriceButton",!0),t.set("priceFromGetPriceButton",n.data.price))}).always(function(){t.set("isGettingPrice",!1);t.set("hasGetPriceButtonBeenClicked",!0)})}})),n.cv.css.userFavourites.defaults&&(n.cv.css.userFavourites.defaults.returnMessageOnAddFavourite=!0,n.cv.css.userFavourites.defaults.returnMessageOnRemoveFavourite=!0),v._setProductData(),v.get("allowCustomOptions")||n.cv.util.hasValue(v.productData.ProductCode)||!v.isMasterProduct()||v.get("hidePricing")||v.populateProductData(),v.set("showImage",!0),v.bind("change",function(t){var u=v,i,r;t.field==="outOfStock"&&u._updateAvailability(!1);t.field!=="quantityBreaks"&&t.field!=="nettPrice"||v.isMasterProduct()||v._setQuantityBreakData(u.get("nettPrice"),u.get("quantityBreaks"));t.field==="quantity"?n.cv.css.trigger(n.cv.css.eventnames.productQtyChanged,v.quantity>0):t.field==="extendedAttribute"&&(i=this,r=i.get("extendedAttribute"),n.cv.util.hasContent(r)&&r.ExtendedAttributes!=undefined?i.set("extendedAttributes",r.ExtendedAttributes):(i.set("extendedAttributes",""),i.set("extendedAttribute","")))}),v.getQuantityInCart(),v.isMasterProduct()||v._setQuantityBreakData(a.options.nettPrice,a.options.quantityBreaks),v._setInitialQuantities(),v._triggerChangesForInitialValues(),v.extendedAttributesDataSource=function(){return n.cv.css.product.extendedAttributeDataSource(v,"productCode")},v},getProductAddParams:function(n){var t=this;return n=typeof n!="undefined"?n:!0,n&&t.viewModel.quantity!=""&&t.viewModel.quantity>0||!n?t.viewModel.getProductAddParams():null},triggerAddedToCart:function(n){var t=this;
11t.viewModel.triggerAddedToCart(n)},triggerAddToCartFail:function(n){var t=this;t.viewModel.triggerAddToCartFail(n)},triggerAddedToFavourites:function(n){var t=this;t.viewModel.triggerAddedToFavourites(n)},triggerAddToFavouritesFail:function(n){var t=this;t.viewModel.triggerAddToFavouritesFail(n)},triggerRemoveFavourite:function(n){var t=this;t.viewModel.triggerRemoveFavourite(n)},triggerRemoveFavouriteFail:function(n){var t=this;t.viewModel.triggerRemoveFavourite(n)},resetDefaults:function(n){var t=this;t.viewModel.resetDefaults(n)}};n.cv.ui.widget(a)}(jQuery);
12(function(n){var t="widgetInitialised",i="listUpdated",r="noResults",u={name:"productAttributeList",extend:"mvvmwidget",options:{dataSource:[],productCode:"",errorGettingProductList:"There was an error retrieving the product list at this time",noProductsFound:"There were no results found",noProductsAdded:"No items have been added to your cart, please enter a quantity",attributeValueArrayClass:"col-1-{0}",redirectToAfterAddToCart:!1,ordersPageUrl:"/cart",autoBind:!0,autoLoad:!1,priceForOneShowNettPrice:!0,addSelectedAttributeCodeToOrder:!1,triggerMessages:!0,clearWidgetMessages:!0,refreshOnItemChange:!1,displayProductCode:!1,hidePricing:!1,displayAvailability:!1,isGuestUser:!0,showRRP:!1,showTotal:!0,customAvailabilityWidgetName:"",addToOrderCheckMinQuantityEnabled:!1,addToOrderCheckMinQuantityAddOnError:!1,customerShowTaxAs:"",increaseQuantitiesInPackQty:!1,addMinimumQuantityToCart:!1},extendEvents:[t,i,r],viewModelBound:function(){var i=this;i.trigger(t);n.cv.css.bind(n.cv.css.eventnames.productExtendedPriceUpdated,n.proxy(i.viewModel.productExtendedPriceUpdated,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.allAttributeCombinationsLoaded,n.proxy(i.viewModel.setAllAttributeCombinations,i.viewModel))},initDataSource:function(){var n=this,t=n.viewModel,i=n.options;i.autoLoad&&t.getAttributeList()},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this,f=function(){return t.dataSource?(n.each(t.dataSource.view(),function(n,t){t.index=n}),t.dataSource.view()):[]},o=function(n){for(var i=[],r=n.length,t=0;t<r;t++)i.push({value:n[t].toString().replace(/'/g,"&#39;"),index:t,count:r});return i},e=function(i){for(var f,u,c,e=t.viewModel,s=[],r=0;r<i.length;r++){t.options.displayAvailability&&(i[r].AttributeTitleArray.push("Availability"),t.options.customAvailabilityWidgetName!==""?i[r].AttributeValArray.push("C-Availability"):i[r].AttributeValArray.push("Availability"));t.options.showRRP&&(i[r].AttributeTitleArray.push("PriceRRP"),i[r].AttributeValArray.push("PriceRRP"));t.options.hidePricing||(i[r].AttributeTitleArray.push("Price"),i[r].AttributeValArray.push("Price"));f="0";i[r].AttributedProductProduct&&i[r].AttributedProductProduct.length>0&&i[r].AttributedProductProduct[0].AllowOrderEntryForProduct&&(u=i[r].AttributedProductProduct[0],f=n.cv.util.getProductDetailsDefaultQuantity(t.options.increaseQuantitiesInPackQty,t.options.addMinimumQuantityToCart,{ProductDetailsDefaultQuantityWhenNotIncreasePackQtyNotAddMinQty:u.ProductDetailsDefaultQuantityWhenNotIncreasePackQtyNotAddMinQty,ProductDetailsDefaultQuantityWhenIncreasePackQtyNotAddMinQty:u.ProductDetailsDefaultQuantityWhenIncreasePackQtyNotAddMinQty,ProductDetailsDefaultQuantityWhenNotIncreasePackQtyAddMinQty:u.ProductDetailsDefaultQuantityWhenNotIncreasePackQtyAddMinQty,ProductDetailsDefaultQuantityWhenIncreasePackQtyAddMinQty:u.ProductDetailsDefaultQuantityWhenIncreasePackQtyAddMinQty}),i[r].AttributeTitleArray.push("Qty"),i[r].AttributeValArray.push("Qty"));t.options.showTotal&&(i[r].AttributeTitleArray.push("Total"),i[r].AttributeValArray.push("Total"));var l=n.cv.util.convertArrayToObjectArray(i[r].AttributeValArray),a='<div data-allow-custom-options="'+t.options.allowCustomOptions+'"  data-role="product"  data-product-code="'+(i[r].AttributedProductCode.length>0?i[r].AttributedProductCode:i[r].ProductCode)+'" data-orders-page-url="'+t.options.ordersPageUrl+'" data-redirect-to-after-add-to-cart="'+t.options.redirectToAfterAddToCart+'" data-master-product-code="'+i[r].ProductCode+'" data-attributes-for-product="'+i[r].AttributeTitleValueSeq+"\" data-attribute-value-array='"+JSON.stringify(l)+"' data-add-selected-attribute-code-to-order='"+e.get("addSelectedAttributeCodeToOrder")+"' data-custom-availability-widget-name=\""+t.options.customAvailabilityWidgetName+'"'+n.cv.util.convertFieldsToProperties(i[r].AttributedProductProduct[0],"",t.options.priceForOneShowNettPrice)+' data-trigger-messages="true" data-trigger-get-price-on-qty-change="true" data-available-qty="'+i[r].AvailableQty+'" data-add-to-order-check-min-quantity-enabled="'+t.options.addToOrderCheckMinQuantityEnabled+'" data-add-to-order-check-min-quantity-add-on-error="'+t.options.addToOrderCheckMinQuantityAddOnError+'" data-product-min-quantity="'+i[r].AttributedProductProduct[0].MinOrderQty+'" data-price-rrp="'+i[r].AttributedProductProduct[0].PriceRRP+'" data-available-for-one="'+i[r].AvailableForOne+'" data-customer-show-tax-as="'+t.options.customerShowTaxAs+'" data-attribute-product-add-to-cart-mode="'+t.options.attributeProductAddToCartMode+'" data-add-selected-attribute-code-to-order="'+t.options.addSelectedAttributeCodeToOrder+'" data-attributed-product-list="'+t.options.attributedProductList+'" data-min-quantity="0" data-quantity="0" data-increase-qty-step-from-zero="'+f+'" data-add-to-cart-qty-step-from-zero="'+f+'"><\/div>',h=n(a);kendo.init(h);s[r]=h.data().product.viewModel}t.setDataSource(s);c=_.union.apply(_,_.pluck(i,"AttributeTitleArray"));e.set("attributeTitleArray",o(c));e.set("columnCount",i[0].AttributeTitleArray.length)}
12,u=kendo.observable(n.extend(t.options,{productCode:t.options.productCode,itemList:f(),dataCount:0,attributeTitleArray:[],attributeListOrderTotal:0,message:"",isProcessing:!1,isAdding:!1,_isInitialLoad:!0,attributesLoaded:!1,isCollapsableAreaExpanded:!1,hasAttributes:function(){return this.get("itemList").length>0},updateViewModelFromDataSource:function(){var u=f();this.set("itemList",u);this.set("dataCount",t.dataSource.data().length);t.trigger(i,{viewCount:u.length,dataCount:this.get("dataCount"),hasAttributes:this.hasAttributes()});this.get("dataCount")!=0||this.get("_isInitialLoad")||(t.trigger(r),n.cv.util.notify(t.viewModel,this.get("noProductsFound"),n.cv.css.messageTypes.info));this.set("_isInitialLoad",!1)},getAttributeList:function(){var i=this,r;!i.get("attributesLoaded")&&(!i.get("isProcessing")&&i.get("productCode").length>0||i.get("allAttributeCombinationsLoaded"))&&(i.set("isProcessing",!0),i.set("addColumnCountClass",""),i.get("allAttributeCombinationsLoaded")?(r=i.get("allAttributeCombinations"),e(JSON.parse(r)),i.set("isProcessing",!1),i.set("attributesLoaded",!0),i.set("addColumnCountClass",i.get("attributeTitleArray"))):n.cv.css.product.getAllAttributeCombinations({productCode:i.get("productCode")}).done(function(n){n&&n.data&&n.data.length>0&&e(n.data);i.set("isProcessing",!1);i.set("attributesLoaded",!0);i.set("addColumnCountClass",i.get("attributeTitleArray"))}).fail(function(){n.cv.util.notify(t.viewModel,i.get("errorGettingProductList"),n.cv.css.messageTypes.error);i.set("isProcessing",!1)}));this.toggleCollapsableArea()},toggleCollapsableArea:function(){this.set("isCollapsableAreaExpanded",!this.get("isCollapsableAreaExpanded"))},columnCount:function(){return this.get("attributeTitleArray").length},getAttributeValueArrayClass:function(){return t.options.attributeValueArrayClass.format(this.columnCount())},productExtendedPriceUpdated:function(){var t=this,r=t.nonZeroQuantityProducts(),i=0;n(r).each(function(){i+=this.get("extendedPrice")});t.set("attributeListOrderTotal",i)},setAllAttributeCombinations:function(n){var t=this;n.length>0&&n[0].ProductCode===t.productCode&&(t.set("allAttributeCombinations",JSON.stringify(n)),t.set("allAttributeCombinationsLoaded",!0))},nonZeroQuantityProducts:function(){var n=[],t=u.get("itemList");return t.length>0&&(n=_.filter(t,function(n){return n.getQuantity()>0})),n},addProducts:function(){var r=this,o=r.nonZeroQuantityProducts(),f=[],u={},i=[],e="";r.set("isAdding",!0);o.length<=0?(n.cv.util.notify(t.viewModel,r.get("noProductsAdded"),n.cv.css.messageTypes.warning),r.set("isAdding",!1)):(n(o).each(function(){u=this.getProductAddParams();u&&u.quantity.length!=0&&!isNaN(u.quantity)&&(i.push(this),f.push(u))}),n.cv.util.clearNotifications(t.viewModel),_.extend(n.cv.css._proxyMeta,n.cv.util.getBaseProxyMeta(t)),n.cv.css.orders.addToCurrentOrderBulk({batchData:f}).done(function(o){n.each(f,function(r){var u=o.data[r];o.errorMessage[r]==null&&u!=null&&u.editOrderOk===!0?i[r].triggerAddedToCart(u):(o.errorMessage[r]!=null&&(i[r].triggerAddToCartFail(o.errorMessage[r]),e=e.length==0?o.errorMessage[r]:","+o.errorMessage[r]),u!=null&&u.message!=""&&i[r].triggerAddToCartFail(u.message));i[r].resetDefaults(f[r]);i[r]._updatePriceBreaks();e.length>0&&t.setMessage(e,n.cv.css.messageTypes.error)});r.set("isAdding",!1);r.set("attributeListOrderTotal",0);f=[];u={};i=[];e=""}).fail(function(n){var o=JSON.parse(n);o.sessionHasTimedOut&&t.redirectToUrl(t.options.sessionTimeOutRedirectUrl,{},!0);f=[];u={};i=[];e="";r.set("isAdding",!1)}))}}));return u.bind("change",function(){}),u}};n.cv.ui.widget(u)})(jQuery);
13(function(n){var t="onBeforeSubmit",i="onAfterSubmit",r="onCancel",u="onPopupClosed",f={name:"productReviewWidget",options:{dynamicService:"productReview",viewTemplate:null,productCode:null,productDescription:null,reviewerName:"",reviewerEmail:"",submitButtonText:"Submit Review",cancelButtonText:"Cancel",popupId:null,fancyboxOptions:{},ratings:[],triggerMessages:!1,useStarRatingPlugin:!0,namePrompt:"Name",emailPrompt:"Email",ratingPrompt:"Overall Rating",locationPrompt:"Location",titlePrompt:"Review Title",summaryPrompt:"Your Review"},events:[t,i,r,u],_viewModel:null,_view:null,_viewAppended:!1,_errorClass:"error",_defaultPopupId:"productReviewPopup",initialise:function(t){var i=this,r,u,f;
13i.options.productCode=t.attr("data-product-code");r=n(t).children(":first");r.data("view")?i.view=r.html():(i.options.viewTemplate||(i.options.viewTemplate=i._getDefaultViewTemplate()),u=kendo.template(i.options.viewTemplate),i.view=u(i.options),r.append(i.view),i._viewAppended=!0);i.viewModel=i._getViewModel();f=n(i.element).children(":first");kendo.bind(f,i.viewModel)},destroy:function(){var n=this;n.element.removeData(n.options.prefix+n.options.name);n._viewAppended&&n.element.empty()},_getViewModel:function(){var f=this,e=kendo.observable({productDescription:"[PRODUCT]",name:"",email:"",location:"",title:"",summary:"",rating:"",ratings:[],submitButtonText:null,cancelButtonText:null,isSaving:!1,isNotSaving:function(){return!this.get("isSaving")},_getSubmitData:function(){return{productCode:f.options.productCode,name:this.name,email:this.email,location:this.location,title:this.title,text:this.summary,ratingCode:this.rating}},submit:function(r){if(r.preventDefault(),this.set("showValidationErrors",!0),!this.isFormInvalid()&&!this.get("isSaving")){this.set("isSaving",!0);f.options.useStarRatingPlugin&&n("input.star").rating("readOnly",!0);var e=this._getSubmitData(),u=this._getSubmitData();f.trigger(t,u);n.cv.ajax.call(f.options.dynamicService+"/SaveProductReview",{parameters:e,success:function(){f.trigger(i,u);f.options.popupId&&n.fancybox.close();f.viewModel.resetForm()}})}},cancel:function(t){t.preventDefault();f.trigger(r);f.options.popupId&&n.fancybox.close()},resetForm:function(){f.viewModel.set("showValidationErrors",!1);f.viewModel.set("name",f.options.reviewerName);f.viewModel.set("email",f.options.reviewerEmail);f.viewModel.set("location","");f.viewModel.set("title","");f.viewModel.set("summary","");f.viewModel.set("rating","");f.viewModel.set("isSaving",!1);f.options.useStarRatingPlugin&&n("input.star").rating("readOnly",!1).rating("select",!1)},show:function(t){if(t.preventDefault(),this.isPopup()){var r=f.options.popupId?f.options.popupId:f._defaultPopupId,i={href:"#"+r,afterClose:function(){f.viewModel.set("showValidationErrors",!1);f.trigger(u)}};i=n.extend(i,f.options.fancyboxOptions);n.fancybox(i)}},isPopup:function(){return f.options.popupId!=null},showValidationErrors:!1,isFormInvalid:function(){var n=!this.isFormValid();return n&&f.options.triggerMessages&&this.triggerValidationMessage(),n},isFormValid:function(){return this.nameIsEmpty()==!1&&this.emailIsEmpty()==!1&&this.emailIsInvalid()==!1&&this.locationIsEmpty()==!1&&this.titleIsEmpty()==!1&&this.summaryIsEmpty()==!1&&this.ratingIsEmpty()==!1},triggerValidationMessage:function(){var i=this,t="",r="",u=!0,e=i.get("name"),o=f.name;t=i.nameIsEmpty()?f.options.namePrompt:"";t=i.emailIsEmpty()?(t.length>0?t+", ":"")+f.options.emailPrompt:t;t=i.ratingIsEmpty()?(t.length>0?t+", ":"")+f.options.ratingPrompt:t;t=i.locationIsEmpty()?(t.length>0?t+", ":"")+f.options.locationPrompt:t;t=i.titleIsEmpty()?(t.length>0?t+", ":"")+f.options.titlePrompt:t;t=i.summaryIsEmpty()?(t.length>0?t+", ":"")+f.options.summaryPrompt:t;t=t.length>0?"The following fields are required: "+t:t;i.emailIsEmpty()||(r=i.emailIsInvalid()?f.options.emailPrompt+" is invalid":"");i.name=o;t.length>0&&(n.cv.util.notify(i,t,n.cv.css.messageTypes.error,{triggerMessages:f.options.triggerMessages,source:f.name,clearExisting:!0}),u=!1);r.length>0&&n.cv.util.notify(i,r,n.cv.css.messageTypes.error,{triggerMessages:f.options.triggerMessages,source:f.name,clearExisting:u});i.name=e},nameIsEmpty:function(){return!!this.get("showValidationErrors")&&n.trim(this.get("name")).length==0},nameInputClass:function(){return this.nameIsEmpty()?f._errorClass:""},emailIsEmpty:function(){return!!this.get("showValidationErrors")&&n.trim(this.get("email")).length==0},emailIsInvalid:function(){if(this.get("showValidationErrors")){if(this.emailIsEmpty()==!1)return!/\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/.test(this.get("email"));return!0}return!1},emailInputClass:function(){return this.emailIsEmpty()||this.emailIsInvalid()?f._errorClass:""},emailErrorText:function(){return this.emailIsEmpty()?"Required":this.emailIsInvalid()?"Invalid":""},locationIsEmpty:function(){return!!this.get("showValidationErrors")&&n.trim(this.get("location")).length==0},locationInputClass:function(){return this.locationIsEmpty()?f._errorClass:""},titleIsEmpty:function(){return!!this.get("showValidationErrors")&&n.trim(this.get("title")).length==0},titleInputClass:function(){return this.titleIsEmpty()?f._errorClass:""},summaryIsEmpty:function(){return!!this.get("showValidationErrors")&&n.trim(this.get("summary")).length==0},summaryInputClass:function(){return this.summaryIsEmpty()?f._errorClass:""},ratingIsEmpty:function(){return!!this.get("showValidationErrors")&&n.trim(this.get("rating")).length==0},ratingInputClass:function(){return this.ratingIsEmpty()?f._errorClass:""}});return f.options.productDescription==null?n.cv.ajax.call(f.options.dynamicService+"/GetProductInfo",{parameters:{productC
13ode:f.options.productCode},success:function(n){n.data.length==1&&e.set("productDescription",n.data[0].Description)}}):e.set("productDescription",f.options.productDescription),e.set("name",f.options.reviewerName),e.set("email",f.options.reviewerEmail),e.set("submitButtonText",f.options.submitButtonText),e.set("cancelButtonText",f.options.cancelButtonText),e},_getDefaultViewTemplate:function(){var t=this,i;return t.options.ratings.length==0&&n.cv.ajax.call(t.options.dynamicService+"/LoadRatings",{parameters:{},success:function(i){t.options.ratings=i.data;t.viewModel.set("ratings",i.data);var r=n(".star");r.rating();r.first().addClass("required")}}),i=["<section class='cv-ui-layout-pagecontent'>","\t<div class='row'>","\t\t<div class='twelve columns'>","\t\t\t<h1 class='page-heading'>Write A Product Review<\/h1>","","\t\t\t<div class='cv-ui-widget-review'>","\t\t\t\t<div class='row'>","\t\t\t\t\t<div class='twelve columns'>","\t\t\t\t\t\t<p>If you have a <span style='font-weight: bold' data-bind='text: productDescription'><\/span>, let us know what you think. Write an opinion and share your opinions with others. All reviews will be independantly reviewed before being posted. Review must be on this particular product and not on the service or warranty issues.<\/p>","\t\t\t\t\t<\/div>","\t\t\t\t<\/div>","","\t\t\t\t<div class='row'>","\t\t\t\t\t<div class='six columns'>","\t\t\t\t\t\t<div data-bind='attr: { class: nameInputClass }'>","\t\t\t\t\t\t\t<label style='display: inline'>Name:<\/label> <label class='error' style='display: inline-block'>*<\/label>","\t\t\t\t\t\t\t<input type='text' data-bind='attr: { class: nameInputClass }, value: name, enabled: isNotSaving' data-value-update='keyup' maxlength='100'>","\t\t\t\t\t\t\t<small data-bind='visible: nameIsEmpty'>Required<\/small>","\t\t\t\t\t\t<\/div>","","\t\t\t\t\t\t<div data-bind='attr: { class: emailInputClass }'>","\t\t\t\t\t\t\t<label style='display: inline'>Email:<\/label> <label class='error' style='display: inline-block'>*<\/label>","\t\t\t\t\t\t\t<input type='email' data-bind='attr: { class: emailInputClass }, value: email, enabled: isNotSaving' data-value-update='keyup' maxlength='100'>","\t\t\t\t\t\t\t<small data-bind='visible: emailIsInvalid, text: emailErrorText'><\/small>","\t\t\t\t\t\t<\/div>","","\t\t\t\t\t\t<div data-bind='attr: { class: locationInputClass }'>","\t\t\t\t\t\t\t<label style='display: inline'>Location:<\/label> <label class='error' style='display: inline-block'>*<\/label>","\t\t\t\t\t\t\t<input type='text' data-bind='attr: { class: locationInputClass }, value: location, enabled: isNotSaving' data-value-update='keyup' maxlength='100'>","\t\t\t\t\t\t\t<small data-bind='visible: locationIsEmpty'>Required<\/small>","\t\t\t\t\t\t<\/div>","","\t\t\t\t\t\t<div data-bind='attr: { class: titleInputClass }'>","\t\t\t\t\t\t\t<label style='display: inline'>Review Title:<\/label> <label class='error' style='display: inline-block'>*<\/label>","\t\t\t\t\t\t\t<input type='text' data-bind='attr: { class: titleInputClass }, value: title, enabled: isNotSaving' data-value-update='keyup' maxlength='100'>","\t\t\t\t\t\t\t<small data-bind='visible: titleIsEmpty'>Required<\/small>","\t\t\t\t\t\t<\/div>","","\t\t\t\t\t\t<div data-bind='attr: { class: summaryInputClass }'>","\t\t\t\t\t\t\t<label style='display: inline'>Your Review:<\/label> <label class='error' style='display: inline-block'>*<\/label>","\t\t\t\t\t\t\t<textarea data-bind='attr: { class: summaryInputClass }, value: summary, enabled: isNotSaving' data-value-update='keyup'><\/textarea>","\t\t\t\t\t\t\t<small data-bind='visible: summaryIsEmpty'>Required<\/small>","\t\t\t\t\t\t<\/div>","\t\t\t\t\t<\/div>","","\t\t\t\t\t<div class='five columns'>","\t\t\t\t\t\t<div class='cv-ui-rating'>","\t\t\t\t\t\t\t<div class='row'>","\t\t\t\t\t\t\t\t<div class='five columns'>","\t\t\t\t\t\t\t\t\t<label class='overall' style='display: inline'>Overall Rating<\/label> <label class='error' style='display: inline-block'>*<\/label>","\t\t\t\t\t\t\t\t<\/div>","\t\t\t\t\t\t\t\t<div class='seven columns' data-bind='attr: { class: ratingInputClass }'>","                                   <div data-bind='source: ratings' data-template='"+t.options.itemTemplateId+"_rating_star'><\/div>","\t\t\t\t\t\t\t\t\t<div style='height: 2.5em'><\/div>","\t\t\t\t\t\t\t\t\t<small data-bind='visible: ratingIsEmpty'>Required<\/small>","\t\t\t\t\t\t\t\t<\/div>","\t\t\t\t\t\t\t<\/div>","\t\t\t\t\t\t<\/div>","\t\t\t\t\t<\/div>","\t\t\t\t<\/div>","\t\t\t\t","\t\t\t\t<hr />","\t\t\t\t<div class='row row-buttons'>","\t\t\t\t\t<div class='twelve columns' data-bind='visible: isNotSaving'>","\t\t\t\t\t\t<a href='javascript:$.noop()' class='cv-ui-button-green' data-reveal-id='modal-publish' data-bind='click: submit, text: submitButtonText'><\/a>","\t\t\t\t\t\t<a href='javascript:$.noop()' class='cv-ui-button-red' data-bind='click: cancel, text: cancelButtonText'><\/a>","\t\t\t\t\t<\/div>","\t\t\t\t\t<div class='twelve columns' data-bind='visible: isSaving'>","\t\t\t\t\t\tReview is being submitted. Please wait...<br />&nbsp;","\t\t\t\t\t<\/div>","\t\t\t\t<\/div>","\t\t\t<\/div>","\t\t<\/div>","\t<\/div>   "," <script type='text/x-kendo-template' id='"+t.options.itemTemplateId+"_rating_star'>","<input name='stars' type='radio' class='star' data-bind='value: Code, attr: { title: Description }, checked: rating' />"," <\/script>","<\/section>"].join("\n"),t.options.popupId&&(i=["<div id='productReviewPopup' style='display: none; margin-left: auto; margin-right: auto'>",i,"<\/div>"].join("\n")),i}};n.cv.ui.widget(f)})(jQuery);
14(function(n){var t={name:"addAllToCart",options:{productElement:"[data-role='product']",productData:"product",triggerMessages:!0,sessionTimeOutRedirectUrl:"login.aspx",textNoProductsAdded:"No items have been added to your cart, please enter a quantity",categoryCodeCluster:"",textErrorGettingClusterLines:"Error retrieving Cluster Line details",addIsProcessingToElement:"",showWarningWhenProductAlreadyInCart:!1,warningMessageWhenProductAlreadyInCart:"",warningHeaderWhenProductAlreadyInCart:"Warning"},clusterLines:[],initialise:function(n,t){var i=this;i.getClusterLinesIfNeededThenRegisterAddToCartClick(n,t)},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},redirectToUrl:function(t,i,r){n.cv.ajax.settings.timeoutRedirectUrl==""?n.cv.util.redirect(t,i,!r):n.cv.util.redirect(n.cv.ajax.settings.timeoutRedirectUrl,i,!r)},setMessage:function(t,i,r,u){var e=this,f;r=typeof r!="undefined"?r:!0;f={triggerMessages:e.options.triggerMessages,message:t,type:i,source:e.name,clearExisting:r,consolidationGroup:u};n.cv.util.notify(f,t,i,f)},clearMessage:function(){var t=this;t.options.triggerMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"addAllToCart",clearExisting:!0})},getClusterLinesIfNeededThenRegisterAddToCartClick:function(t,i){var r=this,u;r.options.categoryCodeCluster&&r.options.categoryCodeCluster.length>0?(u=n.cv.css.category.getClusterLinesForCategory({categoryCode:r.options.categoryCodeCluster}),n.when(u).done(function(u){var f=u.data;u.sessionHasTimedOut?r.redirectToTimeoutUrl(r.options.sessionTimeOutRedirectUrl,null,!1):u.errorMessage&&u.errorMessage.length!==0?r.setMessage(u.errorMessage,n.cv.css.messageTypes.error):f&&(r.clusterLines=f,r.registerAddToAllClick(t,i))}).fail(function(){r.setMessage(r.options.textErrorGettingClusterLines,n.cv.css.messageTypes.error)})):r.registerAddToAllClick(t,i)},validateQtysIfClusterAndSetAdditionalInfo:function(t,i){var r=this,u,o,f,e;if(r.options.categoryCodeCluster.length===0||!r.clusterLines||r.clusterLines.length===0)return!0;for(r.clearMessage(),u=!1,o=function(e){function c(t,i){var u,r,f;
14return(t=t.toLowerCase(),u=i.productCode.toLowerCase(),t===u)?!0:n.cv.util.hasValue(o.Product)===!1?!1:(r=_.find(o.Product,function(n){return n.ProductCode.toLowerCase()===t}),n.cv.util.hasValue(r)===!1||n.cv.util.hasContent(r.GetProductAttributeProductsJsonString)===!1)?!1:(f=JSON.parse(r.GetProductAttributeProductsJsonString),!!_.find(f,function(n){return n[0]&&n[0].toLowerCase()===u}))}var o=r.clusterLines[e],s=null,h=-1;if(n.each(t,function(n,t){t.categoryCodeCluster=r.options.categoryCodeCluster}),!o.Compulsory||o.QtyIfCompulsory<=0)return"continue";n.each(t,function(n,t){return t.lineSeq===e&&c(o.ProductCode,t)?(s=t,h=n,!1):!0});s||n.each(t,function(n,t){return o.ProductCode.toLowerCase()===t.productCode.toLowerCase()?(s=t,h=n,!1):!0});s?s.quantity<o.QtyIfCompulsory?(f="Product: "+o.ProductCode+" is compulsory and must be ordered in a quantity of at least "+o.QtyIfCompulsory.toString()+".",i[h].triggerAddToCartFail(f),u=!0):s.compulsoryCluster=!0:(f="Product: "+o.ProductCode+" is compulsory and must be ordered in a quantity of at least "+o.QtyIfCompulsory.toString()+".",r.setMessage(f,n.cv.css.messageTypes.error,!1),u=!0)},e=0;e<r.clusterLines.length;e++)o(e);return!u},productsAlreadyInCart:[],registerAddToAllClick:function(t){var i=this,r=[],u={},f=[],e="";n(i.element).click(function(){var o=n.cv.util.isNullOrWhitespace(i.options.addIsProcessingToElement)?n(t):n(i.options.addIsProcessingToElement),s,h;if(o.addClass(n.cv.css.isProcessingClass),s=0,n(i.options.productElement).each(function(){var t=n(this).data(i.options.productData),e;t&&(e=t.element.parents("[data-role=recentlyviewedproduct], .widget-campaign-slider").length===0,u=t.getProductAddParams(),e&&u&&u.quantity.length!==0&&!isNaN(u.quantity)&&(f.push(t),u.lineSeq=s,r.push(u)),s++)}),r.length>0){if(i.clearMessage(),i.clusterLines&&i.clusterLines.length>0&&(h=i.validateQtysIfClusterAndSetAdditionalInfo(r,f),!h)){o.removeClass(n.cv.css.isProcessingClass);r=[];u={};f=[];return}i.options.showWarningWhenProductAlreadyInCart&&(i.productsAlreadyInCart=[],n.each(r,function(t,r){n.cv.util.cartHasProduct(r.productCode)&&i.productsAlreadyInCart.push(r.productCode)}));_.extend(n.cv.css._proxyMeta,n.cv.util.getBaseProxyMeta(i));n.cv.css.orders.addToCurrentOrderBulk({batchData:r}).done(function(t){var s,c,h;n.cv.util.clearNotifications({viewModel:kendo.observable({name:i.options.productData,triggerMessages:!0})});s=[];n.each(r,function(u,o){var h=t.data[u];t.errorMessage[u]==null&&h!=null&&h.editOrderOk===!0?(h.consolidationGroup="Add-Current-Order-Bulk",h.message=o.productCode,s.push(u)):(t.errorMessage[u]!=null&&(f[u].triggerAddToCartFail(t.errorMessage[u]),e=e.length==0?t.errorMessage[u]:","+t.errorMessage[u]),h!=null&&h.message!=""&&f[u].triggerAddToCartFail(h.message));f[u].resetDefaults(r[u]);e.length>0&&i.setMessage(e,n.cv.css.messageTypes.error,!1)});c=f;s.length>0&&(h=function(){var r="The following product"+(s.length>1?"s have ":" has ")+"been successfully added to cart:";i.setMessage(r,n.cv.css.messageTypes.success,!1,"Add-Current-Order-Bulk");n.each(s,function(n,i){var r=t.data[i];c[i].triggerAddedToCart(r)})},i.options.showWarningWhenProductAlreadyInCart&&i.productsAlreadyInCart.length>0?n.cv.util.showOverlayMessage(i.options.warningHeaderWhenProductAlreadyInCart,i.options.warningMessageWhenProductAlreadyInCart.replace("{0}",i.productsAlreadyInCart.join()),!0,h):h());o.removeClass(n.cv.css.isProcessingClass);r=[];u={};f=[];e=""}).fail(function(t){var s=JSON.parse(t);s.sessionHasTimedOut&&i.redirectToUrl(i.options.sessionTimeOutRedirectUrl,{},!0);o.removeClass(n.cv.css.isProcessingClass);r=[];u={};f=[];e=""})}else i.setMessage(i.options.textNoProductsAdded,n.cv.css.messageTypes.warning),o.removeClass(n.cv.css.isProcessingClass)})}};n.cv.ui.widget(t)})(jQuery);
15(function(n){var r="widgetInitialised",o="templateSaved",s="quoteCancelled",u="order",h="quote",f="standingOrder",e="ociExpress",t="applyPunchoutOrderCharges",i,c;(function(n){n.OrderSubmit="ordersubmit";n.Cart="cart";n.Checkout="checkout"})(i||(i={}));c={name:"orderSummary",options:{linesElement:"[data-role='orderlines']",linesData:"orderLines",linesSortField:"",linesSortDirection:"",displayTo
15pCount:0,holdOrderRedirectUrl:"OrdersOnHold.aspx?Order={0}",saveAsTemplateRedirectUrl:"OrderTemplates.aspx?action=save&TemplateType=order",designStampUrl:"StampDesign.aspx",displayLineErrorsAsMessages:!0,displayLineMessagesOnLines:!0,displayErrorMessagesOnLoad:!0,displayLineErrorSummaryMessage:!0,hideHeaderMessageTypes:["ForwardOrderDateInvalid","OrderRequiresCustomerReference","OrderRequiresUniqueCustomerReference","OrderCustomerReferenceInvalid"],formatFieldsAsCurrency:[],headerCostCentreError:"InvalidCostCentresError",lineCostCentreError:"CostCentreError",autoBind:!0,triggerMessages:!0,includeInBrowserHistory:!0,reloadAfterOrderHeld:!0,getLatestOrderOnLoad:!1,displayingOrderInformation:!0,displayingOrderMessages:!1,saveAsTemplateUseModal:!1,usingCostCentres:!1,templateSaved:null,sessionTimeOutRedirectUrl:"login.aspx",validateOnLoad:!1,validateChanges:!1,textCheckoutErrorDefaultMessage:"There was an error preventing your checkout, please try again later",textCheckoutQuoteErrorDefaultMessage:"There was an error preventing your quote, please try again later",textSaveAsTemplateSuccessful:"Successfully saved your template",textRequestQuoteEmptyCartMessage:"Your cart is empty, please add products before you request a quote",textCancelQuoteEmptyCartMessage:"Your cart is empty, there is nothing to cancel",textQuoteCancelSuccessful:"Successfully cancelled the quote",textSubmitOrderNoItems:"Please add a product to your order before submitting your order",textErrorLinesHaveErrors:"Please review your cart - adjustments may be required",textErrorToggleLink:"<a class='show-hide-errors' href='javascript:void(0);' onclick='$.cv.css.orders.onlyShowErrors(this);'><span class='show-error'>show error lines<\/span><span class='show-all'>show all lines<\/span><\/a>",textHoldOrderConfirmSuccessful:"Order successfully placed on hold",textHoldOrderReferenceEmptyMessage:"Please enter a Hold Reference before putting your order on hold",textApplyMarkupPercent:"Invalid markup input, please enter a valid number",onlineDiscountFoundMessage:"Your order has been updated, please review the individual discounts.",onlineDiscountNotFoundMessage:"No discounts found",onlineDiscountCheckoutMessage:"Discounts have been calculated on your order, please review and proceed.",enableOrderComplete:!0,enableUpdateOrder:!0,enableOrderHolding:!1,enableSaveAsTemplate:!1,enableRequestQuote:!1,enableEmptyCart:!1,enableDesignStamps:!1,changeOrderAccount:!1,hasMultipleAccounts:!1,hidePricingInOrderGrid:!1,isRep:!1,isAdvancedQuoteOrder:!1,isIncTax:!0,linkToTaxToggleWidget:!1,gstPrompt:"GST",textOrderCompleteButtonLabel:"Complete Order",textUpdateOrderButtonLabel:"Update Order",textOrderHoldingButtonLabel:"Hold Order",textSaveAsTemplateButtonLabel:"Save As Template",textRequestQuoteButtonLabel:"Request Quote",textEmptyCartButtonLabel:"Empty Cart",textDesignStampsButtonLabel:"Design Stamps",textCancelQuoteButtonLabel:"Cancel Quote",orderNoOverride:0,enableStoreAvailabilityClickAndCollect:!1,isFromCartDeliveryOptionsStoreClickAndCollectWidget:!1,currentPickupStoreName:"",deliveryAddressModeClickAndCollect:"",deliveryModeTargetName:"delivery-mode",storeLocatorPageContentVersionTargetClass:"change-store-list",textPickupChosenNoStoreset:"Please choose a store location for order pickup",textDeliveryChosenNoStoreset:"Please choose a store location",deliveryAddressModeClickAndCollectNotSet:"Please select either Delivery or Pickup",useStoreWarehouseForClickAndCollectDelivery:!1,deliveryOptionPopupId:"",isForWarrantyClaim:!1,isWarrantyClaimRequiresPricingShown:!1,afterPayMinAmount:0,afterPayMaxAmount:0,afterPayNumberOfInstallments:4,afterPayEnabled:!1,openPayMinAmount:0,openPayMaxAmount:0,openPayNumberOfInstallments:4,openPayDepositPercent:10,openPayEnabled:!1,payRightEnabled:!1,payRightMinAmount:0,payRightMaxAmount:0,payRightDepositPercent:10,zipType:"ZipMoney",braintreePayPalExpressEnabled:!1,braintreePayPalExpressButtonId:"",braintreePayPalExpressButtonList:null,braintreePayPalExpressButtonsOptions:null,braintreePayPalPayLaterMessagesContainterId:"",enablePayLaterMessages:!1,viewTemplate:null,isOrderApprovalSummary:!1,isOnOrderAwaitingPaymentPage:!1,showZeroDollarFreightCharge:!0,isVisible:!0,isOnSubmitReturnPage:!1,isOrderAllEmailDelivery:!1,requireDepositOnPickup:!1,idPrefixOrderLinesForUpdateAllLines:"",defaultAddressMode:"None",showLineChargesAsSeparateLines:!0,addLineChargeAmountsToLineAmounts:!1,isCu
15stomerQuote:!1,isSavingCustomerQuote:!1,otherProductCode:"ZPRODUCT",labourCode:"ZLABOUR",customerQuoteConfirmationPageRedirectUrl:"customer-quote-confirmation",enableCartSummaryEdit:!1,enableCartSummaryEditAutoUpdate:!1,deletedLineMessage:"<a href='{0}'>{1}<\/a> was removed from Shopping Cart",forceOrderPackQty:!1,includeOrderLinesInOnHover:!1,quantityTarget:"OrderedQty",packQuantityTarget:"Product[0].PackQty",canUserCheckout:!0,sentCartWaitingToastMessage:"Cart waiting email sent successfully.",failedCartWaitingToastMessage:"Email failed to send for unexpected reasons.",cartEmptyCantSendCartWaitingToastMessage:"Cannot send Cart Waiting email as the cart is empty."},events:["dataBinding","dataBound",o,s,r],viewModel:null,view:null,_viewAppended:!1,_itemViewAppended:!1,initialise:function(t){var i=this,s=n(t).children(":first"),h,c,u,l,a,e,f,o;s.data("view")?i.view=s.html():(i._viewAppended=!0,h=i.options.viewTemplate?n("#"+i.options.viewTemplate).html():i._getDefaultViewTemplate(),c=kendo.template(h),i.view=c(i.options),i.element.html(i.view));u=n("#cart-summary-order-lines");u.length>0&&u.attr("data-role")==null&&(l=_.extend({},{},n(u).data()),u.orderLines(l));i.viewModel=i._getViewModel();a=i.element.children(":first");n.cv.css.trigger(n.cv.css.eventnames.viewModelBinding,{widgetName:this.name,widgetElement:this.element});kendo.bind(a,i.viewModel);n.cv.css.trigger(n.cv.css.eventnames.viewModelBound,{widgetName:this.name,widgetElement:this.element});n.cv.css.bind(n.cv.css.eventnames.orderChanged,n.proxy(i.viewModel.cartUpdated,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.forceCartLoadAndValidate,n.proxy(i.viewModel.forceLoadAndValidate,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.orderSubmitted,n.proxy(i.viewModel.cartUpdated,i.viewModel));n.cv.css.isOciExpressCheckout&&i.options.getLatestOrderOnLoad||n.cv.css.bind(n.cv.css.eventnames.localOrderChanged,n.proxy(i.viewModel.reloadCart,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.checkoutMessages,n.proxy(i.viewModel.checkoutOptionsUpdated,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.loggingOut,n.proxy(i.viewModel.loggingOut,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.gettingLines,n.proxy(i.viewModel.gettingLines,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.gettingOrder,n.proxy(i.viewModel.gettingOrder,i.viewModel));i.options.isOrderApprovalSummary&&n.cv.css.bind(n.cv.css.eventnames.viewApprovalOrder,function(n){if(n){var t={};t.orderNoOverride=n.SoOrderNo;t.isOrderApprovalSummary=i.options.isOrderApprovalSummary;i.viewModel.cartUpdated(t);i.trigger(r,t)}});i.options.linkToTaxToggleWidget&&n.cv.css.bind(n.cv.css.eventnames.setTaxToggle,n.proxy(i.viewModel.setCartTotal,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.showDeliveryOptionPopup,n.proxy(i.viewModel.showDeliveryOptionPopup,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.deliveryMethodClickAndCollectOnOrderChanged,n.proxy(i.viewModel.deliveryMethodClickAndCollectOnOrderChanged,i.viewModel));i.options.isForWarrantyClaim&&n.cv.css.bind(n.cv.css.eventnames.warrantyClaimReasonCodeSelected,n.proxy(i.viewModel._warrantyClaimReasonCodeSelected,i.viewModel));i.options.displayingOrderMessages&&(e=n.cv.css.localGetOrderSummaryMessages(),e!=null&&e.length>0&&(n.cv.css.localSetOrderSummaryMessages(null),n.each(e,function(t,i){n.cv.css.trigger(n.cv.css.eventnames.message,{message:i,type:n.cv.css.messageTypes.info,source:"orderSummaryOrderMessage",clearExisting:!1})})));i.options.isOnOrderAwaitingPaymentPage&&n.cv.css.bind(n.cv.css.eventnames.viewOrderAwaitingPayment,n.proxy(i.viewModel.viewOrderAwaitingPaymentTriggered,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.showOrderSummary,n.proxy(i.viewModel.showOrderSummary,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.hideOrderSummary,n.proxy(i.viewModel.hideOrderSummary,i.viewModel));i.options.isOnSubmitReturnPage&&n.cv.css.bind(n.cv.css.eventnames.returnReasonCodeSelected,function(n){i.viewModel.cartUpdated(n);i.trigger(r,n)});i.options.requireDepositOnPickup&&(f=i.viewModel,o=f.get("order.DeliveryMethodClickAndCollect"),o!==undefined?f.set("showDepositInformationPrompt",o.toLowerCase()==="pickup"):f.set("showDepositInformationPrompt",!1),n.cv.css.bind(n.cv.css.eventnames.deliveryAddressModeChanged,function(t){n.cv.util.hasValue(t,"message")!==!1&&f.set("showDepositInformationPrompt",t.message==="Pickup")}));i.viewModel.updatePayLaterMessages();i.viewModel.initNumericTextboxForOnHover();i.trigger(r)},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},_getViewModel:function(){var r=this,w=function(){if(r.options.displayingOrderInformation)if(r.options.getLatestOrderOnLoad)if(n.cv.css.isOciExpressCheckout)c.validateOrder(t);else{var i=r.options.orderNoOverride===0?n.cv.css.getCurrentOrder():n.cv.css.getOrder({orderNo:r.options.orderNoOverride,isLocalSetSelectedOrder:!0});n.when(i).done(function(t){var i=n.cv.util.hasValue(t,"data[0]")?t.data[0]:undefined;n.cv.css.trigger(n.cv.css.eventnames.orderChanged,i)})}else c.get("order")==null?c.reloadCart():r.options.validateOnLoad&&c.items()>0&&c.validateOrder(),c.getAndSetLinesForOnHover(),c.updateAfterpayInfo(),c.updateOpenpayInfo(),c.updatePayRightInfo();r.options.linkToTaxToggleWidget&&c.setCartTotal()},a=function(n){return r.options.formatFieldsAsCurrency.length>0&&n!=null&&_.each(r.options.formatFieldsAsCurrency,function(t){_.has(n,t)&&(n[t]=kendo.toString(n[t],"c"))}),n},v=function(){return r.options.orderNoOverride===0?n.cv.css.localGetCurrentOrder(!1):n.cv.css.localGetSelectedOrder(r.o
15ptions.orderNoOverride,"",!1)},y=function(){return r.options.orderNoOverride===0?n.cv.css.localGetCurrentOrderLines():n.cv.css.localGetSelectedOrderLines()},p=function(){r.options.orderNoOverride===0?n.cv.css.localRemoveUpdatedCurrentOrderLines():n.cv.css.localRemoveUpdatedSelectedOrderLines()},b=function(){return r.options.orderNoOverride===0?n.cv.css.localGetUpdatedCurrentOrderLines():n.cv.css.localGetUpdatedSelectedOrderLines()},k=function(t){r.options.orderNoOverride===0?n.cv.css.localUpdateCurrentOrderLines(t):n.cv.css.localUpdateSelectedOrderLines(t)},d=r.options.braintreePayPalExpressEnabled||r.options.enablePayLaterMessages?n.cv.css.braintree.getBraintreePayPalExpressButtonViewModel():null,c=kendo.observable(n.extend({},d,{order:a(r.options.orderNoOverride===0?n.cv.css.localGetCurrentOrder():n.cv.css.localGetSelectedOrder(r.options.orderNoOverride,"",!1)),enableOrderComplete:r.options.enableOrderComplete,enableUpdateOrder:r.options.enableUpdateOrder,enableOrderHolding:r.options.enableOrderHolding,enableSaveAsTemplate:r.options.enableSaveAsTemplate,enableRequestQuote:r.options.enableRequestQuote,enableEmptyCart:r.options.enableEmptyCart,enableCancelQuote:r.options.isAdvancedQuoteOrder,canUserCheckout:r.options.canUserCheckout,enableDesignStamps:function(){var n=this.get("order");return n==null?!1:n.HasStamps!="undefined"?n.HasStamps:!1},enableAccountSelect:function(){return this.get("isRep")||this.get("hasMultipleAccounts")},hasMultipleAccounts:r.options.hasMultipleAccounts,changeOrderAccount:r.options.changeOrderAccount,hidePricingInOrderGrid:r.options.hidePricingInOrderGrid,isRep:r.options.isRep,textOrderCompleteButtonLabel:r.options.textOrderCompleteButtonLabel,textUpdateOrderButtonLabel:r.options.textUpdateOrderButtonLabel,textOrderHoldingButtonLabel:r.options.textOrderHoldingButtonLabel,textSaveAsTemplateButtonLabel:r.options.textSaveAsTemplateButtonLabel,textRequestQuoteButtonLabel:r.options.textRequestQuoteButtonLabel,textEmptyCartButtonLabel:r.options.textEmptyCartButtonLabel,textDesignStampsButtonLabel:r.options.textDesignStampsButtonLabel,textCancelQuoteButtonLabel:r.options.textCancelQuoteButtonLabel,deliveryAddressModeClickAndCollect:r.options.deliveryAddressModeClickAndCollect,isWarrantyClaimRequiresPricingShown:r.options.isWarrantyClaimRequiresPricingShown,showZeroDollarFreightCharge:r.options.showZeroDollarFreightCharge,isVisible:r.options.isVisible,isOrderAllEmailDelivery:r.options.isOrderAllEmailDelivery,initNumericTextboxForOnHover:function(){if(r.options.includeOrderLinesInOnHover&&r.options.enableCartSummaryEdit){var t=this;n(r.element).find(".form-number").each(function(){var i=this;n.cv.util.kendoNumericTextBox(i,function(){var r=n(n(i).data("kendoNumericTextBox").element).closest(n.cv.css.kendoNumericTextContainer).find(n.cv.css.kendoNumericTextBoxPlus)[0].kendoBindingTarget.source;t.cartChangedForOnHover(r)})})}},showOrderSummary:function(){var n=this;n.set("isVisible",!0)},hideOrderSummary:function(){var n=this;n.set("isVisible",!1)},showZipPopup:function(t){n.cv.util.showZipPopup(t,r.options.zipType)},orderLineAmountTotal:function(){var t=0,i=n.cv.css.localGetCurrentOrderLines();return this.get("order")&&i!==null&&n.each(i,function(n,i){i.LineType==="SN"&&(t+=i.OrderLineAmount)}),kendo.toString(t,"c")},orderLineAmountTotalExTax:function(){var t=0,i=n.cv.css.localGetCurrentOrderLines();return this.get("order")&&i!==null&&n.each(i,function(n,i){i.LineType==="SN"&&(t+=i.OrderLineAmountExTax)}),kendo.toString(t,"c")},orderTotalNumeric:function(){return Number(this.orderTotal().replace(/[^0-9.-]+/g,""))},orderTotal:function(){return this.get("order")!=null&&this.get("order.OrderTotalAmount")!=undefined?kendo.toString(this.get("order.OrderTotalAmount"),"c"):kendo.toString(0,"c")},orderTotalBeforeDiscount:function(){return this.get("order")!=null&&this.get("order.SoOrderTotalAmount")!=undefined?kendo.toString(this.get("order.SoOrderTotalAmount"),"c"):kendo.toString(0,"c")},orderTotalAmountLessCharges:function(){return this.get("order")!=null&&this.get("order.OrderTotalAmountLessCharges")!=undefined?kendo.toString(this.get("order.OrderTotalAmountLessCharges"),"c"):kendo.toString(0,"c")},orderTotalAmountLessChargesCustomerDefined:function(){return this.get("order")!=null&&this.get("order.OrderTotalAmountLessChargesCustomerDefined")!=undefined?kendo.toString(this.get("order.OrderTotalAmountLessChargesCustomerDefined"),"c"):kendo.toString(0,"c")},orderTotalAmountLessChargesExTax:function(){return this.get("order")!=null&&this.get("order.OrderTotalAmountLessChargesExTax")!=undefined?kendo.toString(this.get("order.OrderTotalAmountLessChargesExTax"),"c"):kendo.toString(0,"c")},orderTotalAmountLessChargesIncTax:function(){return this.get("order")!=null&&this.get("order.OrderTotalAmountLessChargesIncTax")!=undefined?kendo.toString(this.get("order.OrderTotalAmountLessChargesIncTax"),"c"):kendo.toString(0,"c")},orderTotalAmountBeforeDiscountLessChargesCustomerDefined:function(){return this.get("order")!=null&&this.get("order.OrderTotalAmountBeforeDiscountLessChargesCustomerDefined")!=undefined?kendo.toString(this.get("order.OrderTotalAmountBeforeDiscountLessChargesCustomerDefined"),"c"):kendo.toString(0,"c")},orderTotalAmountBeforeDiscountLessChargesExTax:function(){return this.get("order")!=null&&this.get("order.OrderTotalAmountBeforeDiscountLessChargesExTax")!=undefined?kendo.toString(this.get("order.OrderTotalAmountBeforeDiscountLessChargesExTax"),"c"):kendo.toString(0,"c")},orderTotalAmountBeforeDiscountLessChargesIncTax:function(){return this.get("order")!=null&&this.get("order.OrderTotalAmountBeforeDiscountLessChargesIncTax")!=undefined?kendo.toString(this.get("order.OrderTotalAmountBeforeDiscountLessChargesIncTax"),"c"):kendo.toString(0,"c")},orderTotalAmountAfterDiscountLessChargesExTax:function(){return this.get("order")!=null&&this.get("order.OrderTotalAmountBeforeDiscountLessChargesExTax")!=undefined?kendo.toString(this.get("order.OrderTotalAmountBeforeDiscountLessChargesExTax")-(this.get("order")?this.promotionalDiscountTotal(!0,!0):0),"c"):kendo.toString(0,"c")},orderTotalAmountAfterDiscountLessChargesIncTax:function(){return this.get("order")!=null&&this.get("order.OrderTotalAmountBeforeDiscountLessChargesIncTax")!=undefined?kendo.toString(this.get("order.OrderTotalAmountBeforeDiscountLessChargesIncTax")-(this.get("order")?this.promotionalDiscountTotal(!0,!1):0),"c"):kendo.toString(0,"c")},orderTotalExTax:function(){return this.get("order")!=null&&this.get("order.OrderTotalAmountExGst")!=undefined?kendo.toString(this.get("order.OrderTotalAmountExGst"),"c"):kendo.toString(0,"c")},taxRate:function(){return this.get("order")!=null&&this.get("order.TaxRate")!=undefined?this.get("order.TaxRate"):0},orderTotalTax:function(){return this.get("order")!=null&&this.get("order.OrderTotalTax")!=undefined?kendo.toString(this.get("order.OrderTotalTax"),"c"):kendo.toString(0,"c")},orderTotalCharges:function(){return this.get("order")!=null&&this.get("order.SoOrderTotalCharges")!=undefined?kendo.toString(this.get("order.SoOrderTotalCharges"),"c"):kendo.toString(0,"c")},orderSubTotal:function(){var t=this.get("order.OrderTotalAmountForOrderSummary");return kendo.toString(n.cv.util.hasValue(t)?t:0,"c")},hasWholeOrderDiscount:function(){var n=this.get("order.WholeOrderDiscountAmountExcTax");return n>0},wholeOrderDiscountExTax:function(){var t=-this.get("order.WholeOrderDiscountAmountExcTax");return kendo.toString(n.cv.util.hasValue(t)?t:0,"c")},wholeOrderDiscountIncTax:function(){var t=-this.get("order.WholeOrderDiscountAmountIncTax");return kendo.toString(n.cv.util.hasValue(t)?t:0,"c")},wholeOrderDiscountDescription:function(){return this.get("order.WholeOrderDiscountDescription")},promotionalDiscountAmount:function(){return this.get("order")!=null&&this.get("order.SoPromotionalDiscountAmount")!=undefined?kendo.toString(this.get("order.SoPromotionalDiscountAmount"),"c"):kendo.toString(0,"c")},promotionalDiscountAmountIncGst:function(){return this.get("order")!=null&&this.get("order.SoPromotionalDiscountAmountIncGST")!=undefined?kendo.toString(this.get("order.SoPromotionalDiscountAmountIncGST"),"c"):kendo.toString(0,"c")},promotionalDiscountAmountExGst:function(){return this.get("order")!=null&&this.get("order.SoPromotionalDiscountAmountExGST")!=undefined?kendo.toString(this.get("order.SoPromotionalDiscountAmountExGST"),"c"):kendo.toString(0,"c")},promotionalDiscountTax:function(){return this.get("order")!=null&&this.get("order.SoPromotionalTaxAmount")!=undefined?kendo.toString(this.get("order.SoPromotionalTaxAmount"),"c"):kendo.toString(0,"c")},hasPromotionDiscount:function(){return this.get("order")!=null&&this.get("order.SoPromotionalDiscountAmount")!=undefined?this.get("order.SoPromotionalDiscountAmount")>0:!1},promotionalDiscountAmountExclusiveExGst:function(){var n=this.get("order")?this.promotionalDiscountTotal(!1,!0):0;return kendo.toString(n,"c")},promotionalDiscountAmountInclusiveExGst:function(){var n=this.get("order")?this.promotionalDiscountTotal(!0,!0):0;return kendo.toString(n,"c")},promotionalDiscountAmountExclusiveIncGst:function(){var n=this.get("order")?this.promotionalDiscountTotal(!1,!1):0;return kendo.toString(n,"c")},promotionalDiscountAmountInclusiveIncGst:function(){var n=this.get("order")?this.promotionalDiscountTotal(!0,!1):0;return kendo.toString(n,"c")},promotionalDiscountTotal:function(t,i){var r=0,u=c.getPromoCodesOfType(t);return n.each(u,function(t,u){var o=c.get("order.PromotionalCodeAmounts"),f,e;n.cv.util.hasValue(o)&&(f=n.grep(o,function(n){return n.PromotionCode===u.PromotionCode}),f.length>0&&(e=f[0],r+=e.TotalAmount,i&&(r-=e.TotalAmountTax)))}),r},hasValidPromotionCodes:function(){var t=0;return this.get("order")!=null&&this.get("order.PromotionalCodes")!=undefined&&n.each(this.get("order.PromotionalCodes"),function(n,i){i.IsValidOnCurrentOrder&&t++}),t>0},hasPromotionCodes:function(){return this.get("order")!=null&&this.get("order.PromotionalCodes")!=undefined?this.get("order.PromotionalCodes").length>0:!1},hasInclusivePromotionCodes:function(){return this.hasPromotionCodeType(!0)},hasExclusivePromotionCodes:function(){return this.hasPromotionCodeType(!1)},hasNoPromotionCodes:function(){return this.hasNoPromotionCodeType()},hasBothInclusiveAndExclusivePromotionCodes:function(){return this.hasBothPromotionCodeType()},hasValidInclusivePromotionCodes:function(){return this.hasValidPromotionCodeType(!0)},hasValidExclusivePromotionCodes:function(){return this.hasValidPromotionCodeType(!1)},hasValidPromotionCodeType:function(t){if(this.hasPromotionCodes()){var i=0,r=this.getPromoCodesOfType(t);return n.each(r,function(n,t){t.IsValidOnCurrentOrder&&i++}),i>0}return!1},hasPromotionCodeType:function(n){if(this.hasPromotionCodes()){var t=this.getPromoCodesOfType(n);return t.length>0}return!1},hasPromotionCodeTypeOnly:function(n){var t=this.getPromoCodesOfType(!0),i=this.getPromoCodesOfType(!1);return this.hasPromotionCodes()?n?t.length>0&&i.length<=0:i.length>0&&t.length<=0:!1},hasNoPromotionCodeType:function(){if(this.hasPromotionCodes())return!1;var n=this.getPromoCodesOfType(!0),t=this.getPromoCodesOfType(!1);return n.length<=0&&t.length<=0},hasBothPromotionCodeType:function(){var n=this.getPromoCodesOfType(!0),t=this.getPromoCodesOfType(!1);return this.hasPromotionCodes()?n.length>0&&t.length>0:!1},getPromoCodesOfType:function(t){return this.get("order")!=null&&this.get("order.PromotionalCodes")!=undefined?n.grep(this.get("order.PromotionalCodes"),function(n){return n.IsInclusive===t}):[]},hasLoyaltyRewardChargeLine:function(){return this.get("order")!=null&&this.get("order.HasLoyaltyRewardChargeLine")!=undefined?this.get("order.HasLoyaltyRewardChargeLine"):!1},loyaltyRewardAmount:function(){return this.get("order.OrderLoyaltyRewardLineAmount")},removeLoyaltyReward:function(){this.set("isRemovingLoyaltyReward",!0);n.cv.css.trigger(n.cv.css.eventnames.confirmRewardRemoval)},hasOrderCharges:function(){return this.get("order")!=null&&this.get("order.SoOrderTotalCharges")!=undefined?this.get("order.SoOrderTotalCharges")>0:!1}
15,orderTotalChargesLessFreightIncGst:function(){var n=this.get("order")!=null&&this.get("order.SoOrderTotalCharges")!=undefined?this.get("order.SoOrderTotalCharges"):0,t=this.get("order")!=null&&this.get("order.FreightChargeAmount")!=undefined?this.get("order.FreightChargeAmount"):0;return kendo.toString(n-t,"c")},orderTotalChargesLessFreightExGst:function(){var n=this.get("order")!=null&&this.get("order.SoOrderTotalCharges")!=undefined?this.get("order.SoOrderTotalCharges"):0,t=this.get("order")!=null&&this.get("order.FreightChargeAmount")!=undefined?this.get("order.FreightChargeAmount"):0,i=(n-t)/(1+100/this.taxRate());return kendo.toString(n-t-i,"c")},hasOrderChargesLessFreight:function(){var n=this.get("order")!=null&&this.get("order.SoOrderTotalCharges")!=undefined?this.get("order.SoOrderTotalCharges"):0,t=this.get("order")!=null&&this.get("order.FreightChargeAmount")!=undefined?this.get("order.FreightChargeAmount"):0;return this.hasNegativeRetainedChargeLine()||n-t>0},hasNegativeRetainedChargeLine:function(){var t=n.cv.css.localGetCurrentOrderLines();return _.any(t,function(n){return n.AlwaysRetainChargeLine&&n.LineAmount<0})},freightChargeAmount:function(){return this.get("order")!=null&&this.get("order.FreightChargeAmount")!=undefined?kendo.toString(this.get("order.FreightChargeAmount"),"c"):kendo.toString(0,"c")},freightChargeAmountExTax:function(){return this.get("order")!=null&&this.get("order.FreightChargeAmountExTax")!=undefined?kendo.toString(this.get("order.FreightChargeAmountExTax"),"c"):kendo.toString(0,"c")},hasFreightCharge:function(){var n=this.get("order")!=null&&this.get("order.FreightChargeAmount")!=undefined?this.get("order.FreightChargeAmount"):0;return n>0||this.hasZerDollarFreightCharge()||this.hasFreightChargeLineRequiresQuote()},showFreightCharge:function(){if(this.showFreightChargeAfterExtraCharges())return!1;var n=this.get("order")!=null&&this.get("order.FreightChargeAmount")!=undefined?this.get("order.FreightChargeAmount"):0;return n>0?!0:this.hasZerDollarFreightCharge()||this.hasFreightChargeLineRequiresQuote()?this.showZeroDollarFreightCharge:!1},showFreightChargeAfterExtraCharges:function(){var n=this._getOrderFieldValueOrDefault("FreightProtectionAmount",0),t=this._getOrderFieldValueOrDefault("TailgateServiceAmount",0),i=this._getOrderFieldValueOrDefault("DangerousGoodsAmount",0);return n>0||t>0||i>0},showTailgateServiceCharge:function(){var n=this._getOrderFieldValueOrDefault("TailgateServiceAmount",0);return n>0},showFreightProtectionCharge:function(){var n=this._getOrderFieldValueOrDefault("FreightProtectionAmount",0);return n>0},freightChargeAmountPlusDangerousGoodsAmount:function(){var n=this._getOrderFieldValueOrDefault("FreightChargeAmountPlusDangerousGoodsAmount",0);return kendo.toString(n,"c")},freightChargeAmountPlusDangerousGoodsAmountExTax:function(){var n=this._getOrderFieldValueOrDefault("FreightChargeAmountPlusDangerousGoodsAmountExTax",0);return kendo.toString(n,"c")},tailgateServiceAmount:function(){var n=this._getOrderFieldValueOrDefault("TailgateServiceAmount",0);return kendo.toString(n,"c")},tailgateServiceAmountExTax:function(){var n=this._getOrderFieldValueOrDefault("TailgateServiceAmountExTax",0);return kendo.toString(n,"c")},freightProtectionAmount:function(){var n=this._getOrderFieldValueOrDefault("FreightProtectionAmount",0);return kendo.toString(n,"c")},freightProtectionAmountExTax:function(){var n=this._getOrderFieldValueOrDefault("FreightProtectionAmountExTax",0);return kendo.toString(n,"c")},_getOrderFieldValueOrDefault:function(n,t){if(this.get("order")!==null){var i=this.get("order.".concat(n));if(i!==undefined)return i}return t},hasZerDollarFreightCharge:function(){if(this.get("hasFreightChargeLineRequiresQuote"))return!1;var n=this.get("order")!=null&&this.get("order.FreightChargeAmount")!=undefined?this.get("order.FreightChargeAmount"):0;return n==0&&this.freightChargeLines().length>0},hasFreightChargeLineRequiresQuote:function(){return this.get("order")!=null&&this.get("order.HasFreightChargeLineRequiresQuote")!=undefined?this.get("order.HasFreightChargeLineRequiresQuote"):!1},showFreightChargeActualAmount:function(){return this.hasFreightChargeLineRequiresQuote()===!1&&this.hasZerDollarFreightCharge()===!1},freightChargeLines:function(){return this.get("order")!=null&&this.get("order.FreightChargeLine")!=undefined&&this.get("order.FreightChargeLine")!=null?this.get("order.FreightChargeLine"):[]},warrantyClaimLinesTotalAmount:function(){return this.get("order")!=null&&this.get("order.WarrantyClaimLinesTotalAmount")!=undefined?this.get("order.WarrantyClaimLinesTotalAmount"):0},warrantyClaimLinesTotalAmountExTax:function(){return this.get("order")!=null&&this.get("order.WarrantyClaimLinesTotalAmountExTax")!=undefined?this.get("order.WarrantyClaimLinesTotalAmountExTax"):0},hasWarrantyClaimLines:function(){var n=this.warrantyClaimLinesTotalAmount();return n>0},warrantyClaimServiceProductLinesTotalAmount:function(){return this.get("order")!=null&&this.get("order.WarrantyClaimServiceProductLinesTotalAmount")!=undefined?this.get("order.WarrantyClaimServiceProductLinesTotalAmount"):0},warrantyClaimServiceProductLinesTotalAmountExTax:function(){return this.get("order")!=null&&this.get("order.WarrantyClaimServiceProductLinesTotalAmountExTax")!=undefined?this.get("order.WarrantyClaimServiceProductLinesTotalAmountExTax"):0},hasWarrantyClaimServiceProductLines:function(){var n=this.warrantyClaimServiceProductLinesTotalAmount();return n>0},lineCount:function(){var n=this.get("order");return n!=null&&n.ItemLineCount!=undefined?n.ItemLineCount:0},isNotSingleLine:function(){return this.lineCount()!=1},items:function(){var n=this.get("order"),t=this.get("haslinesForOnHover"),i=this.get("linesForOnHover");return r.options.showLineChargesAsSeparateLines||t===!1?n!=null&&n.SoOrderPackages!=undefined?n.SoOrderPackages:0:_.reduce(i,function(n,t){return n+(t.isDeleted==!0?0:Math.ceil(t.OrderedQty))},0)},isNotSingleItem:function(){return this.items()!=1}
15,clickAndCollectPopupParams:null,showDeliveryOptionPopup:function(t){var i=this;r.options.deliveryOptionPopupId!==""&&(t&&t.e&&t.e.preventDefault(),i.set("clickAndCollectPopupParams",t),n.fancybox({href:"#"+r.options.deliveryOptionPopupId,padding:0,closeBtn:!1,autoSize:!0,afterShow:function(){r.options.braintreePayPalExpressEnabled&&(i.updatePayLaterMessages(),i.initBraintreePayPalExpressButton(r.options.braintreePayPalExpressButtonId,r.options.braintreePayPalExpressButtonList,r.options.braintreePayPalExpressButtonsOptions,!0))}}))},deliveryMethodClickAndCollectOnOrderChanged:function(n){var t=this;t.set("order.DeliveryMethodClickAndCollect",n);t.set("deliveryAddressModeClickAndCollect",n)},clickAndCollectPopupCancel:function(){var t=this;t.clearMessage();n.fancybox.close()},clickAndCollectPopupConfirm:function(){var i=this,r=i.validateClickAndCollectMode(),t;r&&(n.fancybox.close(),t=i.get("clickAndCollectPopupParams"),t&&t.addToCart())},validateClickAndCollectMode:function(){var t=this,i;return t.clearMessage(),i=t.get("deliveryAddressModeClickAndCollect"),i===""?(t.setMessage(r.options.deliveryAddressModeClickAndCollectNotSet,n.cv.css.messageTypes.error),!1):!0},validateClickAndCollectProduct:function(){var t=this,n=t.get("clickAndCollectPopupParams");return n?n.validate():!0},setDeliveryAddressModeClickAndCollect:function(t){var e,o,i,f,u,s,h;if(t=t||{},e=t.forceUpdateEvenIfMethodIsSelected||!1,o=t.forceUpdate||!1,e&&(o=!0),i=this,i.clearMessage(),f=i.get("deliveryAddressModeClickAndCollect"),u=this.get("order.DeliveryMethodClickAndCollect"),!r.options.enableStoreAvailabilityClickAndCollect&&!o){n('input[name="'+r.options.deliveryModeTargetName+'"]').val([u]);return}if(s=r.options.currentPickupStoreName,s.length===0&&f==="Pickup"){i.setMessage(r.options.textPickupChosenNoStoreset,n.cv.css.messageTypes.error);n("."+r.options.storeLocatorPageContentVersionTargetClass).show();n('input[name="'+r.options.deliveryModeTargetName+'"]').val([u]);return}if(s.length===0&&f==="Delivery"&&r.options.useStoreWarehouseForClickAndCollectDelivery){i.setMessage(r.options.textDeliveryChosenNoStoreset,n.cv.css.messageTypes.error);n("."+r.options.storeLocatorPageContentVersionTargetClass).show();n('input[name="'+r.options.deliveryModeTargetName+'"]').val([u]);return}(e!=!1||f!==u)&&(h=n.cv.css.deliveryAddress.setDeliveryMethodClickAndCollectOnOrder({deliveryMode:f}),i.set("processing",!0),h.done(function(t){var e=t.data,o,s;if(!t.sessionHasTimedOut)if(t.errorMessage&&t.errorMessage.length!==0)i.setMessage(t.errorMessage,n.cv.css.messageTypes.error),n('input[name="'+r.options.deliveryModeTargetName+'"]').val([u]),i.set("processing",!1);else if(e.Success)i.updateAllLines(r.options.idPrefixOrderLinesForUpdateAllLines,!0),i.set("order.DeliveryMethodClickAndCollect",f),i.set("processing",!1),n.cv.css.trigger(n.cv.css.eventnames.deliveryMethodClickAndCollectOnOrderChanged,f);else{if(e.Messages.length>0){for(o="",s=0;s<e.Messages.length;s++)o=o.length===0?e.Messages[s]:o+", "+e.Messages[s];i.setMessage(o,n.cv.css.messageTypes.error)}n('input[name="'+r.options.deliveryModeTargetName+'"]').val([u]);i.set("processing",!1)}}).fail(function(t){i.set("processing",!1);t.errorMessage!=null&&(i.setMessage(t.errorMessage,n.cv.css.messageTypes.error),n('input[name="'+r.options.deliveryModeTargetName+'"]').val([u]))}))},templateName:"",holdReference:"",hasValidHoldReference:function(){return!n.cv.util.isNullOrWhitespace(c.get("holdReference"))},orderSubmitting:!1,isCheckoutWithPaypalExpress:!1,processing:!1,isLoggingOut:!1,isProcessing:function(){return this.get("processing")},isSavingAsTemplate:!1,isHoldingOrder:!1,isUpdatingOrder:!1,isEmptyingCart:!1,isRequestingQuote:!1,isExportingOrder:!1,isCancellingQuote:!1,validationPreventing
15Checkout:!1,preventCheckout:!1,giftCards:[],orderTotalAfterGiftCards:0,hasGiftCards:!1,giftCardTotal:0,_getCurrentGiftCards:function(){var t=[],i=v(),u;if(i){var f=i.GiftCards||[],r=0,e=function(t){return function(){n.cv.css.trigger(n.cv.css.eventnames.giftCardRemoved,t)}};n.each(f,function(n,i){i.removeGiftCard=e(i.CardNumber);t.push(i);r+=i.AmountToUse});u=i.OrderTotalAmount-r;c.set("orderTotalAfterGiftCards",u);c.set("giftCardTotal",r)}return c.set("giftCards",t),c.set("hasGiftCards",t.length>0),t},viewOrderAwaitingPaymentTriggered:function(n){this.cartUpdated(n)},forceLoadAndValidate:function(t){var i=this;r.options.validateChanges===!0&&(i.set("processing",!0),i.clearMessage(),i.clearAllLineMessages(),i.updateAllLines(r.options.idPrefixOrderLinesForUpdateAllLines,!1,t&&n.cv.util.hasValue(t.triggerRefreshLines)),i.cartUpdated({forceRefetchOrder:!0}),i.set("processing",!1))},cartUpdated:function(i){var u=this,e=n.Deferred(),s=null,f=null,o;return n.cv.css.isOciExpressCheckout&&r.options.getLatestOrderOnLoad?(n.cv.util.hasValue(i)&&(i.forceRefetchOrder=!1),o=u.validateOrder(t)):o={},n.when(o).done(function(){var t=r.options.orderNoOverride===0,o;i&&n.cv.util.hasValue(i.orderNoOverride)&&(r.options.orderNoOverride=i.orderNoOverride);f=n.cv.util.hasValue(i)&&n.cv.util.hasValue(i.forceRefetchOrder)&&i.forceRefetchOrder===!0&&(n.cv.util.hasValue(i.isOnlyForWarranty)&&(i.isOnlyForWarranty===!0&&r.options.isForWarrantyClaim===!0||i.isOnlyForWarranty===!1)||!n.cv.util.hasValue(i.isOnlyForWarranty))?t?n.cv.css.getCurrentOrder():n.cv.css.getOrder({orderNo:r.options.orderNoOverride,isLocalSetSelectedOrder:!0}):t?n.cv.css.localGetCurrentOrder(r.options.displayingOrderInformation):n.cv.css.localGetSelectedOrder(r.options.orderNoOverride,"",!0);o=n.cv.css.isOciExpressCheckout||(i&&n.cv.util.hasValue(i.preventValidation)?i.preventValidation:!1);f!=null&&n.isFunction(f.promise)?e=f:e.resolve();e.done(function(){s=v();u.set("order",a(s));r.options.braintreePayPalExpressEnabled&&(r.viewModel.initBraintreePayPalExpressButton(r.options.braintreePayPalExpressButtonId,r.options.braintreePayPalExpressButtonList,r.options.braintreePayPalExpressButtonsOptions),r.viewModel.updatePayLaterMessages());u.clearMessage();r.viewModel._getCurrentGiftCards();!o&&(r.options.validateOnLoad||r.options.validateChanges)&&!u.get("isLoggingOut")&&!u.get("orderSubmitting")&&u.items()>0&&u.validateOrder();u.items()===0&&p();var t=!1,i=y();i!==null&&n.each(i,function(n,i){i.LineType==="SN"&&i.Product[0].AvailableForOneQty<=0&&!i.Product[0].IsEmailDelivery&&(t=!0)});u.getAndSetLinesForOnHover();u.set("hasProductCodesOutOfStock",t);u.set("isRemovingLoyaltyReward",!1);u.setCartTotal();r.options.isFromCartDeliveryOptionsStoreClickAndCollectWidget&&(u.set("isOrderAllEmailDelivery",f.IsOrderAllEmailDelivery),f.IsOrderAllEmailDelivery?(u.set("deliveryAddressModeClickAndCollect","Email"),u.setDeliveryAddressModeClickAndCollect({forceUpdate:!0})):u.get("order.DeliveryMethodClickAndCollect")==="Email"&&(u.set("deliveryAddressModeClickAndCollect",""),u.setDeliveryAddressModeClickAndCollect({forceUpdate:!0})));u.updateAfterpayInfo();u.updateOpenpayInfo();u.updatePayRightInfo();u.updatePayLaterMessages();u.initNumericTextboxForOnHover()})})},getOrderLinesFromLocalStorageForWidget:function(){var n=y();return n===null&&(n=[]),n},reloadCart:function(n){var t=this;t.cartUpdated(n)},checkoutOptionsUpdated:function(n){n.allCheckoutMessagesConfirmed!=undefined&&this.set("preventCheckout",!n.allCheckoutMessagesConfirmed)},loggingOut:function(){this.set("isLoggingOut",!0)},redirectToUrl:function(t,i,r){n.cv.ajax.settings.timeoutRedirectUrl==""?n.cv.util.redirect(t,i,!r):n.cv.util.redirect(n.cv.ajax.settings.timeoutRedirectUrl,i,!r)},message:"",clearExistingMessages:!0,displayErrorMessagesOnLoad:r.options.displayErrorMessagesOnLoad,setMessage:function(t,i,u){n.cv.util.notify(this,t,i,{triggerMessages:r.options.triggerMessages,source:r.name+(n.cv.util.hasValue(u)?u:"")})},clearMessage:function(){this.set("clearExistingMessages",!0);this.set("message","");r.options.triggerMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"orderSummary",clearExisting:this.get("clearExistingMessages")})},disableCheckout:function(){return this.get("isCheckoutWithPaypalExpress")===!0||this.get("orderSubmitting")===!0||this.get("preventCheckout")===!0||this.get("isGettingLines")===!0||this.get("isGettingOrder")===!0||this.get("canUserCheckout")===!1},isGettingLines:!1,gettingLines:function(n){this.set("isGettingLines",n)},isGettingOrder:!1,gettingOrder:function(n){this.set("isGettingOrder",n)},displayLineMessages:function(t,i){n(r.options.linesElement).each(function(u,f){var e=n(f).data(r.options.linesData);e&&e.displayLineMessages(t,i)})},_warrantyClaimReasonCodeSelected:function(t){var i=this;r.options.isForWarrantyClaim&&n.cv.util.hasValue(t)&&n.cv.util.hasValue(t.warrantyClaimRequiresPricingShown)&&i.set("isWarrantyClaimRequiresPricingShown",t.warrantyClaimRequiresPricingShown)},updateAllLines:function(t,i,u){i===void 0&&(i=!0);u===void 0&&(u=!1);var f=(n.cv.util.hasContent(t)?"[id^='"+t+"']":"")+r.options.linesElement;n(f).each(function(t,f){var e=n(f).data(r.options.linesData);e&&e.updateAllLines(undefined,undefined,i,u)})},updateLinesFlaggedForUpdate:function(t,i,u){u===void 0&&(u=!1);var f=this,o={},e=n.Deferred(),s=this.deleteLinesFlaggedForDelete(!1,!1);return i=n.cv.css.isOciExpressCheckout?!1:i,u||f.set("isUpdatingOrder",!0),n(r.options.linesElement).each(function(u,f){var e=n(f).data(r.options.linesData);e&&(o=e.updateLinesFlaggedForUpdate(t,i))}),n.when(o,s).then(function(){e.resolve();f.set("isUpdatingOrder",!1)},function(){e.reject();f.set("isUpdatingOrder",!1)}),e},deleteOrderConfirmClick:function(){var t=this,i=t.deleteAllLines();n.when.apply(n,i).done(function(){n.cv.css.isOciExpressCheckout&&n.cv.css.trigger(n.cv.css.eventnames.orderChanged);n.fancybox.close()})},deleteAllLines:function(){var i=this,t;return i.set("isEmptyingCart",!0),t=[],n(r.options.linesElement).each(function(i,u){var f=n(u).data(r.options.linesData);f&&t.push(f.deleteAllLines(!0))}),t.length===0&&t.push(n.Deferred()),n.when.apply(n,t).done(function(){i.set("isEmptyingCart",!1)}),t},deleteLinesFlaggedForDelete:function(t,i){var u=n.Deferred();return i=n.cv.css.isOciExpressCheckout?!1:i,n(r.options.linesElement).each(function(f,e){var o=n(e).data(r.options.linesData);o?u=o.deleteLinesFlaggedForDelete(t,i):u.resolve()}),u},addOtherProduct:function(){n.cv.css.customerQuote.showCustomerQuoteAddProduct({productC
15ode:r.options.otherProductCode})},addLabour:function(){n.cv.css.customerQuote.showCustomerQuoteAddProduct({productCode:r.options.labourCode})},changeProject:function(){n.cv.css.customerQuote.showCustomerQuoteChangeProject({})},changeMarkup:function(){n.fancybox.open({modal:!0,topRatio:"0.25",padding:"0",href:"#change-markup-dialog"})},applyMarkup:function(t){var u=this,i=t.data.markupPercent;isNaN(i)?u.setMessage(r.options.textApplyMarkupPercent,n.cv.css.messageTypes.error):n(r.options.linesElement).each(function(t,u){var f=n(u).data(r.options.linesData);f&&(n.each(f.dataSource.view(),function(n,t){t.MarkupPercent=i;var r=t.ItemPrice*(1+i/100);t.MarkupPrice=Math.round(r*100)/100;t.requiresUpdate=!0}),c.updateLinesFlaggedForUpdate(!0,!0,!1))});n.fancybox.close()},markupPriceTotal:function(){return this.get("order")!=null&&this.get("order.MarkupPriceTotal")!=undefined?kendo.toString(this.get("order.MarkupPriceTotal"),"c"):kendo.toString(0,"c")},markupPriceTotalTax:function(){return this.get("order")!=null&&this.get("order.MarkupPriceTotalTax")!=undefined?kendo.toString(this.get("order.MarkupPriceTotalTax"),"c"):kendo.toString(0,"c")},markupPriceTotalIncTax:function(){return this.get("order")!=null&&this.get("order.MarkupPriceTotalIncTax")!=undefined?kendo.toString(this.get("order.MarkupPriceTotalIncTax"),"c"):kendo.toString(0,"c")},isCustomerQuote:function(){return this.get("order")!=null&&this.get("order.IsConvertedToCustomerQuote")!=undefined?this.get("order.IsConvertedToCustomerQuote"):!1},submitCustomerQuote:function(){var t=this,i;t.set("isSavingCustomerQuote",!0);t.set("isProcessing",!0);i=n.cv.css.orders.submitCustomerQuote([]);n.when(i).done(function(i){var u=i.data;u.sessionHasTimedOut?t.redirectToUrl(u.sessionTimeOutRedirectUrl,{},!r.options.includeInBrowserHistory):(u.success?(n.cv.css.removeLocalStorage(n.cv.css.localStorageKeys.currentOrder),n.cv.css.removeLocalStorage(n.cv.css.localStorageKeys.currentOrderLines),n.cv.util.redirect(r.options.customerQuoteConfirmationPageRedirectUrl,{sq:u.sq},r.options.includeInBrowserHistory)):t.setMessage(u.message,n.cv.css.messageTypes.error),t.set("processing",!1),t.set("isSavingCustomerQuote",!1))}).fail(function(i){t.set("processing",!1);t.set("isSavingCustomerQuote",!1);i.errorMessage!=null&&t.setMessage(i.errorMessage,n.cv.css.messageTypes.error)})},getLinesToValidate:function(){var i=[],r=[],n=[],u="",t=b();return t==null&&(t={addedLines:[],updatedLines:[],linesDeleted:!1}),i=t.updatedLines,r=t.addedLines,i!=null&&r!=null?n=_.union(i,r):i!=null?n=i:r!=null&&(n=r),n!=null&&n.length>0?u=_.reduce(n,function(n,t){return n+","+t}):t.linesDeleted!=undefined&&t.linesDeleted&&(u="0"),u.toString()},validateOrder:function(o){var s=this,a="",v=s.get("order"),c=n.Deferred(),l;if(o!==t&&(n.cv.css.syncValidation.gettingOrder||n.cv.css.syncValidation.gettingLines))return c.resolve(),c;if(v&&v._objectKey){l=void 0;switch(o){case undefined:l=i.Cart;break;case e:case t:l=o;break;case u:l=i.OrderSubmit;break;default:l=i.Checkout}a=s.getLinesToValidate();
15s.set("validationPreventingCheckout",!1);n.cv.css.trigger(n.cv.css.eventnames.validateOrderStarted);n.cv.css.orders.validateForCheckout({_objectKey:v._objectKey,validationMode:l,linesToValidate:a,markAsStandingOrder:o==f}).done(function(i){var l=i.data,v={};if(p(),l.modifiedLines&&l.modifiedLines.length>0&&(k(l.modifiedLines),n.cv.css.trigger(n.cv.css.eventnames.localOrderChanged,{preventValidation:!0})),l.substitutedProds&&l.substitutedProds.length>0&&n.cv.css.refreshCurrentOrder().done(function(){n.each(l.substitutedProds,function(t,i){s.setMessage(i,n.cv.css.messageTypes.info,"-product-substituted")});n.cv.css.trigger(n.cv.css.eventnames.localOrderChanged,{preventValidation:!0})}),n.cv.css.trigger(n.cv.css.eventnames.validateOrderComplete,l),l.sessionHasTimedOut)s.redirectToUrl(r.options.sessionTimeOutRedirectUrl,v,!r.options.includeInBrowserHistory),c.resolve();else{if(s.displayValidationMessages(l,a),o!==t&&!s.get("validationPreventingCheckout")&&s.get("orderSubmitting")?s.getLinesWithPreventCheckoutCount()==0?(o===f||o===u||o===e?n.cv.css.bind(n.cv.css.eventnames.preOrderSubmitComplete,function(){n.cv.util.redirect(l.orderCompletionRedirectUrl,v,!r.options.includeInBrowserHistory)}):o===h&&n.cv.css.bind(n.cv.css.eventnames.preOrderSubmitComplete,function(){s.placeQuote()}),n.cv.css.trigger(n.cv.css.eventnames.preOrderSubmit,{data:l})):s.setMessage(r.options.textErrorLinesHaveErrors.format(r.options.textErrorToggleLink),n.cv.css.messageTypes.error):s.get("validationPreventing
15Checkout")&&s.get("orderSubmitting")&&s.set("orderSubmitting",!1),o===t){var y=r.options.orderNoOverride===0,w=y?n.cv.css.refreshCurrentOrder():n.cv.css.getOrder({orderNo:r.options.orderNoOverride,isLocalSetSelectedOrder:!0}),b=y?{}:n.cv.css.getOrderLines({orderNo:r.options.orderNoOverride,isLocalSetSelectedOrderLines:!0});n.when(w,b).done(function(){n.cv.css.trigger(n.cv.css.eventnames.localOrderChanged);c.resolve()})}else c.resolve();s.set("processing",!1)}}).fail(function(t){s.set("processing",!1);t.errorMessage!=null?s.setMessage(t.errorMessage,n.cv.css.messageTypes.error):s.setMessage(r.options.textCheckoutErrorDefaultMessage,n.cv.css.messageTypes.error);c.resolve()})}else c.resolve();return c},linesForOnHover:[],haslinesForOnHover:!1,getAndSetLinesForOnHover:function(){var i=this,t=[],f=i.getOrderLinesFromLocalStorageForOnHover(),e,u;f!==null&&(e=function(t,i){var u=Math.floor(i.LineSeq),r=n.grep(t,function(n){return n.LineSeq==u});r.length===1&&(r[0].lineCharges==undefined&&(r[0].lineCharges=[]),r[0].lineCharges.push(i),r[0].hasLineCharges=!0)},n.each(f,function(n,i){i.lineCharges=[];i.hasLineCharges=!1;i.displayableOrderLineAmount=i.OrderLineAmount;i.displayableOrderLineAmountExTax=i.OrderLineAmountExTax;i.LineType==="SN"&&(r.options.showLineChargesAsSeparateLines?t.push(i):i.LineSeq%1==0?t.push(i):e(t,i))}),r.options.showLineChargesAsSeparateLines===!1&&r.options.addLineChargeAmountsToLineAmounts&&(u=function(n,t){return n.hasLineCharges?n[t]+_.reduce(n.lineCharges,function(n,i){return n+i[t]},0):n[t]},_.each(t,function(n){n.displayableOrderLineAmount=u(n,"OrderLineAmount");n.displayableOrderLineAmountExTax=u(n,"OrderLineAmountExTax")})));i.set("haslinesForOnHover",t.length>0);r.options.displayTopCount>0&&(t=r.options.linesSortDirection.toLowerCase()==="desc"?_.last(t,r.options.displayTopCount):_.first(t,r.options.displayTopCount));n.cv.util.hasContent(r.options.linesSortField)&&n.cv.util.hasValue(t,"[0]."+r.options.linesSortField)&&(t=_.sortBy(t,r.options.linesSortField),r.options.linesSortDirection.toLowerCase()==="desc"&&(t=t.reverse()));i.set("linesForOnHover",t)},getLinesWithErrorsCount:function(){var t=0;return n(r.options.linesElement).each(function(i,u){var f=n(u).data(r.options.linesData);f&&(t=f.getLineErrorCount())}),t},getLinesWithPreventCheckoutCount:function(){var t=0;return n(r.options.linesElement).each(function(i,u){var f=n(u).data(r.options.linesData);f&&(t=f.getLinePreventChecktoutCount())}),t},buildLineValidationMessageArray:function(n){var u=[],t,i;for(t in n)if(n.hasOwnProperty(t)){if(i={},i.lineMessages=n[t],!r.options.usingCostCentres&&n[t][0].errorType==r.options.lineCostCentreError)continue;u.push(i)}return u},displayValidationMessages:function(t,i){var u=this,e=!1,f,o;u.clearMessage();f=u.buildLineValidationMessageArray(t.lineValidationErrors);(t.headerValidationErrors.length>0||f.length>0)&&(u.set("clearExistingMessages",!1),u.set("isCreatingStandingOrder",!1),n.each(t.headerValidationErrors,function(t,i){n.inArray(i.errorType,r.options.hideHeaderMessageTypes)<0&&(i.preventsCheckOut?(u.set("validationPreventing
15Checkout",!0),(!u.get("orderSubmitting")&&u.get("displayErrorMessagesOnLoad")||u.get("orderSubmitting")||!r.options.usingCostCentres&&i.errorType==r.options.headerCostCentreError)&&u.setMessage(i.errorMessage,n.cv.css.messageTypes.error)):u.setMessage(i.errorMessage,n.cv.css.messageTypes.warning))}),r.options.displayLineMessagesOnLines&&(f.length>0?u.displayLineMessages(f,i):i.length>0&&u.clearLineMessages(i)),n.each(f,function(t,i){n.each(i.lineMessages,function(t,i){i.errorMessage!=""&&(e=!0);r.options.displayLineErrorsAsMessages&&i.errorMessage!=""&&(i.preventsCheckOut?(!u.get("orderSubmitting")&&u.get("displayErrorMessagesOnLoad")||u.get("orderSubmitting"))&&u.setMessage(i.lineSeq+", "+i.productCode+": "+i.errorMessage,n.cv.css.messageTypes.error):u.setMessage(i.lineSeq+", "+i.productCode+": "+i.errorMessage,n.cv.css.messageTypes.warning));i.preventsCheckOut&&u.set("validationPreventingCheckout",!0)})}),r.options.displayLineErrorSummaryMessage&&!r.options.displayLineErrorsAsMessages&&e&&(o=u.getLinesWithPreventCheckoutCount()>0,o?u.setMessage(r.options.textErrorLinesHaveErrors.format(r.options.textErrorToggleLink),n.cv.css.messageTypes.error):n.each(f,function(t,i){n.each(i.lineMessages,function(t,i){i.preventsCheckOut||(n.cv.util.isNullOrWhitespace(i.additonalUserFriendlyErrorMessage)?i.errorMessage&&u.setMessage(i.lineSeq+", "+i.productCode+": "+i.errorMessage,n.cv.css.messageTypes.warning):u.setMessage(i.additonalUserFriendlyErrorMessage,n.cv.css.messageTypes.warning))})})),u.set("clearExistingMessages",!0));f.length==0&&(r.options.displayLineMessagesOnLines&&u.displayLineMessages(f,i),u.clearLineMessages(i))},clearAllLineMessages:function(){var t=_.map(n.cv.css.localGetCurrentOrderLines(),function(n){return n.SolLineSeq.toString()});t&&this.clearLineMessages(t.join(","))},clearLineMessages:function(t){n(r.options.linesElement).each(function(i,u){var f=n(u).data(r.options.linesData);f&&f.clearLineMessages(t)})},processLineChanges:function(t){t===void 0&&(t=!1);var r=this,i=n.Deferred(),u=this.deleteLinesFlaggedForDelete(!1,!1),f=this.updateLinesFlaggedForUpdate(!1,!1,t);return n.when(u,f).then(function(){var t,u;n.cv.css.isOciExpressCheckout?i.resolve():(t={},t._detectSessionTimeout=!0,u=n.cv.css.getCurrentOrder(t),n.when(u).done(function(){var n=v();r.set("order",a(n));i.resolve()}))},function(){i.reject()}),i},placeQuote:function(){var t=this,i=n.cv.css.orders.requestQuote();n.when(i).done(function(i){var u=i.data,f={};u.sessionHasTimedOut?t.redirectToUrl(r.options.sessionTimeOutRedirectUrl,f,!r.options.includeInBrowserHistory):(u.Success?n.cv.util.redirect(u.RedirectUrl,f,!r.options.includeInBrowserHistory):(t.setMessage(r.options.textCheckoutQuoteErrorDefaultMessage,n.cv.css.messageTypes.error),t.set("isRequestingQuote",!1)),t.set("processing",!1))}).fail(function(i){t.set("processing",!1);t.set("isRequestingQuote",!1);i.errorMessage!=null?t.setMessage(i.errorMessage,n.cv.css.messageTypes.error):t.setMessage(r.options.textCheckoutQuoteErrorDefaultMessage,n.cv.css.messageTypes.error)})},checkOnlineDiscount:function(){var n=r.options;this.performOnlineDiscountCheck(n.onlineDiscountFoundMessage,n.onlineDiscountNotFoundMessage)},checkOnlineDiscountAndSubmitOrder:function(){var t=this,i;t.requireOnlineDiscountCalculation()?(i=t.performOnlineDiscountCheck(),i.done(function(i){var u=r.options.onlineDiscountCheckoutMessage;i===!1&&t.onlineDiscountEverFound()==!1?t._submitOrder():n.cv.css.trigger(n.cv.css.eventnames.message,{message:u,type:n.cv.css.messageTypes.warning})})):t._submitOrder()},onlineDiscountEverFound:function(){var n=this,t=n.linesWidget();return t.viewModel.onlineDiscountEverFound()},performOnlineDiscountCheck:function(n,t){var i=this,r=i.linesWidget();return r.viewModel.performOnlineDiscountCheck(n,t)},requireOnlineDiscountCalculation:function(){var i=this,t=i.linesWidget();return n.cv.util.hasValue(t)&&t.requireOnlineDiscountCalculation()},linesWidget:function(){return n(r.options.linesElement).data(r.options.linesData)},_submitOrder:function(t){var i,e;return t===void 0&&(t=!1),i=this,i.set("orderSubmitting",!0),i.set("processing",!0),e=n.Deferred(),i.processLineChanges(t).done(function(){if(i.items()>0){var o=t?f:u;i.validateOrder(o).done(function(){e.resolve()}).fail(function(){e.reject()})}else i.setMessage(r.options.textSubmitOrderNoItems,n.cv.css.messageTypes.error),i.set("processing",!1),i.set("orderSubmitting",!1),e.reject()}).fail(function(){i.set("processing",!1);i.set("orderSubmitting",!1);e.reject()}),e.promise()},submitOrder:function(){return this._submitOrder()},onBraintreePayPalExpressPaymentApproved:function(){var t=this,i=t.get("clickAndCollectPopupParams"),r=n.cv.util.hasValue(i);r?(t.clickAndCollectPopupCancel(),i.addToCart({braintreePayPalExpressPayload:t.get("braintreePayPalExpressPayload"),braintreeNonce:t.get("braintreeNonce")})):t.submitOrderPayPalExpress()},validateBraintreePayPalExpressCheckout:function(){var t=this;return n.cv.util.hasValue(t.get("clickAndCollectPopupParams"))===!1?!0:t.validateClickAndCollectMode()&&t.validateClickAndCollectProduct()},onBraintreePayPalExpressCheckoutValidationFailure:function(){n.fancybox.close()},braintreeEnableShippingAddress:function(){var n=this;return n.get("order.DeliveryMethodClickAndCollect")!=="Pickup"},updatePayLaterMessages:function(){var t=this,f=r.options.braintreePayPalPayLaterMessagesContainterId,i,u;n.cv.util.hasContent(f)&&(r.options.braintreePayPalExpressEnabled||r.options.enablePayLaterMessages)&&(i=t.get("clickAndCollectPopupParams"),u=n.cv.util.hasValue(i)?i.getProductPrice():t.getFinalPaymentAmount(),t.updateBraintreePayLaterMessages("cart",u))},getFinalPaymentAmount:function(){var t=this,i=t.get("clickAndCollectPopupParams");return n.cv.util.hasValue(i)?i.getFinalPaymentAmount():t.get("hasGiftCards")?t.get("orderTotalAfterGiftCards"):t.orderTotalNumeric()},submitOrderPayPalExpress:function(t){var i=this,f=!0,e,u;r.options.enableStoreAvailabilityClickAndCollect&&(e=i.get("order.DeliveryMethodClickAndCollect"),e===""&&(i.setMessage(r.options.deliveryAddressModeClickAndCollectNotSet,n.cv.css.messageTypes.error),f=!1));f&&(i.set("isCheckoutWithPaypalExpress",!0),u={e:t},r.options.braintreePayPalExpressEnabled&&(u.braintreePayload=i.get("braintreePayPalExpressPayload")),n.cv.css.trigger(n.cv.css.eventnames.checkoutWithPayPalExpress,u))},submitOrderOCIExpress:function(){var t=this;t.set("orderSubmitting",!0);t.set("processing",!0);t.processLineChanges().done(function(){t.items()>0?t.validateOrder(e):(t.setMessage(r.options.textSubmitOrderNoItems,n.cv.css.messageTypes.error),t.set("processing",!1),t.set("orderSubmitting",!1))}).fail(function(){t.set("processing",!1);t.set("orderSubmitting",!1)})},placeOrderOnHold:function(){var t=this,i=t.get("order"),u;i._objectKey&&(t.set("isHoldingOrder",!0),u=n.cv.css.orders.holdCurrentOrder({_objectKey:i._objectKey,triggerOrderChanged:!r.options.reloadAfterOrderHeld,triggerOrderSubmitted:!r.options.reloadAfterOrderHeld,holdreference:t.holdReference}),t.set("orderSubmitting",!0),t.set("processing",!0),n.when(u).done(function(u){var e=u.data,f;n.cv.css.trigger(n.cv.css.eventnames.refreshOutstandingTasksCount);e.sessionHasTimedOut?(f={},t.redirectToUrl(r.options.sessionTimeOutRedirectUrl,f,!r.options.includeInBrowserHistory)):(n.cv.css.localSetCurrentOrder(null),n.cv.css.localSetCurrentOrderLines(null),r.options.reloadAfterOrderHeld?n.cv.util.redirect(r.options.holdOrderRedirectUrl.format(i.SoOrderNo),{},!r.options.includeInBrowserHistory):(t.set("processing",!1),t.set("isHoldingOrder",!1),t.setMessage(r.options.textHoldOrderConfirmSuccessful,n.cv.css.messageTypes.success,"-on-hold-success")),t.set("holdReference",""))}).fail(function(i){t.set("processing",!1);t.set("isHoldingOrder",!1);i.errorMessage!=null?t.setMessage(i.errorMessage,n.cv.css.messageTypes.error):t.setMessage(r.options.textCheckoutErrorDefaultMessage,n.cv.css.messageTypes.error)}))},placeOrderOnHoldStayOnPage:function(){c.placeOrderOnHoldFromModal(!1)},placeOrderOnHoldRedirect:function(){c.placeOrderOnHoldFromModal(!0)},placeOrderOnHoldFromModal:function(t){c.hasValidHoldReference()?(r.o
15ptions.reloadAfterOrderHeld=t,c.placeOrderOnHold(),t||n.fancybox.close()):c.setMessage(r.options.textHoldOrderReferenceEmptyMessage,n.cv.css.messageTypes.error)},saveAsTemplate:function(){var t=this,i,u;t.set("isSavingAsTemplate",!0);r.options.saveAsTemplateUseModal?(i={},i.templateName=t.get("templateName"),u=n.cv.css.orderTemplate.createTemplateFromCurrentOrder(i),t.set("processing",!0),n.when(u).done(function(i){var f=i.data,u;f.sessionHasTimedOut?(u={},t.redirectToUrl(r.options.sessionTimeOutRedirectUrl,u,!r.options.includeInBrowserHistory)):(r.trigger(o),r.options.saveAsTemplateRedirectUrl!=""?n.cv.util.redirect(r.options.saveAsTemplateRedirectUrl,{},!r.options.includeInBrowserHistory):(t.setMessage(r.options.textSaveAsTemplateSuccessful,n.cv.css.messageTypes.success),t.set("processing",!1),t.set("isSavingAsTemplate",!1)),t.set("templateName",""))}).fail(function(i){i.errorMessage!=null&&t.setMessage(i.errorMessage,n.cv.css.messageTypes.error);t.set("isSavingAsTemplate",!1)})):(t.set("processing",!1),r.options.saveAsTemplateRedirectUrl!=""?n.cv.util.redirect(r.options.saveAsTemplateRedirectUrl,{},!r.options.includeInBrowserHistory):t.set("isSavingAsTemplate",!1))},requestQuote:function(){var t=this,i;this.items()>0?(this.set("processing",!0),this.set("orderSubmitting",!0),this.set("isRequestingQuote",!0),i=t.processLineChanges(),n.when(i).done(function(){t.validateOrder(h)})):this.setMessage(r.options.textRequestQuoteEmptyCartMessage,n.cv.css.messageTypes.error)},isCreatingStandingOrder:!1,createStandingOrder:function(){var t=this;t.items()>0?(t.set("isCreatingStandingOrder",!0),t._submitOrder(!0).fail(function(){t.set("isCreatingStandingOrder",!1)})):t.setMessage(r.options.textSubmitOrderNoItems,n.cv.css.messageTypes.error)},designStamps:function(){n.cv.util.redirect(r.options.designStampUrl,{},!r.options.includeInBrowserHistory)},cancelQuote:function(){var t=this,i;t.items()>0?(i=n.cv.css.orders.cancelQuoteOrder(),t.set("processing",!0),t.set("isCancellingQuote",!0),n.when(i).done(function(i){var u=i.data,f;i.sessionHasTimedOut?(f={},t.redirectToUrl(r.options.sessionTimeOutRedirectUrl,f,!r.options.includeInBrowserHistory)):n.cv.css.bindOnce(n.cv.css.eventnames.localOrderChanged,function(){console.log(arguments);r.trigger(s);u.RedirectUrl!==""?n.cv.util.redirect(u.RedirectUrl,{},!r.options.includeInBrowserHistory):(t.setMessage(r.options.textQuoteCancelSuccessful,n.cv.css.messageTypes.success),t.set("isCancellingQuote",!1));t.set("processing",!1)})}).fail(function(i){t.set("processing",!1);t.set("isCancellingQuote",!1);i.errorMessage!=null&&t.setMessage(i.errorMessage,n.cv.css.messageTypes.error)})):t.setMessage(r.options.textCancelQuoteEmptyCartMessage,n.cv.css.messageTypes.error)},hasProductCodesOutOfStock:!1,notifyMeWhenInStock:function(){var t={productCodes:"",hasOutOfStockNotify:!1,onChange:function(){n.cv.css.trigger(n.cv.css.eventnames.orderChanged)}};n.cv.css.trigger(n.cv.css.eventnames.stockAvailabilityNotifyShowPopup,t)},setCartTotal:function(t){var i=this,u=n.cv.util.hasValue(t)?t.isIncTax:i.isIncTax;i.set("cartTotal",u?i.orderTotal():i.orderTotalExTax());i.set("cartTaxLabel",n.cv.util.string.format("({0} {1})",u?"inc":"ex",r.options.gstPrompt));i.set("isIncTax",u)},exportCartToCsv:function(){var n=this,t=n.get("order");t._objectKey&&(n.set("isExportingOrder",!0),n.set("processing",!0),window.location.href="/OrderLineDownload.aspx",n.set("isExportingOrder",!1),n.set("processing",!1))},cartTotal:kendo.toString(0,"c"),cartTaxLabel:(r.options.isIncTax?"inc ":"ex ")+r.options.gstPrompt,isIncTax:r.options.isIncTax,afterPayOrderTotalInRange:!1,afterPayOrderTotalUnderMinAmount:!1,afterPayOrderTotalOverMaxAmount:!1,updateAfterpayInfo:function(){this.updateOrderTotalRangeInfo(r.options.afterPayEnabled,r.options.afterPayMinAmount,r.options.afterPayMaxAmount,"afterPayOrderTotalUnderMinAmount","afterPayOrderTotalOverMaxAmount","afterPayOrderTotalInRange")},getAfterPayInstallmentAmount:function(){var i=Number(this.orderTotal().replace(/[^0-9.-]+/g,"")),t=r.options.afterPayNumberOfInstallments;return isNaN(i)||isNaN(t)||t===0?0:n.cv.util.calculateAfterpayInstalment(i,t)},openPayOrderTotalInRange:!1,openPayOrderTotalUnderMinAmount:!1,openPayOrderTotalOverMaxAmount:!1,updateOpenpayInfo:function(){this.updateOrderTotalRangeInfo(r.options.openPayEnabled,r.options.openPayMinAmount,r.options.openPayMaxAmount,"openPayOrderTotalUnderMinAmount","openPayOrderTotalOverMaxAmount","openPayOrderTotalInRange")},openpayDepositAmount:function(){return this.openpayInstallmentAmount(!0)},openpayInstallmentAmount:function(t){t===void 0&&(t=!1);
15var i=Number(this.orderTotal().replace(/[^0-9.-]+/g,""));return n.cv.util.calculateOpenPayInstallments(i,r.options.openPayNumberOfInstallments,r.options.openPayDepositPercent,t)},payRightOrderTotalInRange:!1,payRightOrderTotalUnderMinAmount:!1,payRightOrderTotalOverMaxAmount:!1,updatePayRightInfo:function(){this.updateOrderTotalRangeInfo(r.options.payRightEnabled,r.options.payRightMinAmount,r.options.payRightMaxAmount,"payRightOrderTotalUnderMinAmount","payRightOrderTotalOverMaxAmount","payRightOrderTotalInRange")},payRightDepositAmount:function(){var n=Number(this.orderTotal().replace(/[^0-9.-]+/g,""));return Number((n*r.options.payRightDepositPercent/100).toFixed(2))},updateOrderTotalRangeInfo:function(n,t,i,r,u,f){if(n){var e=Number(this.orderTotal().replace(/[^0-9.-]+/g,"")),o=t>0&&e<t,s=i>0&&e>i;this.set(r,o);this.set(u,s);this.set(f,o===!1&&s===!1)}else this.set(r,!1),this.set(u,!1),this.set(f,!1)},isUpdateButtonEnabled:!1,isUpdating:!1,showDeleteConfirmation:!1,getOrderLinesFromLocalStorageForOnHover:function(){var n=this,t;return(n.set("isUpdateButtonEnabled",!1),t=n.getOrderLinesFromLocalStorageForWidget(),_.each(t,function(t){t.quantityTarget=r.options.quantityTarget;t.packQuantityTarget=r.options.packQuantityTarget;t.forceOrderPackQty=r.options.forceOrderPackQty;t.deletedLineMessage=n.getDeletedLineMessage(t);t.showDeleteConfirmation=!1;t.isProcessing=!1;t.isDeleted=!1;t.canLineBeModifiedByUser=n.canLineBeModifiedByUserForOnHover(t)}),!r.options.enableCartSummaryEdit||n.linesForOnHover.length===0)?t:n.handleOrderLinesFromCurrentStateForOnHover(t)},getDeletedLineMessage:function(n){return n.Product==null||!n.Product[0]?"":r.options.deletedLineMessage.format(n.Product[0]?n.Product[0].ActualUrl:"#",n.Description)},canLineBeModifiedByUserForOnHover:function(n){if(!r.options.enableCartSummaryEdit)return!1;var u=this,i=!1,t=u.getLineSourceForOnHover(n);return t&&t.canLineBeModifiedByUser&&(i=t.canLineBeModifiedByUser()),i},handleOrderLinesFromCurrentStateForOnHover:function(n){var i=this,t=i.linesForOnHover;if(t.length>0&&(t=_.filter(t,function(t){return t.isDeleted==!0&&!_.some(n,function(n){return n.StockCode==t.StockCode})})),r.options.enableCartSummaryEdit&&t.length>0){if(n.length===0)return t;n.push.apply(n,t)}return i.linesForOnHover=n,n},increaseQty:function(t){var u=this,i=t.data;n.cv.util.kendoNumericTextBoxIncrease(i,r.options.quantityTarget,r.options.packQuantityTarget,i.minQuantity);u.cartChangedForOnHover(i)},decreaseQty:function(t){var u=this,i=t.data;n.cv.util.kendoNumericTextBoxDecrease(i,i.minQuantity,r.options.quantityTarget,r.options.packQuantityTarget);u.cartChangedForOnHover(i)},deleteOrderLineForOnHoverClick:function(n){var i=this,t=n.data!==undefined?n.data:n;r.options.enableCartSummaryEditAutoUpdate?i.deleteOrderLineForOnHover(t):t.set("showDeleteConfirmation",!0)},deleteOrderLineForOnHoverCancel:function(n){var t=n.data;t.set("showDeleteConfirmation",!1)},deleteOrderLineForOnHoverOk:function(n){this.deleteOrderLineForOnHover(n.data)},deleteOrderLineForOnHover:function(t){var i=this,r,u;i.set("isUpdating",!0);t.set("showDeleteConfirmation",!1);t.set("isProcessing",!0);r=i.getLineSourceForOnHover(t);r&&(u=r.execCommand_destroy(!0),n.when(u).done(function(){t.set("isDeleted",!0)}).always(function(){i.set("isUpdating",!1);t.set("isProcessing",!1);i.cartChangedForOnHover(t)}))},execCommand_updateAllForOnHover:function(){var t=this,i;t.set("isUpdating",!0);i=t.updateLinesFlaggedForUpdate(!0,!0);n.when(i).done(function(){t.linesForOnHover=[];t.reloadCart()}).always(function(){t.set("isUpdating",!1)})},getLineSourceForOnHover:function(t){var i;return n(r.options.linesElement).each(function(u,f){var e=n(f).data(r.options.linesData);return e?(i=_.find(e.dataSource.view(),function(n){return n.LineSeq==t.LineSeq&&n.StockCode==t.StockCode}),!1):!0}),i},cartChangedForOnHover:function(t){var f=this,u,i;t&&(t.set("showDeleteConfirmation",!1),t.set("isProcessing",!0),u=n.Deferred(),t.isDeleted?u.resolve():t.OrderedQty<=0?(f.deleteOrderLineForOnHoverClick(t),u.resolve()):r.options.enableCartSummaryEditAutoUpdate?(i=f.getLineSourceForOnHover(t),i&&(i.set("OrderedQty",t.OrderedQty),u=i.execCommand_update(
15))):(i=f.getLineSourceForOnHover(t),i&&(i.set("OrderedQty",t.OrderedQty),i.set("requiresUpdate",!0)),f.set("isUpdateButtonEnabled",!0),u.resolve()),u.always(function(){t.set("isProcessing",!1)}))},onSendCartWaitingEmail:function(){var t=this,i=y();if(i==null||i.length===0){n.cv.css.trigger(n.cv.css.eventnames.message,{message:r.options.cartEmptyCantSendCartWaitingToastMessage,type:n.cv.css.messageTypes.error,source:"orderSummaryOrderMessage",clearExisting:!1});return}t.set("isSendingCartWaitingEmail",!0);n.cv.css.orders.sendCartWaitingEmail().done(function(t){n.cv.css.trigger(n.cv.css.eventnames.message,{message:t.data.result.Success?r.options.sentCartWaitingToastMessage:r.options.failedCartWaitingToastMessage,type:t.data.result.Success?"success":"error",source:"orderSummaryOrderMessage",clearExisting:!1})}).always(function(){t.set("isSendingCartWaitingEmail",!1)})},isSendingCartWaitingEmail:!1})),l;return r.options.isFromCartDeliveryOptionsStoreClickAndCollectWidget&&(l=r.options.defaultAddressMode==="None"?"":r.options.defaultAddressMode,r.options.deliveryAddressModeClickAndCollect===""&&n.cv.util.hasContent(r.options.currentPickupStoreName)&&n.cv.util.hasContent(l)&&r.options.deliveryAddressModeClickAndCollect!==l&&(c.set("deliveryAddressModeClickAndCollect",l),c.setDeliveryAddressModeClickAndCollect())),w(),c},_getDefaultViewTemplate:function(){return""}};n.cv.ui.widget(c)})(jQuery);
16(function(n){var t="beforesuccessfulformsubmit",i="formsubmitted",r="formsubmitfail",u={name:"formSubmit",extend:"mvvmwidget",options:{mailTo:"",token:"",sendToEndUser:!1,showHelpIcon:!1,emailFrom:"[email protected]",redirectTemplate:"",redirectRoute:"",subject:"",emailTemplateName:"",questionnaire
16Code:"",formFieldTypes:"input,select,textarea",formFieldPrefix:"CVFormField_",formHiddenFields:"mailto,EmailFrom,redirectroute,Subject,EmailTemplate,QuestionnaireCode,postmode,signatureImageData",fieldsStored:"",postmode:"emailform",captchaVersion:"DEFAULT",validateCaptcha:!1,captchaHash:"",useInvisibleCaptcha:!1,signatureMandatoryErrorMessage:"Signature is required",disableSignatureResign:!1,isMobileDevice:!1,signatureColor:"#000",signatureBackgroundColor:"#fff",getCurrentUserEmail:!0,loadQuestionnaireFields:!1,triggerMessages:!1,invalidCapture:"Incorrect validation code",captureRequired:"The validation code is required",viewTemplate:"",validationOptions:n.cv.util.kendoValidatorRules},extendEvents:[t,i,r],viewModelBound:function(){var n=this;n.viewModel.setFormFields()},_getDataView:function(t){var i=[],r=this;return n.each(t,function(t,u){u.index=t;u.ShowHelpIcon=r.options.showHelpIcon;var f=n.cv.util.getFieldItemData(u);i.push(f)}),i},_getQuestionnaireFields:function(){var i=this,r=i.options,t=i.viewModel;n.cv.css.questionnaire.questionnaireFields({questionnaire
16Code:r.questionnaireCode}).done(function(u){var f=u.data,e;f&&f.Success&&(i._populateFieldValues(f.FieldData),t.set("questionnaireFields",i._getDataView(f.FieldData)),r.fieldsStored=_.pluck(f.FieldData,"FieldName").join(","),t.set("showCapture",f.SpamValidation),r.validateCaptcha=f.SpamValidation&&n.cv.util.hasContent(r.captchaVersion),t.resetCaptcha(),t.set("showAttachmentUpload",f.AttachmentUpload),t.set("fieldToEmail",f.FieldToEmail),t.set("useUserEmailAsSenderAddress",f.UseUserEmailAsSenderAddress),e=f.RequiresSignature,t.set("isSignatureRequired",e),t.set("isSignatureValid",!e),e&&i._initialiseSignature(),n.cv.util.bindKendoWidgets(n(i.element[0])),n.cv.css.trigger(n.cv.css.eventnames.questionnaireLoaded,{Code:r.questionnaireCode}))})},_populateFieldValues:function(t){_.each(t,function(t){if(n.cv.util.isNullOrWhitespace(t.Value)){var i=n.cv.util.stripHtml(n.cv.util.queryStringValue(t.FieldName));n.cv.util.hasContent(i)&&(t.Value=i)}})},_initialiseSignature:function(){var t=this,r=t.options,i=t.viewModel;t._changeDebounce=_.debounce(function(){var u,f;if((r.isMobileDevice&&n(":focus").blur(),i.get("isSignatureRequired")!==!1)&&!n.cv.util.hasContent(i.get("base64Data"))){if(t._isSignatureValid()===!1||t._hasUserSigned()===!1){t._setSignatureData("");i.set("isInitialisedSignature",!0);return}u=t.signatureElement.jSignature("getData","image");u&&u.length===2&&u[0]&&u[1]&&(f=u[0]+","+u[1],t._setSignatureData(f))}},100);t.signatureElement=t.element.find(".signature");t.signatureElement.bind("change",t._changeDebounce);i.set("base64Data","");i.set("signatureImageData","");t.signatureElement.jSignature({color:r.signatureColor,"background-color":r.signatureBackgroundColor})},_setSignatureData:function(t){var r=this,i=r.viewModel,u=i.get("isSignatureRequired")===!1||n.cv.util.hasContent(t),f=u?"":r.options.signatureMandatoryErrorMessage;i.set("signatureImageData",t);i.set("isSignatureValid",u);i.get("isInitialisedSignature")&&(i.set("signatureErrorMessage",f),i.set("isSignatureErrorMessageSetOnce",!0))},_isSignatureValid:function(){var t=this,i=t.viewModel;return n.cv.util.hasContent(i.get("base64Data"))?!0:i.get("isSignatureRequired")===!0?t._hasUserSigned():!0},_hasUserSigned:function(){var r=this,t=r.signatureElement.jSignature("getData","svg"),i;return(t&&n.type(t)==="array"&&t.length>=2&&(t=t[1]),n.cv.util.hasValue(t)&&(t=n(t)),t.length>1&&(t=t.filter("svg")),t.length===1&&(i=t.find("path").length,i>=1))?!0:!1},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var u=this,e=function(){var t=u.options.fieldsStored.length>0?u.options.fieldsStored.split(","):"";n(u.element).find(u.options.formFieldTypes).each(function(i,r){var f=n(r);return f.attr("name")==="_cvTemplateCaptcha"?!0:(f.attr("name")&&f.attr("name").indexOf(u.options.formFieldPrefix)<0&&(t.length===0?f.attr("name",u.options.formFieldPrefix+f.attr("name")):n.inArray(f.attr("name"),t)>-1&&f.attr("name",u.options.formFieldPrefix+f.attr("name"))),!0)})},f=kendo.observable({postmode:u.options.postmode,mailTo:u.options.mailTo,token:u.options.token,sendToEndUser:u.options.sendToEndUser,emailFrom:u.options.emailFrom,redirectTemplate:u.options.redirectTemplate,redirectRoute:u.options.redirectRoute,subject:u.options.subject,emailTemplateName:u.options.emailTemplateName,questionnaire
16Code:u.options.questionnaireCode,formHiddenFields:u.options.formHiddenFields,questionnaireFields:[],captchaText:"",loggedInUserEmail:"",captchaImageUrl:"/ValidationImage.aspx?rand="+n.now(),isProcessing:!1,isCaptureResetting:!1,showCapture:!1,showAttachmentUpload:!1,fieldToEmail:"",useUserEmailAsSenderAddress:!1,message:"",isSignatureRequired:!1,isSignatureValid:!0,isInitialisedSignature:!1,isSignatureErrorMessageSetOnce:!1,disableSignatureResign:u.options.disableSignatureResign,signatureErrorMessage:"",base64Data:"",signatureImageData:"",clear:function(){u.signatureElement.jSignature("reset");this.set("base64Data","")},imageSrcData:function(){var n=this.get("base64Data");return n&&n.length>0?"data:"+n:""},setMessage:function(t,i){n.cv.util.notify(this,t,i,{triggerMessages:u.options.triggerMessages,source:u.name})},clearMessage:function(){this.setMessage("","")},formHiddenFieldsDataSource:function(){var n=this.get("formHiddenFields");return n.split(",")},initFormFields:function(){e()},setFormFields:function(){u.options.loadQuestionnaireFields?u._getQuestionnaireFields():this.initFormFields()},resetCaptcha:function(t){u.options.validateCaptcha===!0&&(t=n.cv.util.hasValue(t)&&typeof t=="boolean"?t:!0,f.set("isCaptureResetting",t),f.set("captchaText",""),n.cv.css.generateCaptcha().done(function(){f.set("captchaImageUrl","/ValidationImage.aspx?rand="+n.now());f.set("isCaptureResetting",!1)}))},inputKeyUp:function(n){n.which==13&&(n.preventDefault(),n.stopPropagation(),this.submitForm(n))},getSenderEmail:function(t){var i="",r;return n.cv.util.isNullOrWhitespace(t)?f.get("useUserEmailAsSenderAddress")&&this.getEmailAddress().done(function(){var t=f.get("loggedInUserEmail");n.cv.util.isNullOrWhitespace(t)||(i=t)}):(r=_.filter(f.get("questionnaireFields"),function(n){return n.fieldItem.FieldName===t}),r.length>0&&(i=r[0].get(t))),i},getEmailAddress:function(){var t=n.Deferred(),i=n.cv.css.localGetUser();return i?(i.ValidEmailAddress&&f.set("loggedInUserEmail",i.ValidEmailAddress),t.resolve()):n.cv.css.user&&n.cv.css.user.getCurrentUser&&n.cv.css.user.getCurrentUser().done(function(n){n.data&&n.data.length>0&&n.data[0].ValidEmailAddress&&f.set("loggedInUserEmail",n.data[0].ValidEmailAddress);t.resolve()}),t},submitForm:function(e){function g(){n.cv.css.trigger(n.cv.css.eventnames.getReCaptchaToken,{success:n.proxy(a,o),fail:function(n){l(n)},widgetId:u.element.attr("id")})}function l(t){var i=u.viewModel;i.set("isProcessing",!1);i.set("triggerMessages",!0);n.cv.util.setMessage.apply(i,[t,n.cv.css.messageTypes.error]);u.options.captchaVersion==="DEFAULT"&&i.resetCaptcha(!1)}function a(e){if(e===void 0&&(e=""),f.removeFormHiddenFields(),f.get("postmode")!=""&&f.get("mailTo")!=""&&f.get("emailFrom")!=""&&(f.get("redirectTemplate")!=""||f.get("redirectRoute")!="")&&f.get("subject")!=""&&f.get("emailTemplateName")!="")f.insertFormHiddenFields(),n("form:first").attr("action","/post.aspx?mailto="+f.get("mailTo")+"&sendToEndUser="+f.get("sendToEndUser")+"&RedirectTemplate="+(f.get("redirectTemplate")==""?f.get("redirectRoute"):f.get("redirectTemplate"))+"&Subject="+encodeURIComponent(f.get("subject"))+"&EmailTemplate="+f.get("emailTemplateName")+"&captchaVersion="+u.options.captchaVersion+"&captchaToken="+e+"&captchaHash="+u.options.captchaHash),u.options.loadQuestionnaireFields&&u.viewModel.initFormFields(),u.trigger(t),n.cv.css.trigger(n.cv.css.eventnames.questionnaireBeforeSubmit),n("form:first").submit(),u.trigger(i);else{var s="";s+=f.get("mailTo")==""?"mailto,":"";s+=f.get("emailFrom")==""?"emailFrom,":"";s+=f.get("redirectTemplate")==""&&f.get("redirectRoute")==""?"redirectTemplate or redirectRoute,":"";s+=f.get("subject")==""?"subject,":"";s+=f.get("emailTemplateName")==""?"emailTemplateName,":"";s=s.substring(0,s.length-1);u.trigger(r,{missingFields:s});o.set("isProcessing",!1)}}var o,s,h,v,y,p,c,w;if(e.preventDefault(),e.stopPropagation(),o=this,o.set("isProcessing",!0),this.clearMessage(),s=n(u.element),h=s.data("kendoValidator"),!h&&s.kendoValidator&&(s.kendoValidator(u.options.validationOptions),h=s.data("kendoValidator")),v=this.getSenderEmail(f.get("fieldToEmail")),n.cv.util.isNullOrWhitespace(v)||f.set("emailFrom",v),y=!0,p=f.get("questionnaireFields"),_.each(p,function(n){n.fieldItem.parent().fieldValid({data:n.fieldItem.parent()},!0)===!1&&(y=!1)}),!y){o.set("isProcessing",!1);return}if(h&&!h.validate()){o.set("isProcessing",!1);return}if(u._isSignatureValid()===!1){f.get("isSignatureErrorMessageSetOnce")===!1&&u._setSignatureData("");o.set("isProcessing",!1);return}if(u.options.validateCaptcha===!1){a();return}if(u.options.captchaVersion==="DEFAULT")c=this.get("captchaText"),c&&c.length>0?(w=n.cv.css.validateCaptcha(c),w.done(function(n){n.data.Success?a():l(u.options.invalidCapture)})):l(u.options.captureRequired);else if(u.options.captchaVersion==="reCaptchaV2"){var b=u.options.useInvisibleCaptcha?n.cv.css.eventnames.executeInvisibleCaptcha:n.cv.css.eventnames.getReCaptchaToken,k=u.options.useInvisibleCaptcha,d=u.options.useInvisibleCaptcha?n.proxy(g,o):n.proxy(a,o);n.cv.css.trigger(b,{success:d,fail:function(n){l(n)},widgetId:u.element.attr("id"),skipValidate:k})}},removeFormHiddenFields:function(){for(var t=0;t<this.formHiddenFieldsDataSource().length;t++)n('input[name="'+this.formHiddenFieldsDataSource()[t]+'"]').remove()},insertFormHiddenFields:function(){var t=n("form:first");t.append("<input name='postmode' value='"+this.get("postmode")+"' type='hidden'>");t.append("<input name='mailto' value='"+this.get("mailTo")+"' type='hidden'>");t.append("<input name='sendToEndUser' value='"+this.get("sendToEndUser")+"' type='hidden'>");t.append("<input name='EmailFrom' value='"+this.get("emailFrom")+"' type='hidden'>");this.get("redirectTemplate")==""?t.append("<input name='redirectroute' value='"+this.get("redirectRoute")+"' type='hidden'>"):t.append("<input name='RedirectTemplate' value='"+this.get("redirectTemplate")+"' type='hidden'>");t.append("<input name='Subject' value='"+this.get("subject")+"' type='hidden'>");t.append("<input name='EmailTemplate' value='"+this.get("emailTemplateName")+"' type='hidden'>");
16this.get("questionnaireCode")!=""&&t.append("<input name='QuestionnaireCode' value='"+this.get("questionnaireCode")+"' type='hidden'>");t.append("<input name='Token' value='"+this.get("token")+"' type='hidden'>");this.get("isSignatureRequired")&&t.append("<input name='signatureImageData' value='"+this.get("signatureImageData")+"' type='hidden' />");n.each(u.element.find(u.options.formFieldTypes),function(i,r){if(n(r).parents("form").length===0){var u=r.value.replace(/[']/gi,"&#39;");t.append("<input name='"+r.name+"' value='"+u+"' type='hidden'>")}})}});return u.options.getCurrentUserEmail&&n.cv&&n.cv.css&&f.getEmailAddress().done(function(){return f}),f}};n.cv.ui.widget(u)})(jQuery);
17(function(n){var f="dataBinding",r="dataBound",e="change",o="linesRendered",s="chargeLinesRendered",h="chargeLinesWithoutFreightRendered",c="productAddedToFavourites",l="productAddToFavouritesFail",a="productRemovedFromFavourites",v="productRemovedFromFavouritesFail",w="SN",b="DN",k="KN",d="SC",y="itemListView",u="chargeLineListView",g=["HasErrors","ErrorMessages","ErrorTypes","lastValidQuantity","quantityReset","requiresUpdate","requiresDelete","isDeleting","removingFromFavourites","addingToFavourites","isFavourite","hasOutOfStockNotify","isShowAlternatesVisible","PreventCheckout","forceOrderPackQty","isWarrantyClaimRequiresPricingShown","HasWarning","WarningMessages","WarningTypes","extendedAttributesDataSource","extendedAttribute"],p="linesUpdated",t="-enabled",i="-disabled",nt="top",tt="both",it=["deliveryDate","recipientsName","recipientsEmail","sendersName","sendersEmail","giftCardMessage"],rt={name:"orderLines",options:{dataSource:[],designStampUrl:"StampDesign.aspx?id={0}",clearAdditionalWidgetMessages:"quickAdd",pricingOnOrderGridClass:"ol-pricing-on-order-grid",orderLineNotesClass:"ol-order-line-notes",useOrderEntryClass:"ol-use-order-entry",notesRequiredForNonContractClass:"ol-notes-required-for-non-contract",autoBind:!0,triggerMessages:!0,clearExistingMessages:!1,messagesUseLineSeq:!1,getLatestOrderOnLoad:!1,lineErrorSeparator:", ",freightChargeType:0,modalEditClass:"modal-rep-edit",allowsBulkDiscount:!1,bulkDiscountLineSeq:991,autoUpdateLineOnLineChange:!1,linesRendered:null,noteIsExtendedLineDescription:!0,includeInBrowserHistory:!0,isAddToFavouritesAMove:!1,allowDecimals:!1,updateLinesDuringDelete:!1,isOnOrderAwaitingPaymentPage:!1,textProductAddedToFavourites:"Your product has been successfully added to your favourites",textDefaultErrorAddingToFavourites:"Error adding this product to your favourites, it may already exist",textProductRemovedFromFavourites:"Product {0} has been successfully removed from your favourites",textDefaultErrorRemovedFromFavourites:"Error removing {0} from your favourites, it may have already been removed",hidePricingInOrderGrid:!1,enableOrderLineNotes:!1,useCostCentres:!1,userOrderEntry:!0,notesRequiredForNonContractPurchasing:!1,isAdvancedQuoteOrder:!1,defaultLinesSortField:"",defaultLinesSortDirection:"",displayTopCount:0,textLineUpdatedSuccessfully:"Line updated successfully",textLinesUpdatedSuccessfully:"updated successfully",linesUpdatedSuccessfullyGeneric:"",textLinesUpdatedUnSuccessfully:"updated unsuccessfully",textLinesDeletedUnSuccessfully:"deleted unsuccessfully",linesUpdatedUnSuccessfullyGeneric:"",textLinesUpdatedErrored:"There was an error trying to update the lines",textEnterNumeric:"Please enter a numeric quantity",textLineDeletedSuccessfully:"Product Code {0} has been removed",textLinesDeletedSuccessfully:"Products {0} have been removed",bindOrderLineRemoveEvent:!0,textItemWarnMessageOnLoad:"",freightProtectionText:"Freight Protection Insurance",dangerousGoodsText:"Dangerous Goods",tailgateServiceText:"Tailgate Service",stampDesignMethod:"Standard",emailAddress:"",colopReturnUrl:"",refreshOrderAfterLineUpdate:!1,orderNoOverride:0,enableStoreAvailabilityClickAndCollect:!1,storeAvailClickAndCollectDeliveryDisplayMode:"",enableLineLevelClickAndCollectDeliverySelection:!1,currentPickupStoreName:"",checkNearbyStoresPickupAvailMaximumStores:3,includeCurrentStoreInNearbyStoresAvailCheck:!0,textProductNoNearbyStoresHaveAvail:"This item is either not currently available for pickup from any stores near to your current store, or there are no other stores close by.",textProductErrorCheckingNearbyStoresAvail:"Error checking availability from nearby stores near to your current store, or there are no other stores close by.",isForWarrantyClaim:!1,isWarrantyClaimRequiresPricingShown:!1,stampsTemplate:"#stampsTemplate",stampsWidgetContainer:".cart-line-product-info-sub",viewTemplate:null,itemViewTemplate:null,chargeLineViewTemplate:null,gtmPageType:"",addLineChargeAmountsToLineAmounts:!1,onlineDiscountFoundMessage:"Your order has been updated, please review the individual discounts.",onlineDiscountNotFoundMessage:"No discounts found",enableImmediateDiscountCheckForOnlineProductDiscounts:!1,extendedAttributesDelimiter:";"},events:[f,r,o,s,h,p,c,l,a,v],viewModel:null,view:null,_viewAppended:!1,_itemViewAppended:!1,_chargeLineViewAppended:!1,initialise:function(t){var i=this,r=n(t).children(":first"),u,f,e,o;r.data("view")?i.view=r.html():(i.options.isBlankTemplate==!0?i.view=i._getDefaultBlankTemplate():(i._viewAppended=!0,i.options.itemViewTemplate||(i.options.itemViewTemplate=i.name+"-item-template-"+kendo.guid(),i._itemViewAppended=!0),i.options.chargeLineViewTemplate||(i.options.chargeLineViewTemplate=i.name+"-charge-line-template-"+kendo.guid(),i._chargeLineViewAppended=!0),u=i.options.viewTemplate?n("#"+i.options.viewTemplate).html():i._getDefaultViewTemplate(),f=kendo.template(u),i.view=f(i.options),i._itemViewAppended||(i.view+=i._getDefaultItemViewTemplate()),i._chargeLineViewAppended||(i.view+=i._getDefaultChargeLineViewTemplate())),i.element.html("<div class='cv-widget-wrapper'>"+i.view+"<\/div>"));i.viewModel=i._getViewModel();e=i.element.children(":first");kendo.bind(e,i.viewModel);n.cv.css.bind(n.cv.css.eventnames.orderChanged,n.proxy(i.viewModel.cartUpdated,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.localOrderChanged,n.proxy(i.initDataSource,i));n.cv.css.bind(n.cv.css.eventnames.validateOrderStarted,n.proxy(function(){i.viewModel.set("isValidating",!0)},i));n.cv.css.bind(n.cv.css.eventnames.validateOrderComplete,n.proxy(function(){i.viewModel.set("isValidating",!1);i.viewModel.displayWarningMessages()},i));n.cv.css.bind(n.cv.css.eventnames.orderLinesOnlyShowErrors,n.proxy(i.viewModel.onlyShowErrors,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.showAlternatesButton,n.proxy(i.viewModel.showAlternatesButton,i.viewModel));i.options.bindOrderLineRemoveEvent===!0&&n.cv.css.bind(n.cv.css.eventnames.removeLineFromCartAfterSelectingNotifyWhenInStock,n.proxy(i.viewModel.removeLineFromCartAfterSelectingNotifyWhenInStock,i.viewModel));i.options.stampDesignMethod==="Colop"&&n.cv.css.bind(n.cv.css.eventnames.colopStampChanged,n.proxy(i.viewModel.colopStampChanged,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.updateOrderLine,n.proxy(i.viewModel.updateOrderLine,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.cartLineAdded,n.proxy(i.viewModel.lineAdded,i.viewModel));i.options.isForWarrantyClaim&&n.cv.css.bind(n.cv.css.eventnames.warrantyClaimReasonCodeSelected,n.proxy(i.viewModel._warrantyClaimReasonCodeSelected,i.viewModel));i.options.isOnOrderAwaitingPaymentPage&&n.cv.css.bind(n.cv.css.eventnames.viewOrderAwaitingPayment,n.proxy(i.viewModel.cartUpdated,i.viewModel));!i.options.getLatestOrderOnLoad||n.cv.css.isOciExpressCheckout||i.options.isOnOrderAwaitingPaymentPage?(i.initDataSource(),i.viewModel.set("isLoadingLines",!1),i.viewModel.set("isProcessing",!1)):(i.viewModel.set("isProcessing",!0),o=i.options.orderNoOverride===0?n.cv.css.getCurrentOrderLines():n.cv.css.getOrderLines({orderNo:i.options.orderNoOverride,isLocalSetSelectedOrderLines:!0}),o.done(function(){i.viewModel.set("isOrderLinesServerFetched",!0);n.cv.css.trigger(n.cv.css.eventnames.localOrderChanged);i.viewModel.set("isOrderLinesServerFetched",!1);i.viewModel.set("isLoadingLines",!1);i.viewModel.set("isProcessing",!1)}));i.options.textItemWarnMessageOnLoad.length>0&&i.viewModel.setMessage(i.options.textItemWarnMessageOnLoad,n.cv.css.messageTypes.warning)},initDataSource:function(){var t=this,i=t.options.orderNoOverride===0?n.cv.css.localGetCurrentOrderLines():n.cv.css.localGetSelectedOrderLines();i&&(t.retainLineMessages(i),t.setDataSource(i));n.cv.css.trigger(r,this)},retainLineMessages:function(t){var e=this,u=[],f=[],i=[],r=n.cv.css.localGetUpdatedCurrentOrderLines(),o;e.dataSource&&(r==null&&(r={addedLines:[],updatedLines:[],linesDeleted:!1}),u=r.updatedLines,f=r.addedLines,u!=null&&f!=null?i=_.union(u,f):u!=null?i=u:f!=null&&(i=f),i.length==0&&r.linesDeleted!=undefined&&r.linesDeleted&&(i=["0"]),o=i.length>0?_.reject(e.dataSource.data(),function(n){if(Array.isArray(n)){var t=_.find(n,function(n){return _.contains(i,n.LineSeq.toString())});return t!==undefined}return _.contains(i,n.LineSeq.toString())}):e.dataSource.data(),n.each(t,function(n,i){var r=_.find(o,function(n){return n.LineSeq==i.LineSeq});r&&(t[n].HasErrors=r.HasErrors,t[n].ErrorMessages=r.ErrorMessages,t[n].ErrorTypes=r.ErrorTypes)}))},setDataSource:function(n){this.options.dataSource=n;this._dataSource()},_dataSource:function(){var t=this;t.dataSource&&t._refreshHandler?t.dataSource.unbind(e,t._refreshHandler):t._refreshHandler=n.proxy(t.refresh,t);t.dataSource=kendo.data.DataSource.create(t.options.dataSource);
17t.viewModel&&t.viewModel.set("dataSource",t.dataSource);t.dataSource.bind(e,t._refreshHandler);this._sortDataSource();t.options.autoBind&&t.dataSource.fetch()},_sortDataSource:function(){var n=this,t,i;n.options.defaultLinesSortField!=undefined&&n.options.defaultLinesSortField.length>0&&(t=n.dataSource.sort(),(t==undefined||t.length==0)&&(i=n.options.defaultLinesSortDirection.length>0?n.options.defaultLinesSortDirection:"asc",n.dataSource.sort({field:n.options.defaultLinesSortField,dir:i})))},refresh:function(n){if(n.action!="itemchange"){var t=this;t.trigger(f);t.viewModel.updateViewModelFromDataSource();t.trigger(r)}},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},displayLineMessages:function(n,t){var i=this;i.viewModel.displayLineMessages(n,t)},clearLineMessages:function(n){var t=this;t.viewModel.clearLineMessages(n)},updateAllLines:function(n,t,i,r){t===void 0&&(t=!1);i===void 0&&(i=!0);r===void 0&&(r=!1);var u=this;return u.viewModel.updateAllLinesWithTriggerRefreshLines(undefined,n,i,undefined,t,r)},requireOnlineDiscountCalculation:function(){var n=this.viewModel,t=_.any(n.get("itemList"),function(n){return n.get("requiresUpdate")||n.get("requiresDelete")});return n.get("onlineDiscountCalculated")==!1||t},updateLinesFlaggedForUpdate:function(n,t){var i=this;return i.viewModel.updateLinesFlaggedForUpdate(n,t)},deleteAllLines:function(n){var t=this;return t.viewModel.deleteAllLines([],!0,!0,n)},deleteLinesFlaggedForDelete:function(n,t){var i=this;return i.viewModel.deleteLinesFlaggedForDelete(n,t)},refreshLines:function(){var n=this;n.viewModel.refreshLines()},getLineErrorCount:function(){var n=this;return n.viewModel.getLineErrorCount()},getLinePreventChecktoutCount:function(){var n=this;return n.viewModel.getLinePreventChecktoutCount()},_getViewModel:function(){var r=this,st=function(){n.cv.css.userFavourites.defaults&&(n.cv.css.userFavourites.defaults.returnMessageOnAddFavourite=!0,n.cv.css.userFavourites.defaults.returnMessageOnRemoveFavourite=!0)},ht=function(t){var i=[];return t!=null&&n.each(t,function(t,r){n.cv.util.hasValue(r)&&r.LineType===d&&i.push(r)}),i},ct=function(t,i){var u=Math.floor(i.LineSeq),r=n.grep(t,function(n){return n.LineSeq==u});r.length==1&&(r[0].lineCharges==undefined&&(r[0].lineCharges=[]),r[0].lineCharges.push(i),r[0].hasLineCharges=!0)},lt=function(t,i){var f=Math.floor(i.LineSeq),u=n.grep(t,function(n){return n.LineSeq==f});u.length==1&&(r.options.noteIsExtendedLineDescription&&i.requiresDelete!==!0&&(u[0].ExtendedLineDescription=i.Description+" ",u[0].requiresUpdate=!0,i.requiresDelete=!0),u[0].lineNotes==undefined&&(u[0].lineNotes=[]),u[0].lineNotes.push(i),u[0].hasLineNotes=!0)},ut=function(t){var i=[];return t!=null&&n.each(t,function(t,r){n.cv.util.hasValue(r)&&(r.LineType===w||r.LineType===k)?(r.lineNotes=[],r.hasLineNotes=!1,r.lineCharges=[],r.hasLineCharges=!1,r.LineSeq%1==0?i.push(r):ct(i,r)):n.cv.util.hasValue(r)&&r.LineType===b&&lt(i,r)}),i},tt=function(n){var t=[];return r.dataSource?(n==y?t=at():n==u&&(t=yt()),t):t},rt=function(n){return+n.toFixed(2)},at=function(){var t=[],i=0;return n.each(ut(r.dataSource.view()),function(u,o){if(r.options.displayTopCount>0&&u>=r.options.displayTopCount)return!1;o.Index=u;o.lastValidQuantity=o.OrderedQty;o.ProductFromSelAdvProdAttributes!==null&&o.ProductFromSelAdvProdAttributes.length>0&&(o.Product=o.ProductFromSelAdvProdAttributes);n.cv.util.isNullOrWhitespace(o.ExtendedAttributes)||o.set("extendedAttribute",n.cv.css.product.extendedAttributeSelected(o.ExtendedAttributes));o.set("extendedAttributesDataSource",n.cv.css.product.extendedAttributeDataSource(o,"StockCode"));var s=function(n,t){return r.options.addLineChargeAmountsToLineAmounts&&n.hasLineCharges?n[t]+_.reduce(n.lineCharges,function(n,i){return n+i[t]},0):n[t]};return o.displayableOrderItemPrice=s(o,"OrderItemPrice"),o.displayableOrderItemPriceInc=s(o,"OrderItemPriceInc"),o.displayableOrderItemPriceEx=s(o,"OrderItemPriceEx"),o.displayableOrderNetItemPrice=s(o,"OrderNetItemPrice"),o.displayableOrderNetItemPriceInc=s(o,"OrderNetItemPriceInc"),o.displayableOrderNetItemPriceEx=s(o,"OrderNetItemPriceEx"),o.displayableOrderOriginalNetItemPriceInc=s(o,"OrderOriginalNetItemPriceInc"),o.displayableOrderOriginalNetItemPriceEx=s(o,"OrderOriginalNetItemPriceEx"),o.displayableOrderLineAmount=s(o,"OrderLineAmount"),o.displayableOrderLineAmountExTax=s(o,"OrderLineAmountExTax"),o.displayableOrderLineTax=s(o,"OrderLineTax"),o.displayableItemDiscountRate=o.SolDiscRate/100,o.overrideOrderItemPrice=o.displayableOrderItemPrice,o.overrideOrderNetItemPrice=o.displayableOrderNetItemPrice,o.overrideItemDiscountRate=o.SolDiscRate,o.origOrderItemPrice=s(o,"OrderItemPrice"),o.origOrderNetItemPrice=s(o,"OrderNetItemPrice"),o.origItemDiscountRate=o.SolDiscRate/100,o.priceBeforeOnlineDiscount=rt(o.ItemPrice+o.OnlineDiscountAmount),o.onlineDiscountRate=rt(rt(o.OnlineDiscountAmount/o.priceBeforeOnlineDiscount)*100),o.displayOnlineDiscountPrice=o.OnlineDiscountAmount>0,o.isPriceOverriden=!1,o.isDiscOverriden=!1,o.quantityReset=!1,o.isShowAlternatesVisible=!1,o.requiresUpdate===undefined&&(o.requiresUpdate=!1),o.requiresDelete===undefined&&(o.requiresDelete=!1),o.isProcessing===undefined&&(o.isProcessing=!1),o.isUpdating===undefined&&(o.isUpdating=!1),o.isDeleting===undefined&&(o.isDeleting=!1),o.addingToFavourites===undefined&&(o.addingToFavourites=!1),o.remov
17ingFromFavourites===undefined&&(o.removingFromFavourites=!1),o.isLineEditable===undefined&&(o.isLineEditable=!r.options.isAdvancedQuoteOrder),ft(o),o.execCommand_showAlternates=function(){n.cv.css.trigger(n.cv.css.eventnames.showAlternatesPopup,o)},o.execCommand_destroy=function(t){t===void 0&&(t=!0);o.isProcessing=!0;f.setLocalLinesDeleted(!0);o.set("requiresDelete",!0);o.set("requiresUpdate",!1);o.set("isDeleting",!0);f.set("onlineDiscountCalculated",!1);var i=n.Deferred(),u=n.Deferred(),e=n.Deferred();return t?r.options.updateLinesDuringDelete&&_.filter(f.get("itemList"),function(n){return n.requiresUpdate&&!n.requiresDelete}).length>0?(e=f.deleteLinesFlaggedForDelete(!1,!1),u=f.updateLinesFlaggedForUpdate(!0,!1),i.resolve()):(_.extend(n.cv.css._proxyMeta,n.cv.util.getBaseProxyMeta(r)),i=r.options.isForWarrantyClaim===!1?n.cv.css.deleteCurrentOrderLine({seq:o.LineSeq.toString(),triggerOrderRefresh:!1,gtmPageType:r.options.gtmPageType,description:o.Description,productCode:o.StockCode,price:o.OrderItemPrice,category:o.Product[0].CategoryDescription,quantity:o.OrderedQty,getLocalOnly:!0}):n.cv.css.orders.deleteCurrentWarrantyClaimOrderLine({seq:o.LineSeq.toString()}),u.resolve(),e.resolve(),r.options.enableImmediateDiscountCheckForOnlineProductDiscounts&&f.performOnlineDiscountCheck(r.options.onlineDiscountFoundMessage,r.options.onlineDiscountNotFoundMessage)):(i.resolve(),u.resolve(),e.resolve()),n.when(i,u,e).done(function(i){var u,e,s;if(i&&i.length>0&&i[0]&&i[0].data){if(u=i[0].data,typeof u.deleteLineOk!="undefined"&&u.deleteLineOk===!1){o.set("isDeleting",!1);f.clearMessage();f.setMessage("Line "+r.options.textLinesDeletedUnSuccessfully+". "+u.message,n.cv.css.messageTypes.error);return}n.cv.css.trigger(n.cv.css.eventnames.cartLineRemoved,{lineSeq:o.SolLineSeq})}e=n.cv.css.isOciExpressCheckout?{}:r.options.orderNoOverride===0?n.cv.css.getCurrentOrder():n.cv.css.getOrder({orderNo:r.options.orderNoOverride,isLocalSetSelectedOrder:!0});s=n.cv.css.isOciExpressCheckout?{}:r.options.orderNoOverride===0?n.cv.css.localGetCurrentOrderLines():n.cv.css.getOrderLines({orderNo:r.options.orderNoOverride,isLocalSetSelectedOrderLines:!0});n.when(e,s).done(function(){o.set("isDeleting",!1);t&&n.cv.css.refreshCurrentOrder().done(function(){f.set("isOrderLinesServerFetched",!0);n.cv.css.trigger(n.cv.css.eventnames.orderChanged);f.clearMessage();o.StockCode!=null&&f.setMessage(r.options.textLineDeletedSuccessfully.format(o.StockCode),n.cv.css.messageTypes.success);f.displayWarningMessages()})})})},o.lineNotes!=undefined&&o.lineNotes.length>0&&n.each(o.lineNotes,function(t,i){i.execCommand_destroy=function(){i.isProcessing=!0;_.extend(n.cv.css._proxyMeta,n.cv.util.getBaseProxyMeta(r));var u=n.cv.css.deleteCurrentOrderLine({seq:i.LineSeq.toString()});n.when(u).done(function(){o.lineNotes=o.lineNotes.splice(t,1)})}}),o.stockLineIndex=i++,o.hidePricingInOrderGrid=f.get("hidePricingInOrderGrid"),o.autoUpdateLineOnLineChange=r.options.autoUpdateLineOnLineChange,o.notesRequiredForNonContractPurchasing=r.options.notesRequiredForNonContractPurchasing,o.enableOrderLineNotes=f.get("enableOrderLineNotes"),o.useCostCentres=f.get("useCostCentres"),o.userOrderEntry=f.get("userOrderEntry"),o.originalQuantity=o.SolBackorderQty,o.noteIsExtendedLineDescription=r.options.noteIsExtendedLineDescription,o.nearbyStoreLocations=[],o.noNearbyStoreLocations=!1,o.isWarrantyClaimRequiresPricingShown=f.get("isWarrantyClaimRequiresPricingShown"),o.HasErrors==undefined&&(o.HasErrors=!1),o.ErrorMessages==undefined&&(o.ErrorMessages=""),o.ErrorTypes==undefined&&(o.ErrorTypes=""),o.CostCentreCode!=undefined&&(o.costCentreCode=o.CostCentreCode,o.CostCentreCodeControl!=undefined&&n(o.CostCentreCodeControl).attr("value")!=undefined&&(o.CostCentreCodeControl=n(o.CostCentreCodeControl).attr("value",o.CostCentreCode).wrap("<div />").parent().html()),o.set("costCentreCode",o.CostCentreCode)),r.options.notesRequiredForNonContractPurchasing&&o.NonContractReasonInputField!=undefined&&n(o.NonContractReasonInputField).attr("value")!=undefined&&o.set("nonContractReason",n(o.NonContractReasonInputField).attr("value")),o.execCommand_updateErrorMessage=function(n,t,i,r){this.set("HasErrors",n);this.set("ErrorMessages",t);this.set("ErrorTypes",i);this.set("PreventCheckout",r)},o.execCommand_updateWarningMessage=function(n,t,i){this.set("HasWarning",n);this.set("WarningMessages",t);this.set("WarningTypes",i)},o.inputEventKeyUp=function(n){n.which==13&&(n.preventDefault(),n.stopPropagation(),o.execCommand_update(
17))},o.isGiveXGiftCard=!1,o.deliveryDate="",o.recipientsName="",o.recipientsEmail="",o.sendersName="",o.sendersEmail="",o.giftCardMessage="",o.deliveryDateErrorMsg="",o.recipientsNameErrorMsg="",o.recipientsEmailErrorMsg="",o.sendersNameErrorMsg="",o.sendersEmailErrorMsg="",o.giftCardMessageErrorMsg="",o.deliveryDateIsRequiredErrorMsg="",o.deliveryDateInPastErrorMsg="",o.recipientsNameIsRequiredErrorMsg="",o.recipientsEmailIsRequiredErrorMsg="",o.recipientsEmailInvalidErrorMsg="",o.sendersNameIsRequiredErrorMsg="",o.sendersEmailIsRequiredErrorMsg="",o.sendersEmailInvalidErrorMsg="",o.messageIsRequiredErrorMsg="",o.disableModalConfirmButton=!1,o.isDeliveryDateValid=function(){return n.cv.util.isNullOrWhitespace(o.deliveryDateErrorMsg)},o.isRecipientsNameValid=function(){return n.cv.util.isNullOrWhitespace(o.recipientsNameErrorMsg)},o.isRecipientsEmailValid=function(){return n.cv.util.isNullOrWhitespace(o.recipientsEmailErrorMsg)},o.isSendersNameValid=function(){return n.cv.util.isNullOrWhitespace(o.sendersNameErrorMsg)},o.isSendersEmailValid=function(){return n.cv.util.isNullOrWhitespace(o.sendersEmailErrorMsg)},o.isGiftCardMessageValid=function(){return n.cv.util.isNullOrWhitespace(o.giftCardMessageErrorMsg)},o.execCommand_update=function(){return f.set("onlineDiscountCalculated",!1),e(o)},o.execCommand_setPriceOrDiscount=function(){var i=o.get("overrideOrderItemPrice"),r,n,u,t,f;typeof i=="string"&&(r=void 0,i=isNaN(r=parseFloat(i))?-1:r);isNaN(i)||i<0||o.origOrderItemPrice!==i&&o.set("displayableOrderItemPrice",i);n=o.get("overrideOrderNetItemPrice");typeof n=="string"&&(u=void 0,n=isNaN(u=parseFloat(n))?-1:u);isNaN(n)||n<0||o.overrideOrderNetItemPrice!==n&&o.set("displayableOrderNetItemPrice",n);o.get("origOrderItemPrice")!==o.get("displayableOrderItemPrice")||o.get("overrideOrderNetItemPrice")!==o.get("displayableOrderNetItemPrice")?o.set("isPriceOverriden",!0):o.set("isPriceOverriden",!1);t=o.get("overrideItemDiscountRate");typeof t=="string"&&(f=void 0,t=isNaN(f=parseFloat(t))?-1:f);isNaN(t)||t<0||t>100||o.set("displayableItemDiscountRate",t/100);o.get("origItemDiscountRate")!==o.get("displayableItemDiscountRate")?o.set("isDiscOverriden",!0):o.set("isDiscOverriden",!1);(o.get("isPriceOverriden")===!0||o.get("isDiscOverriden")===!0)&&o.execCommand_update()},o.inputPriceOrDiscountEventKeyPress=function(t){t.which==13&&(t.preventDefault(),t.stopPropagation(),n.fancybox.close(),o.execCommand_setPriceOrDiscount())},o.hasColopEditUrl=!n.cv.util.isNullOrWhitespace(o.ColopEditUrl),o.hasColopPreviewUrl=!n.cv.util.isNullOrWhitespace(o.ColopPreviewUrl),o.execCommand_designStamp=function(t){var i,u;switch(r.options.stampDesignMethod){case"Standard":o.IsStampProduct!=undefined&&o.StampID!=undefined&&o.IsStampProduct&&n.cv.util.redirect(r.options.designStampUrl.format(o.StampID),{},!r.options.includeInBrowserHistory);break;case"MyStampsApi":i={productCode:o.StockCode,soOrderNo:o.SoOrderNo,soBoSuffix:"",solLineSeq:o.SolLineSeq,quantity:o.OrderedQty,costCentreCode:o.CostCentreCode,extendedLineDescription:o.ExtendedLineDescription};n.cv.css.trigger(n.cv.css.eventnames.myStampsApiShowEditor,i);break;case"Colop":u=n(t.target).data("colopHref");n.fancybox.open({type:"iframe",helpers:{overlay:{closeClick:!1}},iframe:{preload:!1},href:u,padding:0,autoSize:!1,width:900})}},o.printProof=function(){window.open(n.cv.util.getStampsApiPrintProofLink(o.SoOrderNo,"",o.SolLineSeq))},o.stampImage=function(){return n.cv.util.getStampsApiImageLink(o.SoOrderNo,"",o.SolLineSeq)},o.isFavourite=!1,o.BuildDescriptionTextParts!=undefined&&o.BuildDescriptionTextParts.UserFavouriteIcon!==undefined&&o.BuildDescriptionTextParts.UserFavouriteIcon.length>0&&(o.isFavourite=!0),o.execCommand_addToFavourites=function(){ot(o)},o.execCommand_removeFromFavourites=function(){et(o)},o.execCommand_toggleFavourite=function(){o.get("isFavourite")?et(o):ot(o)},o.markupPriceChanged=function(){var n=(o.MarkupPrice-o.ItemPrice)/o.ItemPrice*100;n=Math.round(n*100)/100;o.set("MarkupPercent",n)},o.markupPercentChanged=function(){var n=o.ItemPrice*(1+o.MarkupPercent/100);n=Math.round(n*100)/100;o.set("MarkupPrice",n)},o.bind("change",function(t){var r=!0,i,u;t.field=="OrderedQty"&&(!pt(o)||o.get("quantityReset"))&&(r=!1);!_.contains(g,t.field)&&r&&o.set("requiresUpdate",!0);t.field=="OrderedQty"&&!r&&o.get("quantityReset")&&o.set("quantityReset",!1);t.field==="extendedAttribute"&&(i=o.get("extendedAttribute"),n.cv.util.hasContent(i)&&i.ExtendedAttributes!=un
17defined?o.set("ExtendedAttributes",i.ExtendedAttributes):(o.set("ExtendedAttributes",""),o.set("extendedAttribute","")));it.indexOf(t.field)>=0&&(u=o.checkGiveXGiftCardAllOptionsSelectedAndSetExtendedAttributes(),u!==null&&n.cv.util.hasValue(u)&&o.set("disableModalConfirmButton",!0))}),o.onDeliveryMethodChanged=function(){if(!this.autoUpdateLineOnLineChange||o.get("isProcessing")){this.set("requiresUpdate",!0);return}e(o)},o.checkGiveXGiftCardAllOptionsSelectedAndSetExtendedAttributes=function(){var t,f,i,u,e;return o.isGiveXGiftCard===!1?null:(t=this,t.set("deliveryDateErrorMsg",""),t.set("recipientsNameErrorMsg",""),t.set("recipientsEmailErrorMsg",""),t.set("sendersNameErrorMsg",""),t.set("sendersEmailErrorMsg",""),t.set("giftCardMessageErrorMsg",""),t.set("disableModalConfirmButton",!1),n.cv.util.isNullOrWhitespace(t.deliveryDate))?(i=o.deliveryDateIsRequiredErrorMsg,t.set("deliveryDateErrorMsg",i),i):(f=(new Date).toISOString().slice(0,10),n.cv.util.dates.compare(t.deliveryDate,f)<0)?(i=o.deliveryDateInPastErrorMsg,t.set("deliveryDateErrorMsg",i),i):n.cv.util.isNullOrWhitespace(t.recipientsName)?(i=o.recipientsNameIsRequiredErrorMsg,t.set("recipientsNameErrorMsg",i),i):n.cv.util.isNullOrWhitespace(t.recipientsEmail)?(i=o.recipientsEmailIsRequiredErrorMsg,t.set("recipientsEmailErrorMsg",i),i):n.cv.util.validateField(t.recipientsEmail,"email")===!1?(i=o.recipientsEmailInvalidErrorMsg,t.set("recipientsEmailErrorMsg",i),i):n.cv.util.isNullOrWhitespace(t.sendersName)?(i=o.sendersNameIsRequiredErrorMsg,t.set("sendersNameErrorMsg",i),i):n.cv.util.isNullOrWhitespace(t.sendersEmail)?(i=o.sendersEmailIsRequiredErrorMsg,t.set("sendersEmailErrorMsg",i),i):n.cv.util.validateField(t.sendersEmail,"email")===!1?(i=o.sendersEmailInvalidErrorMsg,t.set("sendersEmailErrorMsg",i),i):n.cv.util.isNullOrWhitespace(t.giftCardMessage)?(i=o.messageIsRequiredErrorMsg,t.set("giftCardMessageErrorMsg",i),i):(u=r.options.extendedAttributesDelimiter[0],e=n.cv.util.dates.format(t.deliveryDate,"yyyy-MM-dd"),t.set("recipientsName",n.cv.util.removeDelimitersFromString(t.recipientsName,r.options.extendedAttributesDelimiter)),t.set("recipientsEmail",n.cv.util.removeDelimitersFromString(t.recipientsEmail,r.options.extendedAttributesDelimiter)),t.set("sendersName",n.cv.util.removeDelimitersFromString(t.sendersName,r.options.extendedAttributesDelimiter)),t.set("sendersEmail",n.cv.util.removeDelimitersFromString(t.sendersEmail,r.options.extendedAttributesDelimiter)),t.set("giftCardMessage",n.cv.util.removeDelimitersFromString(t.giftCardMessage,r.options.extendedAttributesDelimiter)),t.set("ExtendedAttributes",e+u+t.recipientsName+u+t.recipientsEmail+u+t.sendersName+u+t.sendersEmail+u+t.giftCardMessage),t.set("noteIsExtendedLineDescription",!1),null)},o.resetGiveXModalDetails=function(){var t=this,i;t.ExtendedAttributesList.length>0&&(i=n.cv.util.dates.format(t.ExtendedAttributesList[0],"yyyy-MM-dd"),t.set("deliveryDate",i),t.set("recipientsName",t.ExtendedAttributesList[1]),t.set("recipientsEmail",t.ExtendedAttributesList[2]),t.set("sendersName",t.ExtendedAttributesList[3]),t.set("sendersEmail",t.ExtendedAttributesList[4]),t.set("giftCardMessage",t.ExtendedAttributesList[5]))},o.hasOutOfStockNotify=!1,o.BuildDescriptionTextParts!=undefined&&o.BuildDescriptionTextParts.OutOfStockNotification!==undefined&&o.BuildDescriptionTextParts.OutOfStockNotification.length>0&&(o.hasOutOfStockNotify=!0),o.execCommand_outOfStockNotify=function(){var t;o.hasOutOfStockNotify?(t={productCodes:o.StockCode,onChange:function(n){o.set("hasOutOfStockNotify",n)},data:o},n.cv.css.trigger(n.cv.css.eventnames.stockAvailabilityNotifyRemove,t)):(t={productCodes:o.StockCode,hasOutOfStockNotify:o.hasOutOfStockNotify,onChange:function(n){o.set("hasOutOfStockNotify",n)},data:o},n.cv.css.trigger(n.cv.css.eventnames.stockAvailabilityNotifyShowPopup,t))},o.execCommand_setClickAndCollectStoreAvailabilityIconsForItem=function(){ft(o)},o.execCommand_findNearestPickupStores=function(){vt(o)},o.execCommand_getDataView=function(t){var i=[];return n.each(t,function(t,r){r.index=t;var u=n.cv.util.getFieldItemData(r);i.push(u)}),i},o.packQuantityTarget="Product[0].PackQty",o.quantityTarget="OrderedQty",o.canLineBeModifiedByUser=function(){var i,t,r;return n.cv.util.isNullOrWhitespace(o.PromotionCodeType)?!0:(i=["FreeProductCheapest","ProductDiscountSpecifiedPrice","ProductDiscountSpecifiedPercent"],t=!i.some(function(n){return n===o.PromotionCodeType}),t||(r=["QuantityDiscountMultiples","CombinationQtyDiscMultiples"],t=r.some(function(n){return n===o.DiscountThresholdType})),t)},o.updateOrderLine=function(){this.autoUpdateLineOnLineChange&&!o.get("isProcessing")&&e(o)},o.execCommand_manualQtyAndUpdate=function(n){this.autoUpdateLineOnLineChange&&!o.get("isProcessing")&&(o.OrderedQty=n.target.value,e(o))},o.execCommand_increaseQty=function(){this.autoUpdateLineOnLineChange&&o.get("isProcessing")||(n.cv.util.kendoNumericTextBoxIncrease(this),this.autoUpdateLineOnLineChange&&e(o))},o.execCommand_decreaseQty=function(){if(!this.autoUpdateLineOnLineChange||!o.get("isProcessing")){var t=n.cv.util.isNullOrWhitespace(this.MinimumQuantity)||isNaN(this.MinimumQuantity)?1:this.MinimumQuantity;n.cv.util.kendoNumericTextBoxDecrease(this,t);this.autoUpdateLineOnLineChange&&e(o)}},o.ModalEditId=r.options.modalEditClass+"-"+o.Index,o.execCommand_repEditAmou
17nts=function(){n.fancybox.open({href:"#"+this.ModalEditId,modal:!0,afterShow:function(){kendo.init(n("#"+this.ModalEditId));n.fancybox.update()}})},o.backOrderQtyVisible=function(){return o.Product[0].QtyOnBackOrderForCustomer>0},o.hasImage=!1,o.isProcessing=!1,o.hasBusinessCardErrors=!1,o.execCommand_editBusinessCard=function(){n.cv.css.trigger(n.cv.css.eventnames.editBusinessCard,o)},o.execCommand_closeBusinessCardModal=function(){n.fancybox.close();o.execCommand_update()},o.execCommand_saveBusinessCard=function(){n.cv.css.trigger(n.cv.css.eventnames.saveBusinessCard,o)},o.markupPriceTotal=function(){return o.MarkupPrice*o.OrderedQty},t.push(o),!0}),t},ft=function(n){var u,f;if(r.options.enableStoreAvailabilityClickAndCollect&&n.Product!==null&&n.Product!==undefined&&n.Product[0]!==null&&n.Product[0]!==undefined){var t=n.Product[0].GetDeliveryOptionClickAndCollectAsString,e=n.Product[0].GetDeliveryOptionTransferZoneClickAndCollectAsString,i=n.Product[0].GetPickupOptionClickAndCollectAsString;if(t!==undefined&&i!==undefined){if(t==="EmailOnly"||i==="EmailOnly"?(n.showEmailDelivery=!0,n.showDeliverySelectProductAttributes=!1,n.showDeliveryAvailable=!1,n.showDeliveryIndentProductCall=!1,n.showDeliveryUnavailable=!1,n.showDeliveryAvailableBackOrder=!1,n.showDeliveryStoreNotSet=!1,n.showPickupSelectProductAttributes=!1,n.showPickupAvailable=!1,n.showPickupIndentProductCall=!1,n.showPickupLowStockCall=!1,n.showPickupStoreNotSet=!1,n.showPickupUnavailable=!1,n.showPickupAvailableBackOrder=!1):n.showEmailDelivery=!1,r.options.storeAvailClickAndCollectDeliveryDisplayMode==="Standard")switch(t){case"StoreNotSet":n.showDeliverySelectProductAttributes=!1;n.showDeliveryAvailable=!1;n.showDeliveryIndentProductCall=!1;n.showDeliveryUnavailable=!1;n.showDeliveryAvailableBackOrder=!1;n.showDeliveryStoreNotSet=!0;break;case"SelectProductAttributes":n.showDeliverySelectProductAttributes=!0;n.showDeliveryAvailable=!1;n.showDeliveryIndentProductCall=!1;n.showDeliveryUnavailable=!1;n.showDeliveryAvailableBackOrder=!1;n.showDeliveryStoreNotSet=!1;break;case"Available":n.showDeliverySelectProductAttributes=!1;n.showDeliveryAvailable=!0;n.showDeliveryIndentProductCall=!1;n.showDeliveryUnavailable=!1;n.showDeliveryAvailableBackOrder=!1;n.showDeliveryStoreNotSet=!1;break;case"AvailableBackOrder":n.showDeliverySelectProductAttributes=!1;n.showDeliveryAvailable=!1;n.showDeliveryIndentProductCall=!1;n.showDeliveryUnavailable=!1;n.showDeliveryAvailableBackOrder=!0;n.showDeliveryStoreNotSet=!1;break;case"CallToOrderIndentProduct":n.showDeliverySelectProductAttributes=!1;n.showDeliveryAvailable=!1;n.showDeliveryIndentProductCall=!0;n.showDeliveryUnavailable=!1;n.showDeliveryAvailableBackOrder=!1;n.showDeliveryStoreNotSet=!1;break;case"Unavailable":n.showDeliverySelectProductAttributes=!1;n.showDeliveryAvailable=!1;n.showDeliveryIndentProductCall=!1;n.showDeliveryUnavailable=!0;n.showDeliveryAvailableBackOrder=!1;n.showDeliveryStoreNotSet=!1;break;case"NotApplicable":n.showDeliverySelectProductAttributes=!1;n.showDeliveryAvailable=!1;n.showDeliveryIndentProductCall=!1;n.showDeliveryUnavailable=!1;n.showDeliveryAvailableBackOrder=!1;n.showDeliveryStoreNotSet=!1}else switch(e){case"SelectProductAttributes":n.showDeliverySelectProductAttributes=!0;n.showDeliveryAvailable=!1;n.showDeliveryAvailableTwoToFiveDays=!1;n.showDeliveryAvailableThreeToSixDays=!1;n.showDeliveryAvailableFiveToSevenDays=!1;n.showDeliverySpecialOrder=!1;n.showDeliveryUnavailable=!1;break;case"Available":n.showDeliverySelectProductAttributes=!1;n.showDeliveryAvailable=!0;n.showDeliveryAvailableTwoToFiveDays=!1;n.showDeliveryAvailableThreeToSixDays=!1;n.showDeliveryAvailableFiveToSevenDays=!1;n.showDeliverySpecialOrder=!1;n.showDeliveryUnavailable=!1;break;case"TwoToFiveDays":n.showDeliverySelectProductAttributes=!1;n.showDeliveryAvailable=!1;n.showDeliveryAvailableTwoToFiveDays=!0;n.showDeliveryAvailableThreeToSixDays=!1;n.showDeliveryAvailableFiveToSevenDays=!1;n.showDeliverySpecialOrder=!1;n.showDeliveryUnavailable=!1;break;case"ThreeToSixDays":n.showDeliverySelectProductAttributes=!1;n.showDeliveryAvailable=!1;n.showDeliveryAvailableTwoToFiveDays=!1;n.showDeliveryAvailableThreeToSixDays=!0;n.showDeliveryAvailableFiveToSevenDays=!1;n.showDeliverySpecialOrder=!1;n.showDeliveryUnavailable=!1;break;case"FiveToSevenDays":n.showDeliverySelectProductAttributes=!1;n.showDeliveryAvailable=!1;n.showDeliveryAvailableTwoToFiveDays=!1;n.showDeliveryAvailableThreeToSixDays=!1;n.showDeliveryAvailableFiveToSevenDays=!0;n.showDeliverySpecialOrder=!1;n.showDeliveryUnavailable=!1;break;case"SpecialOrder":n.showDeliverySelectProductAttributes=!1;n.showDeliveryAvailable=!1;n.showDeliveryAvailableTwoToFiveDays=!1;n.showDeliveryAvailableThreeToSixDays=!1;n.showDeliveryAvailableFiveToSevenDays=!1;n.showDeliverySpecialOrder=!0;n.showDeliveryUnavailable=!1;break;case"Unavailable":n.showDeliverySelectProductAttributes=!1;n.showDeliveryAvailable=!1;n.showDeliveryAvailableTwoToFiveDays=!1;n.showDeliveryAvailableThreeToSixDays=!1;n.showDeliveryAvailableFiveToSevenDays=!1;n.showDeliverySpecialOrder=!1;n.showDeliveryUnavailable=!0;break;case"NotApplicable":n.showDeliverySelectProductAttributes=!1;n.showDeliveryAvailable=!1;n.showDeliveryAvailableTwoToFiveDays=!1;n.showDeliveryAvailableThreeToSixDays=!1;n.showDeliveryAvailableFiveToSevenDays=!1;n.showDeliverySpecialOrder=!1;n.showDeliveryUnavailable=!1}switch(i){case"SelectProductAttributes":n.showPickupSelectProductAttributes=!0;n.showPickupAvailable=!1;n.showPickupIndentProductCall=!1;n.showPickupLowStockCall=!1;
17n.showPickupStoreNotSet=!1;n.showPickupUnavailable=!1;n.showPickupAvailableBackOrder=!1;break;case"Available":n.showPickupSelectProductAttributes=!1;n.showPickupAvailable=!0;n.showPickupIndentProductCall=!1;n.showPickupLowStockCall=!1;n.showPickupStoreNotSet=!1;n.showPickupUnavailable=!1;n.showPickupAvailableBackOrder=!1;break;case"AvailableBackOrder":n.showPickupSelectProductAttributes=!1;n.showPickupAvailable=!1;n.showPickupIndentProductCall=!1;n.showPickupLowStockCall=!1;n.showPickupStoreNotSet=!1;n.showPickupUnavailable=!1;n.showPickupAvailableBackOrder=!0;break;case"CallToOrderIndentProduct":n.showPickupSelectProductAttributes=!1;n.showPickupAvailable=!1;n.showPickupIndentProductCall=!0;n.showPickupLowStockCall=!1;n.showPickupStoreNotSet=!1;n.showPickupUnavailable=!1;n.showPickupAvailableBackOrder=!1;break;case"CallStoreLowStock":n.showPickupSelectProductAttributes=!1;n.showPickupAvailable=!1;n.showPickupIndentProductCall=!1;n.showPickupLowStockCall=!0;n.showPickupStoreNotSet=!1;n.showPickupUnavailable=!1;n.showPickupAvailableBackOrder=!1;break;case"StoreNotSet":n.showPickupSelectProductAttributes=!1;n.showPickupAvailable=!1;n.showPickupIndentProductCall=!1;n.showPickupLowStockCall=!1;n.showPickupStoreNotSet=!0;n.showPickupUnavailable=!1;n.showPickupAvailableBackOrder=!1;break;case"Unavailable":n.showPickupSelectProductAttributes=!1;n.showPickupAvailable=!1;n.showPickupIndentProductCall=!1;n.showPickupLowStockCall=!1;n.showPickupStoreNotSet=!1;n.showPickupUnavailable=!0;n.showPickupAvailableBackOrder=!1}r.options.enableLineLevelClickAndCollectDeliverySelection&&(u=t=="PickupOnly",f=i=="DeliveryOnly",(u||f)&&(n.showDeliveryAvailable=f,n.showDeliveryUnavailable=u,n.showPickupAvailable=u,n.showPickupUnavailable=f))}}},vt=function(t){var u,i,e;return t.Product===null||t.Product===undefined||t.Product[0]===null||t.Product[0]===undefined?!1:(u=r.options.checkNearbyStoresPickupAvailMaximumStores,i="",t.set("isProcessing",!0),t.set("nearbyStoreLocations",[]),t.set("noNearbyStoreLocations",!1),e=n.cv.css.orders.findNearestPickupStoresForLine({orderNo:t.SoOrderNo,orderSuffix:"",lineSeq:t.LineSeq,numberOfStores:u,includeCurrentStore:r.options.includeCurrentStoreInNearbyStoresAvailCheck}),e.done(function(u){u.data?u.data.length>0?(n.each(u.data,function(n,i){i.StoreLocation.StoreLocationDetailsFieldData&&(i.StoreLocation.StoreLocationDetailsFieldData=t.execCommand_getDataView(i.StoreLocation.StoreLocationDetailsFieldData))}),t.set("nearbyStoreLocations",u.data)):t.set("noNearbyStoreLocations",!0):(i=u.errorMessage!=null?u.errorMessage:r.options.textProductErrorCheckingNearbyStoresAvail,f.setMessage(i,n.cv.css.messageTypes.error));t.set("isProcessing",!1);n.fancybox.update()}),!0)},yt=function(){var t=[],i=0;return n.each(ht(r.dataSource.view()),function(n,r){r.Index=n;r.chargeLineIndex=i++;r.hidePricingInOrderGrid=f.get("hidePricingInOrderGrid");t.push(r)}),t},pt=function(n){var i=!0,t=n.OrderedQty;return(isNaN(t)||n.QtyDecimalPlaces===0&&!r.options.allowDecimals&&t%1!=0||t<0)&&(i=!1),i?n.set("lastValidQuantity",t):(n.set("quantityReset",!0),n.set("OrderedQty",n.get("lastValidQuantity"))),i},e=function(t,i){i===void 0&&(i=!0);t.set("isProcessing",t.autoUpdateLineOnLineChange);var u={},e=n.Deferred();if(n.cv.util.isNullOrWhitespace(t.OrderedQty)||isNaN(t.OrderedQty.toString())||t.OrderedQty.toString()==="")f.setMessage(r.options.textEnterNumeric,n.cv.css.messageTypes.error);else if(t.OrderedQty==0)t.execCommand_destroy();else return n.each(t.lineNotes,function(n,t){t.requiresDelete===!0&&t.execCommand_destroy()}),u=nt(t),n.cv.css.isOciExpressCheckout&&(u.triggerOrderRefresh=!1),f.setLocalLinesUpdated([u]),t.set("isProcessing",!0),t.set("isUpdating",!0),_.extend(n.cv.css._proxyMeta,n.cv.util.getBaseProxyMeta(r)),e=n.cv.css.updateCurrentOrderLine(u),n.when(e).done(function(u){u.data.toString().toLowerCase()==="true"?(f.updateItemList(!0),t.set("isProcessing",!1),t.set("isUpdating",!1),i&&(f.clearMessage(),f.setMessage(r.options.textLineUpdatedSuccessfully,n.cv.css.messageTypes.success)),u.multipleLinesChanged||r.options.refreshOrderAfterLineUpdate?n.cv.css.refreshCurrentOrder().done(function(){n.cv.css.refreshCurrentOrder().done(function(){n.cv.css.trigger(n.cv.css.eventnames.orderChanged)})}):f.refreshOrderForPromo()&&n.cv.css.refreshCurrentOrder().done(function(){n.cv.css.trigger(n.cv.css.eventnames.orderChanged)}),r.options.enableImmediateDiscountCheckForOnlineProductDiscounts&&u.multipleLinesChanged===!1&&f.performOnlineDiscountCheck(r.options.onlineDiscountFoundMessage,r.options.onlineDiscountNotFoundMessage)):u.data.toString().toLowerCase()==="false"&&u.message&&u.message.length>0&&(f.clearMessage(),f.setMessage("Line "+r.options.textLinesUpdatedUnSuccessfully+". "+u.message,n.cv.css.messageTypes.error))}).fail(function(){t.set("isProcessing",!1);t.set("isUpdating",!1);i&&f.setMessage(r.options.textLinesUpdatedUnSuccessfully,n.cv.css.messageTypes.error)});return e.resolve(),e},nt=function(t,i){i===void 0&&(i=!1);var u={sequence:t.LineSeq.toString(),quantity:t.OrderedQty.toString(),extendedAttributes:t.ExtendedAttributes,price:t.isPriceOverriden?t.displayableOrderItemPrice!==t.origOrderItemPrice?t.displayableOrderItemPrice.toString():t.displayableOrderNetItemPrice!==t.origOrderNetItemPrice?t.displayableOrderNetItemPrice.toString():"-1.0":"-1.0",discount:t.isDiscOverriden?(t.displayableItemDiscountRate*100).toString():"-1.0",orderItemPrice:t.OrderItemPrice!=null?t.OrderItemPrice:"-1.0",description:t.Description,productC
17ode:t.StockCode,category:t.CategoryDescription,mixedProductBuyPricing:i,markupPrice:t.MarkupPrice,markupPercent:t.MarkupPercent};return n.cv.util.hasContent(t.SolDeliveryMethod)&&(u.solDeliveryMethod=t.SolDeliveryMethod),t.noteIsExtendedLineDescription&&(u.note=typeof t.ExtendedLineDescription!="undefined"?n.cv.util.stripHtml(t.ExtendedLineDescription):""),u.costCentreCode=typeof t.costCentreCode!="undefined"?n.cv.util.stripHtml(t.costCentreCode.toString()):"",r.options.notesRequiredForNonContractPurchasing&&(u.nonContractReason=typeof t.nonContractReason!="undefined"?t.nonContractReason.toString():""),u.originalQuantity=typeof t.originalQuantity!="undefined"?t.originalQuantity.toString():"",u},et=function(t){var e=!1,i="",u,o;t.Product!=null&&t.StockCode!=null&&t.StockCode!=""&&(u=t.StockCode,t.isProcessing=!0,t.set("removingFromFavourites",!0),o=n.cv.css.userFavourites.removeFavourites({productCodes:[u]}),n.when(o).done(function(o){f.set("triggerMessages",!0);f.set("clearExistingMessages",!0);t.set("removingFromFavourites",!1);n.cv.css.userFavourites.defaults&&n.cv.css.userFavourites.defaults.returnMessageOnRemoveFavourite?(i=o.data.Messages[0],e=o.data.Success):o.data.toLowerCase()==="true"?(e=!0,i=r.options.textProductRemovedFromFavourites.format(u)):i=o.errorMessage!=null?o.errorMessage:r.options.textDefaultErrorRemovedFromFavourites.format(u);e?r.trigger(a,{productCode:u}):r.trigger(v,{productCode:u,errorMessage:i});t.isProcessing=!1;f.clearMessage();f.setMessage(i,e?n.cv.css.messageTypes.success:n.cv.css.messageTypes.error);e&&t.set("isFavourite",!1);f.set("triggerMessages",r.options.triggerMessages);f.set("clearExistingMessages",r.options.clearExistingMessages)}))},ot=function(t){var i=!1,u="",e,o;t.Product!=null&&t.StockCode!=null&&t.StockCode!=""&&(e=t.StockCode,t.isProcessing=!0,t.set("addingToFavourites",!0),_.extend(n.cv.css._proxyMeta,n.cv.util.getBaseProxyMeta(r)),o=n.cv.css.userFavourites.addFavourite({productCode:e,lineItemDetails:t}),n.when(o).done(function(e){f.set("triggerMessages",!0);f.set("clearExistingMessages",!0);t.set("addingToFavourites",!1);n.cv.css.userFavourites.defaults&&n.cv.css.userFavourites.defaults.returnMessageOnAddFavourite?(u=e.data.Messages[0],e.data.Success&&(i=!0)):e.data=="True"?(i=!0,u=r.options.textProductAddedToFavourites):u=e.errorMessage!=null?e.errorMessage:r.options.textDefaultErrorAddingToFavourites;i?r.trigger(c,{productCode:r.options.productCode}):r.trigger(l,{productCode:r.options.productCode,errorMessage:e});t.isProcessing=!1;f.clearMessage();f.setMessage(u,i?n.cv.css.messageTypes.success:n.cv.css.messageTypes.error);i&&(r.options.isAddToFavouritesAMove&&t.execCommand_destroy(),i&&t.set("isFavourite",!0));f.set("triggerMessages",r.options.triggerMessages);f.set("clearExistingMessages",r.options.clearExistingMessages);n.cv.css.trigger(n.cv.css.eventnames.addedToWishList,{searchTerm:r.viewModel.get("currentSearchTerm"),searchType:ProductSearchType.Preview,searchFrom:r.options.name})}))},f=kendo.observable({showAlternatesButtonVisible:!1,dataSource:r.options.dataSource,isOnlyShowingErrors:!1,isLoadingLines:!0,isOrderLinesServerFetched:!1,updateViewModelFromDataSource:function(){var t=this.updateItemList(this.get("isOrderLinesServerFetched"));this.updateChargeLineList();this.updateChargeLineWithoutFreightList();t.done(function(){n.cv.css.initFancyBox(r.element)})},hidePricingInOrderGrid:r.options.hidePricingInOrderGrid,hidePricingInOrderGridClass:function(){var n=r.options.pricingOnOrderGridClass;return this.get("hidePricingInOrderGrid")?n+i:n+t},enableOrderLineNotes:r.options.enableOrderLineNotes,enableOrderLineNotesClass:function(){var n=r.options.orderLineNotesClass;return this.get("enableOrderLineNotes")?n+t:n+i},useCostCentres:r.options.useCostCentres,userOrderEntry:r.options.userOrderEntry,useOrderEntryClass:function(){var n=r.options.useOrderEntryClass;return this.get("userOrderEntry")?n+t:n+i},notesRequiredForNonContractPurchasingClass:function(){var n=r.options.notesRequiredForNonContractClass;return r.options.notesRequiredForNonContractPurchasing?n+t:n+i}
17,linesCssClasses:function(){var n="";return n+=this.hidePricingInOrderGridClass(),n=n.length>0?n+" "+this.enableOrderLineNotesClass():this.enableOrderLineNotesClass(),n=n.length>0?n+" "+this.useOrderEntryClass():this.userOrderEntryClass(),n.length>0?n+" "+this.notesRequiredForNonContractPurchasingClass():this.notesRequiredForNonContractPurchasingClass()},linesCssClassesAdd:function(){return{add:!0,cssClass:this.linesCssClasses()}},message:"",hasLines:!1,hasChargeLines:!1,hasChargeLinesWithoutFreight:!1,isProcessing:!1,isValidating:!1,isUpdating:function(){return this.get("isProcessing")||this.get("isValidating")},startUpdating:function(){this.set("isProcessing",!0);this.set("isValidating",!0)},isWarrantyClaimRequiresPricingShown:r.options.isWarrantyClaimRequiresPricingShown,clearExistingMessages:r.options.clearExistingMessages,setMessage:function(t,i){n.cv.util.notify(this,t,i,{triggerMessages:r.options.triggerMessages,source:r.name})},clearMessage:function(){var i,t;if(this.set("message",""),r.options.triggerMessages&&(n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"orderLines",clearExisting:!0}),r.options.clearAdditionalWidgetMessages.length>0))for(i=r.options.clearAdditionalWidgetMessages.split(","),t=0;t<i.length;t++)n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:i[t],clearExisting:!0})},updateOrderLine:function(t){r.options.linesRendered&&n.each(ut(r.dataSource.view()),function(n,i){(i.SolLineSeq===t.LineSeq||i.LineSeq===t.LineSeq)&&(i.OrderedQty=t.OrderedQty,i.useCostCentres&&(i.costCentreCode=t.CostCentreCode),i.ExtendedLineDescription=t.ExtendedLineDescription,i.ExtendedAttributes=t.ExtendedAttributes,i.execCommand_update())})},cartUpdated:function(t){t&&n.cv.util.hasValue(t.orderNoOverride)&&(r.options.orderNoOverride=t.orderNoOverride);n.cv.util.hasValue(t,"isAddToCurrentOrderBulk")&&t.isAddToCurrentOrderBulk===!0&&r.viewModel.set("isOrderLinesServerFetched",!0);r.initDataSource();r.viewModel.set("isOrderLinesServerFetched",!1);r.viewModel.onlyShowErrors(!1)},lineAdded:function(){r.viewModel.set("onlineDiscountCalculated",!1)},onlineDiscountEverFound:function(){return _.any(this.dataSource.data(),function(n){return n.displayOnlineDiscountPrice})},colopStampChanged:function(t){var i=t.lineSeq;n.each(this.dataSource.data(),function(n,t){t.SolLineSeq===i&&(t.set("HasErrors",!1),t.set("ErrorMessages",""),t.set("ErrorTypes",""))});n.cv.css.trigger(n.cv.css.eventnames.orderChanged)},onlyShowErrors:function(t){t=n.cv.util.hasValue(t)?t:!this.get("isOnlyShowingErrors");this.set("isOnlyShowingErrors",t)},showAlternatesButton:function(t){r.dataSource&&n.each(this.get("itemList"),function(n,i){i.LineSeq===t.SolLineSeq&&i.set("isShowAlternatesVisible",t.AlternatesCount>0)})},updateItemList:function(t){var u=this,i=tt(y),f=n.Deferred();return setTimeout(function(){u.set("itemList",i);u.set("hasLines",i.length>0);r.trigger(o,{count:i.length});n.cv.css.trigger(n.cv.css.eventnames.cartLinesRendered,{stampsWidgetContainer:r.options.stampsWidgetContainer,lines:i,InsertToLines:!0,isFromLineChangedOrJustFetched:t});f.resolve()},1),f.promise()},updateChargeLineList:function(){var n=tt(u);this.set("chargeLineList",n);this.set("hasChargeLines",n.length>0);r.trigger(s,{count:n.length})},updateChargeLineWithoutFreightList:function(){var n=_.filter(tt(u),function(n){return n.Description===r.options.freightProtectionText||n.Description===r.options.dangerousGoodsText||n.Description===r.options.tailgateServiceText?!1:n.SolChgType!==r.options.freightChargeType.toString()||r.options.allowsBulkDiscount&&n.LineSeq===r.options.bulkDiscountLineSeq});this.set("chargeLineWithoutFreightList",n);this.set("hasChargeLinesWithoutFreight",n.length>0);r.trigger(h,{count:n.length})},itemList:[],chargeLineList:[],chargeLineWithoutFreightList:[],positiveChargeLinesWithoutFreightList:function(){var n=this.get("chargeLineWithoutFreightList");return _.filter(n,function(n){return n.LineAmount>=0})},hasPositiveChargeLinesWithoutFreightList:function(){return this.positiveChargeLinesWithoutFreightList().length>0},negativeChargeLinesWithoutFreightList:function(){var n=this.get("chargeLineWithoutFreightList");return _.filter(n,function(n){return n.LineAmount<0})},hasNegativeChargeLinesWithoutFreightList:function(){return this.negativeChargeLinesWithoutFreightList().length>0},negativeChargeLines:function(){return _.filter(this.get("chargeLineList"),function(n){return n.LineAmount<0})},hasNegativeChargeLines:function(){return this.negativeChargeLines().length>0},warningMessages:{},warningTypes:{},displayWarningMessages:function(){var t=this,i=t.get("itemList");n.each(i,function(n,i){var r=t.warningMessages[i.LineSeq],u=t.warningTypes[i.LineSeq];i.execCommand_updateWarningMessage(!0,r,u)})},refreshOrderForPromo:function(){var i=this,r=i.get("itemList"),u=["FreeProductCheapest","ProductDiscountSpecifiedPrice","ProductDiscountSpecifiedPercent"],t=!1;
17return n.each(r,function(n,i){if(_.contains(u,i.PromotionCodeType)){t=!0;return}}),t},displayLineMessages:function(t,i){var f=this,u=this.get("itemList"),e=[];u=n.grep(u,function(n){return n.StockCode!=null});t.length>0?(e=i.length==0?u:_.filter(u,function(n){return _.contains(i.toString().split(","),n.LineSeq.toString())}),n.each(t,function(t,i){var a=!1,s="",h="",c="",l="",o,v=!1;n.each(i.lineMessages,function(t,i){o=n.grep(u,function(n){return n.LineSeq==i.lineSeq});e=n.grep(e,function(n){return n.LineSeq!=i.lineSeq});o.length>0&&(i.errorMessage!=""&&(i.preventsCheckOut?(v=!0,a=!0,s=s==""?i.errorMessage:s+r.options.lineErrorSeparator+i.errorMessage,h=h==""?i.errorType:h+" "+i.errorType):(c=c==""?i.errorMessage:c+r.options.lineErrorSeparator+i.errorMessage,l=l==""?i.errorType:l+" "+i.errorType)),f.warningMessages[o[0].LineSeq]=c,f.warningTypes[o[0].LineSeq]=l)});a&&o[0].execCommand_updateErrorMessage(!0,s,h,v)}),n.each(e,function(n,t){t.execCommand_updateErrorMessage(!1,"","",!1)}),f.displayWarningMessages()):i.length>0&&n.each(i.toString().split(","),function(n,t){f.warningMessages[t]=""})},clearLineMessages:function(t){var i=this.get("itemList"),r=[];i=n.grep(i,function(n){return n.StockCode!=null});r=t.length==0?i:_.filter(i,function(n){return _.contains(t.toString().split(","),n.LineSeq.toString())});n.each(r,function(n,t){t.execCommand_updateErrorMessage(!1,"","",!1);t.execCommand_updateWarningMessage(!1,"","")})},setLocalLinesDeleted:function(t){var i=n.cv.css.localGetUpdatedCurrentOrderLines();i==null&&(i={linesDeleted:t});n.cv.css.localSetUpdatedCurrentOrderLines(i)},setLocalLinesUpdated:function(t){var i=[],r=n.cv.css.localGetUpdatedCurrentOrderLines();r==null&&(r={updatedLines:[]});r.updatedLines!=undefined&&(i=r.updatedLines);i=i!=null&&i.length>0?_.union(i,_.pluck(t,"sequence")):_.pluck(t,"sequence");r.updatedLines=i;n.cv.css.localSetUpdatedCurrentOrderLines(r)},buildLineItemJSON:function(n){return nt(n)},updateLinesFlaggedForUpdate:function(t,i){var f=this,e=[],u=n.Deferred(),o;return(f.set("onlineDiscountCalculated",!1),t=typeof t!="undefined"?t:!0,i=n.cv.css.isOciExpressCheckout?!1:typeof i!="undefined"?i:!0,o=!1,n.each(this.get("itemList"),function(t,i){if(i.requiresUpdate&&!i.requiresDelete){if(n.cv.util.isNullOrWhitespace(i.OrderedQty))return f.setMessage(r.options.textEnterNumeric,n.cv.css.messageTypes.error),o=!0,!1;e.push(nt(i))}return!0}),o)?(u.reject(),u):(e.length>0?u=f.updateAllLines(e,t,i):u.resolve(),u)},onlineDiscountCalculated:!1,performOnlineDiscountCheck:function(t,i){var r=this,u=n.Deferred();return r.updateLinesFlaggedForUpdate().done(function(){var f=r.updateAllLines(undefined,!1,undefined,undefined,!0);f.done(function(){var o=n.cv.css.localGetCurrentOrderLines(),e=_.any(o,function(n){return n.OnlineDiscountAmount>0}),f;u.resolve(e);r.set("onlineDiscountCalculated",!0);f=e?t:i;n.cv.util.hasContent(f)&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:f,type:n.cv.css.messageTypes.warning})})}),u.promise()},updateAllLinesWithTriggerRefreshLines:function(t,i,u,f,e,o){if(e===void 0&&(e=!1),o===void 0&&(o=!1),o){var s=r.options.orderNoOverride===0?n.cv.css.getCurrentOrderLines():n.cv.css.getOrderLines({orderNo:r.options.orderNoOverride,isLocalSetSelectedOrderLines:!0});s.done(function(){n.cv.css.trigger(n.cv.css.eventnames.localOrderChanged);r.viewModel.updateAllLines(t,i,u,f,e)})}else r.viewModel.updateAllLines(t,i,u,f,e)},updateAllLines:function(t,i,u,e,o){var l;o===void 0&&(o=!1);var s=this,v=n.Deferred(),a=n.Deferred(),y=n.Deferred(),c=[],h=[],w=null;if(t=typeof t!="undefined"?t:[],i=typeof i!="undefined"?i:!0,u=n.cv.css.isOciExpressCheckout?!1:typeof u!="undefined"?u:!0,t.length==0&&r.dataSource&&n.each(r.dataSource.view(),function(n,i){t.push(nt(i,o))}),t.length>0){if(c=_.filter(t,function(n){return n.quantity==0&&n.sequence!=="988"&&n.sequence!=="989"}),i&&s.clearMessage(),c.length>0){for(s.setLocalLinesDeleted(!0),l=0;l<c.length;l++)c[l].seq=c[l].sequence;y=s.deleteAllLines(c,i,u&&h.length===0,!0)}else s.setLocalLinesDeleted(!1),y.resolve();h=_.filter(t,function(n){return n.quantity!=0});h.length>
170?(s.setLocalLinesUpdated(h),s.startUpdating(),_.extend(n.cv.css._proxyMeta,n.cv.util.getBaseProxyMeta(r)),a=e||n.cv.css.orders.updateCurrentOrderLineBulk({batchData:h,triggerOrderRefresh:u}),n.when(a).done(function(e){var l;s.set("isProcessing",!1);w=e;var o="",c="",a=s.get("itemList"),v=function(i){switch(e.data[i].toLowerCase()){case"true":o+=(r.options.messagesUseLineSeq?t[i].sequence:n.grep(a,function(n){return n.LineSeq==h[i].sequence})[0].Index+1)+",";break;default:c+=(r.options.messagesUseLineSeq?t[i].sequence:n.grep(a,function(n){return n.LineSeq==h[i].sequence})[0].Index+1)+","}};for(l=0;l<e.data.length;l++)v(l);o!=""&&(i&&(r.options.linesUpdatedSuccessfullyGeneric.length>0?s.setMessage(r.options.linesUpdatedSuccessfullyGeneric,n.cv.css.messageTypes.success):s.setMessage("Lines "+o+" "+r.options.textLinesUpdatedSuccessfully,n.cv.css.messageTypes.success)),r.options.refreshOrderAfterLineUpdate&&!n.cv.css.isOciExpressCheckout?n.cv.css.refreshCurrentOrder().done(function(){n.cv.css.trigger(n.cv.css.eventnames.orderChanged);u&&s.updateItemList(!0)}):n.cv.css.isOciExpressCheckout?n.cv.css.trigger(n.cv.css.eventnames.orderChanged):u&&(f.refreshOrderForPromo()?n.cv.css.refreshCurrentOrder().done(function(){s.updateItemList(!0);n.cv.css.trigger(n.cv.css.eventnames.orderChanged)}):s.updateItemList(!0)));c!=""&&i&&(r.options.linesUpdatedUnSuccessfullyGeneric.length>0?s.setMessage(r.options.linesUpdatedUnSuccessfullyGeneric,n.cv.css.messageTypes.success):s.setMessage("Lines "+c+" "+r.options.textLinesUpdatedUnSuccessfully,n.cv.css.messageTypes.error));r.trigger(p,{linesSuccessful:o,linesUnSuccessful:c,displayMessages:i})}).fail(function(){s.set("isProcessing",!1);i&&s.setMessage(r.options.textLinesUpdatedErrored,n.cv.css.messageTypes.error)})):a.resolve();n.when(a,y).always(function(){v.resolve(w)})}else v.resolve(w);return v},deleteLinesFlaggedForDelete:function(t,i){var f=this,r=[],u=n.Deferred();return t=typeof t!="undefined"?t:!0,i=n.cv.css.isOciExpressCheckout?!1:typeof i!="undefined"?i:!0,n.each(this.get("itemList"),function(t,i){i.requiresDelete?r.push({seq:i.LineSeq.toString()}):i.hasLineNotes&&n.each(i.lineNotes,function(n,t){t.requiresDelete&&r.push({seq:t.LineSeq.toString()})})}),r.length>0?u=f.deleteAllLines(r,t,i):u.resolve(),u},deleteAllLines:function(t,i,u,f){var e=this,o=n.Deferred(),s="",a,c,h,l,v;if(t=typeof t!="undefined"?t:[],i=typeof i!="undefined"?i:!0,u=n.cv.css.isOciExpressCheckout?!1:typeof u!="undefined"?u:!0,a=t.length===0,t.length===0&&n.each(this.get("itemList"),function(n,i){t.push({seq:i.LineSeq.toString()})}),t.length>0){for(e.setLocalLinesDeleted(!0),c=[],h=0;h<t.length;h++)c.push(parseFloat(t[h].seq));l=r.dataSource.data();_.extend(n.cv.css._proxyMeta,n.cv.util.getBaseProxyMeta(r));v=n.cv.css.orders.deleteCurrentOrderLineBulk({batchData:t,allLineSeqsToDeleteIfBatch:c,triggerOrderRefresh:u,getLocalOnly:f,clearLocalLines:a});n.when(v).done(function(f){var h,c;if(f&&f.data&&f.data.length>0&&(h=f.data[0],typeof h.deleteLineOk!="undefined"&&h.deleteLineOk===!1)){e.clearMessage();e.setMessage("Line "+r.options.textLinesDeletedUnSuccessfully+". "+h.message,n.cv.css.messageTypes.error);o.resolve(f);return}u?(c=function(){o.resolve(f);n.cv.css.unbind(n.cv.css.eventnames.orderChanged,c)},n.cv.css.bind(n.cv.css.eventnames.orderChanged,c)):o.resolve(f);n.each(t,function(t,i){var f=n.grep(l,function(n){return n.LineSeq.toString()===i.seq}),e,o;if(n.cv.css.trigger(n.cv.css.eventnames.cartLineRemoved,{lineSeq:i.seq}),n.cv.util.hasValue(f)&&f.length===1){if(f[0].StockCode&&(s=s.length===0?f[0].StockCode:s+", "+f[0].StockCode),!u)try{r.dataSource.remove(f[0])}catch(h){}}else if(f=n.grep(l,function(n){return n.LineSeq==Math.floor(i.seq)}),n.cv.util.hasValue(f)&&f.length===1&&(e=[],n.each(f[0].lineNotes,function(n,t){t.LineSeq==i.seq&&e.push(n)}),e.length>0))for(e=e.sort(function(n,t){return t-n}),o=0;o<e.length;o++)f[0].lineNotes=f[0].lineNotes.splice(e[o],1)});i&&(e.clearMessage(),t.length==1?e.setMessage(r.options.textLineDeletedSuccessfully.format(s),n.cv.css.messageTypes.success):e.setMessage(r.options.textLinesDeletedSuccessfully.format(s),n.cv.css.messageTypes.success))})}else o.resolve();return o},getLineErrorCount:function(){var t=0;return n.each(this.get("itemList"),function(n,i){i.HasErrors&&t++}),t},getLinePreventChecktoutCount:function(){var t=0;return n.each(this.get("itemList"),function(n,i){i.PreventCheckout&&t++}),t},refreshLines:function(){r.initDataSource()},retainSortSelected:function(){var n=r.dataSource.sort(),t="",i="";n&&n.length>0&&(t=n[0].field,i=n[0].dir!=undefined?n[0].dir:"asc",r.options.defaultLinesSortField=t,r.options.defaultLinesSortDirection=i)},removeLineFromCartAfterSelectingNotifyWhenInStock:function(n){n&&n.execCommand_destroy(!1)},_warrantyClaimReasonCodeSelected:function(t){var i=this;r.options.isForWarrantyClaim&&n.cv.util.hasValue(t)&&n.cv.util.hasValue(t.warrantyClaimRequiresPricingShown)&&(n.each(i.get("itemList"),function(n,i){i.set("isWarrantyClaimRequiresPricingShown",t.warrantyClaimRequiresPricingShown)}),i.set("isWarrantyClaimRequiresPricingShown",t.warrantyClaimRequiresPricingShown))}});return st(),f.bind("change",function(n){n.field=="dataSource"&&f.retainSortSelected()}),f},_getDefaultSorterTemplate:function(){var n=this;return n.options.searchFields&&(n.options.searchPosition==tt||n.options.searchPosition==nt)?"<div data-role='sorter' data-sort-options='#
17= sortOptions #' data-bind='source: dataSource'><\/div>":""},_getDefaultViewTemplate:function(){var n=this,t="<div><div class='itemList' data-bind='source: itemList' data-template='"+n.options.itemViewTemplate+"'><\/div><div class='chargeLineList' data-bind='source: chargeLineList' data-template='"+n.options.chargeLineViewTemplate+"'><\/div>";return t+"<\/div>"},_getDefaultItemViewTemplate:function(){var t=this,n="<script type='text/x-kendo-template' id='"+t.options.itemViewTemplate+"'>";return n+="<div>",n+="Product",n+"<\/div><\/script>"},_getDefaultChargeLineViewTemplate:function(){var t=this,n="<script type='text/x-kendo-template' id='"+t.options.chargeLineViewTemplate+"'>";return n+="<div>",n+="Charge Line",n+"<\/div><\/script>"},_getDefaultBlankTemplate:function(){return"<div><\/div>"}};n.cv.ui.widget(rt)})(jQuery);
18(function(n){var u="dataBound",r="addressRendered",f="multiAddressRendered",e="addressValidationRendered",o="addressValidationOptionSelected",i="addressToBilling",t="billingToAddress",s=[{label:"Please select...",value:""},{label:"Reception",value:"Reception"},{label:"Front Door",value:"Front Door"},{label:"Front Porch",value:"Front Porch"},{label:"Front Verandah",value:"Front Verandah"},{label:"In Carport",value:"In Carport"},{label:"In Garage",value:"In Garage"},{label:"In Letter Box",value:"In Letter Box"},{label:"In Mail Box",value:"In Mail Box"},{label:"Over Front Fence",value:"Over Front Fence"},{label:"Next To Wheelie Bins",value:"Next To Wheelie Bins"},{label:"Under Front Stairs",value:"Under Front Stairs"}],h={name:"deliveryAddress",options:{dataSource:[],multipleDeliveryAddressDataSource:[],deliveryAddressValidationDataSource:[],orderComments:"",deliveryInstructions:"",pickupInstructions:"",deliveryInstructionsAreReadonly:!1,orderReference:"",copyOrderConfirmation:"",soDelCountry:"",soDelPhone:"",sessionTimeOutRedirectUrl:"login.aspx",multipleAddressTextField:"Name",multipleAddressValueField:"Name",addressValidationTextField:"label",addressValidationValueField:"value",defaultMultipleAddressValue:"",defaultAddressValidationValue:"",inputErrorClass:"input-error",deliveryAddressMode:"Delivery",authorityToLeaveOptionList:[],authorityToLeaveFormat:"Authority to leave {0}",defaultLeaveAtAlternateLocation:undefined,autoBind:!0,triggerMessages:!1,triggerErrorMessages:!1,triggerExternalValidationMessages:!1,includeInBrowserHistory:!1,showCustomerReferenceUpdatedMessage:!1,updateAddressOnChanged:!1,autoSelectAddressValidationValue:!1,usingAddressValidation:!1,saveAddressForUser:!0,saveDeliveryInstructions:!1,showPickupDeliveryControls:!1,orderHasPickupAndDeliveryLines:!1,pickupContactFieldData:[],defaultLinkDeliveryAndBilling:!1,useNegationLogicForLinkingAddress:!1,showBillingAddressOnPickup:!1,clearOnUncheckedLink:!0,saveAddressDownToUser:!0,saveBillAddressDownToUser:!1,addressMapMode:t,loadBlankBillingFromDelivery:!1,preserveLoadedDeliveryAddress:!1,callValidateServiceOnCheckout:!1,fieldMapFrom:"0,1,2,3,4,5,6,7,8,9,10,11,12",deliveryAndBillingMatchEnsureElement:!1,userAddressFields:[],saveAddressFieldGroup:"saveAddressFieldGroup",createUserFromGuest:!1,guestCheckoutEmailField:"",isDeliveryMethodsInUse:!1,isDeliveryMethodSetOnOrder:!1,useAddressLookup:!1,displayValuesFromSeq:"1,2",addressObjectMapping:"",addressLookupProvider:"",billingAddressLookupMandatoryMessage:"Billing Address is Mandatory",deliveryAddressLookupMandatoryMessage:"Delivery Address is Mandatory",billingAddressIsRural:!1,deliveryAddressIsRural:!1,enableAdditionalChargeForRuralAddresses:!1,textErrorGettingDeliveryAddress:"There was an error getting the delivery address for the order",textErrorUpdatingDeliveryAddress:"There was an error updating the delivery address for the order",textErrorWhenUpdatingDeliveryAddress:"There was an error when updating the delivery address for the order. Please correct the delivery address details entered.",textErrorWhenUpdatingBillingAddress:"There was an error when updating the billing address for the order. Please correct the billing address details entered.",textErrorValidatingSuburbPostcode:"There was an error validating the delivery address' suburb and postcode",textErrorValidatingSuburbStatePostcode:"There was an error validating the delivery address' suburb, state and postcode",textCustomerReferenceUpdatedSuccess:"Customer reference updated successfully",textDeliveryAddressUpdatedSuccess:"Delivery address updated successfully",textBillingAddressUpdatedSuccess:"Billing address updated successfully",textCopyOrderConfirmationInvalidEmail
18s:"One of the copy confirmation email addresses is invalid",textErrorGettingMutipleDeliveryAddress:"There was an error retrieving your list of delivery addresses",textUpdatingAttentionToSuccess:"Attention to and phone number updated successfully",textErrorUpdatingAttentionTo:"There was an error updating the attention to or phone number",textErrorSavingDeliveryAddress:"There was an error saving your delivery address",textErrorMissingDeliveryAddressFields:"Not all the mandatory address fields have been populated",textErrorCannotEditAddressOnPickup:"The delivery address cannot be changed when using pickup",defaultMultipleAddressText:"Please Select...",defaultAddressValidationText:"Please Select...",defaultAuthorityToLeaveText:"Please Select...",textMandatoryFieldNotComplete:"",addressIsValid:"Your address is valid",countryList:"",showCountry:!1,stateList:"",enterOrderComments:!0,disableDeliveryAddress:!1,disableBillingAddress:!1,showDeliveryInstructions:!0,showAuthorityToLeave:!1,forceOrderReference:!0,allowCopyOrderConfirmation:!0,copyOrderConfirmationMandatory:!1,hasMultipleDeliveryAddresses:!1,showAttentionToUserDetails:!1,isViewOnly:!1,isDangerousGoodsPoBoxDelivery:!1,isB2bPickupAndContactDetailsInUse:!1,enableThirdPartyDelivery:!1,saveThirdPartyDeliveryAddress:!1,multipleAddressListLoaded:!1,isIncludeAddressIdOnly:!1,textOrderReferenceMandatory:"Please enter an order reference",textCopyOrderConfirmationMandatory:"Please enter an order confirmation copy email address",textPickupContactDetailsIncomplete:"Pickup contact details are incomplete",textOrderCommentsUpdatedSuccess:"Order comments updated successfully",textDeliveryInstructionsUpdatedSuccess:"Delivery instructions updated successfully",textPickupInstructionsUpdatedSuccess:"Pickup instructions updated successfully",textAuthorityToLeaveUpdatedSuccess:"Authority to leave updated successfully",textErrorUpdatingAuthorityToLeave:"There was an error updating the authority to leave location",textAuthorityToLeaveMandatory:"Please enter an authority to leave location",textAuthorityToLeaveOptionNotSelected:"Authority to leave selected but no location chosen. Please select a location.",textCopyOrderConfirmationUpdatedSuccess:"Copy order confirmation updated successfully",attentionUserName:"",attentionPhoneNumber:"",multiUpdateThrottleTimeout:0,surbPostCodeInputThrottleTimeout:500,orderNoOverride:0,overrideOrderKey:"",viewTemplate:"",addressViewTemplate:null,multipleAddressViewTemplate:null,addressValidationViewTemplate:null,pickupSuburbFieldName:"SoDelAddr3",pickupStateFieldName:"SoDelAddr4",addressRulesetsAssignmentsSuburbField:"",addressRulesetsAssignmentsStateField:"",addressRulesetsAssignmentsPostcodeField:"",delAddressSuburbAutoCompleteTemplateId:"",isB2c:!1,enableSuburbAndPostcodeValidation:!1,suburbStatePostcodeValidation:"No",suburbFieldName:"SoDelSuburb",stateFieldName:"SoDelState",postcodeFieldName:"SoDelPostcode",countryFieldName:"SoDelCountry",billingSuburbFieldName:"SoBillSuburb",billingPostcodeFieldName:"SoBillPostcode",billingStateFieldName:"SoBillState",billingCountryFieldName:"SoBillCountry",suburbAndPostcodeInvalidMessage:"The suburb and postcode don't correspond.",suburbStateAndPostcodeInvalidMessage:"The suburb, state and postcode don't correspond.",suburbFieldNameForB2b:"",customerFieldNameForDefaultAddressName:"",isStoreAvailPickup:!1,warehouseIfIsStoreAvailPickup:"",isOrderAllEmailDelivery:!1,addressValidationMode:"",isForWarrantyClaim:!1,isForWarrantyClaimBillingFields:!1,isOnDeliveryAddressGuest:!1,userFieldForReceivePromoEmails:"",validateTermsAndConditions:!1,textTermsAndConditionsMandatory:"",displayFirstNameAndLastName:!1,firstNameAndLastNameRegex:"",firstNameFieldPrompt:"",lastNameFieldPrompt:"",billingNameFieldName:"SoBillAddr1",showManualAddressInputConfirmation:!1,validationManualAddressInputConfirmationRequiredMessage:"Validation Manual Address Input Confirmation required",selectedAddressId:"",validateDeliveryAddressRulests:!0,setDeliveryOptions:!0,preserveDetails:!1,isGuestCheckout:!1,postCodePrompt:"Postcode",suburbPrompt:"Suburb",useGoogleAddressLookup:!1,useGoogleAddressLookupDefaultBehaviour:!0,rulesetFieldForSuburb:"",rulesetFieldForState:"",rulesetFieldForPostcode:"",showBillingInsteadOfDeliveryOnReturns:!1,isReturnOrder:!1,showPromoMaterial:!1,pickupInstructionRequired:!1,pickupInstructionRequiredErrorMessage:"",deliveryInstructionRequired:!1,deliveryInstructionRequiredErrorMessage:""},events:["dataBinding",u,f,r,e,o],viewModel:null,view:null,_viewAppended:!1,_addressViewAppended:!1,_multipleAddressViewAppended:!1,_addressValidationViewAppended:!1,finishedInitialize:!1,initialise:function(t){var i=this,r,f,e,o;n.cv.css.trigger(n.cv.css.eventnames.widgetInitializingOnCheckout,i.name);r=n(t).children(":first");r.data("view")?i.view=r.html():(i._viewAppended=!0,i.options.addressViewTemplate||(i.options.addressViewTemplate=i.name+"-address-template-"+kendo.guid(),i._addressViewAppended=!0),i.options.multipleAddressViewTemplate||(i.options.multipleAddressViewTemplate=i.name+"-multi-address-template-"+kendo.guid(),i._multipleAddressViewAppended=!0),i.options.addressValidationViewTemplate||(i.options.addressValidationViewTemplate=i.name+"-address-validation-template-"+kendo.guid(),i._addressValidationViewAppended=!0),f=i.options.viewTemplate?n("#"+i.options.viewTemplate).html():i._getDefaultViewTemplate(),e=kendo.template(f),i.view=e(i.options),i._addressViewAppended&&(i.view+=i._getDefaultAddressViewTemplate()),i._multipleAddressViewAppended&&(i.view+=i._getDefaultMultipleAddressViewTemplate()),i._addressValidationViewAppended&&(i.view+=i._getDefaultAddressValidationViewTemplate()),i.element.html(i.view));i.viewModel=i._getViewModel();o=i.element.children(":first");kendo.bind(o,i.viewModel);i.trigger(u);
18i.options.isViewOnly&&(n.cv.css.bind(n.cv.css.eventnames.localdeliveryAddressChanged,n.proxy(i.viewModel.localdeliveryAddressChanged,i.viewModel)),n.cv.css.bind(n.cv.css.eventnames.deliveryAddressModeChanged,function(n){i.viewModel.set("deliveryAddressMode",n.message)}),n.cv.css.bind(n.cv.css.eventnames.viewOrderAwaitingPayment,n.proxy(i.viewModel.localdeliveryAddressChanged,i.viewModel)));i.options.isDeliveryMethodsInUse&&(n.cv.css.bind(n.cv.css.eventnames.deliveryMethodSetOnOrder,n.proxy(i.viewModel.deliveryMethodSetOnOrder,i.viewModel)),n.cv.css.bind(n.cv.css.eventnames.deliveryMethodClearedFromOrder,n.proxy(i.viewModel.deliveryMethodClearedFromOrder,i.viewModel)));i.options.useAddressLookup&&(n.cv.css.bind(n.cv.css.eventnames.addressLookupSelected,n.proxy(i.viewModel.addressLookupSelected,i.viewModel)),n.cv.css.bind(n.cv.css.eventnames.addressLookupValueEdited,n.proxy(i.viewModel.addressLookupValueEdited,i.viewModel)));i.options.enableThirdPartyDelivery&&(n.cv.css.bind(n.cv.css.eventnames.thirdPartyDeliveryStatusChanged,n.proxy(i.viewModel.thirdPartyDeliveryStatusChanged,i.viewModel)),n.cv.css.bind(n.cv.css.eventnames.orderSubmitted,n.proxy(i.viewModel.updateThirdPartyDeliveryAddress,i.viewModel)));i._setThrottles()},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},validateInputFields:function(t,i,r){var u=this,e=u.options.triggerMessages,f=n.Deferred();return!u.options.isViewOnly&&u.viewModel.showAddressView()?(u.options.triggerExternalValidationMessages&&(u.options.triggerMessages=!0),f=u.viewModel.validateInputFields(t,u.options.callValidateServiceOnCheckout,i,r),u.options.triggerMessages=e):f.resolve(),f},reValidateOrderDeliveryAddress:function(){var r=this,t=r.viewModel,i=n.Deferred();return t.setMessage(""),n.isFunction(t._validateAddressServiceCall)?t._validateAddressServiceCall().done(function(u){n.cv.css.addRemovePageValidationError(u,"deliveryAddress");t.get("copyingAddressFields")||(n.cv.css.trigger(n.cv.css.eventnames.addressValidated),r.options.usingAddressValidation&&u&&n.cv.css.trigger(n.cv.css.eventnames.addressValidationUpdated,{valid:!0}));i.resolve()}).fail(function(){i.reject()}):i.resolve(),i},_setThrottles:function(){var n=this;n._updateDeliveryAddressThrottled=_.debounce(function(){if(n.options.multiUpdateThrottleTimeout>0){var i=!n.options.updateAddressOnChanged||n.options.updateAddressOnChanged&&!n.viewModel.get("isAddressBeingEdited");if(n.viewModel.get("deliveryAddressMode")!="Pickup"&&n.options.addressMapMode==t&&n.viewModel.shouldAddressBeCopied()&&(i=!n.options.updateAddressOnChanged||n.options.updateAddressOnChanged&&!n.viewModel.get("isBillingAddressBeingEdited")),i)return n.viewModel._updateDeliveryAddress.apply(n.viewModel,arguments)}else return n.viewModel._updateDeliveryAddress.apply(n.viewModel,arguments)},n.options.multiUpdateThrottleTimeout);n._updateBillingAddressThrottled=_.debounce(function(){if(n.options.multiUpdateThrottleTimeout>0){var t=!n.options.updateAddressOnChanged||n.options.updateAddressOnChanged&&!n.viewModel.get("isBillingAddressBeingEdited");if(n.viewModel.get("deliveryAddressMode")!="Pickup"&&n.options.addressMapMode==i&&n.viewModel.shouldAddressBeCopied()&&(t=!n.options.updateAddressOnChanged||n.options.updateAddressOnChanged&&!n.viewModel.get("isAddressBeingEdited")),t)return n.viewModel._updateBillingAddress.apply(n.viewModel,arguments)}else return n.viewModel._updateBillingAddress.apply(n.viewModel,arguments)},n.options.multiUpdateThrottleTimeout)},_getViewModel:function(){var h=this,a=function(t){t||!h.options.isViewOnly?((t||!h.options.isDeliveryMethodsInUse||h.options.showBillingInsteadOfDeliveryOnReturns)&&(c.set("isLoadingSoDelAddress",!0),l().done(function(t){var f,e,i,r,u,o,s;t&&t.data&&t.data.result&&t.data.result.length>0&&(c.setAddressDefaults(),f=c.get("addressItemList"),e=c.get("billingAddressItemList"),h.options.enableSuburbAndPostcodeValidation===!0&&(i={suburb:"",postcode:"",state:"",country:""},r={suburb:"",postcode:"",state:"",country:""},_.each(f,function(n){if(n.fieldItem.FieldName==="SoDelCountry"){i.country=n.value;return}if(n.fieldItem.FieldName===h.options.suburbFieldName){i.suburb=n.value;return}if(n.fieldItem.FieldName===h.options.stateFieldName){i.state=n.value;return}if(n.fieldItem.FieldName===h.options.postcodeFieldName){i.postcode=n.value;return}}),h.options.isB2c&&_.each(e,function(n){if(n.fieldItem.FieldName==="SoDelCountry"){r.country=n.value;return}if(n.fieldItem.FieldName===h.options.billingSuburbFieldName){r.suburb=n.value;return}if(n.fieldItem.FieldName===h.options.billingStateFieldName){r.state=n.value;return}if(n.fieldItem.FieldName===h.options.billingPostcodeFieldName){r.postcode=n.value;return}}),u=h.options.showCountry?i.country:"",o=n.cv.util.anyContent(i.suburb,i.state,i.postcode,u)?c.validateSuburbAndPost
18CodeInternal(i.suburb,i.state,i.postcode,i.country,!1):{},u=h.options.showCountry?r.country:"",s=h.options.isB2c&&n.cv.util.anyContent(r.suburb,r.state,r.postcode,u)?c.validateSuburbAndPostCodeInternal(r.suburb,r.state,r.postcode,r.country,!0):{},n.when(o,s).done(function(){c.validateInputFields(!1)})))}).always(function(){c.set("isLoadingSoDelAddress",!1);n.cv.css.trigger(n.cv.css.eventnames.addressChanged,{deliveryAddressMode:c.get("deliveryAddressMode"),isRural:c.get("deliveryAddressIsRural"),hasRuralCharge:c.hasRuralDeliveryCharge()})})),h.options.hasMultipleDeliveryAddresses&&h.options.multipleDeliveryAddressDataSource.length==0?st():c.setMultipleDeliveryAddressDataSource(),h.options.showAttentionToUserDetails&&(c.setAttentionToUserName(!1),c.setAttentionToPhoneNumber(!1))):c.localdeliveryAddressChanged();h.options.isStoreAvailPickup&&c.getPickupAddressDataSource();n.cv.css.trigger(n.cv.css.eventnames.deliveryMethodLoadedCheck,{widgetName:h.name,deliveryAddressMode:c.get("deliveryAddressMode")});h.options.authorityToLeaveOptionList.length===0&&(c.authorityToLeaveOptionList=s);c.setCreateUserFromGuest()},y=function(){var t=c.get("additionalEventBound");!t&&h.options.usingAddressValidation&&h.options.addressValidationMode!=""&&(n.cv.css.bind(n.cv.css.eventnames.addressBeingEdited,n.proxy(h.viewModel._addressBeingEdited,h.viewModel)),n.cv.css.bind(n.cv.css.eventnames.addressValidated,n.proxy(h.viewModel._validationUpdated,h.viewModel)));c.set("additionalEventBound",!0)},ut=function(t){if(t==="")c.set("addressValidated",!0);else{var i=h.options.orderNoOverride===0?n.cv.css.deliveryAddress.getDeliveryAddressForCurrentOrder():n.cv.css.deliveryAddress.getDeliveryAddressForSelectedOrder({_objectKey:h.options.overrideOrderKey});i.done(function(n){var t=n.data;t.result&&t.result.length>0&&(t.result[0].SoBillAddr1!==""||t.result[0].SoDelAddr1!=="")?c.set("addressValidated",t.result[0].AddressValidated):c.set("addressValidated",!1);y()}).fail(function(){c.set("addressValidated",!1)})}},l=function(t){t=n.cv.util.hasValue(t)?t:!1;var i=h.options.orderNoOverride===0?n.cv.css.deliveryAddress.getDeliveryAddressForCurrentOrder():n.cv.css.deliveryAddress.getDeliveryAddressForSelectedOrder({_objectKey:h.options.overrideOrderKey,isViewOnly:h.options.isViewOnly,validateDeliveryAddressRulests:h.options.validateDeliveryAddressRulests,preserveDetails:h.options.preserveDetails});return i.done(function(i){var f=i.data,r,u;i.sessionHasTimedOut?c.redirectToTimeoutUrl(h.options.sessionTimeOutRedirectUrl,null,h.options.includeInBrowserHistory):(b(f,t),c.hasRuralDeliveryCharge()&&(r=c.getSoDelAddress(),c.updateDeliveryAddress(r,"")),c.initSuburbLookupFields(),n.cv.css.trigger(n.cv.css.eventnames.addressLoaded,i.data),u=n.cv.util.hasContent(h.viewModel._getAddressItemPostcode(!0)),n.cv.css.trigger(n.cv.css.eventnames.addressChanged,{hasPostCode:u}));y()}).fail(function(){c.setMessage(h.options.textErrorGettingDeliveryAddress,n.cv.css.messageTypes.error)}),i},ft=function(n,t,i,r,u){if(t){p(t,i);w(t,r,i);var f=d(t,n,!1);c.set(u,f)}},g=function(t){if(c.get("isCountryBeingEdited")!==!1){var i=h.options.orderNoOverride===0?n.cv.css.deliveryAddress.getDeliveryAddressForCurrentOrder():n.cv.css.deliveryAddress.getDeliveryAddressForSelectedOrder({_objectKey:h.options.overrideOrderKey});i.done(function(n){var u=n.data,i;if(n.sessionHasTimedOut)c.redirectToTimeoutUrl(h.options.sessionTimeOutRedirectUrl,null,h.options.includeInBrowserHistory);else if(u.result&&u.result.length>0){for(i=0;i<1;i++){var f=t?u.result[i].BillingAddressFieldData:u.result[i].AddressFieldData,e=t?"SoBillCountry":"SoDelCountry",o=t?"SoBillState":"SoDelState",s=t?"billingAddressItemList":"addressItemList";ft(t,f,e,o,s)}h.trigger(r);y()}}).fail(function(){c.setMessage(h.options.textErrorGettingDeliveryAddress,n.cv.css.messageTypes.error)})}},p=function(t,i){var u=null,r;return h.options.showCountry&&n.cv.util.hasContent(h.options.countryList)&&(r=n.map(h.options.countryList,function(n){return n}),n.each(t,function(n,t){t.FieldName===i&&(t.Lookup=nt(h.options.countryList),r.length===1&&(t.Value=r[0],u=t),t.Value===""&&(t.Value=" "))})),u},nt=function(t){return n.map(t,function(n,t){return t}).length===1?t:n.extend({},{" ":"Please Select"},t)},w=function(t,i,r){var u,f;h.options.showCountry&&n.cv.util.hasContent(h.options.stateList)&&(n.each(t,function(n,t){if(t.FieldName===r){u=t.Value;return}}),f=h.options.stateList,n.each(t,function(n,t){if(t.FieldName===i){f[u]?(f[u].hasOwnProperty(t.Value)||(t.Value=" "),t.Lookup=f[u]):t.Lookup={};t.Lookup=nt(t.Lookup);return}}))},et=function(){var t={FieldName:"",Prompt:"",Value:"",FieldType:"varchar",Rows:0,Columns:0,Length:25,Mandatory:!0,Lookup:{regex:h.options.firstNameAndLastNameRegex},isViewModelField:!0};n.cv.util.isNullOrWhitespace(c._getAddressItemValue(h.options.billingNameFieldName,c.billingAddressItemList))&&(n.cv.css.removeLocalStorage(n.cv.css.localStorageKeys.guestUserFirstNameField),n.cv.css.removeLocalStorage(n.cv.css.localStorageKeys.guestUserLastNameField));t.FieldName="GuestUserFirstName";t.Prompt=h.options.firstNameFieldPrompt;t.Value=n.cv.css.getLocalStorage(n.cv.css.localStorageKeys.guestUserFirstNameField);c.set("guestUserFirstNameField",n.cv.util.getFieldItemData(t));t.FieldName="GuestUserLastName";t.Prompt=h.options.lastNameFieldPrompt;t.Value=n.cv.css.getLocalStorage(n.cv.css.localStorageKeys.guestUserLastNameField);c.set("guestUserLastNameField",n.cv.util.getFieldItemData(t))},b=function(u,f,e){var a=c.get("deliveryAddressMode"),o,v,b,y,k,g,s,nt,l;if(f=n.cv.util.hasValue(f)?f:!1,e=n.cv.util.hasValue(e)?e:!1,c.set("isInitialLoad",!0),u.result&&u.result.length>0)for(o=0;o<1;o++)(h.options.useAddressLookup||c.get("enableAdditionalChargeForRuralAddresses")&&h.options.isB2c===!1)&&(v=u.result[o].SoBillAddressId,b=u.result[o].SoBillAddressIsRural==="Yes",c.set("billingAddressId",n.cv.util.hasContent(v)?v:""),c.set("billingAddressIsRural",b),y=u.result[o].SoDelAddressId,k=u.result[o].SoDelAddressIsRural==="Yes",c.set("deliveryAddressId",n.cv.util.hasContent(y)?y:""),c.set("deliveryAddressIsRural",k)),c.set("authorityToLeave",u.result[o].AuthorityToLeave),c.get("authorityToLeave")&&c.get("authorityToLeave")!==""&&c.set("leaveAtAlternateLocation",!0),c.set("deliveryInstructions",u.result[o].SoDelIns),c.set("pickupInstructions",u.result[o].PickupInstructions),c.set("orderReference",u.result[o].SoCustReference),c.set("copyOrderConfirmation",u.result[o].CopyOrderConfirmationEmail),c.set("orderComments",u.result[o].SoComments),c.set("soDelCountry",u.result[o].SoDelCountry),c.set("soDelPhone",u.result[o].SoDelPhone),u.result[o].ContactFirstName!==undefined&&c.set("contactFirstName",a=="Pickup"?u.result[o].ContactFirstName:""),u.result[o].ContactLastName!==undefined&&c.set("contactLastName",a=="Pickup"?u.result[o].ContactLastName:""),u.result[o].ContactPhoneNumber!==undefined&&c.set("contactPhoneNumber",a=="Pickup"?u.result[o].ContactPhoneNumber:""),c.get("deliveryAddressObjectKey").length==0&&c.set("deliveryAddressObjectKey",u.result[o]._objectKey),p(u.result[o].AddressFieldData,"SoDelCountry"),w(u.result[o].AddressFieldData,"SoDelState","SoDelCountry"),h.options.useAddressLookup&&h.options.disableDeliveryAddress===!1&&(e==!1&&n.cv.css.trigger(n.cv.css.eventnames.setAddressLookupDisplayValue,{addressType:"Delivery",addressFieldData:u.result[o].AddressFieldData,deliveryAddressId:c.get("deliveryAddressId"),isIncludeAddressIdOnly:h.options.isIncludeAddressIdOnly}),c.setShowManualDeliveryAddressInputConfirmationValue()),g=e==!1&&h.options.useAddressLookup&&n.cv.util.isNullOrWhitespace(c.get("deliveryAddressId"))&&h.options.isIncludeAddressIdOnly,s=d(u.result[o].AddressFieldData,!1,g),s.length>0&&c.set("addressFieldsExist",!0),c.set("addressItemList",s),h.options.enableThirdPartyDelivery&&c.disableEnableThirdPartyDeliveryAddressFields(),(h.options.useAddressLookup||c.get("enableAdditionalChargeForRuralAddresses"))&&h.options.isB2c===!1&&(n.cv.util.hasContent(c.get("deliveryAddressId"))||e)&&c.toggleDeliveryAddressB2BFields(!1),c.setStatesForB2CAddressFields(s),u.result[o].BillingAddressFieldData&&u.result[o].BillingAddressFieldData!=null&&(p(u.result[o].BillingAddressFieldData,"SoBillCountry"),w(u.result[o].BillingAddressFieldData,"SoBillState","SoBillCountry"),nt=e==!1&&h.options.useAddressLookup&&n.cv.util.isNullOrWhitespace(c.get("billingAddressId")),l=d(u.result[o].BillingAddressFieldData,!0,nt),l.length>0&&c.set("billingAddressFieldsExist",!0),c.set("billingAddressItemList",l),h.options.useAddressLookup&&h.options.disableBillingAddress===!1&&(n.cv.css.trigger(n.cv.css.eventnames.setAddressLookupDisplayValue,{addressType:"Billing",addressFieldData:u.result[o].BillingAddressFieldData,billingAddressId:c.get("billingAddressId")}),c.set("showManualAddressInputConfirmation",h.options.showManualAddressInputConfirmation&&n.cv.util.isNullOrWhitespace(c.get("billingAddressId")))),(f&&!c.deliveryAndBillingMatch()||h.options.addressMapMode==t&&h.options.loadBlankBillingFromDelivery&&c.isBillingAddressEmpty()&&!c.isDeliveryAddressEmpty()&&h.options.deliveryAddressMode!=="Pickup")&&(h.options.addressMapMode=i,c.copyAddressFields(!1),c.triggerCopyUpdate(),h.options.addressMapMode=t),c.shouldAddressBeCopied()&&!c.deliveryAndBillingMatch()&&(!h.options.preserveLoadedDeliveryAddress||h.options.addressMapMode==t&&c.isDeliveryAddressEmpty()||h.options.addressMapMode==i?(c.copyAddressFields(),c.triggerCopyUpdate()):(c.set("preserveAddressData",!0),h.options.useNegationLogicForLinkingAddress?c.set("linkDeliveryAndBilling",!0):c.set("linkDeliveryAndBilling",!1),h.options.useAddressLookup&&h.options.disableDeliveryAddress===!1&&c.setShowManualDeliveryAddressInputConfirmationValue(),c.set("preserveAddressData",!1))),c.disableEnableCopiedAddressFields(),c.setStatesForB2CAddressFields(l)),c.initSuburbLookupFields(),h.trigger(r);h.options.displayFirstNameAndLastName&&et();c.onNotReceivePromoEmailsChange();c.validateInputFields(!1);c.set("isInitialLoad",!1)},ot=function(n){if(n.result&&n.result.length>0)for(var t=0;t<1;t++)c.set("authorityToLeave",n.result[t].AuthorityToLeave),c.set("leaveAtAlternateLocation",n.result[t].LeaveAtAlternateLocation),c.set("deliveryInstructions",n.result[t].SoDelIns),c.set("pickupInstructions",n.result[t].PickupInstructions),c.set("orderReference",n.result[t].SoCustReference),c.set("copyOrderConfirmation",n.result[t].CopyOrderConfirmationEmail),c.set("orderComments",n.result[t].SoComments),c.set("soDelCountry",n.result[t].SoDelCountry),c.set("soDelPhone",n.result[t].SoDelPhone),c.set("attentionUserName",n.result[t].AttentionUserName),c.set("attentionPhoneNumber",n.result[t].AttentionPhoneNumber),n.result[t].ContactFirstName!==undefined&&c.set("contactFirstName",n.result[t].ContactFirstName),n.result[t].ContactLastName!==undefined&&c.set("contactLastName",n.result[t].ContactLastName),n.result[t].ContactPhoneNumber!==undefined&&c.set("contactPhoneNumber",n.result[t].ContactPhoneNumber),n.result[t].AddressFieldData.length>0&&c.set("addressFieldsExist",!0),c.set("addressItemList",n.result[t].AddressFieldData),n.result[t].BillingAddressFieldData.length>0&&c.set("billingAddressFieldsExist",!0),c.set("billingAddressItemList",n.result[t].BillingAddressFieldData)},st=function(){var t=n.cv.css.deliveryAddress.getDeliveryAddressesForCurrentUser({customerFieldNameForDefaultAddressName:h.options.customerFieldNameForDefaultAddressName,isIncludeAddressIdOnly:h.options.isIncludeAddressIdOnly});n.when(t).done(function(n){var t=n.data;n.sessionHasTimedOut?c.redirectToTimeoutUrl(h.options.sessionTimeOutRedirectUrl,null,h.options.includeInBrowserHistory):(c.set("multipleDeliveryAddressDataSource",t),c.setMultipleDeliveryAddressDataSource())}).fail(function(){c.setMessage(h.options.textErrorGettingMutipleDeliveryAddress,n.cv.css.messageTypes.error)})},ht=function(){h.deliveryAddressValidationDataSource=kendo.data.DataSource.create(h.options.deliveryAddressValidationDataSource);h.options.autoBind&&h.deliveryAddressValidationDataSource.fetch();c.updateAddressValidationItemList()},ct=_.debounce(function(t,i){var r=n(":focus"),u;
18r&&r.prevObject&&r.prevObject.length>0&&(u=n(r.prevObject[0].activeElement),n(u).change(),i.fieldValid(t)&&c.set("changeTriggered",!0))},h.options.multiUpdateThrottleTimeout),lt=function(t){var e=t?h.options.billingSuburbFieldName:h.options.suburbFieldName,o=t?h.options.billingPostcodeFieldName:h.options.postcodeFieldName,s=t?h.options.billingStateFieldName:h.options.stateFieldName,l=t?h.options.billingCountryFieldName:h.options.countryFieldName,a=t?c.get("billingAddressItemList"):c.get("addressItemList"),i,r,u,f;n.each(a,function(n,t){t.fieldItem.fieldName===e&&(i=t[t.fieldItem.fieldName]);t.fieldItem.fieldName===o&&(r=t[t.fieldItem.fieldName]);t.fieldItem.fieldName===s&&(u=t[t.fieldItem.fieldName]);t.fieldItem.fieldName===l&&(f=t[t.fieldItem.fieldName])});h.options.suburbStatePostcodeValidation==="SuburbStateAndPostcode"&&i&&r&&u?c.doSuburbAndPostCodeValidation(i,u,r,f,t):h.options.suburbStatePostcodeValidation==="SuburbAndPostcode"&&i&&r&&c.doSuburbAndPostCodeValidation(i,"",r,f,t)},tt=_.debounce(lt,h.options.surbPostCodeInputThrottleTimeout),k={},it=function(n){k[n]=!0;n===h.options.billingSuburbFieldName||n===h.options.billingPostcodeFieldName||n===h.options.billingStateFieldName&&h.options.suburbStatePostcodeValidation==="SuburbStateAndPostcode"?tt(!0):(n===h.options.suburbFieldName||n===h.options.postcodeFieldName||n===h.options.stateFieldName&&h.options.suburbStatePostcodeValidation==="SuburbStateAndPostcode")&&tt(!1)},at=function(n){k[n]!==!0&&it(n);delete k[n]},d=function(i,r,u){var f=[],e=i;return n.each(e,function(i,e){var l,a,s,v,y,p,o;e.FieldName===h.options.guestCheckoutEmailField&&(e.CustomAttributes='autocomplete="section-billingaddress shipping email"');r||!c.get("disableDeliveryAddress")||e.FieldName===h.options.guestCheckoutEmailField&&h.options.isStoreAvailPickup||h.options.orderHasPickupAndDeliveryLines!=!1||(e.Readonly=!0);(e.FieldName===h.options.addressRulesetsAssignmentsSuburbField||e.FieldName===h.options.addressRulesetsAssignmentsPostcodeField)&&(e.disablePaste=!0);h.options.isB2c&&(e.FieldName==="SoBillSuburb"||e.FieldName==="SoBillPostcode")&&(e.disablePaste=!0);e.addKeyupEvent=h.options.multiUpdateThrottleTimeout!=0;e.addKeydownEvent=h.options.multiUpdateThrottleTimeout!=0;l=h.options.addressObjectMapping;n.cv.util.hasContent(l)&&(a=r?"Billing":"Delivery",s=_.find(l,function(n){return n.AddressType===a}),s&&(v=_.some(s.Map,function(n){return n.Field===e.FieldName&&n.IsEditable!==undefined}),v&&(y=_.some(s.Map,function(n){return n.Field===e.FieldName&&n.IsEditable}),e.IsEditableLookup=y),p=_.some(s.Map,function(n){return n.Field===e.FieldName&&n.KeepPreviousValueIfEmpty}),e.KeepPreviousValueIfEmpty=p));o=n.cv.util.getFieldItemData(e);o.dataChanged=function(i,u){var l=o.fieldItem.Lookup.length>0,f=o.fieldItem.FieldName,a=f.toLowerCase(),e,s;h.options.useAddressLookup&&(o.fieldItem.prompt===h.options.postCodePrompt||o.fieldItem.prompt===h.options.suburbPrompt)&&(c.set("billingAddressId",""),c.set("billingAddressIsRural",!1),c.set("showManualAddressInputConfirmation",h.options.showManualAddressInputConfirmation));(!u&&o.fieldValid(i)||u)&&h.options.updateAddressOnChanged&&(l||!c.get("changeTriggered"))?(at(f),c.set("isCountryBeingEdited",a==="sobillcountry"||a==="sodelcountry"),e={},s={},!c.shouldAddressBeCopied()||c.get("deliveryAddressMode")=="Pickup"&&h.options.addressMapMode==t?r?(s=c.getSoBillAddress(),l?c._updateBillingAddress(s,"","",f):c.updateBillingAddress(s,"","",f)):(e=c.get
18SoDelAddress(),l?c._updateDeliveryAddress(e,"","",!1,!1,f):c.updateDeliveryAddress(e,"","",!1,!1,f)):(u||h.options.multiUpdateThrottleTimeout==0||c.processLinkedAddresses(i),e=c.getSoDelAddress(),s=c.getSoBillAddress(),l?(c._updateBillingAddress(s,"","",f),c._updateDeliveryAddress(e,"","",!1,!1,f)):(c.updateBillingAddress(s,"","",f),c.updateDeliveryAddress(e,"","",!1,!1,f))),r?c.set("isBillingAddressBeingEdited",!1):c.set("isAddressBeingEdited",!1)):(c.set("changeTriggered",!1),h.options.updateAddressOnChanged||n.cv.css.trigger(n.cv.css.eventnames.addressBeingEdited));c.validateInputFields(!0)};o.dataKeydown=function(){this._previousVal=this.get(this.fieldItem.FieldName)};o.dataKeyup=function(i){var u=this.get(this.fieldItem.FieldName);this._previousVal!==undefined&&this._previousVal!==u?(r?c.set("isBillingAddressBeingEdited",!0):c.set("isAddressBeingEdited",!0),r&&(!r||!c.shouldAddressBeCopied()||c.get("deliveryAddressMode")==="Pickup"&&h.options.addressMapMode===t)||n.cv.css.trigger(n.cv.css.eventnames.addressBeingEdited),c.set("changeTriggered",!1),it(this.fieldItem.FieldName),ct(i,o)):r?c.set("isBillingAddressBeingEdited",!1):c.set("isAddressBeingEdited",!1)};u&&!o.KeepPreviousValueIfEmpty&&(o.value="",o[e.FieldName]="");f.push(o)}),f},v=function(){var t,i;return h.multipleDeliveryAddressDataSource?(t=[],n.each(h.multipleDeliveryAddressDataSource.view(),function(n,i){i.Index=n;i.value=i[h.options.multipleAddressValueField]+(c.get("thirdPartyDeliveryChecked")?","+i.EmailAddress:"");i.label=i[h.options.multipleAddressTextField];t.push(i)}),t.length>0&&(i={},i.label=h.options.defaultMultipleAddressText,i.value=h.options.defaultMultipleAddressValue,t=n.merge([i],t)),t):[]},rt=function(){var t,i;return h.deliveryAddressValidationDataSource?(t=[],n.each(h.deliveryAddressValidationDataSource.view(),function(n,i){i.Index=n;i.value=i[h.options.addressValidationValueField];i.label=i[h.options.addressValidationTextField];t.push(i)}),t.length==1?c.set("deliveryAddressValidationValue",t[0].value):t.length>1&&(i={},i.label=h.options.defaultAddressValidationText,i.value=h.options.defaultAddressValidationValue,t=n.merge([i],t)),t):[]},vt=function(n){var r=[],t,i;for(t in n)n.hasOwnProperty(t)&&(i={},i[h.options.addressValidationValueField]=t,i[h.options.addressValidationTextField]=n[t],r.push(i));return r},c=kendo.observable({name:h.name,multipleDeliveryAddressDataSource:h.options.multipleDeliveryAddressDataSource,deliveryAddressValidationDataSource:h.options.deliveryAddressValidationDataSource,multipleDeliveryAddressValue:"",deliveryAddressValidationValue:"",hasMultipleDeliveryAddresses:h.options.hasMultipleDeliveryAddresses,message:"",clearExistingMessages:!0,deliveryAddressObjectKey:"",orderComments:h.options.orderComments,deliveryInstructions:h.options.deliveryInstructions,pickupInstructions:h.options.pickupInstructions,deliveryInstructionsAreReadonly:h.options.deliveryInstructionsAreReadonly,showAuthorityToLeave:h.options.showAuthorityToLeave,authorityToLeave:"",authorityToLeaveOptionList:h.options.authorityToLeaveOptionList,leaveAtAlternateLocation:h.options.defaultLeaveAtAlternateLocation,authorityToLeaveFormat:h.options.authorityToLeaveFormat,authorityToLeaveFormatted:function(){return kendo.format(this.get("authorityToLeaveFormat"),this.get("authorityToLeave"))},showAuthorityToLeaveDetails:function(){return this.get("leaveAtAlternateLocation")&&n.cv.util.hasContent(this.get("authorityToLeave"))},orderReference:h.options.orderReference,orderReferenceHasError:!1,orderReferenceErrorMsg:"",orderConfirmationHasError:!1,orderConfirmationErrorMsg:"",attentionToHasError:!1,attentionToErrorMsg:"",copyOrderConfirmation:h.options.copyOrderConfirmation,soDelCountry:h.options.soDelCountry,soDelPhone:h.options.soDelPhone,addressFieldsExist:!1,billingAddressFieldsExist:!1,saveAddress:!1,preserveGuestDetails:!1,createUserFromGuest:h.options.createUserFromGuest,additionalEventBound:!1,linkDeliveryAndBilling:h.options.defaultLinkDeliveryAndBilling&&!h.options.useNegationLogicForLinkingAddress||!h.options.defaultLinkDeliveryAndBilling&&h.options.useNegationLogicForLinkingAddress,isDangerousGoodsPoBoxDelivery:h.options.isDangerousGoodsPoBoxDelivery,notReceivePromoEmails:!1,receivePromoEmails:!1,acceptTermsAndConditions:!1,guestUserFirstNameField:null,guestUserLastNameField:null,deliveryAddressIsRural:!1,billingAddressIsRural:!1,enableAdditionalChargeForRuralAddresses:h.options.enableAdditionalChargeForRuralAddresses,hasRuralDeliveryCharge:function(){return this.get("enableAdditionalChargeForRuralAddresses")&&this.get("deliveryAddressIsRural")},showDangerousGoodsWarningInBillAddress:function(){return this.shouldAddressBeCopied()&&this.get("isDangerousGoodsPoBoxDelivery")},showDangerousGoodsWarningInDelAddress:function(){return!this.shouldAddressBeCopied()&&this.get("isDangerousGoodsPoBoxDelivery")},isAddressListEmpty:function(t){var i=!0;return n.each(this.get(t),function(t,r){return!(this.get(r.fieldItem.fieldName)==null)&&n.trim(this.get(r.fieldItem.fieldName)).length>0?(i=!1,!1):!0}),i},isBillingAddressEmpty:function(){return this.isAddressListEmpty("billingAddressItemList")},isDeliveryAddressEmpty:function(){return this.isAddressListEmpty("addressItemList")},deliveryAndBillingMatch:function(){var r=!0;if(h.options.addressMapMode===t||h.options.addressMapMode===i){var u=h.options.addressMapMode==t?this.get("billingAddressItemList"):this.get("addressItemList"),f=h.options.addressMapMode==t?this.get("addressItemList"):this.get("billingAddressItemList"),e=h.options.fieldMapFrom.split(",");n.each(e,function(t,i){var e,o,s,c;!isNaN(i)&&u.length>i&&f.length>i&&(e=u[i].fieldItem,e.Value!==null&&e.fieldName!==h.options.guestCheckoutEmailField&&(o=f[i].fieldItem,o.fieldName!==h.options.guestCheckoutEmailField&&n.trim(o.Value)!==n.trim(e.Value.toString())&&
18(h.options.deliveryAndBillingMatchEnsureElement===!0?(s=h.element.find("input[name='"+e.FieldName+"']"),s.length>0&&(c=h.element.find("input[name='"+o.FieldName+"']"),c.length>0&&(r=!1))):r=!1)))})}return r},isDeliveryMethodsInUse:h.options.isDeliveryMethodsInUse,isDeliveryMethodSetOnOrder:h.options.isDeliveryMethodSetOnOrder,showAddressView:function(){var n=this;return h.options.showBillingInsteadOfDeliveryOnReturns?!0:n.get("isDeliveryMethodsInUse")&&!n.get("isDeliveryMethodSetOnOrder")?!1:!0},preserveAddressData:!1,shouldAddressBeCopied:function(){return h.options.useNegationLogicForLinkingAddress?!this.get("linkDeliveryAndBilling"):this.get("linkDeliveryAndBilling")},copyingAddressFields:!1,addressItemList:[],billingAddressItemList:[],lookupSelected:!1,pickupAddress:{},isLoadingSoDelAddress:!1,isSuburbAutoCompleteSelectStarted:!1,setAddressItemList:function(t,i){this.set("copyingAddressFields",!0);n.each(t,function(n,t){var r=t.get("fieldItem");switch(r.get("fieldName")){case"SoDelAddr1":t.set("SoDelAddr1",i.deliveryAddress1);t.set("value",i.deliveryAddress1);break;case"SoDelAddr2":t.set("SoDelAddr2",i.deliveryAddress2);t.set("value",i.deliveryAddress2);break;case"SoDelAddr3":t.set("SoDelAddr3",i.deliveryAddress3);t.set("value",i.deliveryAddress3);break;case"SoDelAddr4":t.set("SoDelAddr4",i.deliveryAddress4);t.set("value",i.deliveryAddress4);break;case"SoDelAddr5":t.set("SoDelAddr5",i.deliveryAddress5);t.set("value",i.deliveryAddress5);break;case"SoDelAddr6":t.set("SoDelAddr6",i.deliveryAddress6);t.set("value",i.deliveryAddress6);break;case"SoDelAddr7":t.set("SoDelAddr7",i.deliveryAddress7);t.set("value",i.deliveryAddress7);break;case"SoDelSuburb":t.set("SoDelSuburb",i.deliverySuburb);t.set("value",i.deliverySuburb);break;case"SoDelState":t.set("SoDelState",i.deliveryState);t.set("value",i.deliveryState);break;case"SoDelPostcode":t.set("SoDelPostcode",i.deliveryPostCode);t.set("value",i.deliveryPostCode)}});this.set("copyingAddressFields",!1)},setAddressDefaults:function(){if(h.options.showCountry&&h.options.saveAddressDownToUser){var t=this,i=t.get("addressItemList");n.each(i,function(t,i){var r=i.get("fieldItem");switch(r.get("fieldName")){case"SoDelCountry":n.cv.util.hasValue(r.get("Value"))&&r.Lookup.length===1&&(c.saveBillingAddressToUser(),c.saveDeliveryAddressToUser())}})}},getPickupAddressDataSource:function(){var i=this,t,r;return!h.options.isStoreAvailPickup||h.options.warehouseIfIsStoreAvailPickup.length===0?this.get("pickupAddress"):(t=h.options.orderNoOverride===0?n.cv.css.localGetcurrentPickupAddress():n.cv.css.localGetSelectedOrderPickupAddress(),t!=null&&t.WarehouseCode===h.options.warehouseIfIsStoreAvailPickup)?(i.set("pickupAddress",t),i.get("pickupAddress")):(r=n.cv.css.storeLocator.getWarehouse({warehouseCode:h.options.warehouseIfIsStoreAvailPickup}),r.done(function(r){return r.data&&r.data.length===1?(t=r.data[0],n.cv.css.localSetcurrentPickupAddress(t),i.set("pickupAddress",t),i.get("pickupAddress")):i.get("pickupAddress")}),r)},tempAddressItemList:[],showAttentionToUserDetails:h.options.showAttentionToUserDetails,attentionUserName:h.options.attentionUserName,attentionPhoneNumber:h.options.attentionPhoneNumber,showPickupDeliveryControls:h.options.showPickupDeliveryControls,orderHasPickupAndDeliveryLines:h.options.orderHasPickupAndDeliveryLines,showDeliveryAddress:function(){var n=this.get("deliveryAddressMode"),t=this.get("orderHasPickupAndDeliveryLines");return t===!0?!0:n==="Delivery"&&h.options.showBillingInsteadOfDeliveryOnReturns===!1},showPickup:function(){var n=this.get("orderHasPickupAndDeliveryLines"),t=this.showDeliveryAddress();return n===!0?!0:!t},showBillingAddress:function(){var n=this.get("deliveryAddressMode");return h.options.isReturnOrder&&!h.options.showBillingInsteadOfDeliveryOnReturns?!1:n==="Delivery"||n==="Email"||n==="Pickup"&&h.options.showBillingAddressOnPickup},deliveryAddressMode:h.options.deliveryAddressMode,redirectToTimeoutUrl:function(t,i,r){n.cv.ajax.settings.timeoutRedirectUrl==""?n.cv.util.redirect(t,i,!r):n.cv.util.redirect(n.cv.ajax.settings.timeoutRedirectUrl,i,!r)},getSoDelAddress:function(){var i=this,t={};return n.each(i.get("addressItemList"),function(i,r){t[r.fieldItem.fieldName]=this.get(r.fieldItem.fieldName)==null?"":n.trim(this.get(r.fieldItem.fieldName))}),{SoDelCountry:this.get("soDelCountry"),SoDelPhone:this.get("soDelPhone"),updatedAddressDetail
18s:t}},clearDeliveryAddress:function(t){if(!h.options.orderHasPickupAndDeliveryLines){var i=this,r=i.get("deliveryAddressMode");return t=typeof t!="undefined"?t:!0,n.each(this.get("addressItemList"),function(n,t){t.fieldItem.fieldName!==h.options.guestCheckoutEmailField&&t.fieldItem.fieldName!=="SoDelCountry"&&this.set(t.fieldItem.fieldName,"")}),i.set("deliveryAddressId",""),i.set("deliveryAddressIsRural",!1),i.set("soDelCountry",""),i.set("soDelPhone",""),h.trigger(u,{clearDeliveryLookup:!0}),i.setDeliveryAddress(r==="Delivery",t)}},storeIntoTempAddressItemList:function(){var t=this,i=[],s=!1,h=!1,r="soDelCountry",c="soDelPhone",u,e,f,o;n.each(t.get("addressItemList"),function(n,t){var u=t.fieldItem.fieldName,f,e;u.toLowerCase()===r.toLowerCase()?s=!0:u.toLowerCase()===r.toLowerCase()&&(h=!0);f={};e=this.get(u);f.fieldName=u;f.fieldValue=e==null?"":e;i.push(f)});s||(u={},e=t.get(r),u.fieldName=r,u.fieldValue=e==null?"":e,i.push(u));h||(f={},o=t.get(c),f.fieldName=c,f.fieldValue=o==null?"":o,i.push(f));t.set("tempAddressItemList",i)},restoreFromTempAddressItemList:function(){var t=this,r=t.get("tempAddressItemList");if(!r||r.length===0)return!1;var u=!1,f=!1,e=!1,i="soDelCountry",o="soDelPhone";return n.each(t.get("addressItemList"),function(r,o){var c=this,s=o.fieldItem.fieldName;n.each(t.get("tempAddressItemList"),function(n,t){return t.fieldName===s&&t.fieldName!==h.options.guestCheckoutEmailField?(o.fieldItem.Value=t.fieldValue,c.set(s,t.fieldValue),s.toLowerCase()===i.toLowerCase()?u=!0:s.toLowerCase()===i.toLowerCase()&&(f=!0),e=!0,!1):!0})}),u||n.each(t.get("tempAddressItemList"),function(n,r){return r.fieldName===i?(t.set(i,r.fieldValue),!1):!0}),f||n.each(t.get("tempAddressItemList"),function(n,i){return i.fieldName===o?(t.set(o,i.fieldValue),!1):!0}),t.set("tempAddressItemList",[]),e},linkDeliveryAndBillingStateChanged:function(r){var e=c.get("linkDeliveryAndBilling")&&!n(r.currentTarget).prop("checked"),u,f;c.set("isBillingAndDeliveryAddressTheSame",e);c.useAddressLookup&&(u=c.shouldAddressBeCopied(),f=c.deliveryAndBillingMatch(),u&&!f&&(h.options.addressMapMode==t?(c.set("deliveryAddressId",c.get("billingAddressId")),c.set("deliveryAddressIsRural",c.get("billingAddressIsRural"))):h.options.addressMapMode==i&&(c.set("billingAddressId",c.get("deliveryAddressId")),c.set("billingAddressIsRural",c.get("deliveryAddressIsRural")))))},isBillingAndDeliveryAddressTheSame:h.options.defaultLinkDeliveryAndBilling&&!h.options.useNegationLogicForLinkingAddress||!h.options.defaultLinkDeliveryAndBilling&&h.options.useNegationLogicForLinkingAddress,billingAddressId:"",deliveryAddressId:"",manualAddressInputConfirmationChecked:!1,manualDeliveryAddressInputConfirmationChecked:!1,showManualAddressInputConfirmation:!1,showManualDeliveryAddressInputConfirmation:!1,toggleManualAddressInputConfirmation:function(t){n.cv.util.toggleCvCheckboxValue(t,this,"manualAddressInputConfirmationChecked")},toggleManualDeliveryAddressInputConfirmation:function(){var n=this;n.set("manualDeliveryAddressInputConfirmationChecked",!n.get("manualDeliveryAddressInputConfirmationChecked"))},addressId:function(){var t=this,n=t._addressIdMeta();return n.hasIds===!1?"":"B:"+n.billingId+",D:"+n.deliveryId},_addressIdMeta:function(){var t={hasIds:!1,deliveryId:"",billingId:""};return n.cv.util.isNullOrWhitespace(c.get("billingAddressId"))&&n.cv.util.isNullOrWhitespace(c.get("deliveryAddressId"))?t:(t.billingId=c.get("billingAddressId"),t.deliveryId=c.get("isBillingAndDeliveryAddressTheSame")?c.get("billingAddressId"):c.get("deliveryAddressId"),t.hasIds=!0,t)},addressIsRural:function(){if(c.useAddressLookup===!1)return!1;var r=c.get("billingAddressId"),i=c.get("deliveryAddressId"),t=n.cv.util.isNullOrWhitespace(r);return t&&n.cv.util.isNullOrWhitespace(i)?!1:t||n.cv.util.isNullOrWhitespace(i)?t?c.get("deliveryAddressIsRural"):c.get("billingAddressIsRural"):c.get("deliveryAddressIsRural")},addressLookupSelected:function(t){var i,o,u;if(n.cv.util.hasValue(t)&&n.cv.util.hasValue(t.Address)&&n.cv.util.hasValue(t.Type)){c.set("lookupSelected",!0);i=n.cv.util.hasValue(t,"IsEmpty")&&t.IsEmpty;c.copyLookupFieldValues(t,i);i&&h.options.useAddressLookup&&h.options.isB2c===!1&&c.toggleDeliveryAddressB2BFields(!0);c.set("lookupSelected",!1);var f=h.options.showManualAddressInputConfirmation&&(n.cv.util.isNullOrWhitespace(t.Address.AddressId)||t.Address.AddressId==="-1"),e=t.AddressLookupProvider,r=n.cv.util.hasValue(t.IsRural)?t.IsRural:!1;t.Type==="Billing"?(o=c.getSoBillAddress(),c.updateBillingAddress(o,""),c.set("showManualAddressInputConfirmation",f),c.set("manualAddressInputConfirmationChecked",!1),u=c.shouldAddressBeCopied(),u&&(c.updateDeliveryAddress(c.getSoDelAddress(),""),c.set("showManualDeliveryAddressInputConfirmation",!1),c.set("manualDeliveryAddressInputConfirmationChecked",!1)),e.toLowerCase()==="parceladdress"&&(c.set("billingAddressIsRural",r),u&&c.set("deliveryAddressIsRural",r))):(c.updateDeliveryAddress(c.getSoDelAddress(),""),c.set("showManualDeliveryAddressInputConfirmation",f),c.set("manualDeliveryAddressInputConfirmationChecked",!1),e.toLowerCase()==="parceladdress"&&c.set("deliveryAddressIsRural",r))}},addressLookupValueEdited:function(t){var r,f,i,e,u;c.get("isLoadingSoDelAddress")===!1&&(f=v(),i=(r=t.IsEmpty)!==null&&r!==void 0?r:!1,f.length>0&&c.set("isMultiAddressItemListEnabled",i),!i&&n.cv.util.hasValue(t)&&n.cv.util.hasValue(t.Address)&&n.cv.util.hasValue(t.Type)&&c.copyLookupFieldValues(t,!0),e=t.Type==="Billing"?c.get("billingAddressItemList"):c.get("addressItemList"),_.each(t.Address,function(n){var t=n.Field?n.Field.split(","):[];_.each(e,function(n){t.indexOf(n.fieldItem.FieldName)!==-1&&(c.changeFieldEnabledState(n,!0),i&&!n.fieldItem.KeepPreviousValueIfEmpty&&n.set(n.fieldItem.FieldName,""))})}),u=h.options.showManualAddressInputConfirmation,t.Type==="Billing"?(c.set("showManualAddressInputConfirmation",u),c.set("billingAddressId",""),c.set("billingAddressIsRural",!1)):(c.set("showManualDeliveryAddressInputConfirmation",u),c.set("deliveryAddressId",""),c.set("deliveryAddressIsRural",!1)))},copyLookupFieldValues:function(t,i){var r="AddressId",f=t.Type==="Billing"?c.get("billingAddressItemList"):c.get("addressItemList"),u=t.Type.charAt(0).toLowerCase()+t.Type.slice(1)+r;if(n.cv.util.hasValue(c[u])){if(n.cv.util.isNullOrWhitespace(t.Address)||n.cv.util.isNullOrWhitespace(t.Address[r])){c.set(u,"");return}t.Address[r]==="-1"?c.set(u,""):c.set(u,t.Address[r])}_.each(_.keys(t.Address),function(r){_.each(f,function(u){var f=r.split(",");_.each(f,function(r){u.fieldItem.FieldName===r&&((u.fieldItem.KeepPreviousValueIfEmpty==!1||n.cv.util.hasContent(t.Address[r]))&&u.set(r,t.Address[r]),c.changeFieldEnabledState(u,i
18))})})})},changeFieldEnabledState:function(n,t){n.set(n.fieldItem.FieldName+"_isEnabled",t||n.fieldItem.IsEditableLookup)},getSoBillAddress:function(){var t={};return n.each(this.get("billingAddressItemList"),function(i,r){t[r.fieldItem.fieldName]=this.get(r.fieldItem.fieldName)==null?"":n.trim(this.get(r.fieldItem.fieldName))}),{updatedBillingAddressDetails:t}},clearBillingAddress:function(){n.each(this.get("billingAddressItemList"),function(n,t){this.set(t.fieldItem.fieldName,"")});this.setBillingAddress()},enterOrderComments:h.options.enterOrderComments,disableDeliveryAddress:h.options.disableDeliveryAddress,disableBillingAddress:h.options.disableBillingAddress,showDeliveryInstructions:h.options.showDeliveryInstructions,forceOrderReference:h.options.forceOrderReference,allowCopyOrderConfirmation:h.options.allowCopyOrderConfirmation,copyOrderConfirmationMandatory:h.options.copyOrderConfirmationMandatory,isInitialLoad:!0,isSuburbAndPostCodeValid:h.options.disableDeliveryAddress?!0:!h.options.enableSuburbAndPostcodeValidation,isBillingSuburbAndPostCodeValid:h.options.disableBillingAddress?!0:!h.options.enableSuburbAndPostcodeValidation,deliveryAddressErrorMsg:"",productDeliveryRestrictionsErrorMsg:"",orderCommentsErrorMsg:"",deliveryInstructionsErrorMsg:"",pickupInstructionsErrorMsg:"",authorityToLeaveErrorMsg:"",addressValidated:!1,deliveryMethodDisableAddressEdit:!1,passedValidation:!1,useAddressLookup:h.options.useAddressLookup,displayValuesFromSeq:h.options.displayValuesFromSeq.toString(),addressObjectMapping:h.options.addressObjectMapping,billingAddressLookupMandatoryMessage:h.options.billingAddressLookupMandatoryMessage,deliveryAddressLookupMandatoryMessage:h.options.deliveryAddressLookupMandatoryMessage,triggerMessages:h.options.triggerMessages,processing:!0,hideAuthorityToLeave:function(){var n=this;return n.get("showAuthorityToLeave")===!0&&n.get("deliveryMethodDisableAddressEdit")===!1?!1:!0},localdeliveryAddressChanged:function(t){t&&n.cv.util.hasValue(t.orderNoOverride)&&n.cv.util.hasValue(t.overrideOrderKey)&&(h.options.orderNoOverride=t.orderNoOverride,h.options.overrideOrderKey=t.overrideOrderKey,a(!0),c.setLocalDeliveryAddress());var i=h.options.orderNoOverride===0?n.cv.css.localGetcurrentDeliveryAddress():n.cv.css.localGetSelectedOrderDeliveryAddress();i!=null&&ot(i)},_addressBeingEdited:function(){var n=this;h.options.usingAddressValidation&&(n.set("addressValidated",!1),n._setIsProcessing(!0))},_validationUpdated:function(){var n=this;n._setIsProcessing(!1)},_setIsProcessing:function(n){var t=this;t.set("isProcessing",n);n||ut(h.options.addressValidationMode)},_getAddressItemCountry:function(n){var t=this;return this._getAddressItemValue(n?h.options.countryFieldName:h.options.billingCountryFieldName,t.get(n?"addressItemList":"billingAddressItemList"))},_getAddressItemSuburb:function(n){var t=this;return this._getAddressItemValue(n?h.options.suburbFieldName:h.options.billingSuburbFieldName,t.get(n?"addressItemList":"billingAddressItemList"))},_getAddressItemState:function(n){var t=this;return this._getAddressItemValue(n?h.options.stateFieldName:h.options.billingStateFieldName,t.get(n?"addressItemList":"billingAddressItemList"))},_getAddressItemPostcode:function(n){var t=this;return this._getAddressItemValue(n?h.options.postcodeFieldName:h.options.billingPostcodeFieldName,t.get(n?"addressItemList":"billingAddressItemList"))},_getAddressItemValue:function(n,t){var i="";return _.each(t,function(t){t.fieldItem.FieldName===n&&(i=t.get(t.fieldItem.FieldName))}),i},_trySetAddressItemValue:function(t,i,r){var u=!1,f=_.find(i,function(n){return n.fieldItem.FieldName===t});return n.cv.util.hasValue(f)&&(f.set(t,r),u=!0),u},deliveryMethodSetOnOrder:function(i){if(!n.cv.util.hasValue(i.widgetName)||i.widgetName===h.name){var r=this,f=undefined,u=undefined,e={};r.get("addressItemList").length===0&&(e=l());i&&i.deliveryAddressInfo&&(f=i.deliveryAddressInfo.deliveryAddress,u=i.deliveryAddressInfo.disableAddressEdit,n.when(e).done(function(){var i,e,o,s;r.set("deliveryMethodDisableAddressEdit",u);r.setAddressItemList(r.addressItemList,f);_.each(r.addressItemList,function(n){n.set("Readonly",u);n.fieldItem.set("Readonly",u)});r.set("deliveryInstructionsAreReadonly",u);h.options.updateAddressOnChanged&&!r.get("changeTriggered")?(i={},!h.options.isB2c||!r.shouldAddressBeCopied()||r.get("deliveryAddressMode")==="Pickup"&&h.options.addressMapMode===t?(i=r.getSoDelAddress(),r.updateDeliveryAddress(i,"")):(e={},h.options.multiUpdateThrottleTimeout!==0&&r.processLinkedAddresses(),i=r.getSoDelAddress(),e=r.getSoBillAddress(),r.updateDeliveryAddress(i,""),r.updateBillingAddress(e,"")),r.set("isAddressBeingEdited",!1)):r.set("changeTriggered",!1);
18o=r.validateSuburbAndPostCodeInternal(r._getAddressItemSuburb(!0),r._getAddressItemState(!0),r._getAddressItemPostcode(!0),r._getAddressItemCountry(!0),!1);s=r.showBillingAddress()?r.validateSuburbAndPostCodeInternal(r._getAddressItemSuburb(!1),r._getAddressItemState(!1),r._getAddressItemPostcode(!1),r._getAddressItemCountry(!1),!0):{};n.when(o,s).done(function(){r.validateInputFields(!0)});r.set("isDeliveryMethodSetOnOrder",!0)}))}},deliveryMethodClearedFromOrder:function(i){var u,e;if(!n.cv.util.hasValue(i.widgetName)||i.widgetName===h.name){var r=this,o=undefined,f=undefined;i&&i.deliveryAddressInfo&&r.get("addressItemList").length>0&&(o=i.deliveryAddressInfo.deliveryAddress,f=i.deliveryAddressInfo.disableAddressEdit,r.setAddressItemList(r.addressItemList,o),_.each(r.addressItemList,function(n){n.set("Readonly",f)}),r.set("deliveryInstructionsAreReadonly",f),h.options.updateAddressOnChanged&&!c.get("changeTriggered")?(u={},e={},!c.shouldAddressBeCopied()||c.get("deliveryAddressMode")==="Pickup"&&h.options.addressMapMode===t?(u=c.getSoDelAddress(),c.updateDeliveryAddress(u,"")):(h.options.multiUpdateThrottleTimeout!==0&&c.processLinkedAddresses(),u=c.getSoDelAddress(),e=c.getSoBillAddress(),c.updateDeliveryAddress(u,""),c.updateBillingAddress(e,"")),c.set("isAddressBeingEdited",!1)):c.set("changeTriggered",!1),r.set("isDeliveryMethodSetOnOrder",!1))}},addressWasValidated:function(){var n=this;return n.addressValidated},setShowManualDeliveryAddressInputConfirmationValue:function(){h.options.isGuestCheckout?c.set("showManualDeliveryAddressInputConfirmation",!1):c.shouldAddressBeCopied()?c.set("showManualDeliveryAddressInputConfirmation",!1):c.set("showManualDeliveryAddressInputConfirmation",h.options.showManualAddressInputConfirmation&&n.cv.util.isNullOrWhitespace(c.get("deliveryAddressId")))},updateMultiAddressItemList:function(){var n=this,t=v();n.set("multiAddressItemList",t);n.set("hasMultiAddressItemList",t.length);h.trigger(f)},multiAddressItemList:v(),hasMultiAddressItemList:v().length,isMultiAddressItemListEnabled:!0,updateAddressValidationItemList:function(){this.set("deliveryAddressValidationValue","");var t=rt();(this.set("addressValidationItemList",t),n.cv.css.trigger(n.cv.css.eventnames.addressValidationUpdated,{valid:t.length===0}),h.options.usingAddressValidation&&this.get("isSettingAddresses"))||h.trigger(e)},addressValidationItemList:rt(),hasAddressValidationPickList:function(){return this.get("addressValidationItemList").length>0},hasAddressValidationVerifiedOptions:function(){var t=0,i=this.get("addressValidationItemList");return n.each(i,function(n,i){i.value!="UnverifiedUseMyEnteredAddressKey"&&t++}),t>0},multiAddressItemSelected:function(){var n=this;this.get("multipleDeliveryAddressValue")==""&&h.options.useAddressLookup===!1?h.options.enableThirdPartyDelivery&&c.get("thirdPartyDeliveryChecked")&&(n.clearDeliveryAddress(),n.disableEnableThirdPartyDeliveryAddressFields()):(n.clearMessage(),n.set("deliveryAddressErrorMsg",""),c.set("changeTriggered",!1),c.multiAddressItemChanged(c.get("multipleDeliveryAddressValue")))},extractDeliveryAddressNameAndEmail:function(n){var t=n.lastIndexOf(",");return{actualDeliveryAddressName:n.substring(0,t),emailAddress:n.substring(t+1)}},multiAddressItemChanged:function(i){var r=this,u,s;r.clearMessage();r.set("deliveryAddressErrorMsg","");var f=r.get("thirdPartyDeliveryChecked"),e=i,o="";f&&(u=r.extractDeliveryAddressNameAndEmail(i),e=u.actualDeliveryAddressName,o=u.emailAddress);s={deliveryAddressName:e,isForWarrantyClaim:h.options.isForWarrantyClaim===!0,isThirdPartyDelivery:f,emailAddress:o,ignoreLookupListCheck:r.get("multipleDeliveryAddressDataSource").length===0,setDeliveryOptions:h.options.setDeliveryOptions,isUseAddressLookup:h.options.useAddressLookup,_objectKey:h.options.overrideOrderKey};h.options.useAddressLookup&&n.cv.css.trigger(n.cv.css.eventnames.toggleAddressLookupDisplayValue,{isEnabled:n.cv.util.isNullOrWhitespace(i)});n.cv.css.deliveryAddress.setDeliveryAddressByName(s).done(function(u){var f=u.data,s,e,o;u.sessionHasTimedOut?c.redirectToTimeoutUrl(h.options.sessionTimeOutRedirectUrl,null,h.options.includeInBrowserHistory):u.errorMessage&&u.errorMessage.length!==0?(r.setMessage(u.errorMessage,n.cv.css.messageTypes.error),r.set("deliveryAddressErrorMsg",f.message)):(s=h.options.useAddressLookup&&n.cv.util.hasContent(i),b(f,!1,s),h.options.updateAddressOnChanged&&!c.get("changeTriggered")?(e={},o={},!c.shouldAddressBeCopied()||c.get("deliveryAddressMode")==="Pickup"&&h.options.addressMapMode===t?(e=c.getSoDelAddress(),c.updateDeliveryAddress(e,"",null,null,null,"sodelpostcode")):(h.options.multiUpdateThrottleTimeout!==0&&c.processLinkedAddresses(),e=c.getSoDelAddress(),o=c.getSoBillAddress(),c.updateDeliveryAddress(e,"",null,null,null,"sodelpostcode"),c.updateBillingAddress(o,"")),c.set("isAddressBeingEdited",!1)):c.set("changeTriggered",!1),f.success||f.message!==""&&(r.setMessage(f.message,n.cv.css.messageTypes.error),r.set("deliveryAddressErrorMsg",f.message)))}).fail(function(){r.setMessage(h.options.textErrorUpdatingDeliveryAddress,n.cv.css.messageTypes.error);r.set("deliveryAddressErrorMsg",h.options.textErrorUpdatingDeliveryAddress)})},addressValidationItemSelected:function(){var i=this,u=i.get("deliveryAddressValidationValue"),r;i.set("preserveGuestDetails",!0);r={selectAddressMoniker:u,preserveGuestDetails:i.get("preserveGuestDetails")};r.validateMissingFields=!1;h.options.isForWarrantyClaim===!0&&(r.isForWarrantyClaim=!0);n.cv.css.deliveryAddress.updateDeliveryAddressForOrder(r).done(function(r){var u=r.data,f;r.sessionHasTimedOut?c.redirectToTimeoutUrl(h.options.sessionTimeOutRedirectUrl,null,h.options.includeInBrowserHistory):r.errorMessage&&r.errorMessage.length!=0?(i.setMessage(r.errorMessage,n.cv.css.messageTypes.error),n.cv.css.trigger(n.cv.css.eventnames.addressValidationUpdated,{valid:!1})):(u.isSoOrderTotalTaxChanged===!0&&n.cv.css.refreshCurrentOrder().done(function(){n.cv.css.trigger(n.cv.css.eventnames.orderChanged)}),u.result?(i.setMessage(h.options.textDeliveryAddressUpdatedSuccess,n.cv.css.messageTypes.success),f=l(h.options.usingAddressValidation&&i.shouldAddressBeCopied()&&h.options.addressMapMode===t),i.get("saveAddress")&&i.saveDeliveryAddress(),f.done(function(){h.options.saveAddressDownToUser&&i.saveDeliveryAddressToUser()}),h.trigger(o),n.cv.css.trigger(n.cv.css.eventnames.addressValidationUpdated,{valid:!0}),n.cv.css.trigger(n.cv.css.eventnames.addressChanged,{deliveryAddressMode:c.get("deliveryAddressMode"),isRural:c.get("deliveryAddressIsRural"),hasRuralCharge:c.hasRuralDeliveryCharge()}
18)):u.message!=""&&i.setMessage(u.message,n.cv.css.messageTypes.error))}).fail(function(){i.setMessage(h.options.textErrorUpdatingDeliveryAddress,n.cv.css.messageTypes.error)})},clearMessage:function(t,i){var r=this;r.set("message","");(i||h.options.triggerMessages||h.options.triggerErrorMessages||h.options.triggerExternalValidationMessages)&&n.cv.util.clearNotifications({viewModel:r,messageGroup:t},i)},setMessage:function(t,i,r,u,f,e){var o=typeof r!="undefined"?r:h.options.triggerMessages;n.cv.util.notify(this,t,i,{triggerMessages:o,messageGroup:u,source:h.name,consolidationGroup:f,clearExisting:e})},validCustomerReference:function(t){var i=this,r;return i.clearMessage("validCustomerReference",!0),r=(i.get("forceOrderReference")&&i.get("orderReference").length)>0||!i.get("forceOrderReference"),t&&!r&&i.setMessage(h.options.textOrderReferenceMandatory,n.cv.css.messageTypes.error,!0,"validCustomerReference"),r?(i.set("orderReferenceHasError",""),i.set("orderReferenceErrorMsg","")):(i.set("orderReferenceHasError",h.options.inputErrorClass),i.set("orderReferenceErrorMsg",h.options.textOrderReferenceMandatory)),r},setCustomerReference:function(){var n=this;if(n.validCustomerReference(!0))n.updateDeliveryAddressField({SoCustReference:this.get("orderReference")},h.options.showCustomerReferenceUpdatedMessage?h.options.textCustomerReferenceUpdatedSuccess:"");else return},clearingPickupContact:!1,setPickupContact:function(){var n=this;n.updateDeliveryAddressField({ContactFirstName:this.get("contactFirstName"),ContactLastName:this.get("contactLastName"),ContactPhoneNumber:this.get("contactPhoneNumber")},"")},clearPickupContact:function(t){var i=this,r=n.Deferred();return i.get("contactFirstName")!=undefined&&i.get("contactLastName")!=undefined&&i.get("contactPhoneNumber")!=undefined&&(i.get("contactFirstName").length>0||i.get("contactLastName").length>0||i.get("contactPhoneNumber").length>0)?(i.set("clearingPickupContact",!0),i.set("contactFirstName",""),i.set("contactLastName",""),i.set("contactPhoneNumber",""),t?r=i.updateDeliveryAddressField({ContactFirstName:"",ContactLastName:"",ContactPhoneNumber:""},""):r.resolve(),i.set("clearingPickupContact",!1)):r.resolve(),r},contactFirstNameErrorMsg:"",contactLastNameErrorMsg:"",contactPhoneErrorMsg:"",validPickupContact:function(t){var i=this,r=!0;return h.options.pickupContactFieldData.length!==0&&n.each(h.options.pickupContactFieldData,function(n,t){t.Mandatory&&!i.validPickupContactField(t.FieldName,t.Prompt)&&(r=!1)}),!r&&t&&(i.clearMessage(),i.setMessage(h.options.textPickupContactDetailsIncomplete,n.cv.css.messageTypes.error)),r},validPickupContactField:function(t,i){var r=!0,u;return t=t.substr(0,1).toLowerCase()+t.substr(1),u=this.get(t),n.cv.util.isNullOrWhitespace(u)?(this.set(t+"ErrorMsg",n.cv.css.mandatoryFieldIncompleteMessage.format(i)),r=!1):this.set(t+"ErrorMsg",""),r},checkAttentionToDefaults:function(){this.get("attentionUserName")==""&&this.set("attentionUserName",h.options.attentionUserName);this.get("attentionPhoneNumber")==""&&this.set("attentionPhoneNumber",h.options.attentionPhoneNumber)},setAttention:function(t){var i=this,r;t=typeof t!="undefined"?t:!0;this.set("attentionToHasError","");this.set("attentionToErrorMsg","");i.checkAttentionToDefaults();r=n.cv.css.deliveryAddress.setDeliveryAddressAttentionTo({name:i.get("attentionUserName"),phone:i.get("attentionPhoneNumber")});n.when(r).done(function(r){r.sessionHasTimedOut?c.redirectToTimeoutUrl(h.options.sessionTimeOutRedirectUrl,null,h.options.includeInBrowserHistory):t&&(r.errorMessage&&r.errorMessage.length!=0?(i.setMessage(r.errorMessage,n.cv.css.messageTypes.error),i.set("attentionToHasError",h.options.inputErrorClass),i.set("attentionToErrorMsg",r.errorMessage)):i.setMessage(h.options.textUpdatingAttentionToSuccess,n.cv.css.messageTypes.success))}).fail(function(){t&&(i.setMessage(h.options.textErrorUpdatingAttentionTo,n.cv.css.messageTypes.error),i.set("attentionToHasError",h.options.inputErrorClass),i.set("attentionToErrorMsg",h.options.textErrorUpdatingAttentionTo))})},setAttentionToUserName:function(n){var t=this;t.setAttention(n)},setAttentionToPhoneNumber:function(n){var t=this;t.setAttention(n)},isSettingAddresses:!1,setAddresses:function(n){var t=this,i;return t.set("isSettingAddresses",!0),t.set("preserveGuestDetails",!0),t.processLinkedAddresses(n),i=this.getSoBillAddress(),t._updateBillingAddress(i,h.options.textBillingAddressUpdatedSuccess,"billingAddressErrorMsg").done(function(){t.setDeliveryAddress()}),!1},setDeliveryAddress:function(t,i){var u=this.getSoDelAddress(),f=n.Deferred(),r=this;return i=typeof i!="undefined"?i:!1,i?r._updateDeliveryAddress(u,h.options.textDeliveryAddressUpdatedSuccess,"deliveryAddressErrorMsg",r.get("saveAddress"),t):r.updateDeliveryAddress(u,h.options.textDeliveryAddressUpdatedSuccess,"deliveryAddressErrorMsg",r.get("saveAddress"),t)},setBillingAddress:function(){var n=this.getSoBillAddress(),t=this;return t.updateBillingAddress(n,h.options.textBillingAddressUpdatedSuccess,"billingAddressErrorMsg")},setOrderComments:function(){var n=this;n.updateDeliveryAddressField({SoComments:n.get("orderComments")},h.options.textOrderCommentsUpdatedSuccess,"orderCommentsErrorMsg");n.setLocalDeliveryAddress()},setDeliveryInstructions:function(){var t=this,i=this.get("deliveryInstructions"),r=h.options.textDeliveryInstructionsUpdatedSuccess,u;t.deliveryAddressMode==="Pickup"&&(r=h.options.textPickupInstructionsUpdatedSuccess);t.updateDeliveryAddressField({SoDelIns:i},r,"deliveryInstructionsErrorMsg");t.setLocalDeliveryAddress();u=t.get("addressItemList");n.each(u,function(n,t){return t.fieldItem.FieldName==="SoDelIns"?(this.set(t.fieldItem.FieldName,i),t[t.fieldItem.fieldName]=i,!1):!0})},setPickupInstructions:function(){var n=this,t=n.get("pickupInstructions"),i=h.options.textPickupInstructionsUpdatedSuccess;n.updateDeliveryAddressField({PickupInstructions:t},i,"pickupInstructionsErrorMsg");n.setLocalDeliveryAddress()},validAuthorityToLeave:function(t){var i=this;i.clearMessage("validAuthorityToLeave",!0);var r=!0,u=i.get("authorityToLeave"),f=!n.cv.util.isNullOrWhitespace(u)&&u!==h.options.defaultAuthorityToLeaveText,e=i.get("leaveAtAlternateLocation");return e===!0?(r=f,i.setAuthorityToLeave(!1,!1)):f&&i.setAuthorityToLeave(!1,!0),!r&&t&&i.setMessage(h.options.textAuthorityToLeaveOptionNotSelected,n.cv.css.messageTypes.error,!0,"validAuthorityToLeave"),r?i.set("authorityToLeaveErrorMsg",""):i.set("authorityToLeaveErrorMsg",h.options.textAuthorityToLeaveMandatory),i.setLocalDeliveryAddress(),r},setAuthorityToLeave:function(t,i){var r,u;i===void 0&&(i=!1);r=this;t=typeof t!="undefined"?t:!0;u=i?"":this.get("authorityToLeave");r.updateDeliveryAddressField({AuthorityToLeave:u},h.options.textAuthorityToLeaveUpdatedSuccess,"authorityToLeaveErrorMsg").done(function(i){i.sessionHasTimedOut?c.redirectToTimeoutUrl(h.options.sessionTimeOutRedirectUrl,null,h.options.includeInBrowserHistory):t&&(i.errorMessage&&i.errorMessage.length!=0?(r.setMessage(i.errorMessage,n.cv.css.messageTypes.error),r.set("authorityToLeaveErrorMsg",i.errorMessage)):(r.setMessage(h.options.textAuthorityToLeaveUpdatedSuccess,n.cv.css.messageTypes.success),r.set("authorityToLeaveErrorMsg","")))}).fail(function(){t&&(r.setMessage(h.options.textErrorUpdatingAuthorityToLeave,n.cv.css.messageTypes.error),r.set("authorityToLeaveErrorMsg",h.options.textErrorUpdatingAttentionTo))})},validCopyOrderConfirmation:function(t){var i=this,r;return i.clearMessage("validCopyOrderConfirmation",!0),r=!(i.get("allowCopyOrderConfirmation")&&i.get("copyOrderConfirmationMandatory")&&i.get("copyOrderConfirmation").length===0),!r&&t&&i.setMessage(h.options.textCopyOrderConfirmationMandatory,n.cv.css.messageTypes.error,!0,"validCopyOrderConfirmation"),r?(i.set("orderConfirmationHasError",""),i.set("orderConfirmationErrorMsg",""),r=i.validateCopyConfirmationEmailAddresses()):(i.set("orderConfirmationHasError",h.options.inputErrorClass),i.set("orderConfirmationErrorMsg",h.options.textCopyOrderConfirmationMandatory)),r},setCopyOrderConfirmation:function(){var n=this;if(this.validCopyOrderConfirmation(!0))n.validateCopyConfirmationEmailAddresses()&&n.updateDeliveryAddressField({CopyOrderConfirmationEmail
18:this.get("copyOrderConfirmation")},h.options.textCopyOrderConfirmationUpdatedSuccess,"orderConfirmationErrorMsg");else return},validateCopyConfirmationEmailAddresses:function(){var t=this,i,r,u;return t.clearMessage("validateCopyConfirmationEmailAddresses",!0),i=!0,n.trim(t.get("copyOrderConfirmation"))!=""&&(r=new RegExp(/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i),u=t.get("copyOrderConfirmation").split(";"),n.each(u,function(n,t){r.test(t)||(i=!1)})),i?(t.set("orderConfirmationHasError",""),t.set("orderConfirmationErrorMsg","")):(t.set("orderConfirmationHasError",h.options.inputErrorClass),t.set("orderConfirmationErrorMsg",h.options.textCopyOrderConfirmationInvalidEmail
18s),t.setMessage(h.options.textCopyOrderConfirmationInvalidEmails,n.cv.css.messageTypes.error,!0,"validateCopyConfirmationEmailAddresses")),i},getCurrentUser:function(t,i){if(t==null)i=n.cv.css.getCurrentUser();else{var u=t.EmailAddress,f=n.cv.css.localGetCurrentOrder(),r=f.SoUserIdCode;n.cv.util.string.startsWith(r,"guestuser")&&u!==r?i=n.cv.css.getCurrentUser():i.resolve({data:[t]})}return i},saveBillingAddressToUser:function(){var i=n.Deferred(),r=n.cv.css.localGetUser(),t={},u=this.get("billingAddressItemList");h.options.saveAddressFieldGroup.length>0&&(i=this.getCurrentUser(r,i),n.each(u,function(n,i){t[i.fieldItem.FieldName]=i.get(i.fieldItem.FieldName)}),n.when(i).done(function(i){i&&i.data&&i.data.length>0&&(t._objectKey=i.data[0]._objectKey,t.SoBillAddressId=c._addressIdMeta().billingId,n.cv.css.user.setCurrentUserDetails({updateData:t,jsonFieldGroup:h.options.saveAddressFieldGroup}))}))},saveDeliveryAddressToUser:function(){var i=this,r=n.Deferred(),u=n.cv.css.localGetUser(),f=h.options.userAddressFields,t={},e=this.get("addressItemList");h.options.saveAddressFieldGroup.length>0&&(r=i.getCurrentUser(u,r),n.each(f,function(r,u){var f=u.To,o=u.From,s=n.grep(e,function(n){return n.fieldItem.FieldName===o})[0];if(!s){console.warn("saveDeliveryAddressToUser: mapping error - ".concat(o," to ").concat(f));return}t[f]=i.get("createUserFromGuest")&&f==="NotifyEmailAddress"?s.get(h.options.guestCheckoutEmailField):s.get(o);h.options.showPromoMaterial&&f==="NotifyEmailAddress"&&(t.ReceivePromoMaterial=i.get("receivePromoEmails"))}),n.when(r).done(function(i){i&&i.data&&i.data.length>0&&(t._objectKey=i.data[0]._objectKey,t.DeliveryAddressId=c._addressIdMeta().deliveryId,n.cv.css.user.setCurrentUserDetails({updateData:t,jsonFieldGroup:h.options.saveAddressFieldGroup}))}
18))},onNotReceivePromoEmailsChange:function(){if(!n.cv.util.isNullOrWhitespace(h.options.userFieldForReceivePromoEmails)){var t=n.Deferred(),r=n.cv.css.localGetUser(),i=this;t=i.getCurrentUser(r,t);t.done(function(t){var r={_objectKey:t.data[0]._objectKey};r[h.options.userFieldForReceivePromoEmails]=i.get("notReceivePromoEmails")?0:1;n.cv.css.user.setCurrentUserDetails({updateData:r,jsonFieldGroup:h.options.saveAddressFieldGroup})})}},setName:function(){var t=this,r=t.get("guestUserFirstNameField.GuestUserFirstName"),i=t.get("guestUserLastNameField.GuestUserLastName"),u=r+(n.cv.util.isNullOrWhitespace(i)?"":" "+i);t._trySetAddressItemValue(h.options.billingNameFieldName,t.billingAddressItemList,u)&&(t.updateBillingAddress(t.getSoBillAddress(),""),t.updateDeliveryAddress(t.getSoDelAddress(),""),n.cv.css.setLocalStorage(n.cv.css.localStorageKeys.guestUserFirstNameField,r),n.cv.css.setLocalStorage(n.cv.css.localStorageKeys.guestUserLastNameField,i));n.cv.css.deliveryAddress.updateFirstAndLastNameForPSO({firstName:r,lastName:i,_objectKey:t.get("deliveryAddressObjectKey")})},validateFirstAndLastName:function(t){var i=this,r=i.get("guestUserFirstNameField"),u=i.get("guestUserLastNameField"),f=!0,e="validateFirstAndLastName";return t&&i.clearMessage(e,!0),r&&r.fieldValid({data:r},t)===!1&&(f=!1,t&&i.setMessage(r.fieldItem.errorMessage,n.cv.css.messageTypes.error,!0,e,"Required-Fields",!0)),u&&u.fieldValid({data:u},t)===!1&&(f=!1,t&&i.setMessage(u.fieldItem.errorMessage,n.cv.css.messageTypes.error,!0,e,"Required-Fields",!0)),f},setCreateUserFromGuest:function(){if(h.options.isGuestCheckout!==!1){var t=this.get("createUserFromGuest");n.cv.css.user.setUserStatus({userStatus:t?1:2}).done(function(){n.cv.css.trigger(n.cv.css.eventnames.userStatusSet,t)})}},saveDeliveryAddress:function(t,i,r){var u=this,f=n.cv.css.deliveryAddress.saveAddress({saveForUser:h.options.saveAddressForUser,saveDeliveryInstructions:h.options.saveDeliveryInstructions,isThirdPartyDelivery:!!t,deliveryAddressName:i,emailAddress:r,_objectKey:u.get("deliveryAddressObjectKey")});n.when(f).done(function(t){var i=t.data,r,f;if(t.sessionHasTimedOut)c.redirectToTimeoutUrl(h.options.sessionTimeOutRedirectUrl,null,h.options.includeInBrowserHistory);else if(t.errorMessage&&t.errorMessage.length!=0)u.setMessage(t.errorMessage,n.cv.css.messageTypes.error);else if(i.Success)n.cv.css.trigger(n.cv.css.eventnames.addressSaved);else if(i.Messages.length>0){for(r="",f=0;f<i.Messages.length;f++)r=r.length==0?i.Messages[f]:r+", "+i.Messages[f];u.setMessage(r,n.cv.css.messageTypes.error)}}).fail(function(){u.setMessage(h.options.textErrorSavingDeliveryAddress,n.cv.css.messageTypes.error)})},changeTriggered:!1,isAddressBeingEdited:!1,isCountryBeingEdited:!1,_updateDeliveryAddressThrottled:n.noop,changedAddressFieldTempList:[],changedBillingAddressFieldTempList:[],updateDeliveryAddress:function(n,t,i,r,u,f){return f&&this.changedAddressFieldTempList.push(f.toLowerCase()),h._updateDeliveryAddressThrottled(n,t,i,r,u,f,this.changedAddressFieldTempList.slice(),!0)},isUpdateDeliveryAddressError:!1,_updateDeliveryAddress:function(i,r,u,f,e,o,s,a){var p;a===void 0&&(a=!1);var v=this,w=v.get("processingLinkedAddresses"),b={},y=n.extend({_objectKey:this.get("deliveryAddressObjectKey"),validateMissingFields:!h.options.updateAddressOnChanged,selectedAddressId:v.addressId(),preserveGuestDetails:v.get("preserveGuestDetails"),setDeliveryOptions:h.options.setDeliveryOptions},i);return f=typeof f!="undefined"?f:!1,e=typeof e!="undefined"?e:!1,v.set("deliveryAddressErrorMsg",""),v.set("productDeliveryRestrictionsErrorMsg",""),v.clearMessage(),h.options.isForWarrantyClaim===!0&&(y.orderNo=h.options.orderNoOverride,y.isForWarrantyClaim=!0),p=n.cv.css.deliveryAddress.updateDeliveryAddressForOrder(y),p.done(function(r){var y,k,p;(a&&(v.changedAddressFieldTempList=[]),n.cv.util.hasValue(r)!==!1)&&(y=r.data,r.sessionHasTimedOut?c.redirectToTimeoutUrl(h.options.sessionTimeOutRedirectUrl,null,h.options.includeInBrowserHistory):r.errorMessage&&r.errorMessage.length!=0?(v.setMessage(r.errorMessage,n.cv.css.messageTypes.error),u!=undefined&&u!=""&&v.set(u,r.errorMessage)):(v.set("isDangerousGoodsPoBoxDelivery",y.isDangerousGoodsPoBoxDelivery),h.options.usingAddressValidation&&v.set("isSettingAddresses",!1),(y.isSoOrderTotalTaxChanged===!0||y.isOrderChargesChanged===!0)&&n.cv.css.refreshCurrentOrder().done(function(){n.cv.css.trigger(n.cv.css.eventnames.orderChanged)}),y.productDeliveryRestrictionsMessage&&y.productDeliveryRestrictionsMessage.length>0?(l(),v.setMessage(y.productDeliveryRestrictionsMessage,n.cv.css.messageTypes.error),v.set("productDeliveryRestrictionsErrorMsg",y.productDeliveryRestrictionsMessage)):y.result?(v.set("isUpdateDeliveryAddressError",!1),v.clearMessage("updateDeliveryAddressError",!0),h.options.updateAddressOnChanged||(v.setMessage(h.options.textDeliveryAddressUpdatedSuccess,n.cv.css.messageTypes.success),l(h.options.usingAddressValidation&&v.shouldAddressBeCopied()&&h.options.addressMapMode===t)),h.options.showCountry&&g(!1),k=n.cv.util.hasContent(h.viewModel._getAddressItemPostcode(!0)),n.cv.css.trigger(n.cv.css.eventnames.addressValidationUpdated,{valid:!0}),n.cv.css.trigger(n.cv.css.eventnames.addressChanged,{deliveryAddressMode:v.get("deliveryAddressMode"),isDeliveryAddressEmpty:v.isDeliveryAddressEmpty(),changedAddressField:o,updatedAddressDetail
18s:i.updatedAddressDetails,suburbFieldNameForB2b:h.options.suburbFieldNameForB2b,isDeliveryAndBillingLinked:h.options.useNegationLogicForLinkingAddress?!v.get("linkDeliveryAndBilling"):v.get("linkDeliveryAndBilling"),hasPostCode:k,changeAddressFieldList:s,isRural:c.get("deliveryAddressIsRural"),hasRuralCharge:c.hasRuralDeliveryCharge()}),v.validateInputFields(!1),h.options.usingAddressValidation&&v.get("passedValidation")===!0&&n.cv.util.notify(v,h.options.addressIsValid,n.cv.css.messageTypes.success,{triggerMessages:!0,source:h.name}),f&&v.saveDeliveryAddress(),h.options.saveAddressDownToUser&&v.get("deliveryAddressMode")!=="Pickup"&&v.saveDeliveryAddressToUser()):y.message!=""&&y.pickList==null?(h.options.updateAddressOnChanged||l(),v.setMessage(y.message,n.cv.css.messageTypes.error,h.options.triggerErrorMessages&&!w),u!=undefined&&u!=""&&v.set(u,y.message)):y.pickList!=null?(l(h.options.usingAddressValidation&&v.shouldAddressBeCopied()&&h.options.addressMapMode===t),p=vt(y.pickList),p.length>0?(h.options.deliveryAddressValidationDataSource=p,ht()):n.cv.util.isNullOrWhitespace(y.message)||v.setMessage(y.message,n.cv.css.messageTypes.error,h.options.triggerErrorMessages&&!w)):(v.set("isUpdateDeliveryAddressError",!0),v.validateInputFields(!1),v.setMessage(h.options.textErrorWhenUpdatingDeliveryAddress,n.cv.css.messageTypes.error,!0,"updateDeliveryAddressError")),e&&(b=v.clearPickupContact(!0))))}).fail(function(){v.setMessage(h.options.textErrorUpdatingDeliveryAddress,n.cv.css.messageTypes.error);u!=undefined&&u!=""&&v.set(u,h.options.textErrorUpdatingDeliveryAddress);a&&(v.changedAddressFieldTempList=[])}),n.when(p,b)},isBillingAddressBeingEdited:!1,_updateBillingAddressThrottled:n.noop,clearWidgetMessages:!1,updateBillingAddress:function(n,t,i,r){return r&&this.changedBillingAddressFieldTempList.push(r.toLocaleLowerCase()),h._updateBillingAddressThrottled(n,t,i,r)},isUpdateBillingAddressError:!1,_updateBillingAddress:function(t,i,r,u){var f=this,o=n.extend({_objectKey:f.get("deliveryAddressObjectKey"),selectedAddressId:f.addressId()},t),e;return f.set("billingAddressErrorMsg",""),f.clearMessage(),f.setCreateUserFromGuest(),h.options.isForWarrantyClaim===!0&&(o.isForWarrantyClaim=!0),e=n.cv.css.deliveryAddress.updateBillingAddressForOrder(o),e.done(function(i){var o=f.changedBillingAddressFieldTempList,e;f.changedBillingAddressFieldTempList=[];e=i.data;i.sessionHasTimedOut?c.redirectToTimeoutUrl(h.options.sessionTimeOutRedirectUrl,null,h.options.includeInBrowserHistory):i.errorMessage&&i.errorMessage.length!=0?(f.setMessage(i.errorMessage,n.cv.css.messageTypes.error),r!=undefined&&r!=""&&f.set(r,i.errorMessage)):e.result?(f.set("isUpdateBillingAddressError",!1),f.clearMessage("updateBillingAddressError",!0),h.options.updateAddressOnChanged||(f.setMessage(h.options.textDeliveryAddressUpdatedSuccess,n.cv.css.messageTypes.success,!0),h.options.usingAddressValidation||l()),h.options.showCountry&&g(!0),n.cv.css.trigger(n.cv.css.eventnames.billingAddressChanged,{changedAddressField:u,updatedAddressDetails:t.updatedBillingAddressDetails,changeAddressFieldList:o}),h.options.saveBillAddressDownToUser&&f.saveBillingAddressToUser()):n.cv.util.hasValue(e.message)?(h.options.updateAddressOnChanged||h.options.usingAddressValidation||l(),f.setMessage(e.message,n.cv.css.messageTypes.error),r!=undefined&&r!=""&&f.set(r,e.message)):(f.set("isUpdateBillingAddressError",!0),f.validateInputFields(!1),f.setMessage(h.options.textErrorWhenUpdatingBillingAddress,n.cv.css.messageTypes.error,!0,"updateBillingAddressError"))}).fail(function(){f.setMessage(h.options.textErrorUpdatingDeliveryAddress,n.cv.css.messageTypes.error);r!=undefined&&r!=""&&f.set(r,h.options.textErrorUpdatingDeliveryAddress);f.changedBillingAddressFieldTempList=[]}),e},validateSuburbAndPostCodeInternal:function(t,i,r,u,f){var o=n.Deferred(),e;return!f&&(h.options.disableDeliveryAddress||h.options.enableSuburbAndPostcodeValidation===!1)||!n.cv.util.hasValue(t)||!n.cv.util.hasValue(i)&&h.options.suburbStatePostcodeValidation==="SuburbStateAndPostcode"||!n.cv.util.hasValue(r)?(o.resolve({data:!0}
18),o):(e=this,f===!1&&e.get("deliveryMethodDisableAddressEdit"))?(e.set("isSuburbAndPostCodeValid",!0),e.updateSuburbPostcodeValidStatus(),o.resolve({data:!0}),o):n.cv.util.isNullOrWhitespace(t)||n.cv.util.isNullOrWhitespace(r)||h.options.suburbStatePostcodeValidation==="SuburbStateAndPostcode"&&n.cv.util.isNullOrWhitespace(i)?(f===!0?(e.set("isBillingSuburbAndPostCodeValid",!1),e.updateBillingSuburbPostcodeValidStatus()):(e.set("isSuburbAndPostCodeValid",!1),e.updateSuburbPostcodeValidStatus()),o.resolve({data:!1}),o):(i=h.options.suburbStatePostcodeValidation==="SuburbStateAndPostcode"?i:"",o=n.cv.css.deliveryAddress.validateSuburbAndPostCode({suburb:t,state:i,postcode:r,country:u}),o.done(function(n){if(n.sessionHasTimedOut)c.redirectToTimeoutUrl(h.options.sessionTimeOutRedirectUrl,null,h.options.includeInBrowserHistory);else{var t=n.data;f===!0?(e.set("isBillingSuburbAndPostCodeValid",t),e.updateBillingSuburbPostcodeValidStatus()):(e.set("isSuburbAndPostCodeValid",t),e.updateSuburbPostcodeValidStatus())}}).fail(function(){f===!0?(e.set("isBillingSuburbAndPostCodeValid",!1),e.updateBillingSuburbPostcodeValidStatus()):(e.set("isSuburbAndPostCodeValid",!1),e.updateSuburbPostcodeValidStatus());var t=h.options.suburbStatePostcodeValidation==="SuburbStateAndPostcode"?h.options.textErrorValidatingSuburbStatePostcode:h.options.textErrorValidatingSuburbPostcode;e.setMessage(t,n.cv.css.messageTypes.error)}),o)},doSuburbAndPostCodeValidation:function(n,t,i,r,u){var f=this;(!u||h.options.isB2c)&&(h.options.disableDeliveryAddress===!1&&h.options.enableSuburbAndPostcodeValidation===!0?f.validateSuburbAndPostCodeInternal(n,t,i,r,u).done(function(){f.validateInputFields(!1)}):u===!0?(f.set("isBillingSuburbAndPostCodeValid",!0),f.updateBillingSuburbPostcodeValidStatus()):(f.set("isSuburbAndPostCodeValid",!0),f.updateSuburbPostcodeValidStatus()))},updateDeliveryAddressField:function(t,i,r){var u=this,f=n.extend({_objectKey:this.get("deliveryAddressObjectKey")},t),e=h.options.isForWarrantyClaim||h.options.orderNoOverride!==0?n.cv.css.deliveryAddress.setDeliveryAddressFieldForSelectedOrder(f):n.cv.css.deliveryAddress.setDeliveryAddressFieldForCurrentOrder(f);return e.done(function(t){var f={};f.result=t.data;u.clearMessage("updateDeliveryAddressField");t.sessionHasTimedOut?c.redirectToTimeoutUrl(h.options.sessionTimeOutRedirectUrl,null,h.options.includeInBrowserHistory):t.errorMessage&&t.errorMessage.length!==0?(u.setMessage(t.errorMessage,n.cv.css.messageTypes.error,!0,"updateDeliveryAddressField"),r!=undefined&&r!==""&&u.set(r,t.errorMessage)):f.result.length>0?h.options.updateAddressOnChanged||(u.setMessage(i,n.cv.css.messageTypes.success,!0,"updateDeliveryAddressField"),b(f)):u.setMessage(h.options.textErrorUpdatingDeliveryAddress,n.cv.css.messageTypes.error,!0,"updateDeliveryAddressField")}).fail(function(){u.setMessage(h.options.textErrorUpdatingDeliveryAddress,n.cv.css.messageTypes.error,!0,"updateDeliveryAddressField");r!=undefined&&r!==""&&u.set(r,h.options.textErrorUpdatingDeliveryAddress)}),e},validateAddressFields:function(t,i){var r={allValid:!0,errorMessage:""},o=this.displayValuesFromSeq.toString(),u=this.addressObjectMapping,s=!1,c=[],l=[],a=this.billingAddressLookupMandatoryMessage,v=this.deliveryAddressLookupMandatoryMessage,f,e;return this.useAddressLookup&&n.cv.util.hasValue(o)&&u.length>0&&(s=!0,f=_.find(u,function(n){return n.AddressType==="Billing"}),e=_.find(u,function(n){return n.AddressType==="Delivery"}),_.each(o.split(","),function(n){var t,i;f&&(t=_.find(f.Map,function(t){return t.Seq.toString()===n}),c.push({Fieldname:t.Field}));e&&(i=_.find(e.Map,function(t){return t.Seq.toString()===n}),l.push({Fieldname:i.Field}))})),n.each(t,function(t,u){var f,e;return h.options.displayFirstNameAndLastName&&u.fieldItem.FieldName===h.options.billingNameFieldName?!0:(u.fieldItem.parent().fieldValid({data:u.fieldItem.parent()}
18,i)?u.setError(u.fieldItem,"",""):(r.allValid=!1,s&&(f=_.find(c,function(n){return n.Fieldname===u.fieldItem.fieldName||n.Fieldname.indexOf(u.fieldItem.fieldName)!==-1}),f&&(u.fieldItem.errorMessage=a),e=_.find(l,function(n){return n.Fieldname===u.fieldItem.fieldName||n.Fieldname.indexOf(u.fieldItem.fieldName)!==-1}),e&&(u.fieldItem.errorMessage=v)),n.cv.util.hasValue(r.errorMessage)&&r.errorMessage.length>0&&(r.errorMessage+="<br>"),r.errorMessage+=n.cv.util.isNullOrWhitespace(u.fieldItem.errorMessage)&&u.fieldItem.mandatory===!0&&n.cv.util.isNullOrWhitespace(u.fieldItem.mandatoryMessage)===!1?u.fieldItem.mandatoryMessage:u.fieldItem.errorMessage),!0)}),r},_validateAddressServiceCall:function(){var t=this,i=n.Deferred();return c.get("disableDeliveryAddress")||t.showDeliveryAddress()===!1?i.resolve(!0):(t.clearMessage(),n.cv.css.deliveryAddress.validateOrderDeliveryAddress({validateDeliveryRestriction:!t.get("isDeliveryMethodsInUse"),isForWarrantyClaim:h.options.isForWarrantyClaim===!0,_objectKey:t.get("deliveryAddressObjectKey")}).done(function(r){var u=r.data;r.sessionHasTimedOut?t.redirectToTimeoutUrl(h.options.sessionTimeOutRedirectUrl,null,h.options.includeInBrowserHistory):(r.errorMessage&&r.errorMessage.length!=0?t.setMessage(r.errorMessage,n.cv.css.messageTypes.error):!u.result&&u.responseMessage.length>0&&t.setMessage(u.responseMessage,n.cv.css.messageTypes.error,h.options.triggerExternalValidationMessages),i.resolve(u.result))})),i},leaveAtAlternateLocationChanged:function(){this.validateInputFields(!1)},validateInputFields:function(t,i,r,u){var f=this,l,v,s,w,d,tt,it,g,nt,rt;h.finishedInitialize||(h.finishedInitialize=!0,n.cv.css.trigger(n.cv.css.eventnames.widgetFinishedInitializingOnCheckout,h.name));var e=!0,ut="deliveryAddress",o="",y=!1,p=n.Deferred(),a=n.Deferred();if(i=typeof i!="undefined"?this.get("deliveryAddressMode")=="Pickup"?!1:i:!1,t=u===!0,h.options.isViewOnly)return a.resolve(),a;if(f.clearMessage("validateDeliveryAddress",!0),f.clearMessage("validateSuburbPostCodeMatch",!0),f.clearMessage("validateUpdateDeliveryAddress",!0),f.clearMessage("validateUpdateBillingAddress",!0),this.get("deliveryAddressMode")!="Pickup"||this.validPickupContact(t)||(e=!1),this.validCustomerReference(t)||(e=!1),this.validCopyOrderConfirmation(t)||(e=!1),this.validAuthorityToLeave(t)||(e=!1),h.options.displayFirstNameAndLastName&&f.validateFirstAndLastName(t)===!1&&(e=!1),l=f.get("orderHasPickupAndDeliveryLines"),h.options.pickupInstructionRequired&&(this.get("deliveryAddressMode")=="Pickup"&&l==!1&&n.cv.util.isNullOrWhitespace(f.get("deliveryInstructions"))||l&&n.cv.util.isNullOrWhitespace(f.get("pickupInstructions")))&&(e=!1,o=h.options.pickupInstructionRequiredErrorMessage,l==!1?f.set("deliveryInstructionsErrorMsg",o):f.set("pickupInstructionsErrorMsg",o)),h.options.showDeliveryInstructions&&(this.get("deliveryAddressMode")=="Delivery"||l)&&h.options.deliveryInstructionRequired&&n.cv.util.isNullOrWhitespace(f.get("deliveryInstructions"))&&(e=!1,v=h.options.deliveryInstructionRequiredErrorMessage,n.cv.util.hasContent(o)&&t?this.setMessage(v,n.cv.css.messageTypes.error,!0,"validateDeliveryAddress","Required-Fields",!0):o=v,f.set("deliveryInstructionsErrorMsg",v)),s=void 0,this.showDeliveryAddress()&&this.get("deliveryAddressMode")!=="Email"&&(h.options.disableDeliveryAddress&&f.get("thirdPartyDeliveryChecked")!==!0?(w=_.filter(this.get("addressItemList"),function(n){return n.SoDelIns!=undefined}),w.length>0&&(s=this.validateAddressFields(w,t))):this.get("deliveryMethodDisableAddressEdit")?f.set("isSuburbAndPostCodeValid",!0):s=this.validateAddressFields(this.get("addressItemList"),t)),s&&!s.allValid&&(e=!1,o=s.errorMessage),h.options.isB2c&&!h.options.disableBillingAddress&&this.showBillingAddress()){var b=null,k=[],ft=_.find(this.get("billingAddressItemList"),function(n){return n.fieldItem.FieldName===h.options.guestCheckoutEmailField});n.cv.util.hasValue(h.options.guestCheckoutEmailField)&&f.get("deliveryAddressMode")==="Pickup"&&!n.cv.util.hasValue(ft)&&(b=_.find(this.get("addressItemList"),function(n){return n.fieldItem.FieldName===h.options.guestCheckoutEmailField}),n.cv.util.hasValue(b)&&(k=[b]));n.merge(k,this.get("billingAddressItemList"));d=this.validateAddressFields(k,t);d.allValid||(e=!1,o=d.errorMessage)}return!h.options.disableDeliveryAddress&&h.options.enableSuburbAndPostcodeValidation&&this.showDeliveryAddress()&&!c.shouldAddressBeCopied()&&(this.get("isSuburbAndPost
18CodeValid")||(e=!1,y=!0),t===!0&&this.updateSuburbPostcodeValidStatus()),h.options.isB2c&&!h.options.disableBillingAddress&&h.options.enableSuburbAndPostcodeValidation&&this.showBillingAddress()&&(this.get("isBillingSuburbAndPostCodeValid")||(e=!1,y=!0),t===!0&&this.updateBillingSuburbPostcodeValidStatus()),tt=c.showManualAddressInputConfirmation&&n.cv.util.isNullOrWhitespace(c.get("billingAddressId"))&&!c.manualAddressInputConfirmationChecked&&h.options.isB2c,it=c.showManualDeliveryAddressInputConfirmation&&n.cv.util.isNullOrWhitespace(c.get("deliveryAddressId"))&&!c.manualDeliveryAddressInputConfirmationChecked,h.options.useAddressLookup&&(tt||it)&&(e=!1,o=h.options.validationManualAddressInputConfirmationRequiredMessage),g=f.get("isUpdateDeliveryAddressError"),g&&(e=!1),nt=f.get("isUpdateBillingAddressError"),nt&&(e=!1),c.set("passedValidation",e),e||t&&(o&&(this.set("deliveryAddressErrorMsg",o),this.setMessage(o,n.cv.css.messageTypes.error,!0,"validateDeliveryAddress","Required-Fields",!0),n.cv.css.trigger(n.cv.css.eventnames.validateAddressLookup)),y&&(rt=h.options.suburbStatePostcodeValidation==="SuburbStateAndPostcode"?h.options.textErrorValidatingSuburbStatePostcode:h.options.textErrorValidatingSuburbPostcode,this.setMessage(rt,n.cv.css.messageTypes.error,!0,"validateSuburbPostCodeMatch","Required-Fields",!0)),g&&(f.clearMessage("updateDeliveryAddressError",!0),this.setMessage(h.options.textErrorWhenUpdatingDeliveryAddress,n.cv.css.messageTypes.error,!0,"validateUpdateDeliveryAddress","Required-Fields",!0)),nt&&(f.clearMessage("updateBillingAddressError",!0),this.setMessage(h.options.textErrorWhenUpdatingBillingAddress,n.cv.css.messageTypes.error,!0,"validateUpdateBillingAddress","Required-Fields",!0))),h.options.validateTermsAndConditions&&f.get("acceptTermsAndConditions")===!1&&(e=!1,t&&(f.clearMessage("validateTermsAndConditions",!0),f.setMessage(h.options.textTermsAndConditionsMandatory,n.cv.css.messageTypes.error,!0,"validateTermsAndConditions","Required-Fields",!0))),e&&i?p=this._validateAddressServiceCall():p.resolve(e),p.done(function(t){n.cv.css.addRemovePageValidationError(t,n.cv.util.isNullOrWhitespace(r)?ut:r);f.get("copyingAddressFields")||(n.cv.css.trigger(n.cv.css.eventnames.addressValidated),h.options.usingAddressValidation&&t&&n.cv.css.trigger(n.cv.css.eventnames.addressValidationUpdated,{valid:!0}));a.resolve()}),a},updateSuburbPostcodeValidStatus:function(){var n=this,i=n.get("isSuburbAndPostCodeValid"),r=this.shouldAddressBeCopied()&&h.options.addressMapMode==t,u=n.get("deliveryAddressMode")=="Pickup";return r||u||h.options.isViewOnly?i=!0:_.each(n.get("addressItemList"),function(n){if(n.fieldItem.FieldName===h.options.suburbFieldName||n.fieldItem.FieldName===h.options.postcodeFieldName||n.fieldItem.FieldName===h.options.stateFieldName&&h.options.suburbStatePostcodeValidation==="SuburbStateAndPostcode")if(i)n.fieldItem.set("hasNonFieldValidMessage",!1),n.setError(n.fieldItem,"","");else{n.fieldItem.set("hasNonFieldValidMessage",!0);var t=h.options.suburbStatePostcodeValidation==="SuburbStateAndPostcode"?h.options.suburbStateAndPostcodeInvalidMessage:h.options.suburbAndPostcodeInvalidMessage;n.setError(n.fieldItem,t,n.fieldItem.classForErrors)}}),i},updateBillingSuburbPostcodeValidStatus:function(){var n=this,t=n.get("isBillingSuburbAndPostCodeValid"),r=this.shouldAddressBeCopied()&&h.options.addressMapMode==i,u=n.get("deliveryAddressMode")=="Pickup"&&h.options.showBillingAddressOnPickup||n.get("deliveryAddressMode")=="Delivery";return r||!u||h.options.isViewOnly?t=!0:_.each(n.get("billingAddressItemList"),function(n){if(n.fieldItem.FieldName===h.options.billingSuburbFieldName||n.fieldItem.FieldName===h.options.billingPostcodeFieldName||n.fieldItem.FieldName===h.options.billingStateFieldName&&h.options.suburbStatePostcodeValidation==="SuburbStateAndPostcode")if(t)n.fieldItem.set("hasNonFieldValidMessage",!1),n.setError(n.fieldItem,"","");else{n.fieldItem.set("hasNonFieldValidMessage",!0);var i=h.options.suburbStatePostcodeValidation==="SuburbStateAndPostcode"?h.options.suburbStateAndPostcodeInvalidMessage:h.options.suburbAndPostcodeInvalidMessage;n.setError(n.fieldItem,i,n.fieldItem.classForErrors)}}),t},clearWarehouseAndRestoreTempDeliveryFeilds:function(){var t=this,i=!0,r=n.cv.css.deliveryAddress.clearWarehouseAndDeliveryAddressOnOrder();return r.done(function(n){if(!n.sessionHasTimedOut&&(!n.errorMessage||n.errorMessage.length===0)){if(t.restoreFromTempAddressItemList()){i=!1;var r=t.setDeliveryAddress(!0,!0);r.done(function(){t.validateInputFields(!1)})}else h.options.isB2bPickupAndContactDetailsInUse&&t.clearPickupContact(!0);i&&(t.get("deliveryAddressMode")==="Delivery"&&h.options.addressMapMode===""&&a(),t.validateInputFields(!1))}}),r},deliveryAddressModeChanged:function(){var t=this,i=t.get("deliveryAddressMode"),r={},u;t.set("deliveryInstructions","");t.set("pickupInstructions","");t.set("processing",!0);(h.options.pickupInstructionRequired||h.options.deliveryInstructionRequired)&&(t.set("deliveryInstructionsErrorMsg",""),t.set("pickupInstructionsErrorMsg",""));i.toLowerCase()==="pickup"&&t.storeIntoTempAddressItemList();i.toLowerCase()==="delivery"?(r=t.clearWarehouseAndRestoreTempDeliveryFeilds(),r.done(function(){n.cv.css.trigger(n.cv.css.eventnames.deliveryAddressModeChanged,{message:i,type:"",source:"deliveryAddress",clearExisting:!0})}).always(function(){c.set("processing",!1)})):(u=this.clearDeliveryAddress(),n.when(u).done(function(){i.toLowerCase()==="delivery"&&h.options.addressMapMode===""&&a();t.validateInputFields(!1);c.get("leaveAtAlternateLocation")&&i.toLowerCase()==="pickup"&&c.set("leaveAtAlternateLocation",!1);n.cv.css.trigger(n.cv.css.eventnames.deliveryAddressModeChanged,{message:i,type:"",source:"deliveryAddress",clearExisting:!0,isB2BPickupAndContactDetailsInUse:h.options.isB2bPickupAndContactDetailsInUse})}).always(function(){c.set("processing",!1)}))},processingLinkedAddresses:!1,processLinkedAddresses:function(i){var u=this,f=u.get("deliveryAddressMode"),r;if(!(f=="Pickup"&&h.options.addressMapMode==t)){if(this.shouldAddressBeCopied()&&!this.get("copyingAddressFields")&&this.get("deliveryMethodDisableAddressEdit")===!1&&this.copyAddressFields(),i===undefined)return;r=i.field;(r=="linkDeliveryAndBilling"||r=="deliveryAddressMode"&&f=="Delivery"&&h.options.addressMapMode==t)&&(u.set("processingLinkedAddresses",!0),this.shouldAddressBeCopied()&&(h.options.usingAddressValidation&&(u.set("isSettingAddresses",!0),n.cv.css.trigger(n.cv.css.eventnames.addressBeingEdited)),r=="linkDeliveryAndBilling"?this.triggerCopyUpdate(r):this.triggerCopyUpdate()),this.shouldAddressBeCopied()||!h.options.clearOnUncheckedLink||this.get("preserveAddressData")||this.clearCopiedAddressFields(),u.setShowManualDeliveryAddressInputConfirmationValue(),u.set("processingLinkedAddresses",!1));r==="linkDeliveryAndBilling"&&c.disableEnableCopiedAddressFields()}},triggerCopyUpdate:function(n){var i,r;h.options.addressMapMode==t?(i=c.getSoDelAddress(),this.updateDeliveryAddress(i,"",null,null,null,n)):(r=c.getSoBillAddress(),this.updateBillingAddress(r,"","",n))},copyAddressFields:function(r){if(r=typeof r!="undefined"?r:!0,h.options.addressMapMode===t||h.options.addressMapMode===i){var e=this,f=h.options.addressMapMode==t?this.get("billingAddressItemList"):this.get("addressItemList"),u=h.options.addressMapMode==t?this.get("addressItemList"):this.get("billingAddressItemList"),o=h.options.fieldMapFrom.split(",");e.set("copyingAddressFields",!0);n.each(o,function(n,t){!isNaN(t)&&f.length>t&&u.length>t&&(f[t].fieldItem.fieldName!==h.options.guestCheckoutEmailField&&u[t].fieldItem.fieldName!==h.options.guestCheckoutEmailField||h.options.isOnDeliveryAddressGuest)&&(f[t][f[t].fieldItem.fieldName]!=null?(u[t].set(u[t].fieldItem.fieldName,f[t][f[t].fieldItem.fieldName]),u[t].set("value",f[t].value)):(u[t].set(u[t].fieldItem.fieldName,""),u[t].set("value","")))});h.options.useAddressLookup&&h.options.addressMapMode===t?(this.set("deliveryAddressId",this.get("billingAddressId")),this.set("deliveryAddressIsRural",this.get("billingAddressIsRural"))):h.options.useAddressLookup&&h.options.addressMapMode===i&&(this.set("billingAddressId",this.get("deliveryAddressId")),this.set("billingAddressIsRural",this.get("deliveryAddressIsRural")));e.validateInputFields(!1);r&&e.disableEnableCopiedAddressFields();e.set("copyingAddressFields",!1)}},disableEnableCopiedAddressFields:function(){if(!h.options.isForWarrantyClaimBillingFields){var i=this,r=h.options.addressMapMode===t?this.get("addressItemList"):this.get("billingAddressItemList");n.each(r,function(n,t){i.shouldAddressBeCopied()&&t.fieldItem.fieldName!==h.options.guestCheckoutEmailField?t.set(t.fieldItem.fieldName+"_isEnabled",!1):h.viewModel.get("lookupSelected")||t.set(t.fieldItem.fieldName+"_isEnabled",!0)})}},clearCopiedAddressFields:function(){h.options.addressMapMode==t?this.clearDeliveryAddress():this.clearBillingAddress();this.validateInputFields(!1)}
18,setLocalDeliveryAddress:function(){if(!h.options.isViewOnly&&this.get("addressItemList").length>0||this.get("billingAddressItemList").length>0){var t={},i=this.get("deliveryAddressMode");t.result=[];t.result.push({AddressFieldData:this.get("addressItemList"),BillingAddressFieldData:this.get("billingAddressItemList"),CopyOrderConfirmationEmail:this.get("copyOrderConfirmation"),SoComments:this.get("orderComments"),SoCustReference:this.get("orderReference"),SoDelIns:this.get("deliveryInstructions"),PickupInstructions:this.get("pickupInstructions"),SoDelCountry:this.get("soDelCountry"),SoDelPhone:this.get("soDelPhone"),AttentionUserName:this.get("attentionUserName"),AttentionPhoneNumber:this.get("attentionPhoneNumber"),ContactFirstName:i=="Pickup"?this.get("contactFirstName"):"",ContactLastName:i=="Pickup"?this.get("contactLastName"):"",ContactPhoneNumber:i=="Pickup"?this.get("contactPhoneNumber"):"",AuthorityToLeave:this.get("authorityToLeave"),LeaveAtAlternateLocation:this.get("leaveAtAlternateLocation")});h.options.orderNoOverride===0?n.cv.css.localSetcurrentDeliveryAddress(t):n.cv.css.localSetSelectedOrderDeliveryAddress(t);n.cv.css.trigger(n.cv.css.eventnames.localdeliveryAddressChanged)}},initSuburbLookupFields:function(){if(!n.cv.util.isNullOrWhitespace(h.options.addressRulesetsAssignmentsSuburbField)&&!n.cv.util.isNullOrWhitespace(h.options.addressRulesetsAssignmentsStateField)&&!n.cv.util.isNullOrWhitespace(h.options.addressRulesetsAssignmentsPostcodeField)){var u=this,f=h.element,i=f.find("input[name='"+h.options.addressRulesetsAssignmentsSuburbField+"']"),r=f.find("input[name='"+h.options.addressRulesetsAssignmentsPostcodeField+"']"),e=h.options.isB2c?f.find("input[name='"+h.options.billingSuburbFieldName+"']"):null,o=h.options.isB2c?f.find("input[name='"+h.options.billingPostcodeFieldName+"']"):null,t=n.cv.css.formAutoCompleteClass;i&&i.length!==0&&r&&r.length!==0&&!i.hasClass(t)&&!r.hasClass(t)&&(i.addClass(t),r.addClass(t),h.options.isB2c&&(e&&e.length>0&&e.addClass(t),o&&o.length>0&&o.addClass(t)),h.options.disableDeliveryAddress===!1&&(u.bindKendoAutoCompleteForSuburbLookup(i,!1,!1),u.bindKendoAutoCompleteForSuburbLookup(r,!0,!1)),h.options.isB2c&&(u.bindKendoAutoCompleteForSuburbLookup(e,!1,!0),u.bindKendoAutoCompleteForSuburbLookup(o,!0,!0)))}},bindKendoAutoCompleteForSuburbLookup:function(t,i,r){var u=this,f=n.cv.data.dataSource({method:"storeLocator/getSuburbHelpers",params:function(){return{searchFilter:t.val(),incName:!0,useLikeName:!0,incPostcode:!0,useLikePostcode:!0,maxResults:30}}});t.kendoAutoComplete({dataSource:f,filter:i?"contains":"startswith",template:n("#"+h.options.delAddressSuburbAutoCompleteTemplateId).html(),dataTextField:i?"Postcode":"Name",select:function(n){n.item.length>0&&n.item[0].innerText!==undefined&&(u.set("isSuburbAutoCompleteSelectStarted",!0),u.setSelectedSuburbLookupToAddressFields(this.dataItem(n.item.index()),r))},close:function(){n.each(u.get(r?"billingAddressItemList":"addressItemList"),function(n,i){return i.fieldItem.fieldName===t.attr("Name")?(u.get("isSuburbAutoCompleteSelectStarted")===!1&&this.set(i.fieldItem.fieldName,t.val()),u.set("changeTriggered",!1),i.dataChanged(null,!0),!1):!0});u.set("isSuburbAutoCompleteSelectStarted",!1)}})},setSelectedSuburbLookupToAddressFields:function(t,i){var r=this;i?n.each(r.get("billingAddressItemList"),function(n,i){switch(i.fieldItem.fieldName){case h.options.billingSuburbFieldName:this.set(i.fieldItem.fieldName,t.Name);break;case"SoBillState":this.set(i.fieldItem.fieldName,t.State);r.set("changeTriggered",!1);i.dataChanged(null,!0);break;case h.options.billingPostcodeFieldName:this.set(i.fieldItem.fieldName,t.Postcode);r.set("changeTriggered",!1);i.dataChanged(null,!0)}}):n.each(r.get("addressItemList"),function(n,i){switch(i.fieldItem.fieldName){case h.options.addressRulesetsAssignmentsSuburbField:this.set(i.fieldItem.fieldName,t.Name);break;case h.options.addressRulesetsAssignmentsStateField:this.set(i.fieldItem.fieldName,t.State);r.set("changeTriggered",!1);i.dataChanged(null,!0);break;case h.options.addressRulesetsAssignmentsPostcodeField:this.set(i.fieldItem.fieldName,t.Postcode);r.set("changeTriggered",!1);i.dataChanged(null,!0)}})},setMultipleDeliveryAddressDataSource:function(){h.multipleDeliveryAddressDataSource=kendo.data.DataSource.create(this.get("multipleDeliveryAddressDataSource"));h.options.autoBind&&h.multipleDeliveryAddressDataSource.fetch();this.updateMultiAddressItemList()},thirdPartyDeliveryChecked:!1,thirdPartyDeliveryClicked:function(){var n=this,t=n.get("thirdPartyDeliveryChecked");n.updateMultipleDeliveryAddressDataSource(t,function(i){if(t)n.clearDeliveryAddress(),n.set("multipleDeliveryAddressValue","");else{var r=_.where(i,{IsFirstAddress:!0});r[0]&&r[0].Name?n.multiAddressItemChanged(r[0].Name):(n.multiAddressItemChanged("dummy (DA)"),n.set("multipleDeliveryAddressValue",""))}});n.disableEnableThirdPartyDeliveryAddressFields()},thirdPartyDeliveryStatusChanged:function(n){var t=this;h.options.enableThirdPartyDelivery&&(t.get("multipleAddressListLoaded")?n!==t.get("thirdPartyDeliveryChecked")&&(t.set("thirdPartyDeliveryChecked",n),t.updateMultipleDeliveryAddressDataSource(n)):(t.set("thirdPartyDeliveryChecked",n),t.updateMultipleDeliveryAddressDataSource(n),t.set("multipleAddressListLoaded",!0)));t.disableEnableThirdPartyDeliveryAddressFields()},updateThirdPartyDeliveryAddress:function(){var t=this,i,r;t.get("saveThirdPartyDeliveryAddress")&&(i=t.get("multipleDeliveryAddressValue"),i?(r=t.extractDeliveryAddressNameAndEmail(i),t.saveDeliveryAddress(!0,r.actualDeliveryAddressName,r.emailAddress)):t.saveDeliveryAddress(!0));n.cv.css.trigger(n.cv.css.eventnames.orderChanged)},disableEnableThirdPartyDeliveryAddressFields:function(){var t=this.get("thirdPartyDeliveryChecked")===!1,i=this.get("addressItemList");n.each(i,function(i,r){n(".widget-delivery-address-b2b [name="+r.fieldItem.FieldName+"]").attr("readonly",t)});t===!1&&h.trigger(r)},toggleDeliveryAddressB2BFields:function(t){var i=this.get("addressItemList");n.each(i,function(i,r){t||r.fieldItem.IsEditableLookup?n(".widget-delivery-address-b2b [name="+r.fieldItem.FieldName+"]").removeAttr("readonly"):n(".widget-delivery-address-b2b [name="+r.fieldItem.FieldName+"]").attr("readonly","true")})},setStatesForB2CAddressFields:function(t){h.options.useAddressLookup&&h.options.isB2c&&n.each(t,function(t,i){i.fieldItem.IsEditableLookup!==un
18defined&&(i.fieldItem.IsEditableLookup?n(".widget-delivery-address-b2c [name="+i.fieldItem.FieldName+"]").removeAttr("readonly"):n(".widget-delivery-address-b2c [name="+i.fieldItem.FieldName+"]").attr("readonly","true"))})},updateMultipleDeliveryAddressDataSource:function(t,i){var r=this;n.cv.css.deliveryAddress.getDeliveryAddressesForCurrentUser({isThirdPartyDelivery:t}).done(function(t){var u=_.sortBy(t.data,function(n){return n.Name});r.set("multipleDeliveryAddressDataSource",u);r.setMultipleDeliveryAddressDataSource(u);n.isFunction(i)&&i(u)})}});return n.cv.css.bind(n.cv.css.eventnames.pickupWarehouseChanged,function(t){var i,u,f;if(h.options.isViewOnly){i=h.options.orderNoOverride===0?n.cv.css.localGetcurrentPickupAddress():n.cv.css.localGetSelectedOrderPickupAddress();i!=null&&c.set("pickupAddress",i);return}if(t.warehouse==""){c.clearDeliveryAddress({noThrottle:!1});u=c.getSoDelAddress();u.updatedAddressDetails.SoWhseCode="";c.updateDeliveryAddress(u,"");c.validateInputFields(!1);return}f=n.cv.css.storeLocator.getWarehouse({warehouseCode:t.warehouse});n.when(f).done(function(t){c.set("isInitialLoad",!0);c.set("soDelPhone",t.data[0].Phone);c.set("soDelCountry","");n.each(c.get("addressItemList"),function(n,i){switch(i.fieldItem.fieldName.toUpperCase()){case"SODELADDR1":c.set(i.fieldItem.fieldName,t.data[0].AddressLine1);i[i.fieldItem.fieldName]=t.data[0].AddressLine1;break;case"SODELADDR2":c.set(i.fieldItem.fieldName,t.data[0].AddressLine2);i[i.fieldItem.fieldName]=t.data[0].AddressLine2;break;case"SODELSUBURB":c.set(i.fieldItem.fieldName,t.data[0].Suburb);i[i.fieldItem.fieldName]=t.data[0].Suburb;break;case h.options.pickupSuburbFieldName.toUpperCase():i[i.fieldItem.fieldName]=t.data[0].Suburb;break;case"SODELSTATE":c.set(i.fieldItem.fieldName,t.data[0].State);i[i.fieldItem.fieldName]=t.data[0].State;break;case h.options.pickupStateFieldName.toUpperCase():i[i.fieldItem.fieldName]=t.data[0].State;break;case"SODELPOSTCODE":c.set(i.fieldItem.fieldName,t.data[0].Postcode);i[i.fieldItem.fieldName]=t.data[0].Postcode}});h.trigger(r);c.setLocalDeliveryAddress();c.validateInputFields(!1);c.set("isInitialLoad",!1)})}),n.cv.css.bind(n.cv.css.eventnames.pickupB2bChanged,function(n){h.options.isB2bPickupAndContactDetailsInUse&&n.isB2BPickupAndContactDetailsInUse&&l(!1)}),n.cv.css.bind(n.cv.css.eventnames.documentReady,function(){if(h.options.useGoogleAddressLookup){var t=n("div[data-role='deliveryaddress']").data("deliveryAddress");t!==undefined&&t.bind("addressRendered",function(){var t=this.options;t.isB2c&&n.cv.css.googleMapsApi.initAutocomplete("SoBillAddr2",t.rulesetFieldForSuburb.replace("Del","Bill"),t.rulesetFieldForState.replace("Del","Bill"),t.rulesetFieldForPostcode.replace("Del","Bill"),t.useGoogleAddressLookupDefaultBehaviour);n.cv.css.googleMapsApi.initAutocomplete("SoDelAddr2",t.rulesetFieldForSuburb,t.rulesetFieldForState,t.rulesetFieldForPostcode,t.useGoogleAddressLookupDefaultBehaviour)})}}),c.bind("change",function(t){c.get("isInitialLoad")||h.options.isViewOnly||(t.field=="multipleDeliveryAddressValue"&&c.multiAddressItemSelected(),t.field=="deliveryAddressValidationValue"&&h.options.autoSelectAddressValidationValue&&c.addressValidationItemSelected(),t.field=="orderReference"&&c.setCustomerReference(),t.field==="addressValidated"&&n.cv.css.trigger(n.cv.css.eventnames.addressValidationUpdated,{valid:c.get("addressValidated")}),t.field==="copyOrderConfirmation"&&c.setCopyOrderConfirmation(),(t.field=="addressItemList"||t.field=="billingAddressItemList")&&t.action=="itemchange"&&(h.options.multiUpdateThrottleTimeout!=0&&(c.get("isAddressBeingEdited")||c.get("isBillingAddressBeingEdited"))||c.processLinkedAddresses(t)),t.field=="linkDeliveryAndBilling"&&c.processLinkedAddresses(t),t.field=="deliveryAddressMode"&&c.deliveryAddressModeChanged(t),t.field!="contactFirstName"&&t.field!="contactLastName"&&t.field!="contactPhoneNumber"||c.get("clearingPickupContact")||(c.setPickupContact(),c.validateInputFields(!0)),t.field==="receivePromoEmails"&&c.saveDeliveryAddressToUser(),h.options.displayFirstNameAndLastName&&(t.field==="guestUserFirstNameField.GuestUserFirstName"||t.field==="guestUserLastNameField.GuestUserLastName")&&c.validateFirstAndLastName()&&c.setName(),(t.field==="manualAddressInputConfirmationChecked"||t.field==="manualDeliveryAddressInputConfirmationChecked"||t.field==="acceptTermsAndConditions")&&c.validateInputFields(!0));t.field!="addressItemList"&&t.field!="billingAddressItemList"||h.options.isViewOnl
18y||c.setLocalDeliveryAddress()}),n(function(){c.set("processing",!1)}),a(),c},_getDefaultViewTemplate:function(){return""},_getDefaultAddressViewTemplate:function(){var n=this;return"<script type='text/x-kendo-template' id='"+n.options.itemViewTemplate+"'><div class='fieldContainer'><label data-bind='html: prompt'><\/label><span data-bind='html: fieldTemplate'><\/span><\/div><\/script>"},_getDefaultMultipleAddressViewTemplate:function(){return""},_getDefaultAddressValidationViewTemplate:function(){return""}};n.cv.ui.widget(h)})(jQuery);
19(function(n){var l="dataBound",u="optionsRendered",t="paymentUnsuccessful",a="standard",f="eway",e="eway-v3",i="eway-dc",r="eway-rsp",v="commweb",o="ClientSidePost",y="CARDMASTERCARD",p="CARDVISA",s="CARDAMEX",h="CARDDINERSCLUB",b="CUSTOMCARD",c={name:"paymentOptions",options:{dataSource:[],autoBind:!0,paymentOptionTextField:"label",paymentOptionValueField:"value",inputErrorClass:"input-error",triggerMessages:!0,accountPayment:!1,isAccountPaymentPage:!1,isNonCurrentOrderPaymentPage:!1,isNonCurrentOrderPayment:!1,isGuestUser:!1,customerCurrency:"",orderPasswordRequired:!1,creditCardVerificationEnabled:!1,paymentOptionsVisible:!0,creditCard:!1,creditCardContent:!0,paypal:!1,bpay:!1,weWillCallYou:!1,eft:!1,eftBankReceiptNumberDisabled:!1,approval:!1,quote:!1,sendQuote:!1,thirdParty:!1,zeroDollar:!1,isFreightQuoteSelected:!1,isFreightQuoteInstructsVisisble:!1,afterPay:!1,afterPayMinAmount:0,afterPayMaxAmount:0,afterPayNumberOfInstallments:4,openPay:!1,openPayMinAmount:0,openPayMaxAmount:0,openPayNumberOfInstallments:4,openPayDepositPercent:10,payRight:!1,payRightLoanOverview:null,payRightMinAmount:0,payRightMaxAmount:0,braintree:!1,braintreePaymentDropinDivId:"",enableBraintreePayment:!1,braintreeClientToken:null,braintreeCustomerLevelClientToken:null,braintreeVaultManager:!1,braintreePreselectVaultedPaymentMethod:!1,braintreeShowDefaultPaymentMethodFirst:!1,braintreeEnableDataCollector:!1,braintreeKountFraudProtection:!1,braintreeThreeDSecure:!1,enableBraintreeCreditCard:!1,braintreeVaultCard:!1,braintreeAllowVaultCardOverride:!1,braintreeIsCardHolderNameRequired:!1,enableBraintreePayPal:!1,braintreeAllowVaultPayPal:!1,enableBraintreeGooglePay:!1,braintreeGooglePayMerchantId:null,enableBraintreeApplePay:!1,braintreeApplePayDisplayName:"",braintreeNonceError:"Please select a payment method",payId:!1,azupayCheckoutUrl:"",splitPayments:!1,splitPaymentsPopupUrl:"",thirdPartyInstallments:!1,cash:!1,terminal:!1,accountZeroDollarPayment:!1,customCardPayment:!1,customCardPaymentRequiresCcv:!1,includeInBrowserHistory:!0,showValidationMessagesNotPreventingCheckout:!1,autoSelectCardType:!0,userHasEwayToken:!1,customerHasEwayToken:!1,isForApproverPayingNow:!1,checkEwayTokensForFuturePayments:!1,ewayPublicApiKey:"",ewaySecureFieldStyles:"",ewayScriptUrl:"",currentSelectedOption:"accountPayment",paymentTypes:{unallocatedPayment:"UNALLOC_PAY",account:"ACCOUNT",card:"CARD",paypal:"PAYPAL",bpay:"BPAY",weWillCallYou:"CALL",eft:"EFT",zero:"ZERO",approval:"APPROVAL",approvalConfigRequired:"ApprovalConfigurationError",quote:"QUOTE",sendQuote:"SEND_QUOTE",giftCard:"GIFT",thirdParty:"3RDPARTY",afterPay:"AFTERPAY",thirdPartyInstallments:"_3RDPTYINS",openPay:"OP",payRight:"PAYRIGHT",braintree:"BRAINTREE",customCardPayment:"CUSTOMCARD",cash:"CASH",splitPayments:"SPLIT",terminal:"TERMINAL",accountZeroDollarPayment:"ACC_ZERO",payId:"PAYID"},paymentTypesOmitedinExports:["BPAY","AFTERPAY","_3RDPTYINS","OP","SPLIT"],paymentTypeLabels:{UNALLOC_PAY:"Unallocated Payment",ACCOUNT:"Account",CARD:"
19Credit Card",PAYPAL:"Paypal",BPAY:"BPay",WEWILLCALLYOU:"We Will Call You",EFT:"EFT",APPROVAL:"Approval",ApprovalConfigurationError:"Configure Approver",QUOTE:"Quote",SEND_QUOTE:"SendQuote",GIFTCARD:"gift",THIRDPARTY:"3rd Party",AFTERPAY:"AFTERPAY",OP:"OpenPay",PAYRIGHT:"PAYRIGHT",BRAINTREE:"Braintree",CASH:"Cash",SPLIT:"Split Payments",TERMINAL:"Terminal",ACC_ZERO:"Account Zero Dollar Payment",PAYID:"PayID"},paymentTypeValues:{UNALLOC_PAY:"unallocatedPayment",ACCOUNT:"accountPayment",CARD:"creditCard",PAYPAL:"paypal",BPAY:"bpay",CALL:"weWillCallYou",EFT:"eft",ZERO:"zero",APPROVAL:"approval",ApprovalConfigurationError:"",QUOTE:"quote",SEND_QUOTE:"sendQuote",GIFTCARD:"gift","3RDPARTY":"3rdParty",AFTERPAY:"AFTERPAY",_3RDPTYINS:"thirdPartyInstallments",OP:"OP",PAYRIGHT:"PAYRIGHT",BRAINTREE:"braintree",CUSTOMCARD:"customCardPayment",CASH:"cash",SPLIT:"split",TERMINAL:"terminal",ACC_ZERO:"accountZeroDollarPayment",PAYID:"payId"},cardPromptOverrides:{Visa:"",MasterCard:"Master Card",Amex:""},approvalPromptOverrides:{APPROVALPAYONACCOUNT:"",APPROVALPAYONCARD:""},cardExpiryMonthPrompts:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec",cardYearsToShow:11,amexNumberOfDigits:15,dinersNumberOfDigits:14,otherCardsNumberOfDigits:16,cardTypeRegExVisa:"^4",cardTypeRegExMasterCard:"^5[1-5]|^2(?:2(?:2[1-9]|[3-9]\\d)|[3-6]\\d\\d|7(?:[01]\\d|20))-?\\d{2}",cardTypeRegExDiners:"^3(?:0[0-5,9]|[689][0-9])[0-9]{11}$",cardTypeRegExAmex:"^3[47][0-9]{13}$",cardTypeRegExCustom:"",customCardPaymentOptionEnabled:!1,thirdPartyRequireSecurityCode:!1,sessionTimeOutRedirectUrl:"/login.aspx",paymentOkRedirectUrl:"/OnlinePaymentOK.aspx",quoteSubmittedRedirectUrl:"/CustomPage.aspx?CustomPage=QuoteSubmitted",quoteConfirmationPageRedirectUrl:"quote-confirmation",useQuoteConfirmationPage:!1,allowQuoteWhenApprovalRequired:!1,usingAddressValidation:!1,showNumericCardExpiry:!1,textButtonAccountPayment:"Submit Order",textButtonCreditCard:"Finalise Order",textButtonPaypal:"Process Order With PayPal",textButtonBpay:"Submit Order",textButtonWeWillCallYou:"Submit Order",textButtonEft:"Submit Order",textButtonDefault:"Submit Order",textButtonApproval:"Submit Order",textButton3rdParty:"Process Order",textButtonAfterPay:"Process Order",textButtonOpenPay:"Process Order",textButtonPayRight:"Process Order",textButtonSplitPayments:"Process Order",textButtonThirdPartyInstallments:"Process Order",textButtonCash:"Process Payment",textButtonTerminal:"Send Order To Terminal",textErrorGettingPaymentOptions:"There was an error retrieving your payment options, please try again later",textPleaseSelectPrompt:"Please Select...",textSelectMonth:"Select Month",textSelectYear:"Select Year",textErrorNoApprovalTypeSelected:"Please select an approval type",textErrorNoBankReceiptInput:"Please input your EFT Receipt",invalidCreditCardInformation:"Your credit card information is invalid",giftCardBalanceNotZeroMessage:"Your gift card balance is not zero",textErrorNotAcknowledgedFreightQuote:"Please acknowledge that you wish to receive a freight quote",textErrorNoWeWillCallYouNumber:"Please input the number that we should call you on",processPaymentUnsuccessfulMessage:"",processPaymentGeneralFailureMessage:"There was an error processing your payment, please try again later",approvalConfigRequiredMessage:"Please select an approval option.",selectApprovalTypePrompt:"Select Approval Type",signatureignatureRequiredMessage:"Please provide a signature",acknowledgeCreditCardVerificationErrorMessage:"Please acknowledge Credit Card payment terms and conditions.",textOrderPasswordMandatory:"Please enter the order password",orderPasswordErrorMessage:"Your order password is incorrect, please try again.",paymentProviderMode:a,thirdPartyInstallmentsPaymentProvider:"",isPreviouslyDeclinedInZipThirdPartyInstallments:!1,isZipThirdPartyInstallmentsAvailableForOrderTotal:!1,zipApiVersion:"1",displayingOrderInformation:!0,validateDeliveryAddressWidgetSelector:"[data-role='{0}']",orderNoOverride:0,nonCurrentOrderKey:"",viewTemplate:"",itemViewTemplate:null,isOnOrderAwaitingPaymentPage:!1,ipsiUseIpsi:!1,ipsiIframeSrc:"",ipsiSoOrderNo:0,enableShortPaymentInCashPayment:!0,negativeTenderedAmountMessage:"Amount tendered is less than required amount.",invalidTenderedAmountMessage:"Amount tendered is invali
19d.",invalidCashPaymentAmountMessage:"Amount tendered cannot be less than the required order total amount.",processingPaymentModal:"",enableDepositPaymentsForOrders:!1,isForPayBalance:!1,paymentMustNotBeZeroMessage:"Payment amount must be greater than 0.",allowCreditCardFeeOverride:!1,creditCardFeeMax:0,creditCardFeeMin:0,creditCardFeeOverrideMessage:"Credit Card Fee Override must be between your allowed parameters.",requireDepositOnPickup:!1,minimumDepositAmount:0,disableBuyNowPayLaterForExports:!1,defaultSystemCountry:"Australia",isLocalAddress:!0,ewaySharedPageModalEndpoints:"",isEwayResponsiveSharedPage:!1,isEwayDirectConnection:!1,enableKeepGiftCardsAppliedAfterFailedPayments:!1,showQuoteRegardlessOfFreight:!1,enableLiveQuoteConversion:!1,paymentTypesRequiringOrderDocument:"",orderDocumentValidationRequired:!1,orderDocumentMessage:"Document is required for the payment type {0}.",accertifyFraudEnabled:!1,accertifyFraudSiteId:"",accertifyFraudInAuthCollectorUrl:"",isRecalculateFreightForQuoteAcceptance:!1,payIdPaymentModal:"",isOrderPaymentLinksMode:!1,orderNumberForOrderPaymentLinksMode:0,orderTotalAmountForOrderPaymentLinksMode:0,orderSurchargeForOrderPaymentLinksMode:0,customerCodeForOrderPaymentLinksMode:"",emailAddressForOrderPaymentLinksMode:""},events:["dataBinding",l,u,t],viewModel:null,view:null,_viewAppended:!1,_itemViewAppended:!1,initialise:function(t){var i=this,r,u,f,e;n.cv.css.trigger(n.cv.css.eventnames.orderCompleteLoadRegistration,{name:i.name});r=n(t).children(":first");r.data("view")?i.view=r.html():(i._viewAppended=!0,i.options.itemViewTemplate||(i.options.itemViewTemplate=i.name+"-item-template-"+kendo.guid(),i._itemViewAppended=!0),u=i.options.viewTemplate?n("#"+i.options.viewTemplate).html():i._getDefaultViewTemplate(),f=kendo.template(u),i.view=f(i.options),i._itemViewAppended||(i.view+=i._getDefaultItemViewTemplate()),i.element.html(i.view));i.viewModel=i._getViewModel();e=i.element.children(":first");kendo.bind(e,i.viewModel)},initialised:function(){var n=this;n._initialiseCreditCardFeeOverrideOnAccountPaymentPage();n.wireupEvents();n.options.isOnOrderAwaitingPaymentPage||n.viewModel.init()},_initialiseCreditCardFeeOverrideOnAccountPaymentPage:function(){var t=this;t.options.isAccountPaymentPage&&t.options.allowCreditCardFeeOverride&&n("input.override-charge-percentage").each(function(){n(this).kendoNumericTextBox({change:n.proxy(t.viewModel.updateCreditCardChargeAmount,t.viewModel)})})},wireupEvents:function(){var i=this;n.cv.css.bind(n.cv.css.eventnames.setCreditCardType,n.proxy(i.viewModel.setCreditCardType,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.approvalConfirmed,n.proxy(i.viewModel.approvalConfirmed,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.approvalError,n.proxy(i.viewModel.approvalError,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.approvalNotSpecified,n.proxy(i.viewModel.approvalError,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.orderChanged,n.proxy(i.viewModel.orderUpdated,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.freightQuoteSelected,n.proxy(i.viewModel.freightQuoteSelected,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.freightQuoteInstructsVisisble,n.proxy(i.viewModel.freightQuoteInstructsVisisble,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.billingAddressChanged,n.proxy(i.viewModel.billingAddressChanged,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.addressBeingEdited,n.proxy(i.viewModel.addressBeingEdited,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.addressValidationUpdated,n.proxy(i.viewModel.addressValidationUpdated,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.processingGiftCard,n.proxy(i.viewModel.processingGiftCard,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.addressLoaded,n.proxy(i.viewModel.addressLoaded,i.viewModel));i.options.isAccountPaymentPage&&n.cv.css.bind(n.cv.css.eventnames.showingAccountPaymentSummary,n.proxy(i.viewModel.showingAccountPaymentSummary,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.continueToPayment,n.proxy(i.viewModel.continueToPaymentSelected,i.viewModel));i.options.isOnOrderAwaitingPaymentPage&&n.cv.css.bind(n.cv.css.eventnames.viewOrderAwaitingPayment,n.proxy(i.viewModel.orderUpdated,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.submitQuote,n.proxy(i.viewModel.submitQuoteWithFreightCheck,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.commWebUpdateSessionFromFormCompleted,n.proxy(i.viewModel.commWebUpdateSessionFromFormCompleted,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.setFreightFinished,n.proxy(i.viewModel.setFreightFinished,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.setFreightStart,n.proxy(i.viewModel.setFreightStart,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.terminalPaymentComplete,function(){i.viewModel._clearUnloadMethod()});n.cv.css.bind(n.cv.css.eventnames.giftCardsChanged,n.proxy(i.viewModel.giftCardsChanged,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.localOrderChanged,n.proxy(i.viewModel.localOrderChanged,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.fraudCheckDeviceTransactionIdPopulated,function(n){i.viewModel.set("fraudDeviceTransactionId",n)});n.cv.css.bind(n.cv.css.eventnames.loyaltyRewardsChanged,n.proxy(i.viewModel.loyaltyRewardsChanged,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.checkoutDepositPaymentAmountChanged,function(n){n&&(i.viewModel.depositAmount=n,i.viewModel.calculateChangeCashAmount())});n.cv.css.bind(n.cv.css.eventnames.orderDocumentValidated,n.proxy(i.viewModel.orderDocumentValidated,i.viewModel));i.options.requireDepositOnPickup&&n.cv.css.bind(n.cv.css.eventnames.deliveryAddressModeChanged,function(t){if(n.cv.util.hasValue(t,"message")!==!1){var r=i.viewModel,u=t.message,f=u==="Pickup"?i.options.minimumDepositAmount:0;r.set("depositAmount",f)}});i.trigger(l);i.bind(t,function(){i.viewModel.set("hasNewCustomerPayment",!1)});i.options.isOrderPaymentLinksMode===!1&&(i.options.isGuestUser?n.cv.css.bind(n.cv.css.eventnames.userStatusSet,function(n){var t=i.viewModel;
19t.set("showRememberCardDetailsSection",n);n===!1&&t.set("rememberPayment",!1)}):i.viewModel.set("showRememberCardDetailsSection",!0))},destroy:function(){var n=this;n.element.removeData(n.options.prefix+n.options.name);n._viewAppended&&n.element.empty()},submitOrder:function(){var n=this;n.viewModel.submitOrder()},ewayTokenCustomer:null,_getViewModel:function(){function d(n){return function(t){if(t.errors!=null)n(!1);else if(t.valueIsValid){n(!0);var i=document.getElementById("securefieldcode");i.value=t.secureFieldCode}else n(!1)}}function lt(i,r,u){n.fancybox({modal:!0,href:"#finalise-payment",closeBtn:!1,enableEscapeButton:!1,padding:0,autoSize:!0});var f={ewayResult:i,transactionId:r,accessCode:l.eWayAccessCode,isAccountPaymentPage:l.isAccountPaymentPage,isAccountPayment:c.options.isAccountPaymentPage,isNonCurrentOrderPayment:c.options.isNonCurrentOrderPayment,isOrderDeposit:c.options.isOrderDeposit,isForCreditCardVerification:l.get("isCreditCardVerificationRequired")};n.cv.css.paymentProcessor.processEwayPaymentResponse(f).done(function(i){var f=i.data,r,e;f.IsRedirect&&f.RedirectUrl!==""?n.cv.util.redirect(f.RedirectUrl,{},c.options.includeInBrowserHistory,!1):(l.setMessage(u,n.cv.css.messageTypes.error),r="",e=l.get("clearExistingMessages"),l.set("paymentUnsuccessful",!0),l.set("clearExistingMessages",!0),n.each(f.Messages,function(t,i){l.setMessage(i,n.cv.css.messageTypes.error);c.options.processPaymentUnsuccessfulMessage===""&&(r=r.length>0?r+","+i:i)}),c.trigger(t,{message:r.length>0?r:c.options.processPaymentUnsuccessfulMessage}),l.set("clearExistingMessages",e))}).always(function(){l.set("isEWayProcessing",!1);l.set("isProcessing",!1);n.fancybox.close()})}var c=this,et=function(t){c.dataSource=kendo.data.DataSource.create(c.options.dataSource);c.options.autoBind&&c.dataSource.fetch(function(){n.cv.css.trigger(n.cv.css.eventnames.orderCompleteLoadFinished,{name:c.name})});l.updateItemList(t)},ot={publicApiKey:c.options.ewayPublicApiKey,fieldDivId:"eway-secure-field-name",fieldType:"name",styles:c.options.ewaySecureFieldStyles},st={publicApiKey:c.options.ewayPublicApiKey,fieldDivId:"eway-secure-field-card",fieldType:"card",styles:c.options.ewaySecureFieldStyles},ht={publicApiKey:c.options.ewayPublicApiKey,fieldDivId:"eway-secure-field-expiry",fieldType:"expiry",styles:c.options.ewaySecureFieldStyles},ct={publicApiKey:c.options.ewayPublicApiKey,fieldDivId:"eway-secure-field-cvn",fieldType:"cvn",styles:c.options.ewaySecureFieldStyles},tt,it,rt,ut;c._eWaySecureFieldsLoaded=!1;tt=function(){c._eWaySecureFieldsLoaded!==!0&&(c._eWaySecureFieldsLoaded=!0,n.getScript(c.options.ewayScriptUrl,function(){eWAY.setupSecureField(ot,d(function(n){return l.set("nameIsValid",n)}));eWAY.setupSecureField(st,d(function(n){return l.set("cardIsValid",n)}));eWAY.setupSecureField(ht,d(function(n){return l.set("expiryIsValid",n)}));eWAY.setupSecureField(ct,d(function(n){return l.set("cvnIsValid",n)}))}))};it=function(n){var r=n.split("/"),t,i;r.length===2&&(t=r[0],t&&t.toString().length==1&&(t="0"+t.toString()),l.set("cardExpiryMonth",t),i=r[1],i&&i.toString().length==1&&(i="0"+i.toString()),l.set("cardExpiryYear",i))};rt=function(t){t===void 0&&(t=!0);var i=n.Deferred();t&&c.options.isAccountPaymentPage&&c.options.customerHasEwayToken&&c.options.isOrderPaymentLinksMode===!1?n.cv.css.orders.getEwayTokenCustomerCardDetails({_objectKey:"",isAccountPayment:c.options.isAccountPaymentPage,isCustomerPaymentToken:!0}).done(function(n){var t=n.data;
19l.set("cardNumber",t.Number);l.set("cardHolderName",t.Name);l.set("cardExpiry",t.Expiry);l.set("cardDetailsRemembered",!0);l.set("isCustomerPaymentToken",!0);l.set("cvnIsValid",!0);it(t.Expiry);i.resolve(!0)}):i.resolve(!1);i.done(function(t){var i,r;t===!1&&c.options.userHasEwayToken&&c.options.isOrderPaymentLinksMode===!1&&(i=void 0,c.options.isAccountPaymentPage?i="":(r=c.options.orderNoOverride===0?n.cv.css.localGetCurrentOrder(!1):n.cv.css.localGetSelectedOrder(c.options.orderNoOverride,"",!1),i=r._objectKey),n.cv.css.orders.getEwayTokenCustomerCardDetails({_objectKey:i,isAccountPayment:c.options.isAccountPaymentPage,isCustomerPaymentToken:!1}).done(function(n){var t=n.data;l.set("cardNumber",t.Number);l.set("cardHolderName",t.Name);l.set("cardExpiry",t.Expiry);l.set("cardDetailsRemembered",!0);l.set("isCustomerPaymentToken",!1);it(t.Expiry)}))})};c._paymentProviderDetailsLoaded=!1;ut=function(){if(c._paymentProviderDetailsLoaded!==!0){c._paymentProviderDetailsLoaded=!0;var r=n.cv.css.paymentProcessor.getPaymentProviderDetails(),t=[],i="";n.when(r).done(function(r){r.errorMessage&&r.errorMessage.length!=0||(n.each(r.data,function(n,i){i!=""?t.push({value:i,text:i}):t.push({value:i,text:c.options.textPleaseSelectPrompt})}),l.get("cardHolderTitle").length>0&&(i=l.get("cardHolderTitle")),l.set("cardHolderTitleDataSource",t),i.length>0&&l.get("cardDetailsRemembered")&&(l.set("cardDetailsRemembered",!1),l.set("cardHolderTitle",""),l.set("cardHolderTitle",i),l.set("cardDetailsRemembered",!0)))}).fail(function(){c._paymentProviderDetailsLoaded=!1})}};c._ewayAccessCodeLoaded=!1;var g=function(t,i){if((c._ewayAccessCodeLoaded!==!0||t!==!1)&&(n.cv.css.isBpd!==!0||c.options.userHasEwayToken!==!1||c.options.customerHasEwayToken!==!1||t!==!1)){t===!1&&(c._ewayAccessCodeLoaded=!0);var r=null,u=null;i=i||0;n.cssWebServicesAjax&&n.cssWebServicesAjax.eWayCreateAccessCode?u=n.cssWebServicesAjax.eWayCreateAccessCode:n.cv.css.paymentProcessor&&n.cv.css.paymentProcessor.ewayCreateAccessCode&&(u=n.cv.css.paymentProcessor.ewayCreateAccessCode);u({clearRememberedPaymentInfo:t,orderNoForAccessCode:i,isAccountPayment:c.options.isAccountPaymentPage}).done(function(i){var u=i.d||i.data;c.ewayTokenCustomer=null;u.IsError?(t===!1&&(c._ewayAccessCodeLoaded=!1),l.setMessage(u.Message,n.cv.css.messageTypes.error)):u&&u.Response&&u.Response.Customer&&u.Response.Customer.TokenCustomerID!=null?(r=u.Response.Customer,l.populateCardDetailsByCustomer(r),c.ewayTokenCustomer=r):l.clearCardDetails()}).fail(function(){t===!1&&(c._ewayAccessCodeLoaded=!1)})}},ft=function(){var t=[],i=!1;return c.dataSource?(n.each(c.dataSource.view(),function(n,r){r.Index=n;var u=r.Key;u.indexOf(c.options.paymentTypes.card)>-1&&(u=c.options.paymentTypes.card);i||(r[c.options.paymentOptionTextField]=c.options.paymentTypeLabels[u],r[c.options.paymentOptionValueField]=c.options.paymentTypeValues[u],t.push(r));u.indexOf(c.options.paymentTypes.card)>-1&&(i=!0)}),t):t},k="",nt=["CardAny","CardAmex","CardDinersClub","CardMasterCard","CardVisa","BPay","EFT","PayPal","3rdParty","Call","UserCall","ThirdPartyInstallments","Cash","Terminal"],at=function(){if(c.viewModel.set("cardChargeInfo",{CreditCardChargeAmount:0,CreditCardChargeAmountExTax:0,ChargePercent:-1}),k="",c.options.isAccountPaymentPage)n.cv.css.trigger(n.cv.css.eventnames.accountPaymentSurchargeChanged,{ChargeAmount:0,ChargeAmountExTax:0,ChargePercent:0});else c.viewModel.isGiftCardBalanceZero()==!1&&w("",-1,!0,!0)},w=function(t,i,r,u){var o,f,e;i===void 0&&(i=-1);r===void 0&&(r=!1);u===void 0&&(u=!1);o=c.options.isOrderPaymentLinksMode||c.options.allowCreditCardFeeOverride&&c.options.isAccountPaymentPage&&(c.options.isEwayResponsiveSharedPage||c.options.isEwayDirectConnection||c.viewModel.braintreePaymentSelected());(t||o||u)&&(r||o||t.toLowerCase()!=k.toLowerCase()||c.options.allowCreditCardFeeOverride&&i>=0)&&(k=t,f=nt.map(function(n){return n.toLowerCase()}).indexOf(t.toLowerCase()),e=n.Deferred(),c.viewModel.isAccountPaymentPage?f!==-1?e=n.cv.css.accounts.getAccountPaymentSurcharge({paymentMethod:nt[f],receiptNumber:c.viewModel.get("eftReceiptNumber"),paymentTotalAmount:c.viewModel.get("paymentAmount"),overrideChargePercentage:i}
19):e.resolve({data:{CreditCardChargeAmount:0,CreditCardChargeAmountExTax:0,ChargePercent:0},errorMessage:null}):c.options.isOrderPaymentLinksMode?f!==-1&&(e=n.cv.css.orderPaymentLinks.getOrderPaymentLinksSurcharge({paymentMethod:nt[f],customerCode:c.options.customerCodeForOrderPaymentLinksMode,paymentAmount:c.options.orderTotalAmountForOrderPaymentLinksMode})):e=f!=-1?n.cv.css.orders.applyPaymentSurcharge({paymentMethod:nt[f],orderNo:c.options.orderNoOverride}):n.cv.css.orders.removePaymentSurcharge(),e.done(function(t){var i,r;f!=-1?(i=c.viewModel.isAccountPaymentPage||c.options.isOrderPaymentLinksMode?t.data:t.data.result[0],i.OriginalChargePercent=i.ChargePercent,i.OverrideChargePercentage=i.ChargePercent,c.viewModel.set("cardChargeInfo",i),t.data.errorMessage!=null&&t.data.errorMessage!=""&&c.viewModel.setMessage(t.data.errorMessage,n.cv.css.messageTypes.error)):(c.viewModel.set("cardChargeInfo",null),t.errorMessage!=null&&t.errorMessage!=""&&c.viewModel.setMessage(t.errorMessage,n.cv.css.messageTypes.error));c.viewModel.isAccountPaymentPage||c.options.isOrderPaymentLinksMode?(r=f!==-1?{ChargeAmount:t.data.CreditCardChargeAmount,ChargeAmountExTax:t.data.CreditCardChargeAmountExTax,ChargePercent:t.data.ChargePercent}:{ChargeAmount:0,ChargeAmountExTax:0,ChargePercent:0},c.viewModel.isAccountPaymentPage?n.cv.css.trigger(n.cv.css.eventnames.accountPaymentSurchargeChanged,r):n.cv.css.trigger(n.cv.css.eventnames.setSurchargeForOrderPaymentLinksMode,r.ChargeAmount)):n.cv.css.trigger(n.cv.css.eventnames.orderChanged,{orderChangedBySurcharge:!0})}))},vt=c.options.enableBraintreePayment?n.cv.css.braintree.getBraintreeViewModel():null,l=kendo.observable(n.extend(vt,{paymentSuccessful:!1,paymentUnsuccessful:!1,isProcessing:!1,isAccountPaymentPage:c.options.isAccountPaymentPage,paymentOptionsVisible:c.options.paymentOptionsVisible,unallocatedPaymentAmount:0,bPayRefNum:"",nonCurrentOrderKey:c.options.nonCurrentOrderKey,isUnallocatedPayment:function(){return l.get("unallocatedPaymentAmount")>0},message:"",currentSelectedOption:c.options.currentSelectedOption,isFreightQuoteInstructsVisisble:c.options.isFreightQuoteInstructsVisisble,itemList:ft(),dataSource:c.options.dataSource,approvalType:"",creditCardType:"",cardHolderTitle:"",cardHolderTitleDataSource:[],secureFieldCode:"",cardHolderName:"",cardChargeInfo:{},cardNumber1:"",cardNumber2:"",cardNumber3:"",cardNumber4:"",cardNumber:"",customCardNumber:"",cardExpiryMonth:"",cardExpiryYear:"",cardExpiry:"",cardSecurityCode:"",orderTotalAmount:0,isCreditCardVerificationRequired:!1,acknowledgeCreditCardVerification:!0,afterPayOrderTotalInRange:!1,afterPayOrderTotalUnderMinAmount:!1,afterPayOrderTotalOverMaxAmount:!1,afterPayInstalmentAmount:"?",openPayOrderTotalInRange:!1,openPayOrderTotalUnderMinAmount:!1,openPayOrderTotalOverMaxAmount:!1,openPayInstallmentAmount:0,openPayDepositAmount:0,payRightOrderTotalInRange:!1,payRightOrderTotalUnderMinAmount:!1,payRightOrderTotalOverMaxAmount:!1,payRightLoanOverview:null,payRightLoanValid:!1,paymentAmount:0,cashTenderedAmount:"",cashChangeAmount:0,cashChangeAmountMessage:"",isCashChangeAmountValid:!1,orderPassword:"",orderPasswordHasError:!1,orderPasswordErrorMsg:"",ipsiIsProcessing:!1,ipsiIframeSrc:c.options.ipsiIframeSrc,showEwayTokensForFuturePayments:!1,ewayPreviousCardNumber:"",ewayPreviousCardExpiryDate:"",creditClaims:[],depositAmount:0,countryName:"Australia",countryCode:"AU",showPaymentProcessingOverlay:function(){n.cv.util.isMaf()==!1&&n.fancybox({modal:!0,href:"#payment-processing-overlay",closeBtn:!1,enableEscapeButton:!1,padding:0,autoSize:!0})},hidePaymentProcessingOverlay:function(){this.set("isProcessing",!1);n.cv.util.isMaf()==!1?n.fancybox.close():n.mobile.hidePageLoadingMsg()},showCreditCardChargeOverride:function(){var i=this,t=i.get("cardChargeInfo");return t&&n.cv.util.hasValue(t.ChargePercent)?c.options.isAccountPaymentPage==!1?t.ChargePercent>0:c.options.isEwayResponsiveSharedPage&&c.options.allowCreditCardFeeOverride===!1&&t.ChargePercent===0?!1:c.options.allowCreditCardFeeOverride?t.ChargePercent!==-1:t.ChargePercent>0:!1},showCreditCardChargePercent:function(){var t=this,n=t.get("cardChargeInfo");return n&&n.ChargePercent>0},nameIsValid:!1,cardIsValid:!1,expiryIsValid:!1,cvnIsValid:!1,setFreightFinished:function(){this.initialisePaymentOptions();this.set("isProcessing",!1)},setFreightStart:function(){this.set("isProcessing",!0)},updateCreditCardChargeAmount:function(t,i){i===void 0&&(i=null);t&&t.preventDefault();var r=this,u=i?i:r.get("cardChargeInfo");r.clearMessage();u.OverrideChargePercentage<c.options.creditCardFeeMin||u.OverrideChargePercentage>c.options.creditCardFeeMax?r.setMessage(c.options.creditCardFeeOverrideMessage,n.cv.css.messageTypes.error):w(r.get("creditCardType"),u.OverrideChargePercentage)}
19,customerTokenPaymentAccepted:!1,populateCardDetailsByCustomer:function(n){n&&l.setCardDetails(!1,!0,n.Title,n.CardName,n.CardNumber.substring(0,4),n.CardNumber.substring(4,8),n.CardNumber.substring(8,12),n.CardNumber.substring(12,16),n.CardExpiryMonth,n.CardExpiryYear,"",n.CardNumber,"")},acceptPaymentWithCustomerPaymentToken:function(t){var u=this,f=!1,e;n.cv.util.hasValue(t)&&t?c.ewayTokenCustomer!=null?(f=!0,u.populateCardDetailsByCustomer(c.ewayTokenCustomer)):(c.options.paymentProviderMode==i&&u.get("isCustomerPaymentToken")===!0?f=!0:u.clearCardDetails(),u.setMessage("Your card is not valid anymore.",n.cv.css.messageTypes.warning)):(n.cv.util.hasValue(t)&&(e=u.get("cardChargeInfo"),u.clearCardDetails(),(c.options.isEwayResponsiveSharedPage||c.options.isEwayDirectConnection)&&this.get("isAccountPaymentPage")&&(u.set("cardChargeInfo",e),u.set("creditCardType","CardAny"),u.updateCreditCardChargeAmount(null,e))),c.options.paymentProviderMode==r&&u.set("creditCardContent",!1));u.set("customerTokenPaymentAccepted",f);n.cv.util.hasValue(t)===!1&&c.options.userHasEwayToken&&rt(!1)},dontUseCustomerPaymentToken:function(){this.acceptPaymentWithCustomerPaymentToken(!1)},showingAccountPaymentSummary:function(n){var t=this;this.acceptPaymentWithCustomerPaymentToken(n.customerTokenPaymentAccepted);this.set("isAccountPaymentPage",n.IsAccountPaymentPage);this.set("paymentOptionsVisible",n.IsPaymentOptionsVisible);this.set("unallocatedPaymentAmount",n.UnallocatedPaymentAmount);this.set("eftReceiptNumber",n.ReceiptNumber);this.set("bPayRefNum",n.BPayRefNum);this.set("paymentAmount",n.TotalPaymentAmount);this.set("creditClaims",n.CreditClaims);n.IsUnallocatedPayment&&(this.set("accountPayment",!1),this.set("creditCard",!1),this.set("paypal",!1),this.set("bpay",!1),this.set("weWillCallYou",!1),this.set("eft",!1),this.set("approval",!1),this.set("quote",!1),this.set("thirdParty",!1),this.selectUnallocatedPayment());c.options.ipsiUseIpsi&&this._updateIpsiIframeSrc();this.get("customerTokenPaymentAccepted")&&w(this.get("creditCardType"),-1,!0);t.braintreePaymentSelected()?(k="",t.setCreditCardType()):t._isAllowCreditCardFeeOverrideForEwayInAccountPaymentPage()&&t._setupCreditCardFeeOverrideForEwayInAccountPaymentPage()},_setupCreditCardFeeOverrideForEwayInAccountPaymentPage:function(){var n=this;n.set("creditCardType","CardAny");n.updateCreditCardChargeAmount()},_isAllowCreditCardFeeOverrideForEwayInAccountPaymentPage:function(){return c.options.allowCreditCardFeeOverride&&c.options.isAccountPaymentPage&&(c.options.isEwayResponsiveSharedPage||c.options.isEwayDirectConnection)},_updateIpsiIframeSrc:function(){var t=this,i;t.set("ipsiIsProcessing",!0);t.set("ipsiIframeSrc","");i={soOrderNo:t.get("ipsiSoOrderNo"),paymentAmount:t.get("paymentAmount"),receiptNumber:t.get("eftReceiptNumber"),isPaymentByApprover:c.options.isForApproverPayingNow};n.cv.css.orders.getIpsiIframeSrc(i).done(function(n){t.set("ipsiIframeSrc",n.data)}).always(function(){t.set("ipsiIsProcessing",!1)})},rememberPayment:!1,cardDetailsRemembered:!1,isCustomerPaymentToken:!1,isEWayProcessing:!1,eWayFieldsEnabled:function(){var n=!0;return this.get("cardDetailsRemembered")&&(n=!1),this.get("isEWayProcessing")&&(n=!0),this.get("isDisabled")&&(n=!1),n},eWayFieldsReadOnly:function(){var n=!1;return this.get("isEWayProcessing")&&(n=!0),n},eWayAccessCode:"",eWayCreateAccessCode:g,totalPaymentBalanceAfterEnteredGiftCards:-1,eftReceiptNumber:"",addressBeingEdited:function(){c.options.usingAddressValidation&&this.set("isDisabled",!0)},addressLoaded:function(t){t&&t.result&&n.isArray(t.result)&&t.result.length>0&&this.set("countryName",t.result[0].SoBillCountry);this.ensureCountryCodeSet(!0)},countryCodeCache:{},getCountryCode:function(t){var r=this,i=n.Deferred();return this.countryCodeCache[t]?i.resolve(this.countryCodeCache[t]):n.ajax({url:"https://restcountries.eu/rest/v2/name/"+t}).done(function(n){var u=n&&n[0]&&n[0].alpha2Code?n[0].alpha2Code:"AU";r.countryCodeCache[t]=u;i.resolve(u)}),i},ensureCountryCodeSet:function(t){var r=this,i;if(t===void 0&&(t=!1),i=n.Deferred(),t||n.cv.util.hasContent(this.get("countryCode"))===!1)switch(this.get("countryName").toLowerCase()){case"australia":this.set("countryCode","AU");i.resolve();break;case"new zealand":this.set("countryCode","NZ");i.resolve();break;default:this.getCountryCode(this.get("countryName")).done(function(n){r.set("countryCode",n);i.resolve()})}else i.resolve();return i},billingAddressChanged:function(t){var i=c.viewModel,u=n.cv.util.hasValue(t,"changedAddressField")&&t.changedAddressField.toLowerCase()==="sobillcountry",r;
19u&&(i.set("countryName",t.updatedAddressDetails.SoBillCountry),this.ensureCountryCodeSet(!0),r=n.cv.util.hasValue(t,"updatedAddressDetails.SoBillCountry")&&t.updatedAddressDetails.SoBillCountry.toLowerCase()!==c.options.defaultSystemCountry.toLowerCase(),i.set("isLocalAddress",!r),this.initialisePaymentOptions())},loyaltyRewardsChanged:function(){this.initialisePaymentOptions()},isDisabled:c.options.usingAddressValidation,addressValidationUpdated:function(n){this.set("isDisabled",!n.valid)},cashRoundingAmount:"",isGiftCardBalanceZero:function(){var n=c.viewModel,i=n.get("isAccountPaymentPage"),t;return i?(t=n.get("paymentAmount"),t===0):this.get("totalPaymentBalanceAfterEnteredGiftCards")===0},isQuoteAcceptanceAndNoFreightChargeLine:c.options.isRecalculateFreightForQuoteAcceptance,clearExistingMessages:!0,accountPayment:c.options.accountPayment,creditCard:c.options.creditCard,creditCardContent:function(){return c.options.paymentProviderMode===r&&!c.options.customerHasEwayToken?!1:!0},paypal:c.options.paypal,bpay:c.options.bpay,weWillCallYou:c.options.weWillCallYou,eft:c.options.eft,approval:c.options.approval,quote:c.options.quote,sendQuote:c.options.sendQuote,quoteEmailAddress:"",quoteExpireDays:0,thirdParty:c.options.thirdParty,afterPay:c.options.afterPay,openPay:c.options.openPay,payRight:c.options.payRight,splitPayments:c.options.splitPayments,thirdPartyInstallments:c.options.thirdPartyInstallments,cash:c.options.cash,terminal:c.options.terminal,approvalConfigRequired:!1,approvalRequired:!1,paymentOptions:{}
19,showIpsiStoredCard:!1,validationPreventingCheckout:!1,hasOptions:!1,hasMultipleOptions:function(){var n=0;return this.get("accountPayment")&&n++,this.get("creditCard")&&n++,this.get("paypal")&&n++,this.get("bpay")&&n++,this.get("weWillCallYou")&&n++,this.get("eft")&&n++,this.get("approval")&&n++,this.get("quote")&&n++,this.get("sendQuote")&&n++,this.get("thirdParty")&&n++,this.get("cash")&&n++,this.get("terminal")&&n++,n>1},hasCardHolderTitles:function(){return this.get("cardHolderTitleDataSource").length>0},accountPaymentSelected:function(){return this.get("currentSelectedOption")==c.options.paymentTypeValues[c.options.paymentTypes.account]},creditCardSelected:function(){return this.get("currentSelectedOption")==c.options.paymentTypeValues[c.options.paymentTypes.card]},paypalSelected:function(){return this.get("currentSelectedOption")==c.options.paymentTypeValues[c.options.paymentTypes.paypal]},bpaySelected:function(){return this.get("currentSelectedOption")==c.options.paymentTypeValues[c.options.paymentTypes.bpay]},weWillCallYouSelected:function(){return this.get("currentSelectedOption")==c.options.paymentTypeValues[c.options.paymentTypes.weWillCallYou]},eftSelected:function(){return this.get("currentSelectedOption")==c.options.paymentTypeValues[c.options.paymentTypes.eft]},approvalSelected:function(){return this.get("currentSelectedOption")==c.options.paymentTypeValues[c.options.paymentTypes.approval]},thirdPartySelected:function(){return this.get("currentSelectedOption")==c.options.paymentTypeValues[c.options.paymentTypes.thirdParty]},afterPaySelected:function(){return this.get("currentSelectedOption")==c.options.paymentTypeValues[c.options.paymentTypes.afterPay]},openPaySelected:function(){return this.get("currentSelectedOption")==c.options.paymentTypeValues[c.options.paymentTypes.openPay]},payRightSelected:function(){return this.get("currentSelectedOption")==c.options.paymentTypeValues[c.options.paymentTypes.payRight]},splitPaymentsSelected:function(){return this.get("currentSelectedOption")==c.options.paymentTypeValues[c.options.paymentTypes.splitPayments]},thirdPartyInstallmentsSelected:function(){return this.get("currentSelectedOption")==c.options.paymentTypeValues[c.options.paymentTypes.thirdPartyInstallments]},cashSelected:function(){return this.get("currentSelectedOption")==c.options.paymentTypeValues[c.options.paymentTypes.cash]},customCardPaymentSelected:function(){return this.get("currentSelectedOption")===c.options.paymentTypeValues[c.options.paymentTypes.customCardPayment]},terminalSelected:function(){return this.get("currentSelectedOption")==c.options.paymentTypeValues[c.options.paymentTypes.terminal]},accountZeroDollarPaymentSelected:function(){return this.get("currentSelectedOption")==c.options.paymentTypeValues[c.options.paymentTypes.accountZeroDollarPayment]},creditCardTypeValid:function(){return this.get("creditCardType")!=""},cardHolderNameValid:function(){return this.get("cardHolderName")!=""},cardNumberValid:function(){var n=this.cardNumberFull().toString();return n.length==this.creditCardDigitsRequired()},cardExpiryMonthValid:function(){return this.get("cardExpiryMonth")!=""},cardExpiryYearValid:function(){return this.get("cardExpiryYear")!=""},cardSecurityCodeValid:function(){var n=this;return n.get("cardSecurityCode")!==""||n.customCardPaymentSelected()&&c.options.customCardPaymentRequiresCcv===!1||n.customerTokenPaymentAccepted},setCardDetails:function(n,t,i,r,u,f,e,o,s,h,l,a,v){var y,p;this.set("rememberPayment",n);this.set("cardDetailsRemembered",t);this.set("cardHolderTitle",i);this.set("cardHolderName",r);this.set("cardNumber1",u);this.set("cardNumber2",f);this.set("cardNumber3",e);this.set("cardNumber4",o);y=s;y&&y.toString().length==1&&(y="0"+y.toString());this.set("cardExpiryMonth",y);p=h;p&&p.toString().length==1&&(p="0"+p.toString());this.set("cardExpiryYear",p);this.set("cardExpiry",y+"/"+p);this.set("cardSecurityCode",l);this.set("cardNumber",a);this.set("creditCardType",v);t===!0&&this.setCreditCardType();this.set("paymentSuccessful",!1);this.set("paymentUnsuccessful",!1);c.signal("refreshWidgets")}
19,clearCardDetails:function(){this.setCardDetails(!1,!1,"","","","","","","","","","","")},fraudDeviceTransactionId:"",hasGiftCards:!1,orderLineCount:0,orderUpdated:function(t){var u=this,l=n.cv.util.hasValue(t,"orderNoOverride"),r,o,f,s,a,y,p,b;if(t&&l&&(c.options.orderNoOverride=t.orderNoOverride,c.options.isOnOrderAwaitingPaymentPage=t.isOnOrderAwaitingPaymentPage,t.isForPayBalance&&n.cv.util.hasValue(t.nonCurrentOrderKey)&&(c.options.isForPayBalance=t.isForPayBalance,c.options.nonCurrentOrderKey=t.nonCurrentOrderKey,this.set("nonCurrentOrderKey",t.nonCurrentOrderKey),c.options.checkEwayTokensForFuturePayments&&(c.options.paymentProviderMode==i?n.cv.css.orders.getEwayTokenCustomerCardDetails({_objectKey:t.nonCurrentOrderKey}).done(function(t){var i=t.data;u.set("showEwayTokensForFuturePayments",!n.cv.util.isNullOrWhitespace(i.Number));u.set("ewayPreviousCardNumber",i.Number);u.set("ewayPreviousCardExpiryDate",i.Expiry)}):n.cv.css.orders.getEwayTokensForFuturePaymentsDetails({_objectKey:t.nonCurrentOrderKey}).done(function(n){var t=n.data;u.set("showEwayTokensForFuturePayments",t.IsEwayPreviousDetailsSaved);u.set("ewayPreviousCardNumber",t.EwayPreviousCardNumber);u.set("ewayPreviousCardExpiryDate",t.EwayPreviousCardExpiryDate)}))),c.viewModel.init(l),c.options.ipsiUseIpsi&&(this.set("ipsiSoOrderNo",t.orderNoOverride),this.set("paymentAmount",t.orderTotal),this._updateIpsiIframeSrc())),c.options.isRecalculateFreightForQuoteAcceptance&&n.cv.util.hasValue(t,"FreightChargeLine")&&this.set("isQuoteAcceptanceAndNoFreightChargeLine",!1),r=this.getCurrentOrder(c.options.displayingOrderInformation),r!=null&&r.TotalPaymentBalanceAfterEnteredGiftCards!=undefined?(this.set("totalPaymentBalanceAfterEnteredGiftCards",r.TotalPaymentBalanceAfterEnteredGiftCards),o=0,n.each(r.GiftCards||[],function(){o++}),this.set("hasGiftCards",o>0)):this.set("totalPaymentBalanceAfterEnteredGiftCards",-1),f=r.OrderTotalAmount,this.get("totalPaymentBalanceAfterEnteredGiftCards")!==-1&&(f=r.TotalPaymentBalanceAfterEnteredGiftCards),r!=null&&c.options.afterPay&&this.updateOrderTotalRangeInfo(f,c.options.afterPayMinAmount,c.options.afterPayMaxAmount,"afterPayOrderTotalUnderMinAmount","afterPayOrderTotalOverMaxAmount","afterPayOrderTotalInRange"),r!=null&&c.options.openPay&&this.updateOrderTotalRangeInfo(f,c.options.openPayMinAmount,c.options.openPayMaxAmount,"openPayOrderTotalUnderMinAmount","openPayOrderTotalOverMaxAmount","openPayOrderTotalInRange"),r!=null&&c.options.payRight&&this.updateOrderTotalRangeInfo(f,c.options.payRightMinAmount,c.options.payRightMaxAmount,"payRightOrderTotalUnderMinAmount","payRightOrderTotalOverMaxAmount","payRightOrderTotalInRange"),r!==null&&(s=c.options.orderNoOverride===0?n.cv.css.localGetCurrentOrderLines():n.cv.css.localGetSelectedOrderLines(),a=n.isArray(s)?s.length:0,this.set("orderLineCount",a)),t&&(!t||t.orderChangedBySurcharge==undefined||t.orderChangedBySurcharge)||(k="",this.creditCardSelected()||this.braintreePaymentSelected()?w(this.get("creditCardType")):w(this.get("currentSelectedOption"))),c.options.creditCardVerificationEnabled&&f!=this.get("orderTotalAmount")&&(this.set("orderTotalAmount",f),n.cv.css.orders.isCreditCardVerificationRequiredForAmount({amount:f}).done(function(n){var t=n.data==="True"?!0:!1;u.set("isCreditCardVerificationRequired",t);u.set("acknowledgeCreditCardVerification",!t)})),c.options.afterPay){var e=this,d=r.TotalPaymentBalanceAfterEnteredGiftCards==-1?r.OrderTotalAmount:r.TotalPaymentBalanceAfterEnteredGiftCards,g=n.cv.util.calculateAfterpayInstalment(d,c.options.afterPayNumberOfInstallments);e.set("afterPayInstalmentAmount",kendo.toString(g,"c"))}if(c.options.openPay){var e=this,h=c.options.openPayDepositPercent,v=r.TotalPaymentBalanceAfterEnteredGiftCards==-1?r.OrderTotalAmount:r.TotalPaymentBalanceAfterEnteredGiftCards;isNaN(c.options.openPayNumberOfInstallments)||c.options.openPayNumberOfInstallments===0||isNaN(h)?(e.set("openPayDepositAmount",kendo.toString(0,"c")),e.set("openPayInstallmentAmount",kendo.toString(0,"c"))):(y=n.cv.util.calculateOpenPayInstallments(v,c.options.openPayNumberOfInstallments,h,!0),e.set("openPayDepositAmount",kendo.toString(y,"c")),p=n.cv.util.calculateOpenPayInstallments(v,c.options.openPayNumberOfInstallments,h,!1),e.set("openPayInstallmentAmount",kendo.toString(p,"c")))}b=this.get("currentSelectedOption");b===c.options.paymentTypeValues[c.options.paymentTypes.cash]&&this.calculateChangeCashAmount();this.updateBraintreeFinalPaymentOption()},updateOrderTotalRangeInfo:function(n,t,i,r,u,f){var e=!1,o=!1;t>0&&n<t&&(e=!0);i>0&&n>i&&(o=!0);this.set(r,e);this.set(u,o);this.set(f,o==!1&&e==!1)},getCurrentOrder:function(t){return c.options.orderNoOverride===0?n.cv.css.localGetCurrentOrder(t):n.cv.css.localGetSelectedOrder(c.options.orderNoOverride,"",t)},submitButtonText:function(){switch(this.get("currentSelectedOption")){case c.options.paymentTypeValues[c.options.paymentTypes.account]:return c.options.textButtonAccountPayment;case c.options.paymentTypeValues[c.options.paymentTypes.card]:return c.options.textButtonCreditCard;case c.options.paymentTypeValues[c.options.paymentTypes.paypal]:return c.options.textButtonPaypal;case c.options.paymentTypeValues[c.options.paymentTypes.bpay]:return c.options.textButtonBpay;case c.options.paymentTypeValues[c.options.paymentTypes.weWillCallYou]:return c.options.textButtonWeWillCallYou;case c.options.paymentTypeValues[c.options.paymentTypes.eft]:return c.options.textButtonEft;case c.options.paymentTypeValues[c.options.paymentTypes.approval]:return c.options.textButtonApproval;case c.options.paymentTypeValues[c.options.paymentTypes.thirdParty]:return c.options.textButton3rdParty;case c.options.paymentTypeValues[c.options.paymentTypes.afterPay]:return c.options.textButtonAfterPay;case c.options.paymentTypeValues[c.options.paymentTypes.openPay]:return c.options.textButtonOpenPay;case c.options.paymentTypeValues[c.options.paymentTypes.payRight]:return c.options.textButtonPayRight;case c.options.paymentTypeValues[c.options.paymentTypes.splitPayments]:return c.options.textButtonSplitPayments;case c.options.paymentTypeValues[c.options.paymentTypes.thirdPartyInstallments]:return c.options.textButtonThirdPartyInstallments;case c.options.paymentTypeValues[c.options.paymentTypes.cash]:return c.options.textButtonCash;case c.options.paymentTypeValues[c.options.paymentTypes.terminal]:return c.options.textButtonTerminal;default:return c.options.textButtonDefault}},redirectToUrl:function(t,i,r,u){n.cv.ajax.settings.timeoutRedirectUrl==""?n.cv.util.redirect(t,i,!r,u):n.cv.util.redirect(n.cv.ajax.settings.timeoutRedirectUrl,i,!r,u)},redirect:function(t,i,r,u){n.cv.util.redirect(t,i,!r,u)},init:function(n){return n===void 0&&(n=!1),this.initialisePaymentOptions(n)},initialisePaymentOptions:function(t){var u,s,o;return t===void 0&&(t=!1),u=this,u.set("accountPayment",!1),u.set("paypal",!1),u.set("bpay",!1),u.set("weW
19illCallYou",!1),u.set("eft",!1),u.set("quote",!1),u.set("thirdParty",!1),u.set("afterPay",!1),u.set("openPay",!1),u.set("payRight",!1),u.set("braintree",!1),u.set("splitPayments",!1),u.set("thirdPartyInstallments",!1),u.set("cash",!1),u.set("creditCard",!1),u.set("zeroDollar",!1),u.set("customCardPayment",!1),u.set("terminal",!1),u.set("accountZeroDollarPayment",!1),u.set("sendQuote",!1),u.set("payId",!1),(u.get("isLocalAddress")===undefined||u.get("isLocalAddress")===null)&&u.set("isLocalAddress",c.options.isLocalAddress),o={returnFullResponse:!0},s=c.options.isOrderPaymentLinksMode?n.cv.css.paymentProcessor.getPaymentOptionsForOrderPaymentLinksMode():c.options.isAccountPaymentPage?n.cv.css.paymentProcessor.getPaymentOptionsForAccountPayment(o):c.options.orderNoOverride===0?n.cv.css.paymentProcessor.getPaymentOptionsForCurrentOrder(o):n.cv.css.paymentProcessor.getPaymentOptionsForSelectedOrder(n.extend({orderNo:c.options.orderNoOverride,isForApproverPayingNow:c.options.isForApproverPayingNow},o)),s.done(function(o){var a=o.data.result,h=o.data.meta,l,w;if(u.get("isLocalAddress")===!1&&c.options.disableBuyNowPayLaterForExports&&(a=_.filter(a,function(n){return!_.contains(c.options.paymentTypesOmitedinExports,n.Key)})),u.set("showIpsiStoredCard",!1),(o.errorMessage===null||o.errorMessage.length==0)&&(h&&(u.set("ipsiMeta",h),u.set("showIpsiStoredCard",h.Status==="Forced"&&h.CreditCardNumber&&h.CreditCardNumber.length>0),u.set("obfuscatedCreditCardNumber",h.CreditCardNumber?h.CreditCardNumber:null),u.set("ipsiCreditCardType",h.CreditCardType?h.CreditCardType:null)),u.set("paymentOptions",a),a.length>0)){if(l=n.grep(u.get("paymentOptions"),function(n){return n.Key.indexOf(c.options.paymentTypes.approval)>-1||n.Key==c.options.paymentTypes.approvalConfigRequired}),l.length>0)u.set("approval",!0),u.selectApprovalPayment(),l[0].Key==c.options.paymentTypes.approvalConfigRequired?(u.set("approvalConfigRequired",!0),u.set("approvalRequired",!0),u.set("approvalConfigRequiredMessage",l[0].Value)):l.length==1&&u.set("approvalType",l[0].Key),w=n.grep(u.get("paymentOptions"),function(n){return n.Key.indexOf(c.options.paymentTypes.quote)>-1}),c.options.allowQuoteWhenApprovalRequired&&w.length>0&&u.set("quote",!0),c.options.enableLiveQuoteConversion&&u.getCurrentOrder().SoOrderStatus!=="02"&&u.set("quote",!0);else{u.set("approval",!1);var d=n.grep(u.get("paymentOptions"),function(n){return n.Key.indexOf(c.options.paymentTypes.card)>-1}),nt=n.grep(u.get("paymentOptions"),function(n){return n.Key.indexOf(c.options.paymentTypes.card)==-1}),v=d.length>0?1:0;v&&(c.options.paymentProviderMode===f||c.options.paymentProviderMode===e||c.options.paymentProviderMode===r)?(ut(),g(!1,0)):v&&c.options.paymentProviderMode==i&&(ut(),rt(),tt());u.set("quote",!1);var s=v+nt.length==1,y=!1,b=!1,p=u.get("isFreightQuoteInstructsVisisble"),k=n.cv.css.localGetCurrentOrder(),it=u.get("isAccountPaymentPage")||c.options.isOrderPaymentLinksMode?!1:n.cv.util.hasValue(k)&&k.DeliveryMethodClickAndCollect==="Delivery";n.each(a,function(t,i){if(p&&it&&i.Data&&i.Data.FreightRelated)i.Key===c.options.paymentTypes.quote&&(u.set("quote",p),s&&u.selectQuote());else switch(i.Key){case c.options.paymentTypes.account:u.set("accountPayment",!0);s&&u.selectAccountPayment();break;case c.options.paymentTypes.paypal:u.set("paypal",!0);s&&u.selectPaypal();break;case c.options.paymentTypes.bpay:u.set("bpay",!0);s&&u.selectBpay();break;case c.options.paymentTypes.weWillCallYou:u.set("weWillCallYou",!0);s&&u.selectWeWillCallYou();break;case c.options.paymentTypes.eft:u.set("eft",!0);u.set("eftReceiptNumber",i.ReceiptNumber);s&&u.selectEft();break;case c.options.paymentTypes.quote:u.set("quote",p&&i.Data&&i.Data.FreightRelated||c.options.showQuoteRegardlessOfFreight&&!(i.Data&&i.Data.FreightRelated));s&&u.selectQuote();break;case c.options.paymentTypes.sendQuote:u.set("sendQuote",!0);u.set("quoteEmailAddress",i.Data.EmailAddress);u.set("quoteExpireDays",i.Data.ExpireDays);s&&u.selectSendQuote();break;case c.options.paymentTypes.thirdParty:u.set("thirdParty",!0);s&&u.select3rdParty();break;case c.options.paymentTypes.afterPay:u.set("afterPay",!0);s&&u.selectAfterPay();break;case c.options.paymentTypes.openPay:u.set("openPay",!0);s&&u.selectOpenPay();break;case c.options.paymentTypes.payRight:u.set("payRight",!0);s&&u.selectPayRight();break;case c.options.paymentTypes.braintree:var r=!0;n.cv.util.hasValue(i.Data)&&(y=i.Data.AllowBraintreePayment,b=i.Data.AllowBraintreeCreditCards,r=y);u.set("braintree",r);break;case c.options.paymentTypes.splitPayments:u.set("splitPayments",!0);s&&u.selectSplitPayments();break;case c.options.paymentTypes.thirdPartyInstallments:u.set("thirdPartyInstallments",!0);s&&u.selectThirdPartyInstallments();break;case c.options.paymentTypes.cash:u.set("cash",!0);u.set("cashRoundingAmount",i.ReceiptNumber);s&&u.selectCash();break;case c.options.paymentTypes.zero:u.set("zeroDollar",!0);s&&u.selectZero();break;case c.options.paymentTypes.customCardPayment:u.set("customCardPayment",!0);s&&u.selectCustomCardPayment();break;case c.options.paymentTypes.terminal:u.set("terminal",!0);s&&u.selectTerminal();break;case c.options.paymentTypes.accountZeroDollarPayment:u.set("accountZeroDollarPayment",!0);s&&u.selectAccountZeroDollarPayment();break;case c.options.paymentTypes.payId:u.set("payId",!0);s&&u.selectPayId();break;default:i.Key.indexOf(c.options.paymentTypes.card)>-1&&u.set("creditCard",!0)}});u.get("braintree")&&(u.initBraintree(y,b,!1),s&&u.selectBraintree())}c.options.dataSource=u.get("paymentOptions");et(t);n.cv.css.trigger(n.cv.css.eventnames.getPaymentOptionsFinished,{name:c.name,data:o.data})}}
19).fail(function(){l.setMessage(c.options.textErrorGettingPaymentOptions,n.cv.css.messageTypes.error)}),s.promise()},redirectForStoredIpsiPayment:function(t){this.set("isProcessing",!0);var r=n(t.target),i=this.get("obfuscatedCreditCardNumber"),u="/OnLinePaymentReturn.aspx?is_not_ipsi=true&ipsi="+r.attr("data-ipsi")+"&card_number="+i+"&card_type="+this.get("ipsiCreditCardType")+"&r=1&token="+i;return window.location.href=u,!1},setMessage:function(t,i){n.cv.util.notify(this,t,i,{triggerMessages:c.options.triggerMessages,source:c.name})},clearMessage:function(){this.set("clearExistingMessages",!0);this.set("message","");c.options.triggerMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:c.name,clearExisting:this.get("clearExistingMessages")})},updateItemList:function(t){var i=ft();this.set("itemList",i);this.set("hasOptions",i.length>0);t==!1&&c.trigger(u);n.cv.css.trigger(n.cv.css.eventnames.paymentOptionsRendered)},approvalError:function(n){var t=this;t.refreshDatasource();t.set("approvalConfigRequired",!0);t.set("approvalRequired",!0);t.set("approvalConfigRequiredMessage",n.errorMessage)},approvalConfirmed:function(){var n=this;n.refreshDatasource()},freightQuoteSelected:function(t){var i=this;i.set("isFreightQuoteSelected",t.isSelected);n.cv.util.hasValue(t.refreshPaymentOptionsDataSoure)===!0&&t.refreshPaymentOptionsDataSoure===!0&&i.refreshDatasource()},processingGiftCard:function(n){var t=this;t.set("isDisabled",n.isProcessingGiftCard)},freightQuoteInstructsVisisble:function(n){this.set("isFreightQuoteInstructsVisisble",n.isVisible);this.initialisePaymentOptions().done(function(){c.trigger(u)})},getIsZipThirdPartyInstallmentsPrevDeclinedForOrderOrNotAvailableForOrderTotal:function(){return c.options.isPreviouslyDeclinedInZipThirdPartyInstallments===!0||c.options.isZipThirdPartyInstallmentsAvailableForOrderTotal===!1},refreshDatasource:function(){this.set("accountPayment",c.options.accountPayment);this.set("creditCard",c.options.creditCard);this.set("paypal",c.options.paypal);this.set("bpay",c.options.bpay);this.set("weWillCallYou",c.options.weWillCallYou);this.set("eft",c.options.eft);this.set("approval",c.options.approval);this.set("approvalConfigRequired",!1);this.set("quote",c.options.quote);this.set("thirdParty",c.options.thirdParty);this.init()},approvalTypesDataSource:function(){var r=this.get("paymentOptions"),i=[],t=[];return r!=null&&(i=n.grep(r,function(n){return n.Key.indexOf(c.options.paymentTypes.approval)>-1})),i.length>1&&(t.push({text:c.options.selectApprovalTypePrompt,value:""}),n.each(i,function(n,i){c.options.approvalPromptOverrides[i.Key]!=undefined?t.push({text:c.options.approvalPromptOverrides[i.Key]!=""?c.options.approvalPromptOverrides[i.Key]:i.Value,value:i.Key}):t.push({text:i.Value,value:i.Key})})),new kendo.data.ObservableArray(t)},hasMultipleApprovalTypes:function(){return this.approvalTypesDataSource().length>0},creditCardTypesDataSource:function(){var i=this.get("paymentOptions"),r=[],t=[];return i!=null&&(r=n.grep(i,function(n){return n.Key.indexOf(c.options.paymentTypes.card)>-1&&n.Key!==c.options.paymentTypes.customCardPayment})),t.push({text:"Select Type",value:"",key:""}),n.each(r,function(n,i){c.options.cardPromptOverrides[i.Value]!=undefined?t.push({text:c.options.cardPromptOverrides[i.Value]!=""?c.options.cardPromptOverrides[i.Value]:i.Value,value:i.Value,key:i.Key}):t.push({text:i.Value,value:i.Value,key:i.Key})}),new kendo.data.ObservableArray(t)},thirdPartyCreditCardTypesDataSource:function(){var i=this.get("paymentOptions"),r=[],t=[];return i!=null&&(r=n.grep(i,function(n){return n.Key.indexOf(c.options.paymentTypes.thirdParty)>-1})),t.push({text:"Select Type",value:"",key:""}),n.each(r,function(n,i){c.options.cardPromptOverrides[i.Value]!=undefined?t.push({text:c.options.cardPromptOverrides[i.Value]!=""?c.options.cardPromptOverrides[i.Value]:i.Value,value:i.Value,key:i.Key}):t.push({text:i.Value,value:i.Value,key:i.Key})}),new kendo.data.ObservableArray(t)},creditCardDigitsRequired:function(){switch(this.get("creditCardType")){case s:return c.options.amexNumberOfDigits;case h:return c.options.dinersNumberOfDigits;default:return c.options.otherCardsNumberOfDigits}},ccvDigitsRequired:function(){switch(this.get("creditCardType")){case h:case y:case p:return 3;case s:return 4;default:return 3}},cardNumberFull:function(){var t=this;
19return t.customCardPaymentSelected()?t.get("customCardNumber"):n.cv.util.isNullOrWhitespace(t.get("cardNumber"))?t.get("cardNumber1")+t.get("cardNumber2")+t.get("cardNumber3")+t.get("cardNumber4"):t.get("cardNumber")},getCreditCardType:function(){var e=this,u=this.cardNumberFull(),i="",r=!1,t=new RegExp(c.options.cardTypeRegExVisa),f;return t.test(u)&&(i=p,r=!0),r||(t=new RegExp(c.options.cardTypeRegExMasterCard),t.test(u)&&(i=y,r=!0)),r||(t=new RegExp(c.options.cardTypeRegExAmex),t.test(u)&&(i=s,r=!0)),r||(t=new RegExp(c.options.cardTypeRegExDiners),t.test(u)&&(i=h,r=!0)),!r&&c.options.customCardPaymentOptionEnabled&&(t=new RegExp(c.options.cardTypeRegExCustom),t.test(u)&&(i=b)),f=n.grep(e.get("paymentOptions"),function(n){return n.Key.indexOf(c.options.paymentTypes.card)>-1&&n.Key==i}),f.length==0&&(i=""),i},setCreditCardType:function(){var t=this,r=t.get("currentSelectedOption")==="braintree",i=r?t.braintreeGetCreditCardType():t.getCreditCardType();n.cv.util.hasContent(i)?(w(i),t.set("creditCardType",i)):!r&&t._isAllowCreditCardFeeOverrideForEwayInAccountPaymentPage()?t._setupCreditCardFeeOverrideForEwayInAccountPaymentPage():(at(),t.set("creditCardType",i))},showCreditCardVerificationCheckbox:function(){var t=this,r=t.get("currentSelectedOption")==="braintree",i=t.get("isCreditCardVerificationRequired");return r==!1?i:i&&n.cv.util.hasContent(t.get("braintreeCreditCardType"))},cardExpiryMonthPrompts:c.options.cardExpiryMonthPrompts,cardExpiryMonthsDataSource:function(){var u=this.get("cardExpiryMonthPrompts").split(","),r=[],t,i,f;for(n.cv.util.isMaf()&&r.push({text:c.options.textSelectMonth,value:""}),t=1;t<=u.length;t++){for(i=t+"",f=t+"";i.length<2;)i="0"+i;r.push({text:c.options.showNumericCardExpiry?i:u[t-1],value:f})}return new kendo.data.ObservableArray(r)},cardExpiryChanged:function(){n.cv.css.trigger(n.cv.css.eventnames.commWebUpdateSessionFromForm,null)},cardExpiryYearDataSource:function(){var t,i;n.cv.util.isMaf()&&(c.options.cardYearsToShow=n.cv.css.localGetSettings().CardYearsToShow);var u=c.options.cardYearsToShow,f=(new Date).getFullYear(),r=[];for(n.cv.util.isMaf()&&r.push({text:c.options.textSelectYear,value:""}),t=0;t<u;t++)i=f+t,r.push({text:c.options.showNumericCardExpiry?i.toString().substr(2,2):i,value:i.toString().substr(2,2)});return new kendo.data.ObservableArray(r)},calculateChangeCashAmount:function(){var t=this.get("cashTenderedAmount"),i,r,u=c.options.enableDepositPaymentsForOrders?c.viewModel.depositAmount:this.getCurrentOrder(c.options.displayingOrderInformation).OrderTotalAmount;t.length>0?n.cv.util.testRegEx(/^\$?[\d,]+(\.(\d?|\d0|\d5))?$/,t,!0)===!1?(t=0,i=c.options.invalidTenderedAmountMessage,r=!1):(t=parseFloat(t)-u,t<0?(t=0,i=c.options.negativeTenderedAmountMessage,r=!1):(i="",r=!0)):(t=0,i="",r=!1);this.set("cashChangeAmount",t);this.set("cashChangeAmountMessage",i);this.set("isCashChangeAmountValid",r)},newPaymentMethodSelected:function(){this.clearMessage()},orderDocumentValidated:function(t){var i=this;n.cv.util.hasValue(t)&&(t.isValid||i.set("isProcessing",!1),t.showErrorMessages&&i.setMessage("Document is required for this payment type",n.cv.css.messageTypes.error))},paymentOptionSelected:function(){var t=!1,i=this.get("currentSelectedOption");c.options.paymentTypesRequiringOrderDocument.includes(i.toLowerCase())?(t=!0,this.set("orderDocumentMessage",kendo.format(c.options.orderDocumentMessage,this.getPaymentTypeLabelByValue(i)))):n.
19cv.css.addRemovePageValidationError(!0,"orderDocuments");this.set("orderDocumentValidationRequired",t)},scrollToOrderDocument:function(){var t=n("[id^=widget-OrderDocuments-]:first");t.length>0&&n.cv.util.scroll(t.offset().top-100)},getPaymentTypeLabelByValue:function(n){var t=Object.keys(c.options.paymentTypeValues).filter(function(t){return c.options.paymentTypeValues[t]===n}),i="";return t.length==1&&(i=c.options.paymentTypeLabels[t[0]]),i},selectAccountPayment:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.account]);w(this.get("currentSelectedOption"));this.paymentOptionSelected()},selectCreditCard:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.card]);this.setCreditCardType();c.signal("refreshWidgets");this.paymentOptionSelected()},selectPaypal:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.paypal]);w(this.get("currentSelectedOption"));this.paymentOptionSelected()},selectBpay:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.bpay]);w(this.get("currentSelectedOption"));this.getNewCustomerPayment();this.paymentOptionSelected()},selectWeWillCallYou:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.weWillCallYou]);var t=this.getCurrentOrder().SoDelPhone;n.cv.util.hasValue(t)&&this.set("weWillCallYouNumber",t);w(this.get("currentSelectedOption"));this.paymentOptionSelected()},selectEft:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.eft]);w(this.get("currentSelectedOption"));this.getNewCustomerPayment();this.paymentOptionSelected()},selectZero:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.zero]);this.paymentOptionSelected()},selectApprovalPayment:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.approval]);w(this.get("currentSelectedOption"));this.paymentOptionSelected()},selectCustomCardPayment:function(){var n=this,t=c.options;n.newPaymentMethodSelected();n.set("currentSelectedOption",t.paymentTypeValues[t.paymentTypes.customCardPayment]);this.paymentOptionSelected()},submitOrderKeyUp:function(n){n.which==13&&(n.preventDefault(),n.stopPropagation(),this.submitOrder())},selectQuote:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.quote]);w(this.get("currentSelectedOption"));this.paymentOptionSelected()},selectSendQuote:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.sendQuote]);w(this.get("currentSelectedOption"));this.paymentOptionSelected()},select3rdParty:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.thirdParty]);w(this.get("currentSelectedOption"));this.paymentOptionSelected()},selectAfterPay:function(){var n=this;this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.afterPay]);w(this.get("currentSelectedOption"));this.paymentOptionSelected();this.set("isProcessing",!0);this.ensureCountryCodeSet().done(function(){n.set("isProcessing",!1)})},selectThirdPartyInstallments:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.thirdPartyInstallments]);w(this.get("currentSelectedOption"));this.paymentOptionSelected()},selectCash:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.cash]);w(this.get("currentSelectedOption"));this.paymentOptionSelected()},giftCardsChanged:function(){this.braintreePaymentSelected()&&this.braintreeClearSelectedPaymentMethod();this.paymentOptionSelected()},localOrderChanged:function(){this.updateBraintreeFinalPaymentOption()},isDepositPayment:function(){return(c.options.enableDepositPaymentsForOrders||c.options.requireDepositOnPickup)&&this.depositAmount>0},braintreePaymentSelected:function(){return this.get("currentSelectedOption")==c.options.paymentTypeValues[c.options.paymentTypes.braintree]},braintreePaymentLevelSelectChanged:function(t){n("#"+c.options.braintreePaymentDropinDivId).empty();this.initBraintree(!0,!0,t.target.value==="customerLevel",!0)},initBraintree:function(t,i,r,u){u===void 0&&(u=!1);var e=this,o=c.options.isOrderPaymentLinksMode,l=e.getCurrentOrder(),s=c.options.isAccountPaymentPage,h=s||o?null:n.cv.util.hasValue(l)?l.OrderTotalAmount.toFixed(2):null,a=r?c.options.braintreeCustomerLevelClientToken:c.options.braintreeClientToken,f={authorization:a,container:"#"+c.options.braintreePaymentDropinDivId,card:c.options.enableBraintreeCreditCard&&i?{cardholderName:c.options.braintreeIsCardHolderNameRequired?{required:!0}:!1,vault:{allowVaultCardOverride:!r&&c.options.braintreeAllowVaultCardOverride,vaultCard:!r&&c.options.braintreeVaultCard}}:!1,vaultManager:!r&&c.options.braintreeVaultManager,preselectVaultedPaymentMethod:c.options.braintreePreselectVaultedPaymentMethod&&(s||!c.options.braintreeThreeDSecure),showDefaultPaymentMethodFirst:c.options.braintreeShowDefaultPaymentMethodFirst,paypal:!r&&c.options.enableBraintreePayPal&&t?{flow:c.options.braintreeAllowVaultPayPal?"vault":"checkout",currency:e.getCurrencyCode(),amount:h}:!1,googlePay:!r&&c.options.enableBraintreeGooglePay&&t?{merchantId:c.options.braintreeGooglePayMerchantId,transactionInfo:{currencyCode:e.getCurrencyCode(),totalPriceStatus:"FINAL",totalPrice:h,checkoutOption:"COMPLETE_IMMEDIATE_PURCHASE"}}:!1,applePay:!r&&c.options.enableBraintreeApplePay&&t?{displayName:c.options.braintreeApplePayDisplayName,paymentRequest:{currencyCode:e.getCurrencyCode(),total:{label:"Total",amount:h,type:"final"},requiredBillingContactFields:["postalAddress"]}}:!1};o===!0&&(f.paypal=!1,f.googlePay=!1,f.applePay=!1);c.options.braintreeEnableDataCollector&&(f.dataCollector=c.options.braintreeKountFraudProtection?{kount:!0}:!0);!c.options.braintreeThreeDSecure||s||o||(f.threeDSecure=!0);e.braintreeInitDropin(f,u)},selectBraintree:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.braintree]);this.setCreditCardType();this.paymentOptionSelected();n.cv.util.isNullOrWhitespace(c.viewModel.fraudDeviceTransactionId)&&this.generateDeviceIdForFraudCheck()},submitBraintreePayment:function(){var t=this,r=t.get("creditCardType"),i=t.get("braintreePaymentMethodType"),u,f;i=n.cv.util.hasContent(r)&&n.cv.util.isNullOrWhitespace(i)?"CreditCard":i;u={paymentType:c.options.paymentTypes.braintree,paymentInfo:{BraintreeNonce:t.get("braintreeNonce"),BraintreeDeviceData:t.get("braintreeDeviceData"),CardName:n.cv.util.hasContent(r)?r.replace(/CARD/,""):null,FraudDeviceTransactionId:t.get("fraudDeviceTransactionId"),SubPaymentType:i,OverrideCCCh
19argePercentage:null}};t.get("isAccountPaymentPage")&&c.options.allowCreditCardFeeOverride&&(f=t.get("cardChargeInfo"),u.paymentInfo.OverrideCCChargePercentage=f.ChargePercent);t.processPayment(u)},braintreeReset:function(){var n=this;n.set("braintreeNonce",null);n.set("braintreeCreditCardType",null);n.setCreditCardType();n.set("braintreeIsSubmitDisabled",!0);n.set("creditCardType","")},braintreeSubmitButtonDisabled:function(){var t=this,i=t.get("braintreeIsSubmitDisabled")||t.get("isProcessing"),r=c.options.creditCardVerificationEnabled&&n.cv.util.hasContent(t.get("braintreeCreditCardType"))&&t.get("isCreditCardVerificationRequired")&&!t.get("acknowledgeCreditCardVerification");return i||r},updateBraintreeFinalPaymentOption:function(){if(c.options.enableBraintreePayment&&!c.options.isAccountPaymentPage){var n=this,t=n.getFinalPaymentAmount(),i=n.get("finalPaymentAmount");t>=0&&t!=i&&(n.updateFinalPaymentOption(t),n.set("finalPaymentAmount",t))}},generateDeviceIdForFraudCheck:function(){var i=(new Date).getTime(),r="DID-xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(n){var t=(i+Math.random()*16)%16|0;return i=Math.floor(i/16),(n=="x"?t:t&3|8).toString(16)}),u=c.options.accertifyFraudSiteId,f=c.options.accertifyFraudInAuthCollectorUrl,t=window._cc=window._cc||[];t.push(["ci",{sid:u,tid:r}]);t.push(["st",500]);t.push(["sf",function(){n.cv.css.trigger(n.cv.css.eventnames.fraudCheckDeviceTransactionIdPopulated,r)}]);t.push(["run",f]),function(){var t=document.createElement("script"),n;t.type="text/javascript";t.async=!1;t.src=f+"/cc.js?sid="+u+"&ts="+(new Date).getTime();n=document.getElementsByTagName("script")[0];n!=null&&n.parentNode!=null&&n.parentNode.insertBefore(t,n)}()},getFinalPaymentAmount:function(){var t=this,i=n.cv.css.localGetCurrentOrder(),r=n.cv.util.hasValue(i)?i.TotalPaymentBalanceAfterEnteredGiftCards:t.get("totalPaymentBalanceAfterEnteredGiftCards");return t.isDepositPayment()?t.depositAmount:r},getCurrencyCode:function(){return c.options.customerCurrency},selectOpenPay:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.openPay]);w(this.get("currentSelectedOption"));this.paymentOptionSelected()},selectPayRight:function(){var t=this,i;t.newPaymentMethodSelected();t.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.payRight]);w(this.get("currentSelectedOption"));this.paymentOptionSelected();t.get("payRightLoanOverview")===null&&(i=n.cv.css.localGetCurrentOrder(!1),t.set("isProcessing",!0),n.cv.css.orders.getPayRightLoanOverView({_objectKey:i._objectKey}).done(function(n){n.data?(t.set("payRightLoanOverview",n.data),t.set("payRightLoanValid",!0)):(t.set("payRightLoanOverview",null),t.set("payRightLoanValid",!1))}).always(function(){t.set("isProcessing",!1)}))},selectSplitPayments:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.splitPayments]);w(this.get("currentSelectedOption"));this.paymentOptionSelected()},selectUnallocatedPayment:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.unallocatedPayment]);var t=n("#payment-tabs");t.length>0&&(n.cv.util.hasValue(t.data("kendoTabStrip"))?t.data("kendoTabStrip").activateTab(n("#payment-tab-unallocated-payment")):t.kendoTabStrip().data("kendoTabStrip").activateTab(n("#payment-tab-unallocated-payment")))},selectTerminal:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.terminal]);w(this.get("currentSelectedOption"));this.paymentOptionSelected()},selectAccountZeroDollarPayment:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.accountZeroDollarPayment]);this.paymentOptionSelected();this.submitOrder()},selectPayId:function(){this.newPaymentMethodSelected();this.set("currentSelectedOption",c.options.paymentTypeValues[c.options.paymentTypes.payId]);w(this.get("currentSelectedOption"));this.paymentOptionSelected()},creditCardUseExistingEwayToken:!1,submitOrderUseExistingToken:function(n){this.submitOrder(n,!0)},submitOrder:function(i,r){var u,f;if(r===void 0&&(r=!1),u=this,n.cv.css.trigger(n.cv.css.eventnames.orderSubmitting,u.get("currentSelectedOption")),u.set("creditCardUseExistingEwayToken",r),u.set("isProcessing",!0),u.set("paymentUnsuccessful",!1),u.clearMessage(),c.options.isOrderPaymentLinksMode&&(c.options.orderNumberForOrderPaymentLinksMode===0||c.options.orderTotalAmountForOrderPaymentLinksMode===0||n.cv.util.hasContent(c.options.customerCodeForOrderPaymentLinksMode)===!1)){u.set("isProcessing",!1);return}if(c.options.orderPasswordRequired&&!u.validateOrderPassword(!0)&&c.options.isOrderPaymentLinksMode===!1){u.set("isProcessing",!1);return}if(u.braintreePaymentSelected()&&u.isGiftCardBalanceZero()===!1&&n.cv.util.hasContent(u.get("braintreeNonce"))===!1){u.set("paymentUnsuccessful",!0);u.set("clearExistingMessages",!0);u.setMessage(c.options.braintreeNonceError,n.cv.css.messageTypes.error);c.trigger(t,{message:c.options.braintreeNonceError});u.set("isProcessing",!1);return}if(c.options.enableDepositPaymentsForOrders&&c.viewModel.depositAmount===0&&!c.viewModel.isAccountPaymentPage&&c.options.isOrderPaymentLinksMode===!1){u.set("paymentUnsuccessful",!0);u.set("clearExistingMessages",!0);u.setMessage(c.options.paymentMustNotBeZeroMessage,n.cv.css.messageTypes.error);c.trigger(t,{message:c.options.paymentMustNotBeZeroMessage});u.set("isProcessing",!1);return}if(c.viewModel.isAccountPaymentPage&&c.options.allowCreditCardFeeOverride&&(u.cardChargeInfo.ChargePercent<c.options.creditCardFeeMin||u.cardChargeInfo.ChargePercent>c.options.creditCardFeeMax)){u.set("paymentUnsuccessful",!0);u.set("clearExistingMessages",!0);u.setMessage(c.options.creditCardFeeOverrideMessage,n.cv.css.messageTypes.error);c.trigger(t,{message:c.options.paymentMustNotBeZeroMessage});u.set("isProcessing",!1);return}if(u.get("currentSelectedOption")===c.options.paymentTypeValues[c.options.paymentTypes.cash]&&c.options.enableShortPaymentInCashPayment===!1&&u.get("isCashChangeAmountValid")===!1){u.set("paymentUnsuccessful",!0);u.set("clearExistingMessages",!0);u.setMessage(c.options.invalidCashPaymentAmountMessage,n.cv.css.messageTypes.error);c.trigger(t,{message:c.options.invalidCashPaymentAmountMessage});u.set("isProcessing",!1);return}this.get("orderDocumentValidationRequired")&&c.options.isOrderPaymentLinksMode===!1?n.cv.css.trigger(n.cv.css.eventnames.validateOrderDocument,{showErrorMessages:!1}
19):n.cv.css.addRemovePageValidationError(!0,"orderDocuments");f=u.get("currentSelectedOption")===c.options.paymentTypeValues[c.options.paymentTypes.card];f&&c.options.paymentProviderMode===v?n.cv.css.trigger(n.cv.css.eventnames.commWebUpdateSessionFromForm,function(t){if(u.commWebUpdateSessionFromFormCompleted(t))u.submitOrder2();else{var i=[];t.errors.cardNumber&&i.push("Credit Card Number "+t.errors.cardNumber);t.errors.expiryMonth&&i.push("Expiry Month "+t.errors.expiryMonth);t.errors.expiryYear&&i.push("Expiry Year "+t.errors.expiryYear);t.errors.securityCode&&i.push("Security Code "+t.errors.securityCode);u.cardHolderNameValid()||i.push("Name On Card");u.setMessage("The following card details have errors: "+i.join(", "),n.cv.css.messageTypes.error);u.set("isProcessing",!1)}}):u.submitOrder2()},submitOrder2:function(){function u(){if(s){setTimeout(function(){r.resolve()},1e3);return}r.resolve()}var i=this,t=c.options,r=n.Deferred(),s=t.isAccountPaymentPage||t.isNonCurrentOrderPaymentPage||t.isOrderPaymentLinksMode,e,o,f;_.isEmpty(n.cv.css.pageValidationErrors)?t.isGuestUser?(e="deliveryAddress",f=[],n(t.validateDeliveryAddressWidgetSelector.format(e.toLowerCase())).each(function(){o=n(this).data(e);o&&f.push(o.reValidateOrderDeliveryAddress())}),f.length>0?n.when.apply(n,f).done(function(){u()}).fail(function(){r.reject()}):u()):u():(i.processPageValidationErrors(),u());r.done(function(){_.isEmpty(n.cv.css.pageValidationErrors)?s?i.doAccountOrNonCurrentOrderPayment():i.validateForCheckout():i.set("isProcessing",!1)})},doAccountOrNonCurrentOrderPayment:function(){var n=this.get("currentSelectedOption");switch(n){case c.options.paymentTypeValues[c.options.paymentTypes.card]:this.submitOrderPayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.eft]:this.submitEFTPayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.bpay]:this.submitBpayPayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.splitPayments]:this.submitSplitPayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.unallocatedPayment]:this.submitUnallocatedPayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.accountZeroDollarPayment]:this.submitAccountZeroDollarPayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.thirdParty]:this.submit3rdParty();break;case c.options.paymentTypeValues[c.options.paymentTypes.braintree]:this.submitBraintreePayment()}},validateForCheckout:function(t){var i=this;i.showPaymentProcessingOverlay();n.cv.ajax.waitForPendingCalls().done(function(){window.DEBUG&&console.log("paymentOptions: finished waiting for pending AJAX calls - continuing with checkout");i.validateForCheckout2(t)})},validateForCheckout2:function(t){var i=this,r=n.extend({processPayment:!0},t),u=c.options.orderNoOverride===0?n.cv.css.getCurrentOrder({applyPromotionalCodes:!1}):n.cv.css.getOrder({orderNo:c.options.orderNoOverride,isLocalSetSelectedOrder:!0});u.done(function(){var t=c.options.orderNoOverride===0?n.cv.css.localGetCurrentOrder(!1,!1):n.cv.css.localGetSelectedOrder(c.options.orderNoOverride,"",!1);if(!t._objectKey){i.hidePaymentProcessingOverlay();return}
19i.set("validationPreventingCheckout",!1);n.cv.css.orders.validateForCheckout({_objectKey:t._objectKey,_preparingForProcessPayment:!0,paymentType:i.get("currentSelectedOption")}).done(function(t){var f=t.data,e={},u=c.options.orderNoOverride===0,o=u?n.cv.css.refreshCurrentOrder():n.cv.css.getOrder({orderNo:c.options.orderNoOverride}),s=u?{}:n.cv.css.getOrderLines({orderNo:c.options.orderNoOverride,isLocalSetSelectedOrder:!0});n.when(o,s).done(function(){var t=null;u||(t={orderNoOverride:c.options.orderNoOverride});n.cv.css.trigger(n.cv.css.eventnames.orderChanged,t).done(function(){f.sessionHasTimedOut?i.redirectToUrl(c.options.sessionTimeOutRedirectUrl,e,!c.options.includeInBrowserHistory):(i.displayValidationMessages(f),i.get("validationPreventingCheckout")||r.processPayment!==!0?i.hidePaymentProcessingOverlay():n.cv.css.trigger(n.cv.css.eventnames.preOrderSubmit).done(function(){i.processPaymentOption()}))})})}).fail(function(t){i.hidePaymentProcessingOverlay();t.errorMessage!=null?i.setMessage(t.errorMessage,n.cv.css.messageTypes.error):i.setMessage(c.options.textCheckoutErrorDefaultMessage,n.cv.css.messageTypes.error)})}).fail(function(t){i.hidePaymentProcessingOverlay();t.errorMessage!=null&&i.setMessage(t.errorMessage,n.cv.css.messageTypes.error)})},buildLineValidationMessageArray:function(n){var t=[],i,r;t=[];for(i in n)n.hasOwnProperty(i)&&(r={},r.lineMessages=n[i],t.push(r));return t},displayValidationMessages:function(t){var i=this,r;i.clearMessage();r=i.buildLineValidationMessageArray(t.lineValidationErrors);n.cv.util.isMaf()&&c.getPageArgument("signatureValid")===!1&&(t.headerValidateNotOk=!0,t.headerValidationErrors.push({errorMessage:c.options.signatureignatureRequiredMessage}));(t.headerValidateNotOk||t.linesValidateNotOk)&&i.set("validationPreventing
19Checkout",!0);(t.headerValidationErrors.length>0||r.length>0)&&(i.set("clearExistingMessages",!1),n.each(t.headerValidationErrors,function(t,r){r.preventsCheckOut?i.setMessage(r.errorMessage,n.cv.css.messageTypes.error):c.options.showValidationMessagesNotPreventingCheckout&&i.setMessage(r.errorMessage,n.cv.css.messageTypes.warning)}),n.each(r,function(t,r){n.each(r.lineMessages,function(t,r){if(r.errorMessage!=""){var u=r.doNotPrefixErrorMessage?"":r.lineSeq+", "+r.productCode+": ";r.preventsCheckOut?i.setMessage(u+r.errorMessage,n.cv.css.messageTypes.error):c.options.showValidationMessagesNotPreventingCheckout&&i.setMessage(u+r.errorMessage,n.cv.css.messageTypes.warning)}})}),i.set("clearExistingMessages",!0))},submitQuoteWithFreightCheck:function(){this.submitQuote(this.get("isFreightQuoteInstructsVisisble"))},commWebSessionId:"",processPaymentOption:function(){if(this.get("isFreightQuoteSelected")){this.submitQuote(!0);return}if(this.get("totalPaymentBalanceAfterEnteredGiftCards")===0){this.submitGiftCardPayment();return}var n=this.get("currentSelectedOption");switch(n){case c.options.paymentTypeValues[c.options.paymentTypes.account]:this.submitAccountPayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.card]:this.submitOrderPayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.paypal]:this.submitPaypalPayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.approval]:this.submitApprovalPayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.bpay]:this.submitBpayPayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.eft]:this.submitEFTPayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.zero]:this.submitZeroOrderPayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.quote]:this.submitQuote(!1);break;case c.options.paymentTypeValues[c.options.paymentTypes.weWillCallYou]:this.submitWeWillCallYou();break;case c.options.paymentTypeValues[c.options.paymentTypes.thirdParty]:this.submit3rdParty();break;case c.options.paymentTypeValues[c.options.paymentTypes.customCardPayment]:this.submitCustomCardPayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.afterPay]:this.submitAfterPay();break;case c.options.paymentTypeValues[c.options.paymentTypes.thirdPartyInstallments]:this.submitThirdPartyInstallments();break;case c.options.paymentTypeValues[c.options.paymentTypes.cash]:this.submitCash();break;case c.options.paymentTypeValues[c.options.paymentTypes.openPay]:this.submitOpenPayPayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.payRight]:this.submitPayRightPayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.splitPayments]:this.submitSplitPayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.terminal]:this.submitTerminal();break;case c.options.paymentTypeValues[c.options.paymentTypes.braintree]:this.submitBraintreePayment();break;case c.options.paymentTypeValues[c.options.paymentTypes.sendQuote]:this.sendQuoteToEmail();break;case c.options.paymentTypeValues[c.options.paymentTypes.payId]:this.submitPayId()}},submit3rdParty:function(){var n={paymentType:c.options.paymentTypes.thirdParty,paymentInfo:{}};this.processPayment(n)},submitAfterPay:function(){var n={paymentType:c.options.paymentTypes.afterPay,paymentInfo:{}};this.processPayment(n)},submitThirdPartyInstallments:function(){var n={paymentType:c.options.paymentTypes.thirdPartyInstallments,paymentInfo:{}};this.processPayment(n)},submitCash:function(){var n={paymentType:c.options.paymentTypes.cash,paymentInfo:{}};this.processPayment(n)},submitOpenPayPayment:function(){var n={paymentType:c.options.paymentTypes.openPay,paymentInfo:{}};this.processPayment(n)},submitPayRightPayment:function(){var n={paymentType:c.options.paymentTypes.payRight,paymentInfo:{}};this.processPayment(n)},submitSplitPayment:function(){var n={paymentType:c.options.paymentTypes.splitPayments,paymentInfo:{}};this.processPayment(n)},submitTerminal:function(){var t=this,n;this.showModal("#"+c.options.processingPaymentModal);t._setUnloadMethod();n={paymentType:c.options.paymentTypes.terminal,paymentInfo:{}};this.processPayment(n)},submitWeWillCallYou:function(){var n={};this.validateWeWillCallYou()&&(n={paymentType:c.options.paymentTypes.weWillCallYou,paymentInfo:{PhoneNumber:this.get("weWillCallYouNumber")}},this.processPayment(n))},validateWeWillCallYou:function(){var t=!1;return this.get("currentSelectedOption").toUpperCase()==c.options.paymentTypeValues.CALL.toUpperCase()&&n.cv.util.isNullOrWhitespace(this.get("weWillCallYouNumber"))==!1?t=!0:(this.setMessage(c.options.textErrorNoWeWillCallYouNumber,n.cv.css.messageTypes.error),this.set("isProcessing",!1)),t},submitQuote:function(i){var r=this,u="",f,e,o;if(i&&!r.get("isFreightQuoteSelected")){f=c.options.textErrorNotAcknowledgedFreightQuote;r.setMessage(f,n.cv.css.messageTypes.error);n.cv.util.notify(r,f,n.cv.css.messageTypes.error);r.hidePaymentProcessingOverlay();return}e=[];r.set("isProcessing",!0);r.showPaymentProcessingOverlay();o=n.cv.css.orders.submitQuote(e);n.when(o).done(function(i){var f=i.data,e;f.sessionHasTimedOut?r.redirectToUrl(f.sessionTimeOutRedirectUrl,{},!c.options.includeInBrowserHistory):f.success?(n.cv.css.removeLocalStorage(n.cv.css.localStorageKeys.currentOrder),n.cv.css.removeLocalStorage(n.cv.css.localStorageKeys.currentOrderLines),r.set("paymentSuccessful",!0),c.options.useQuoteConfirmationPage?r.redirect(c.options.quoteConfirmationPageRedirectUrl,{sq:f.sq},c.options.includeInBrowserHistory):c.options.quoteSubmittedRedirectUrl!==""&&r.redirect(c.options.quoteSubmittedRedirectUrl,{},c.options.includeInBrowserHistory)):(e=r.get("clearExistingMessages"),r.set("paymentUnsuccessful",!0),r.set("clearExistingMessages",!0),f.message&&f.message.length>0&&(r.setMessage(f.message,n.cv.css.messageTypes.error),c.options.processPaymentUnsuccessfulMessage==""&&(u=u.length>0?u+", "+f.message:f.message),c.trigger(t,{message:u.length>0?u:c.options.processPaymentUnsuccessfulMessage}),r.set("clearExistingMessages",e)),r.hidePaymentProcessingOverlay())}).fail(function(t){r.hidePaymentProcessingOverlay();t.errorMessage!=null&&r.setMessage(t.errorMessage,n.cv.css.messageTypes.error)})},sendQuoteToEmail:function(){var i=this,r="",f={emailAddress:i.get("quoteEmailAddress"),expireDays:i.get("quoteExpireDays"),orderNo:i.getCurrentOrder().SoOrderNo},u;i.set("isProcessing",!0);i.showPaymentProcessingOverlay();u=n.cv.css.orderQuote.sendQuoteToEmail(f);n.when(u).done(function(u){var f=u.data,e;f.sessionHasTimedOut?i.redirectToUrl(f.sessionTimeOutRedirectUrl,{},!c.options.includeInBrowserHistory):f.Success?(n.cv.css.removeLocalStorage(n.cv.css.localStorageKeys.currentOrder),n.cv.css.removeLocalStorage(n.cv.css.localStorageKeys.currentOrderLines),i.set("paymentSuccessful",!0),c.options.useQuoteConfirmationPage?i.redirect(c.options.quoteConfirmationPageRedirectUrl,{sq:f.sq},c.options.includeInBrowserHistory):c.options.quoteSubmittedRedirectUrl!==""&&i.redirect(c.options.quoteSubmittedRedirectUrl,{},c.options.includeInBrowserHistory)):(e=i.get("clearExistingMessages"),i.set("paymentUnsuccessful",!0),i.set("clearExistingMessages",!0),f.Message&&f.Message.length>0&&(i.setMessage(f.Message,n.cv.css.messageTypes.error),c.options.processPaymentUnsuccessfulMessage==""&&(r=r.length>0?r+", "+f.Message:f.Message),c.trigger(t,{message:r.length>0?r:c.options.processPaymentUnsuccessfulMessage}),i.set("clearExistingMessages",e)),i.hidePaymentProcessingOverlay())}).fail(function(t){i.hidePaymentProcessingOverlay();t.errorMessage!=null&&i.setMessage(t.errorMessage,n.cv.css.messageTypes.error)})},submitBpayPayment:function(){var n={paymentType:c.options.paymentTypes.bpay,paymentInfo:{}};this.get("isAccountPaymentPage")&&(n.paymentInfo.ReceiptNumber=this.get("eftReceiptNumber"));this.processPayment(n)},validateEFTInformation:function(){var t=!1;return this.get("currentSelectedOption").toUpperCase()==c.options.paymentTypes.eft.toUpperCase()&&(c.options.eftBankReceiptNumberDisabled||this.get("bankReceiptNumber")!==""&&typeof this.get("bankReceiptNumber")!="undefined")?t=!0:(this.setMessage(c.options.textErrorNoBankReceiptInput,n.cv.css.messageTypes.error),this.set("isProcessing",!1)),t},submitEFTPayment:function(){if(this.validateEFTInformation()){var n={paymentType:c.options.paymentTypes.eft,paymentInfo:{BankReceiptNumber:this.get("bankReceiptNumber")}};this.get("isAccountPaymentPage")&&(n.paymentInfo.ReceiptNumber=this.get("eftReceiptNumber"));this.processPayment(n)}},submitGiftCardPayment:function(){var n={paymentType:c.options.paymentTypes.giftCard,paymentInfo:{}};this.processPayment(n)},submitAccountPayment:function(){var n={paymentType:c.options.paymentTypes.account,paymentInfo:{}};this.processPayment(n)},submitPaypalPayment:function(){var n={paymentType:c.options.paymentTypes.paypal,paymentInfo:{}};this.processPayment(n)},validateApprovalInformation:function(){var t=!0;return this.hasMultipleApprovalTypes()&&this.get("approvalType")==""&&(this.setMessage(c.options.textErrorNoApprovalTypeSelected,n.cv.css.messageTypes.error),t=!1),t},submitApprovalPayment:function(){if(this.validateApprovalInformation()){var n=void 0;n=this.hasMultipleApprovalTypes()?{paymentType:this.get("approvalType"),paymentInfo:{}}:{paymentType:c.options.paymentTypes.approval,paymentInfo:{}};this.processPayment(n)}else this.set("isProcessing",!1)},submitZeroOrderPayment:function(){this.processPayment({paymentType:"ZERO",paymentInfo:{}})},submitUnallocatedPayment:function(){var n={paymentType:c.options.paymentTypes.unallocatedPayment,paymentInfo:{UnallocatedPaymentAmount:this.get("unallocatedPaymentAmount"),ReceiptNumber:this.get("eftReceiptNumber")}};this.processPayment(n)},submitAccountZeroDollarPayment:function(){var n={paymentType:c.options.paymentTypes.accountZeroDollarPayment,paymentInfo:{ReceiptNumber:this.get("eftReceiptNumber")}};this.processPayment(n)},clearRememberedPaymentInfo:function(){var r=this,t=c.options.checkEwayTokensForFuturePayments&&c.options.orderNoOverride!==0,u=c.options.orderNoOverride===0?n.cv.css.localGetCurrentOrder(!1):n.cv.css.localGetSelectedOrder(c.options.orderNoOverride,"",!1);c.options.paymentProviderMode==i?n.cv.css.orders.clearPaymentProviderToken({isOrderDeposit:t,_objectKey:u._objectKey}
19).done(function(){r.set("cardDetailsRemembered",!1)}):t?g(!0,c.options.orderNoOverride):g(!0);t&&this.set("showEwayTokensForFuturePayments",!1)},validateCreditCardInformation:function(){var u=this,f=!0,t="";return c.options.paymentProviderMode==i?u.get("isCustomerPaymentToken")===!0||(this.cvnIsValid||(t+=", Security Code"),c.options.userHasEwayToken||(this.nameIsValid||(t+=", Name On Card"),this.cardIsValid||(t+=", Credit Card Number"),this.expiryIsValid||(t+=", Expiry"))):c.options.paymentProviderMode==r||(this.creditCardTypeValid()||(t+=",Card Type"),this.cardHolderNameValid()||(t+=",Name On Card"),c.options.isAccountPaymentPage&&c.options.customerHasEwayToken&&u.get("customerTokenPaymentAccepted")||c.options.userHasEwayToken&&u.get("cardDetailsRemembered")||u.cardNumberValid()===!1&&(t+=",Credit Card Number (incorrect number of digits)"),this.cardExpiryMonthValid()||(t+=",Expiry Month"),this.cardExpiryYearValid()||(t+=",Expiry Year"),this.cardSecurityCodeValid()||(t+=",Security Code")),t.length>0&&(t="The following card details have errors: "+t.substr(1),f=!1,this.setMessage(t,n.cv.css.messageTypes.error)),f},validateOrderPassword:function(t){var i=this,r=i.get("orderPassword").length>0;return i.clearMessage(),r?(i.set("orderPasswordHasError",""),i.set("orderPasswordErrorMsg","")):(t&&(i.setMessage(c.options.textOrderPasswordMandatory,n.cv.css.messageTypes.error),i.set("message","")),i.set("orderPasswordHasError",c.options.inputErrorClass),i.set("orderPasswordErrorMsg",c.options.textOrderPasswordMandatory)),r},submitCustomCardPayment:function(){var n=this,t={};n.validateCreditCardInformation()?(t={paymentType:c.options.paymentTypes.customCardPayment,paymentInfo:{CardName:n.get("creditCardType").replace(/CARD/,""),CardHolderName:n.get("cardHolderName"),CardNumber:n.cardNumberFull(),CardExpiryMonth:n.formatCardExpiry(n.get("cardExpiryMonth")),CardExpiryYear:n.formatCardExpiry(n.get("cardExpiryYear")),CardSecurityCode:n.get("cardSecurityCode")}},n.processPayment(t)):this.set("isProcessing",!1)},formatCardExpiry:function(n){return n.toString().length===1&&(n="0"+n),n},submitOrderPayment:function(){var u=this,h={},p=u.get("creditCardType").replace(/CARD/,""),s="",w=this.isGiftCardBalanceZero(),l=!0,y=!0,b=u.get("nonCurrentOrderKey"),d=u.get("creditCardUseExistingEwayToken"),k;w||(l=d?!0:this.validateCreditCardInformation());this.get("acknowledgeCreditCardVerification")||(y=!1,this.setMessage(c.options.acknowledgeCreditCardVerificationErrorMessage,n.cv.css.messageTypes.error));w||l&&y?(c.options.paymentProviderMode==a||c.options.paymentProviderMode==v?h={paymentType:c.options.paymentTypes.card,paymentInfo:{CardName:p,CardHolderName:u.get("cardHolderName"),CardNumber:u.cardNumberFull(),CardExpiryMonth:u.formatCardExpiry(u.get("
19cardExpiryMonth")),CardExpiryYear:u.formatCardExpiry(u.get("cardExpiryYear")),CardSecurityCode:u.get("cardSecurityCode"),CommWebSessionId:u.get("commWebSessionId")}}:c.options.paymentProviderMode==f||c.options.paymentProviderMode==e?h={paymentType:c.options.paymentTypes.card,paymentInfo:{CardDetailProcessingMode:o,CardName:p,CardHolderName:u.get("cardHolderName"),CreateTokenID:u.get("rememberPayment"),CardHolderTitle:u.get("rememberPayment")?this.get("cardHolderTitle"):""}}:c.options.paymentProviderMode==r?h={paymentType:c.options.paymentTypes.card,paymentInfo:{CardDetailProcessingMode:o,CardName:p,CardHolderName:u.get("cardHolderName"),CreateTokenID:u.get("rememberPayment"),CardHolderTitle:u.get("rememberPayment")?this.get("cardHolderTitle"):""}}:c.options.paymentProviderMode==i&&(h={paymentType:c.options.paymentTypes.card,paymentInfo:{CardDetailProcessingMode:o,CreateTokenID:u.get("rememberPayment"),CardHolderTitle:u.get("rememberPayment")?this.get("cardHolderTitle"):"",SecureFieldCode:n("#securefieldcode").val()}}),this.get("isAccountPaymentPage")&&(h.paymentInfo.ReceiptNumber=this.get("eftReceiptNumber"),c.options.allowCreditCardFeeOverride&&(k=u.get("cardChargeInfo"),h.paymentInfo.OverrideCCChargePercentage=k.ChargePercent)),n.cv.util.hasValue(b)&&(h.paymentInfo.NonCurrentOrderKey=b),this.processPayment(h)):(this.get("hasGiftCards")&&this.get("totalPaymentBalanceAfterEnteredGiftCards")!="-1"&&!this.isGiftCardBalanceZero()&&(s=c.options.giftCardBalanceNotZeroMessage),l||(s=s.length>0?s+", "+c.options.invalidCreditCardInformation:c.options.invalidCreditCardInformation),y||(s=s.length>0?s+", "+c.options.acknowledgeCreditCardVerificationErrorMessage:c.options.acknowledgeCreditCardVerificationErrorMessage),this.set("paymentUnsuccessful",!0),c.trigger(t,{message:s}),l&&y?u.setMessage(s,n.cv.css.messageTypes.error):c.options.triggerMessages?(c.options.triggerMessages=!1,u.setMessage(s,n.cv.css.messageTypes.error),c.options.triggerMessages=!0):u.setMessage(s,n.cv.css.messageTypes.error),u.hidePaymentProcessingOverlay())},processPageValidationErrors:function(){var i="[data-role='{0}']",t;n.each(_.values(n.cv.css.pageValidationErrors),function(r,u){n(i.format(u.toLowerCase())).each(function(){if(t=n(this).data(u),t){var i=t.viewModel.get("clearWidgetMessages");t.viewModel.set("clearWidgetMessages",!0);t.viewModel.setMessage("");t.viewModel.set("clearWidgetMessages",i);n.isFunction(t.validateInputFields)&&t.validateInputFields(!0,null,!0)}})})},hasNewCustomerPayment:!1,newCustomerPaymentInvoicesTotalAmountToPay:0,getNewCustomerPayment:function(t){var i=this,r=n.Deferred();n.cv.util.isMaf()||i.get("hasNewCustomerPayment")===!1?n.cv.css.trigger(n.cv.css.eventnames.accountPaymentNewCustomerPayment,function(n){i.set("hasNewCustomerPayment",n.customerPaymentCreated);i.set("eftReceiptNumber",n.receiptNumber);i.set("bPayRefNum",n.bPayRefNum);i.set("newCustomerPaymentInvoicesTotalAmountToPay",n.invoicesTotalAmountToPay);r.resolve()}):r.resolve();r.done(function(){t&&t()})},processPayment:function(n){var t=this,i=t.isDepositPayment();i&&(n.paymentInfo.IsDeposit=!0,c.options.isForPayBalance&&(n.paymentInfo.IsAdditionalDeposit=!0),n.paymentInfo.PaymentAmount=t.depositAmount);t.get("isAccountPaymentPage")?t.getNewCustomerPayment(function(){n.paymentInfo.ReceiptNumber=t.get("eftReceiptNumber");n.paymentInfo.InvoicesTotalAmountToPay=t.get("newCustomerPaymentInvoicesTotalAmountToPay");n.paymentInfo.CreditClaims=t.get("creditClaims");t.processPayment2(n)}):t.processPayment2(n)},azupayReceiptNumber:"",azupayPaymentRequestId:"",processPayment2:function(u){var o=this,s="",h,a;o.set("isProcessing",!0);u.paymentInfo.IsAccountPayment=o.get("isAccountPaymentPage");u.paymentInfo.IsPaymentByApprover=c.options.isForApproverPayingNow;c.options.orderPasswordRequired&&(u.paymentInfo.OrderPassword=o.get("orderPassword"));(typeof u.paymentInfo.OrderNo=="undefined"||u.paymentInfo.OrderNo===null)&&(u.paymentInfo.OrderNo=c.options.orderNoOverride);h=o.get("customerTokenPaymentAccepted");u.paymentInfo.UseExistingEwayToken=o.get("creditCardUseExistingEwayToken")||h||o.get("cardDetail
19sRemembered")&&!c.options.isOnOrderAwaitingPaymentPage;u.paymentInfo.EwayTokenFromCustomerPaymentToken=h;c.options.isOrderPaymentLinksMode&&(u.paymentInfo.OrderNo=c.options.orderNumberForOrderPaymentLinksMode,u.orderNumber=c.options.orderNumberForOrderPaymentLinksMode,u.orderTotalAmount=c.options.orderTotalAmountForOrderPaymentLinksMode,u.orderSurcharge=c.options.orderSurchargeForOrderPaymentLinksMode,u.customerCode=c.options.customerCodeForOrderPaymentLinksMode,u.emailAddress=c.options.emailAddressForOrderPaymentLinksMode);a=n.cv.util.isMaf()?n.cv.css.callServiceWithLocationTracking(n.cv.css.paymentProcessor.processPayment,u):c.options.isOrderPaymentLinksMode?n.cv.css.paymentProcessor.processPaymentForOrderPaymentLinksMode(u):n.cv.css.paymentProcessor.processPayment(u);a.done(function(h){var a=h.data,nt,it,d,g,k,p,w,b,y,v;if(a.sessionHasTimedOut)o.redirectToUrl(a.sessionTimeOutRedirectUrl,{},!c.options.includeInBrowserHistory);else{if(u.paymentType.indexOf(c.options.paymentTypes.thirdPartyInstallments)<0&&u.paymentType.indexOf(c.options.paymentTypes.payId)<0&&u.paymentType.indexOf(c.options.paymentTypes.afterPay)<0&&u.paymentType.indexOf(c.options.paymentTypes.openPay)<0&&u.paymentType.indexOf(c.options.paymentTypes.splitPayments)<0&&(u.paymentType.indexOf(c.options.paymentTypes.card)<0&&u.paymentType.indexOf(c.options.paymentTypes.terminal)<0||u.paymentType.indexOf(c.options.paymentTypes.giftCard)>=0||u.paymentType.indexOf(c.options.paymentTypes.approval)===0||u.paymentType.indexOf(c.options.paymentTypes.customCardPayment)===0||u.paymentType.indexOf(c.options.paymentTypes.card)===0&&c.options.paymentProviderMode!==f&&c.options.paymentProviderMode!==e&&c.options.paymentProviderMode!==r))a.Status===0?c.options.isOrderPaymentLinksMode?(o.set("paymentSuccessful",!0),nt=c.options.orderSurchargeForOrderPaymentLinksMode+c.options.orderTotalAmountForOrderPaymentLinksMode,o.redirect("order-payment-links?success=true&amount="+nt,{},c.options.includeInBrowserHistory,!0)):(n.cv.css.removeLocalStorage(c.options.orderNoOverride===0?n.cv.css.localStorageKeys.currentOrder:n.cv.css.localStorageKeys.selectedOrder),n.cv.css.removeLocalStorage(c.options.orderNoOverride===0?n.cv.css.localStorageKeys.currentOrderLines:n.cv.css.localStorageKeys.selectedOrderLines),o.set("paymentSuccessful",!0),n.cv.css.trigger(n.cv.css.eventnames.refreshOutstandingTasksCount),a.IsRedirect&&a.RedirectUrl!=""?(it=a.PaymentType=="3RDPARTY"||u.paymentType.indexOf(c.options.paymentTypes.payRight)>=0,o.redirect(a.RedirectUrl,{},c.options.includeInBrowserHistory,it)):o.redirect(c.options.paymentOkRedirectUrl,{},c.options.includeInBrowserHistory)):(c.options.paymentProviderMode===i&&(n("#eway-secure-field-name").empty(),n("#eway-secure-field-card").empty(),n("#eway-secure-field-expiry").empty(),n("#eway-secure-field-cvn").empty(),l.nameIsValid=!1,l.cardIsValid=!1,l.expiryIsValid=!1,l.cvnIsValid=!1,c._eWaySecureFieldsLoaded=!1,tt()),c.options.paymentProviderMode===i&&c.options.enableKeepGiftCardsAppliedAfterFailedPayments||(d=n(".widget-checkout-review-summary [data-role='ordersummary']"),n.cv.util.hasValue(d)&&(g=d.data("orderSummary"),n.cv.util.hasValue(g)&&(k=g.viewModel.get("giftCards"),n.cv.util.hasValue(k)&&k.length>0&&n.cv.css.trigger(n.cv.css.eventnames.giftCardRemoved,k[0].CardNumber)))),v=o.get("clearExistingMessages"),o.set("paymentUnsuccessful",!0),o.set("clearExistingMessages",!0),n.each(a.Messages,function(t,i){o.setMessage(i,n.cv.css.messageTypes.error);c.options.processPaymentUnsuccessfulMessage==""&&(s=s.length>0?s+","+i:i)}),c.trigger(t,{message:s.length>0?s:c.options.processPaymentUnsuccessfulMessage}),o.set("clearExistingMessages",v),o.hidePaymentProcessingOverlay(),o.braintreePaymentSelected()&&o.braintreeClearSelectedPaymentMethod());else if(u.paymentType.indexOf(c.options.paymentTypes.terminal)>=0)n.cv.css.paymentProcessor.sendTerminalPaymentData({connectionId:n(".client-connection-id").val()});else if(u.paymentType.indexOf(c.options.paymentTypes.openPay)>=0){if(a.Status!==0&&(v=o.get("clearExistingMessages"),o.set("paymentUnsuccessful",!0),o.set("clearExistingMessages",!0),n.each(a.Messages,function(t,i){o.setMessage(i,n.cv.css.messageTypes.error);c.options.processPaymentUnsuccessfulMessage===""&&(s=s.length>0?s+","+i:i)}),c.trigger(t,{message:s.length>0?s:c.options.processPaymentUnsuccessfulMessage}),o.set("clearExistingMessages",v),o.hidePaymentProcessingOverlay()),a.errorMessage!=null){o.setMessage(
19a.errorMessage,n.cv.css.messageTypes.error);return}for(p="",y=0;y<a.AdditionalResultData.length;y++)w=a.AdditionalResultData[y],w.Key==="HandoverUrl"&&(p=w.Value);if(p!==""){for(y=0;y<a.AdditionalResultData.length;y++)w=a.AdditionalResultData[y],p+=p.indexOf("?")<0?"?":"&",p+=w.Key+"="+encodeURIComponent(w.Value||"");n.cv.util.redirect(p,null,!0,!0)}}else if(u.paymentType.indexOf(c.options.paymentTypes.splitPayments)>=0)if(a.Status===0){var rt=u.paymentInfo.IsAccountPayment?u.paymentInfo.InvoicesTotalAmountToPay:o.getCurrentOrder(c.options.displayingOrderInformation).OrderTotalAmount,ut=u.paymentInfo.IsAccountPayment?u.paymentInfo.ReceiptNumber:a.ReceiptNumber,ft=c.options.splitPaymentsPopupUrl.replace(/(amount=)([\d\.]+)(\&?)/gi,"$1"+rt+"$3").replace(/(amt%3d)([\d\.]+)(\&?)/gi,"$1"+rt+"$3").replace(/%7brec%7d/gi,ut);n.fancybox.open({type:"iframe",href:ft,preload:!1,modal:!0,closeBtn:!1,height:"675px"})}else v=o.get("clearExistingMessages"),o.set("paymentUnsuccessful",!0),o.set("clearExistingMessages",!0),n.each(a.Messages,function(t,i){o.setMessage(i,n.cv.css.messageTypes.error);c.options.processPaymentUnsuccessfulMessage==""&&(s=s.length>0?s+","+i:i)}),c.trigger(t,{message:s.length>0?s:c.options.processPaymentUnsuccessfulMessage}),o.set("clearExistingMessages",v),o.hidePaymentProcessingOverlay();else if(u.paymentType.indexOf(c.options.paymentTypes.afterPay)>=0)if(o.set("isAfterPayProcessing",!0),a.Status===0){b=void 0;for(y in a.AdditionalResultData)a.AdditionalResultData[y].Key==="AfterPay_OrderToken"&&(b=a.AdditionalResultData[y].Value);b?(o.set("afterPayOrderToken",b),AfterPay.initialize({countryCode:o.get("countryCode")}),AfterPay.redirect({token:b}),n.cv.css.removeLocalStorage(c.options.orderNoOverride===0?n.cv.css.localStorageKeys.currentOrder:n.cv.css.localStorageKeys.selectedOrder),n.cv.css.removeLocalStorage(c.options.orderNoOverride===0?n.cv.css.localStorageKeys.currentOrderLines:n.cv.css.localStorageKeys.selectedOrderLines)):(o.set("isAfterPayProcessing",!1),o.hidePaymentProcessingOverlay())}else v=o.get("clearExistingMessages"),o.set("paymentUnsuccessful",!0),o.set("clearExistingMessages",!0),n.each(a.Messages,function(t,i){o.setMessage(i,n.cv.css.messageTypes.error);c.options.processPaymentUnsuccessfulMessage===""&&(s=s.length>0?s+","+i:i)}),c.trigger(t,{message:s.length>0?s:c.options.processPaymentUnsuccessfulMessage}),o.set("clearExistingMessages",v),o.hidePaymentProcessingOverlay();else if(u.paymentType.indexOf(c.options.paymentTypes.thirdPartyInstallments)>=0)if(o.set("isThirdPartyInstallmentsProcessing",!0),a.Status===0)if((c.options.thirdPartyInstallmentsPaymentProvider==="ZipPay"||c.options.thirdPartyInstallmentsPaymentProvider==="ZipMoney")&&a.RedirectUrl.length>0){switch(c.options.zipApiVersion.toString()){case"1":zipMoney.checkout(a.RedirectUrl);break;case"2":Zip.Checkout.init({checkoutUri:"/OnlinePaymentReturn.aspx?zip2=true&step=checkouts",onComplete:function(t){var i="&state="+t.state;t.checkoutId&&(i+="&checkoutId="+t.checkoutId);n.cv.util.redirect("/OnlinePaymentReturn.aspx?zip2=true&step=charges"+i,null,!1)},onError:function(t){var i="&state="+t.state;n.cv.util.redirect("/OnlinePaymentReturn.aspx?zip2=true&step=charges"+i,null,!1)}})}n.cv.css.removeLocalStorage(c.options.orderNoOverride===0?n.cv.css.localStorageKeys.currentOrder:n.cv.css.localStorageKeys.selectedOrder);n.cv.css.removeLocalStorage(c.options.orderNoOverride===0?n.cv.css.localStorageKeys.currentOrderLines:n.cv.css.localStorageKeys.selectedOrderLines)}else o.set("isThirdPartyInstallmentsProcessing",!1),o.hidePaymentProcessingOverlay();else v=o.get("clearExistingMessages"),o.set("paymentUnsuccessful",!0),o.set("clearExistingMessages",!0),n.each(a.Messages,function(t,i){o.setMessage(i,n.cv.css.messageTypes.error);c.options.processPaymentUnsuccessfulMessage==""&&(s=s.length>0?s+","+i:i)}),c.trigger(t,{message:s.length>0?s:c.options.processPaymentUnsuccessfulMessage}),o.set("clearExistingMessages",v),o.hidePaymentProcessingOverlay();else u.paymentType.indexOf(c.options.paymentTypes.cash)>=0?o.hidePaymentProcessingOverlay():u.paymentType.indexOf(c.options.paymentTypes.terminal)>=0?o.hidePaymentProcessingOverlay():u.paymentType.indexOf(c.options.paymentTypes.payId)>=0?a.Status===0?(o.set("azupayCheckoutUrl",a.RedirectUrl),o.set("azupayReceiptNumber",a.ReceiptNumber),o.set("azupayPaymentRequestId",a.TransactionReference),o.showModal(c.options.payIdPaymentModal)):(v=o.get("clearExistingMessages"),o.set("paymentUnsuccessful",!0),o.set("clearExistingMessages",!0),n.each(a.Messages,function(t,i){o.setMessage(i,n.cv.css.messageTypes.error);c.options.processPaymentUnsuccessfulMessage==""&&(s=s.length>0?s+","+i:i)}),c.trigger(t,{message:s.length>0?s:c.options.processPaymentUnsuccessfulMessage}),o.set("clearExistingMessages",v),o.hidePaymentProcessingOverlay()):c.signal("_ewayPostProcessing",o,a);c.options.orderPasswordRequired&&o.get("message")===c.options.orderPasswordErrorMessage&&o.set("message","")}}).fail(function(t){o.hidePaymentProcessingOverlay();t.errorMessage!=null?o.setMessage(t.errorMessage,n.cv.css.messageTypes.error):c.options.processPaymentGeneralFailureMessage.length>0&&o.setMessage(c.options.processPaymentGeneralFailureMessage,n.cv.css.messageTypes.error);o.braintreePaymentSelected()&&o.braintreeClearSelectedPaymentMethod()})},continueToPaymentSelected:function(){this.triggerSelectedOption()},triggerSelectedOption:function(){n.cv.css.trigger(n.cv.css.eventnames.selectedPaymentOptionChanged,l.get("currentSelectedOption"))},commWebUpdateSessionFromFormCompleted:function(n){var t=n.status==="ok";return l.set("commWebSessionId",t?n.session.id:""),l.set("cardNumber",t?n.sourceOfFunds.provided.card.number:""),l.set("cardSecurityCode",t?n.sourceOfFunds.provided.card.securityCode:""),l.setCreditCardType(),t},showModal:function(t){n.cv.util.isNullOrWhitespace(t)||n.fancybox.open(n.cv.css.fancybox.defaultSettings({href:"#"+t,modal:!0}))},hideModal:function(){n.fancybox.close()},_setUnloadMethod:function(){window.cvpaymentredirect=!0;window.onbeforeunload=function(){return!0}},_clearUnloadMethod:function(){window.onbeforeunload=function(){};window.cvpaymentredirect=!1},ewayModal:function(t){function i(t){var i=n.cv.util.splitTrimRemoveEmpty(c.options.ewaySharedPageModalEndpoints,",");_.some(i,function(n){return n.toLowerCase()===t.origin.toLowerCase()})&&u.hidePaymentProcessingOverlay()}var u=this,r;window.addEventListener?window.addEventListener("message",i,!1):window.attachEvent&&window.attachEvent("onmessage",i);r={sharedPaymentUrl:t};eCrypt.showModalPayment(r,lt)},submitPayId:function(){var n={paymentType:c.options.paymentTypes.payId,paymentInfo:{}};this.processPayment(n)}
19,azupayPayIdProcessing:!1,cancelAzupayPayId:function(){var t=this,i=t.get("azupayPayIdProcessing");if(!i){n("#azupayPayIdCancelButton").prop("disabled",!0);n("#azupayPayIdConfirmButton").prop("disabled",!0);var r=t.get("azupayReceiptNumber"),u=t.get("azupayPaymentRequestId"),f=n.cv.css.paymentProcessor.cancelAzupayPayId({receiptNumber:r,paymentRequestId:u});f.done(function(i){t.hidePaymentProcessingOverlay();var r=i.data;r.StatusCode===0?(t.hideModal(c.options.payIdPaymentModal),n.cv.util.redirect("/cart")):(t.showModal(c.options.payIdPaymentModal),t.set("clearExistingMessages",!0),n.each(r.Messages,function(i,r){t.setMessage(r,n.cv.css.messageTypes.error)}),n("#azupayPayIdCancelButton").prop("disabled",!1),n("#azupayPayIdConfirmButton").prop("disabled",!1))}).fail(function(){n("#azupayPayIdCancelButton").prop("disabled",!1);n("#azupayPayIdConfirmButton").prop("disabled",!1)})}},confirmAzupayPayId:function(){var t=this,u=t.get("azupayPayIdProcessing"),i,r;u||(t.set("azupayPayIdProcessing",!0),n("#azupayPayIdRedirectingSpinner").show(),n("#azupayPayIdCancelButton").prop("disabled",!0),n("#azupayPayIdConfirmButton").prop("disabled",!0),i=t.get("azupayReceiptNumber"),r=t.get("azupayPaymentRequestId"),n.cv.util.redirect("/OnlinePaymentReturn.aspx?azupay=true&receipt="+i+"&paymentId="+r,null,null,!1))}}));return l._canSetCardExpiryMonth=!0,l._canSetCardExpiryYear=!0,l.bind("change",function(n){var t=c.options,i,r;if(t.autoSelectCardType&&((n.field=="cardNumber"||n.field=="cardNumber1"||n.field=="cardNumber2"||n.field=="cardNumber3"||n.field=="cardNumber4")&&l.get("currentSelectedOption")===t.paymentTypeValues[t.paymentTypes.card]||n.field=="customCardNumber"&&l.get("currentSelectedOption")===t.paymentTypeValues[t.paymentTypes.customCardPayment])&&l.setCreditCardType(),n.field==="currentSelectedOption")l.triggerSelectedOption();else if(n.field==="cardExpiryMonth"){if(l._canSetCardExpiryMonth==!1)return;i=l.get("cardExpiryMonth");i!==""&&(l._canSetCardExpiryMonth=!1,l.set("cardExpiryMonth",parseInt(i)),l._canSetCardExpiryMonth=!0)}else if(n.field==="cardExpiryYear"){if(l._canSetCardExpiryYear==!1)return;r=l.get("cardExpiryYear");r!==""&&(l._canSetCardExpiryYear=!1,l.set("cardExpiryYear",parseInt(r)),l._canSetCardExpiryYear=!0)}t.orderPasswordRequired&&n.field==="orderPassword"&&l.validateOrderPassword(!0)}),l},_ewayPostProcessing:function(i,u){var h=this,e,o,s,c,l,f;if(u.Status===0){i.set("isEWayProcessing",!0);e=void 0;o=void 0;for(s in u.AdditionalResultData)u.AdditionalResultData[s].Key==="eWay_AccessCode"&&(e=u.AdditionalResultData[s].Value),u.AdditionalResultData[s].Key==="eWay_PostbackUrl"&&(o=u.AdditionalResultData[s].Value);e&&o?(i.set("eWayAccessCode",e),h.options.paymentProviderMode!=r||e.startsWith("UseExistingEwayToken")?(c=n("form:first"),c.attr("action",o),c.submit()):i.ewayModal(o)):(i.set("isEWayProcessing",!1),i.hidePaymentProcessingOverlay())}else l=i.get("clearExistingMessages"),f="",i.set("paymentUnsuccessful",!0),i.set("clearExistingMessages",!0),n.each(u.Messages,function(t,r){i.setMessage(r,n.cv.css.messageTypes.error);h.options.processPaymentUnsuccessfulMessage===""&&(f=f.length>0?f+","+r:r)}),h.trigger(t,{message:f.length>0?f:h.options.processPaymentUnsuccessfulMessage}),i.set("clearExistingMessages",l),i.hidePaymentProcessingOverlay()},_getDefaultViewTemplate:function(){return""},_getDefaultItemViewTemplate:function(){var t=this,n="<script type='text/x-kendo-template' id='"+t.options.itemTemplateId+"'>";return n+="<div>",n+="",n+"<\/div><\/script>"}},w=kendo.ui.mvvmwidget.fn;c.getPage=w.getPage;c.getPageArgument=w.getPageArgument;n.cv.ui.widget(c)})(jQuery);
20(function(n){var t="freightSelected",i="pickupWarehousesLoaded",r={name:"freightCarrier",options:{dataSource:[],freightOptionsTextField:"CarrierDescription",freightOptionsValueField:"ID",clearExistingMessages:!0,isFreightCalculator:!1,getDataOnInit:!0,validatePostcode:!1,enableWarehouseGroupFreight:!1,selectDefaultOptionForWarehouseGroupFreight:!1,isDeliveryMethodsInUse:!1,isDeliveryMethodSetOnOrder:!1,freightOptionsDisplayOrder:"",autoBind:!0,triggerMessages:!0,preventSetFreightOnGetFreightUpdateOfDataSource:!1,usingAddressValidation:!1,isProntoFreightQuoteEnabled:!1,isLiveFreightQuoteEnabled:!1,autoSelectSingleWarehouse:!1,textErrorSettingFreight:"There was an error setting the freight",textPostCo
20deRequired:"Please select a postcode/suburb",textPostCodeInWrongFormat:"Postcode is in the wrong format",textNoFreightFoundDefaultMessage:"No freight could be found for your entered details",textNoOwnCarrierNameMessage:"Please select one of your own carriers",textNoOwnCarrierAccountMessage:"Please enter your Freight Account Number",textNoNormalCarrierMessage:"Please select one freight option on order",textPleaseSelectWarehouse:"Please select...",textPleaseConfirmFreightQuote:"Please confirm you would like to receive a freight quote before proceeding",freightOptionNotSelected:"Please select a freight option",multipleFreightOptionsNotSelected:"Please select a freight option from each group",warehouseNotSelected:"Please select a pickup location",freightAccountNoNotProvided:"Please provide an account number to charge to",currentOrderPostcode:"",currentOrderCountry:{Code:"Australia",Description:"Australia"},defaultCountry:"Australia",availableCountries:[{Code:"Australia",Description:"Australia"}],storeName:"",useStorePickup:!1,hasFreightProtection:!1,hasTailgateService:!1,isOrderAllEmailDelivery:!1,freightProtectionNotSelected:"Freight protection has not been selected",tailgateServiceNotSelected:"Tailgate service has not been selected",tailgateRadioButtonName:"tailgateService",suburbLookupId:"",enforceTaxExemptForExportOrders:!1,incTax:!0,viewTemplate:null,showWidgetBeforeFreightOptionsKnown:!0,postcodeRequiredBeforeErrorNotificationsShown:!1,getFreightTriggerFields:[],isRecalculateFreightForQuoteAcceptance:!1,orderNo:0,ruralFreightInfoMessage:"Please note, a rural delivery freight charge of {ChargeAmountForRuralAddresses} has been added to your order",displayRuralFreightInfoMessage:!1},events:["dataBinding","dataBound",t,"freightSelectedInitialOwnCarrier","freightSelectedOwnCarrier",i],viewModel:null,view:null,_viewAppended:!1,finishedInitialize:!1,initialise:function(t){var i=this,r,u,f,e;n.cv.css.trigger(n.cv.css.eventnames.orderCompleteLoadRegistration,{name:i.name});n.cv.css.trigger(n.cv.css.eventnames.widgetInitializingOnCheckout,i.name);r=n(t).children(":first");r.data("view")?i.view=r.html():(i._viewAppended=!0,u=i.options.viewTemplate?n("#"+i.options.viewTemplate).html():i._getDefaultViewTemplate(),f=kendo.template(u),i.view=f(i.options),i.element.html(i.view));i.viewModel=i._getViewModel();i.viewModel.set("showIncTax",i.options.incTax);e=i.element.children(":first");kendo.bind(e,i.viewModel);n.cv.css.bind(n.cv.css.eventnames.billingAddressChanged,n.proxy(i.viewModel.billingAddressChanged,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.addressChanged,n.proxy(i.viewModel.addressChanged,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.addressBeingEdited,n.proxy(i.viewModel.addressBeingEdited,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.addressValidationUpdated,n.proxy(i.viewModel.addressValidationUpdated,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.deliveryMethodSetOnOrder,n.proxy(i.viewModel.deliveryMethodSetOnOrder,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.deliveryMethodClearedFromOrder,n.proxy(i.viewModel.deliveryMethodClearedFromOrder,i.viewModel));n.cv.css.trigger(n.cv.css.eventnames.deliveryMethodLoadedCheck,{widgetName:i.name});n.cv.css.bind(n.cv.css.eventnames.orderChanged,n.proxy(i.viewModel.orderUpdated,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.deliveryMethodLoadedCheck,n.proxy(i.viewModel.deliveryMethodLoadedCheck,i.viewModel));n.cv.util.isMaf()===!1&&n.cv.util.hasContent(i.options.suburbLookupId)&&this.initSuburbLookup()},initSuburbLookup:function(){var r=this,i=n("#"+r.options.suburbLookupId),u=n.cv.data.dataSource({method:"storeLocator/getSuburbHelpers",params:function(){return{searchFilter:i.val(),incName:!0,useLikeName:!0,incPostcode:!0,useLikePostcode:!0,maxResults:30}}}),t=r.viewModel;i.kendoAutoComplete({dataSource:u,filter:"startswith",template:"<span>#= data.Name # #= data.State # #= data.Postcode #<\/span>",select:function(i){if(n.cv.util.hasValue(i.dataItem)&&(t.set("calculatorPostcode",i.dataItem.Postcode),t.set("calculatorSuburb",i.dataItem.Name)),n.cv.util.hasValue(i.item,"[0]")){var r=n(i.item[0]).text();t.set("selectedSuburb",r)}},close:function(){i.val(t.get("selectedSuburb"))},filtering:function(){t.set("calculatorPostcode","");t.set("calculatorSuburb","");t.set("selectedSuburb","")}});i.keydown(function(n){n.which==13&&(n.preventDefault(),n.stopPropagation(),t.calculateFreight())})},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},validateInputFields:function(n){var t=this;
20t.viewModel.validateInputFields(n)},_getViewModel:function(){var r=this,e=function(t,i){var f,e,o;return i===void 0&&(i=!0),f=n.Deferred(),r.options.isFreightCalculator||u.get("showWarehousesForPickup")||u.get("showWarehousesForPickupOrIsLoading")||(r.options.storeName.length>0&&u.getWarehousesForPickup(r.options.storeName),i?(r.options.isDeliveryMethodsInUse&&u.set("isDisabled",!0),u.set("isGettingFreight",!0),e=u.toggleDeliveryMethodDropDown(!1),o={orderNo:r.options.orderNo},n.cv.css.freightCarrier.getFreightForCurrentOrder(o).done(function(i){var e,h,o;u.set("freightTypeString",i.data.FreightTypeString);u.set("showFreightSelector",i.data.ShowFreightSelector);u.set("freightProtection",i.data.FreightProtection);u.set("tailgateService",i.data.TailgateService);u.set("showLiveFreightQuoteMessage",!1);u.set("isFreightQuoteInstructsVisisble",!1);i.data.ShowFreightSelector?(e=[],i.data.OptionGroups.length>0?(r.options.dataSource=i.data.OptionGroups,i.data.OptionGroups[0].TemplateName!=""&&i.data.OptionGroups[0].TemplateName!=null&&u.setFreightTemplateHtml(i.data.OptionGroups[0].TemplateName),r.options.enableWarehouseGroupFreight===!0&&(h=n.cv.css.localGetCurrentOrderLines(),h&&n.each(i.data.OptionGroups,function(t,i){var r={name:i.Name,freightOptionLines:[],freightOptionsList:[],selectedID:null,title:i.Title},u=!0;n.each(h,function(n,t){if(t.LineType==="SN"&&t.Product.length===1&&t.Product[0].WarehouseProductGroup===r.name){var i={Code:t.StockCode,Title:t.Description,Qty:t.OrderedQty,IsFirstItem:u,ProductUnitDescription:t.Product[0].UnitDescription,UnitDescription:t.UnitDescription};r.freightOptionLines.push(i);u=!1}});n.each(i.FreightOptions,function(n,t){var i={AmountIncTax:t.AmountIncTax,AmountExTax:t.AmountExTax,ChargeDescription:t.ChargeDescription,FreightGroupName:r.name,ID:t.ID};r.freightOptionsList.push(i)});e.push(r)}),u.set("freightGroups",e),u.set("isSelectingMultipleOptionGroupFreight",!1)),o=-1,n.each(i.data.OptionGroups[0].FreightOptions,function(n,t){return t.IsStorePickup?(o=n,u.set("isStorePickupAvailable",!0),u.set("storePickupCarrierCode",t.CarrierCode),!1):!0}),i.data.IsFreightOwnCarriersAvailable?(u.set("isFreightOwnCarriersAvailable",!0),u.set("isFreightNormalCarriersVisisble",!1),n.cv.util.isNullOrWhitespace(u.get("currentFreightUseOwnCarrier"))||u.freightSelectedInitialOwnCarrier(),o>-1&&i.data.OptionGroups[0].FreightOptions.splice(o,1)):u.get("isProntoFreightQuoteEnabled")&&(i.data.OptionGroups.length==0||i.data.OptionGroups[0].FreightOptions.length==0||i.data.OptionGroups[0].FreightOptions.length==1&&u.get("isStorePickupAvailable"))&&u.set("isFreightQuoteInstructsVisisble",!0)):(r.options.dataSource=[],r.options.enableWarehouseGroupFreight===!0&&u.set("freightGroups",e)),n.cv.css.trigger(n.cv.css.eventnames.freightQuoteInstructsVisisble,{isVisible:u.safelyGetFreightQuoteInstructsVisible(u.get("isFreightQuoteInstructsVisisble"))})):(r.options.dataSource=[],u.get("isLiveFreightQuoteEnabled")&&(u.set("showLiveFreightQuoteMessage",!0),n.cv.css.trigger(n.cv.css.eventnames.freightQuoteInstructsVisisble,{isVisible:u.safelyGetFreightQuoteInstructsVisible(!0)}),u.set("isFreightQuoteInstructsVisisble",!0)));t&&i.data.Messages.length>0&&(r.viewModel.clearMessage(),n.each(i.data.Messages,function(t,i){u.setMessage(i,n.cv.css.messageTypes.error)}));s();u.set("isInitialLoad",!1);r.options.isDeliveryMethodsInUse&&u.set("isDisabled",!1);r.options.storeName="";f.resolve();u.set("isGettingFreight",!1)}).always(function(){u.toggleDeliveryMethodDropDown(!0,e)})):f.resolve()),f.promise().done(function(){r.finishedInitialize||(r.finishedInitialize=!0,n.cv.css.trigger(n.cv.css.eventnames.widgetFinishedInitializingOnCheckout,r.name))})},o=function(){var t=n.cv.css.localGetCurrentOrder();return t!=null?t.CarrierCode?t.CarrierCode:"":""},l=function(){var t=n.cv.css.localGetCurrentOrder();return t!=null?t.OwnCarrierName?t.OwnCarrierName:"":""},p=function(){var t=n.cv.css.localGetCurrentOrder();return t!=null?t.OwnCarrierAccount?t.OwnCarrierAccount:"":""},a=function(){var t=n.cv.css.localGetCurrentOrder();return t!=null&&n.cv.util.hasValue(t.HasFreightChargeLineRequiresQuote)===!0&&t.HasFreightChargeLineRequiresQuote===!0?!0:!1},s=function(){var h,i,c,a;r.dataSource=kendo.data.DataSource.create(r.options.dataSource);r.options.autoBind&&r.dataSource.fetch();u.updateItemList();u.updateItemListInitialOwnCarriers();u.updateItemListOwnCarriers();var t=o(),e=r.dataSource.view(),s="";e&&e.length>0&&!u.get("showWarehousesForPickup")&&!u.get("showWarehousesForPickupOrIsLoading")&&!u.get("isSelectMinimumFreightRan")&&(s=l(),h=n.cv.util.isNullOrWhitespace(s)?e[0]:n.grep(e,function(n){return n.Name==="FreightOwnCarrier"})[0],i=n.grep(h.FreightOptions,function(n){return n.CarrierCode==t}),i.length>0?(u.get("currentFreightID")!=i[0].ID||u.get("isInitialLoad")?u.set("currentFreightID",i[0].ID):(u.freightSelected(),u.validateInputFields()),i[0].IsStorePickup||(n.cv.util.isNullOrWhitespace(s)&&(f=!0,u.set("currentFreightUseOwnCarrier","UseNormalFreightCarriers")),u.freightSelectedInitialOwnCarrier())):r.options.isRecalculateFreightForQuoteAcceptance===!1&&v(!0,!1));t.length>
200&&t==u.get("storePickupCarrierCode")&&(c=u.get("currentFreightUseOwnCarrier")==t,u.set("currentFreightUseOwnCarrier",t),c&&u.freightSelectedInitialOwnCarrier());n.cv.util.isNullOrWhitespace(s)||(a=u.get("currentFreightUseOwnCarrier")=="UseFreightOwnCarriers",u.set("currentFreightUseOwnCarrier","UseFreightOwnCarriers"),a&&u.freightSelectedInitialOwnCarrier())},v=function(t,i){var o,c,l;if(i===void 0&&(i=!0),r.dataSource&&!u.get("showWarehousesForPickup")&&!u.get("showWarehousesForPickupOrIsLoading")&&!u.get("preventSetFreightOnGetFreightUpdateOfDataSource")){var f=[],s=0,e=0,h=r.dataSource.view();t=u.get("preventSetFreightOnGetFreightUpdateOfDataSource")===!0?!1:typeof t!="undefined"?t:!1;h.length>0&&h[0].FreightOptions&&(o=h[0].FreightOptions,o.length>0&&(s=o[0].AmountIncTax),n.each(o,function(n,t){t.Index=n;t.AmountIncTax<s&&(s=t.AmountIncTax,e=n);f.push(t)}));var a=u.get("isFreightOwnCarriersAvailable"),v=n.cv.util.hasValue(f)&&f.length>0?u.get("currentFreightID")===f[e].ID&&u.get("currentCarrierCode")!==f[e].CarrierCode:!1,y=_.find(u.get("itemList"),function(n){return n.ID===u.get("currentFreightID")&&n.CarrierCode===u.get("currentCarrierCode")}),p=y&&y.AmountIncTax,w=n.cv.util.hasValue(p)&&n.cv.util.hasValue(f,"["+e+"].AmountIncTax")&&p!==f[e].AmountIncTax;!a&&f.length>0&&(u.get("currentFreightID")===""||u.get("currentFreightID")!==f[e].ID||v)&&r.options.storeName.length===0?(c=f[e].ID,l=f[e],r.options.freightOptionsDisplayOrder=="Sequence"&&(c=f[0].ID,l=f[0]),u.set("currentFreightID",c),u.set("selectedFreightOption",l),u.set("isSelectMinimumFreightRan",!0),(v||w)&&u.freightSelected()):!a&&f.length>0&&t&&u.get("currentFreightID")!=""&&u.get("currentFreightID")==f[e].ID?(u.freightSelected(),u.set("isSelectMinimumFreightRan",!0)):w?u.freightSelected():u.get("hasFreightOptions")||u.set("currentFreightID","");i&&u.validateInputFields()}},h=function(){var t,n,i;return r.dataSource?(t=[],n=r.dataSource.view(),n.length>0&&n[0].FreightOptions&&(i=n[0].FreightOptions,t=i),_.map(t,function(n){return n.showIncTax=r.viewModel.get("showIncTax"),n})):[]},y=function(){if(!r.dataSource)return[];if(u.get("isFreightOwnCarriersAvailable")==!1)return[];var t=[],i=r.dataSource.view();return n.each(i,function(i,r){return r.Name=="FreightOwnCarrier"?(n.each(r.FreightOptionsUseOwnCariers,function(n,i){t.push(i)}),!1):!0}),t},c=function(){if(!r.dataSource)return[];if(u.get("isFreightOwnCarriersAvailable")==!1)return[];var t=[],i=r.dataSource.view();return n.each(i,function(i,r){return r.Name=="FreightOwnCarrier"?(n.each(r.FreightOptions,function(n,i){t.push(i)}),!1):!0}),t},u=kendo.observable({dataSource:r.options.dataSource,message:"",showWidget:r.options.showWidgetBeforeFreightOptionsKnown,currentFreightID:"",previousFreightID:"",currentFreightUseOwnCarrier:"",currentFreightOwnCarrierName:l(),currentFreightOwnCarrierAccount:p(),currentCarrierCode:o(),storePickupCarrierCode:"",freightTemplateHtml:"",freightOptionTemplateHtml:"",clearExistingMessages:r.options.clearExistingMessages,calculatorPostcode:r.options.currentOrderPostcode,calculatorSuburb:"",calculatorCountryCode:r.options.currentOrderCountry!=null?r.options.currentOrderCountry.Code:"",calculatorCountryDescription:r.options.currentOrderCountry!=null?r.options.currentOrderCountry.Description:"",calculatorAvailableCountries:r.options.availableCountries,preventSetFreightOnGetFreightUpdateOfDataSource:r.options.preventSetFreightOnGetFreightUpdateOfDataSource,isProntoFreightQuoteEnabled:r.options.isProntoFreightQuoteEnabled!=null?r.options.isProntoFreightQuoteEnabled:!1,isLiveFreightQuoteEnabled:r.options.isLiveFreightQuoteEnabled,isDeliveryMethodsInUse:r.options.isDeliveryMethodsInUse,isDeliveryMethodSetOnOrder:r.options.isDeliveryMethodSetOnOrder,freightProtection:null,tailgateService:null,isGettingFreight:!1,isOrderAllEmailDelivery:r.options.isOrderAllEmailDelivery,freightOptionsDisplayOrder:r.options.freightOptionsDisplayOrder,getFreightTriggerFields:r.options.getFreightTriggerFields,onFreightProtectionChanged:function(){var n=this;n.setFreight()},onTailgateServiceChanged:function(){var n=this;n.setFreight()},showDeliveryView:function(){var n=this;return n.get("showFreightSelector")===!1&&n.get("isLiveFreightQuoteEnabled")===!1&&n.get("showLiveFreightQuoteMessage")===!1?!1:n.get("showWarehousesForPickupOrIsLoading")?!1:n.get("isDeliveryMethodsInUse")&&!n.get("isDeliveryMethodSetOnOrder")?!1:!0},storeLocationDataLoaded:!1,storeLocationData:[{StoreName:r.options.textPleaseSelectWarehouse,WarehouseCode:""}],showWarehousesForPickup:!1,showWarehousesForPickupOrIsLoading:!1,warehouseLoadedFromOrder:!1,selectedWarehouse:null,selectedWarehouseValue:function(){var t="",n=this.get("selectedWarehouse");return n&&(t=typeof n=="object"?n.WarehouseCode:n),t},isDisabled:r.options.usingAddressValidation,isInitialLoad:!0,hasFreightOptions:!1,hasFreightOptionsOrCanSubmitForFreightQuote:!1,isFreightOwnCarriersAvailable:!1,isFreightUseOwnCarriersVisisble:!1,isFreightNormalCarriersVisisble:!0,isFreightNormalCarriersLabelVisisble:!1,isFreightQuoteInstructsVisisble:!1,isFreightQuoteSelected:!1,isStorePickupAvailable:!1,isSelectMinimumFreightRan:!1,isSingleFreightOption:!1,show
20FreightSelector:!1,showLiveFreightQuoteMessage:!1,showRuralDeliveryFreightInfoMessage:!1,isProcessing:!1,isLoadingWarehouses:!1,showOptionsHeading:function(){var n=this.get("showFreightSelector")===!0,t=this.get("showLiveFreightQuoteMessage")===!0;return n||t},isMultiFreightGroupsProcessing:function(){return this.get("isProcessing")&&this.get("freightGroups").length>1},clearMessage:function(){var t=this.get("clearExistingMessages");this.set("clearExistingMessages",!0);this.set("message","");r.options.triggerMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"freightCarrier",clearExisting:this.get("clearExistingMessages")});this.set("clearExistingMessages",t)},setMessage:function(t,i){n.cv.util.notify(this,t,i,{triggerMessages:r.options.triggerMessages,source:r.name})},orderUpdated:function(){var u=this,t=n.cv.css.localGetCurrentOrder(),i=n(r.element[0]).parent();u.set("isOrderAllEmailDelivery",t.IsOrderAllEmailDelivery);r.options.isFreightCalculator&&(t.IsOrderAllEmailDelivery?i.hide():i.show())},updateItemList:function(){var t=h(),i;this.set("itemList",t);this.set("hasFreightOptions",t.length>0);this.set("hasFreightOptionsOrCanSubmitForFreightQuote",t.length>0||this.get("isProntoFreightQuoteEnabled"));this.set("isSingleFreightOption",t.length==1);r.options.isRecalculateFreightForQuoteAcceptance===!1&&v(!1,!1);i=n.grep(u.get("itemList"),function(n){return n.ID===u.get("currentFreightID")});u.set("selectedFreightOption",i.length===1?i[0]:null);r.options.enableWarehouseGroupFreight&&r.options.selectDefaultOptionForWarehouseGroupFreight&&n.each(this.get("freightGroups"),function(n,t){t.set("selectedID",null);var i=t.get("freightOptionsList");i.length===1&&t.set("selectedID",i[0].ID)})},updateItemListInitialOwnCarriers:function(){var n=y();this.set("itemListInitialOwnCarriers",n);this.set("isFreightOwnCarriersAvailable",n.length>0)},updateItemListOwnCarriers:function(){var n=c();this.set("itemListOwnCarriers",n)},itemListIsEmpty:function(){return this.get("itemList").length===0},itemList:h(),itemListInitialOwnCarriers:y(),itemListOwnCarriers:c(),addressValidationUpdated:function(n){this.set("isDisabled",!n.valid)},billingAddressChanged:function(t){var u=n.cv.util.hasValue(t,"changedAddressField")&&t.changedAddressField.toLowerCase()==="sobillcountry",i;u&&(r.options.enforceTaxExemptForExportOrders?(i=n.cv.util.hasValue(t,"updatedAddressDetails.SoBillCountry")&&t.updatedAddressDetails.SoBillCountry.toLowerCase()!==r.options.defaultCountry.toLowerCase(),r.viewModel.set("showIncTax",!i)):r.viewModel.set("showIncTax",r.options.incTax))},addressChanged:function(t){var p=this,f;this.set("isAddressBeingEdited",!1);t.hasPostCode!==!0&&t.hasPostCode!==!1&&(t.hasPostCode=!0);p.set("hasPostCode",t.hasPostCode);var a=!1,v=!1,i=this.get("getFreightTriggerFields");if(t){if(this.handleRuralDeliveryFreightPrompt(t.isRural,t.hasRuralCharge),t.isDeliveryAddressEmpty)return;if((n.cv.util.hasValue(t.changedAddressField)||n.cv.util.hasValue(t.changeAddressFieldList)&&t.changeAddressFieldList.length>0)&&n.cv.util.hasValue(t.isDeliveryAndBillingLinked)){if(f=this.get("freightTypeString"),f==="DeliveryMethods"||f==="Region")return;var r=t.changedAddressField?t.changedAddressField.toLowerCase():"",u=t.changeAddressFieldList?t.changeAddressFieldList:[],o=r==="sodelpostcode"||t.isDeliveryAndBillingLinked&&r==="sobillpostcode"||_.contains(u,"sodelpostcode")||t.isDeliveryAndBillingLinked&&_.contains(u,"sobillpostcode"),s=r==="sodelsuburb"||t.isDeliveryAndBillingLinked&&r==="sobillsuburb"||_.contains(u,"sodelsuburb")||t.isDeliveryAndBillingLinked&&_.contains(u,"sobillsuburb"),h=r==="sodelcountry"||t.isDeliveryAndBillingLinked&&r==="sobillcountry"||_.contains(u,"sodelcountry")||t.isDeliveryAndBillingLinked&&_.contains(u,"sobillcountry"),y=r==="sodelstate"||t.isDeliveryAndBillingLinked&&r==="sobillstate"||_.contains(u,"sodelstate")||t.isDeliveryAndBillingLinked&&_.contains(u,"sobillstate"),c=n.cv.util.hasValue(t.suburbFieldNameForB2b)&&r===t.suburbFieldNameForB2b.toLowerCase()||n.cv.util.hasValue(t.suburbFieldNameForB2b)&&n.inArray(t.suburbFieldNameForB2b.toLowerCase(),u)>=0,l=r==="linkdeliveryandbilling";(o&&_.contains(i,"postcode")||s&&_.contains(i,"suburb")||h&&_.contains(i,"country")||c&&_.contains(i,"suburb")||l&&_.contains(i,"linkdeliveryandbilling")||i.length==0&&(o||s||h||c||l)||f==="Live"&&y&&_.contains(i,"state"))&&(a=!0);(o&&_.contains(i,"postcode")||s&&_.contains(i,"suburb")||y&&_.contains(i,"state")||h&&_.contains(i,"country")||c&&_.contains(i,"suburb")||l&&_.contains(i,"linkdeliveryandbilling"))&&(v=!0)}}a===!0&&(this.currentFreightID="");e(t.hasPostCode===!0,i.length==0||i.length>0&&v)},isAddressBeingEdited:!1,addressBeingEdited:function(){this.set("isAddressBeingEdited",!0);n.cv.css.addRemovePageValidationError(!1,r.name);r.options.usingAddressValidation&&this.set("isDisabled",!0)},deliveryMethodSetOnOrder:function(t){if(!n.cv.util.hasValue(t.widgetName)||t.widgetName===r.name){var i=this,f=r.options.triggerMessages;r.options.triggerMessages=!1;i.set("currentFreightID","");r.options.triggerMessages=f;r.options.isDeliveryMethodsInUse&&u.set("isDisabled",!0);i.set("isDeliveryMethodSetOnOrder",!0);(t.chargeMethod==="Use Delivery Method Charge"||t.chargeMethod==="Use Delivery Method Tiered Charging")&&i.get("settingFreight")===!1&&(i.set("settingFreight",!0),i.setFreight().done(function(){e(!0).done(function(){i.set("settingFreight",!1)})}))}},settingFreight:!1,deliveryMethodClearedFromOrder:function(t){if(!n.cv.util.hasValue(t.widgetName)||t.widgetName===r.name){var i=this;i.set("isDeliveryMethodSetOnOrder",!1)}},setFreightTemplateHtml:function(t){var i=this,r;t!=""&&t!=null?(r=n.cv.css.getParsedTemplate({templateName:t}),n.when(r).done(function(n){var t=n.data;i.set("freightTemplateHtml",t)}).fail(function(){})):i.set("freightOptionTemplateHtml","")},toggleDeliveryMethodDropDown:function(t,i){i===void 0&&(i=-1);var r="#delivery-method-list",u=n(r);return u&&u.data("kendoDropDownList")&&(t?i>0?(n.cv.util.removeExecutionId(r,i),n.cv.util.hasExecutionIds(r)||u.data("kendoDropDownList").enable(!0)):console.error("Unexpected error of execution id input"):(u.data("kendoDropDownList").enable(!1),i=n.cv.util.setExecutionId(r))),i},freightSelected:function(){var t=u,e,f,i,o,s;if(r.options.enableWarehouseGroupFreight){e=n.map(this.get("freightGroups"),function(n){return n.selectedID});this.setFreight(e);return}f=this.get("currentFreightID");(f!=undefined&&f!=""||f==0)&&(i=n.grep(this.get("itemList"),function(n){return n.ID==f}),i.length>0?(i[0].TemplateName!=""&&i[0].TemplateName!=null?(o=n.cv.css.getParsedTemplate({templateName:i[0].TemplateName}),s=t.toggleDeliveryMethodDropDown(!1),n.when(o).done(function(n){var i=n.data;t.set("freightOptionTemplateHtml",i)}).fail(function(){}
20).always(function(){t.toggleDeliveryMethodDropDown(!0,s)})):t.set("freightOptionTemplateHtml",""),t.set("selectedFreightOption",i[0])):t.set("selectedFreightOption",null),t.set("tailgateService",null),n("[name='"+r.options.tailgateRadioButtonName+"']").prop("checked",!1),this.setFreight())},selectedFreightOption:null,isTailgateServiceOptionVisible:function(){var n=u,i=n.get("selectedFreightOption"),t;return i?(t=n.get("selectedFreightOption.TailgateServiceSurchargeMethod"),!t)?!1:!0:!1},freightSelectedInitialOwnCarrier:function(){var t=u,f=t.get("currentFreightUseOwnCarrier"),i,e,r;f!=undefined&&f!=""&&(i=n.grep(t.get("itemListInitialOwnCarriers"),function(n){return n.CarrierCode==f}),i.length>0&&(e=t.get("isFreightQuoteSelected"),i[0].IsStorePickup?(t.set("isFreightNormalCarriersVisisble",!1),t.set("isFreightUseOwnCarriersVisisble",!1),t.set("isFreightNormalCarriersLabelVisisble",!1),t.set("currentFreightOwnCarrierName",""),t.set("currentFreightOwnCarrierAccount",""),t.set("isFreightQuoteInstructsVisisble",!1),e&&t.set("isFreightQuoteSelected",!1),n.cv.css.trigger(n.cv.css.eventnames.freightQuoteInstructsVisisble,{isVisible:!1}),n.cv.css.trigger(n.cv.css.eventnames.freightQuoteSelected,{isSelected:!1}),this.set("currentFreightID",i[0].ID)):i[0].CarrierCode=="UseNormalFreightCarriers"?(this.set("isFreightUseOwnCarriersVisisble",!1),t.set("currentFreightOwnCarrierName",""),t.set("currentFreightOwnCarrierAccount",""),!t.get("hasFreightOptions")&&t.get("isProntoFreightQuoteEnabled")?(t.set("isFreightQuoteInstructsVisisble",!0),n.cv.css.trigger(n.cv.css.eventnames.freightQuoteInstructsVisisble,{isVisible:t.safelyGetFreightQuoteInstructsVisible(!0)}),n.cv.css.trigger(n.cv.css.eventnames.freightQuoteSelected,{isSelected:!1})):(t.set("isFreightNormalCarriersVisisble",!0),t.set("isFreightNormalCarriersLabelVisisble",!0)),r=h(),r.length===1&&(t.set("currentFreightID",r[0].ID),t.ownFreightOptionCarrierClicked())):i[0].CarrierCode=="UseFreightOwnCarriers"&&(t.set("isFreightUseOwnCarriersVisisble",!0),t.set("isFreightNormalCarriersVisisble",!1),t.set("isFreightNormalCarriersLabelVisisble",!1),t.set("isFreightQuoteInstructsVisisble",!1),e&&t.set("isFreightQuoteSelected",!1),r=c(),r.length===1&&t.set("currentFreightOwnCarrierName",r[0].CarrierCode),n.cv.css.trigger(n.cv.css.eventnames.freightQuoteInstructsVisisble,{isVisible:!1}),n.cv.css.trigger(n.cv.css.eventnames.freightQuoteSelected,{isSelected:!1}))))},setFreightQuoteSelected:function(){var n=u;window.setTimeout(n.setFreightQuoteSelectedDoWork,10)},setFreightQuoteSelectedDoWork:function(){var t=u,i=t.get("isFreightQuoteSelected"),r,f;i?(r=t.get("currentFreightID"),t.set("previousFreightID",r),t.set("currentFreightID",0),t.set("isFreightNormalCarriersVisisble",!1),t.set("isFreightNormalCarriersLabelVisisble",!1)):t.get("hasFreightOptions")&&!t.get("isFreightOwnCarriersAvailable")&&(f=t.get("previousFreightID"),t.set("currentFreightID",f),t.set("isFreightNormalCarriersVisisble",!0),t.set("isFreightNormalCarriersLabelVisisble",!0));n.cv.css.trigger(n.cv.css.eventnames.freightQuoteSelected,{isSelected:i})},setFreightOwnCarrier:function(){var t=n("#freight-wrapper"),i=t.data("kendoValidator"),e;if(!i&&t.kendoValidator&&(t.kendoValidator(r.options.validationOptions),i=t.data("kendoValidator")),!i||i.validate()){var o=u,f=this.get("currentFreightOwnCarrierName"),s=this.get("currentFreightOwnCarrierAccount");if(f==undefined||f==""){o.setMessage(r.options.textNoOwnCarrierNameMessage,n.cv.css.messageTypes.error);return}if(s==undefined||s==""){o.setMessage(r.options.textNoOwnCarrierAccountMessage,n.cv.css.messageTypes.error);return}e=n.grep(this.get("itemListOwnCarriers"),function(n){return n.CarrierCode==f});e.length>0&&this.set("currentFreightID",e[0].ID)}},setFreight:function(i){var u=this,s,f,l;u.clearMessage();s=a();i=i||[];i.length===0&&(f=this.get("currentFreightID"),f!=null&&f!==""&&f!==""&&f>=0&&!u.get("isFreightQuoteSelected")&&!u.get("isLoadingWarehouses")&&i.push(f),i=n.grep(i,function(n){return n!==null&&n!==""&&n!==""}));var h=u.get("showWarehousesForPickup")||u.get("isLoadingWarehouses")?u.selectedWarehouseValue():"",c=u.get("
20currentFreightOwnCarrierAccount"),v=u.get("currentFreightOwnCarrierName"),e;if(i.length>=0||h){if(!n.cv.util.isNullOrWhitespace(v)&&n.cv.util.isNullOrWhitespace(c))return null;u.set("isProcessing",!0);_.extend(n.cv.css._proxyMeta,n.cv.util.getBaseProxyMeta(r),{itemList:this.get("itemList")});l=u.toggleDeliveryMethodDropDown(!1);n.cv.css.trigger(n.cv.css.eventnames.updateFreightStatusChanged,!0);n.cv.css.trigger(n.cv.css.eventnames.setFreightStart);e=n.cv.css.freightCarrier.setFreightForCurrentOrder({freightOptionIDs:i,warehouseCode:h,ownCarrierAccount:c,isB2BPickupAndContactDetailsInUse:u.get("isB2BPickupAndContactDetailsInUse"),freightProtection:u.isDelivery()?u.get("freightProtection"):!1,tailgateService:u.isDelivery()?u.get("tailgateService"):!1,orderNo:r.options.orderNo});e.done(function(f){var c,e,l;u.set("isProcessing",!1);c=f.data;c.result?(u.set("currentCarrierCode",o()),r.trigger(t),e=a(),(s&&!e||!s&&e)&&n.cv.css.trigger(n.cv.css.eventnames.freightQuoteSelected,{isSelected:e,refreshPaymentOptionsDataSoure:!0}),u.get("isB2BPickupAndContactDetailsInUse")&&i.length==0&&h&&n.cv.css.trigger(n.cv.css.eventnames.pickupB2bChanged,{isB2BPickupAndContactDetailsInUse:!0}),l=u.get("isFreightQuoteInstructsVisisble"),n.cv.css.trigger(n.cv.css.eventnames.freightQuoteInstructsVisisble,{isVisible:u.safelyGetFreightQuoteInstructsVisible(l)})):u.setMessage(c.errorMessage,n.cv.css.messageTypes.error)}).fail(function(){u.set("isProcessing",!1);u.setMessage(r.options.textErrorSettingFreight,n.cv.css.messageTypes.error)}).always(function(){u.toggleDeliveryMethodDropDown(!0,l);n.cv.css.trigger(n.cv.css.eventnames.setFreightFinished);n.cv.css.trigger(n.cv.css.eventnames.updateFreightStatusChanged,!1);r.options.isRecalculateFreightForQuoteAcceptance?n.cv.css.trigger(n.cv.css.eventnames.orderChanged,{forceRefetchOrder:!0}):n.cv.css.trigger(n.cv.css.eventnames.orderChanged)})}else e=n.cv.css.getResolvedPromise();return e},handleRuralDeliveryFreightPrompt:function(t,i){i?(r.viewModel.clearMessage(),t==null&&(t=r.options.displayRuralFreightInfoMessage),t&&r.viewModel.setMessage(r.options.ruralFreightInfoMessage,n.cv.css.messageTypes.info)):t=!1;this.set("showRuralDeliveryFreightInfoMessage",t)},calculateFreight:function(){var t=this,i={},u;if(t.clearMessage(),r.options.dataSource=[],s(),t.get("calculatorPostcode")==""||t.get("calculatorSuburb")=="")t.setMessage(r.options.textPostCodeRequired,n.cv.css.messageTypes.error);else{if(r.options.validatePostcode&&!n.cv.util.testRegEx(/^\d{4}$/,t.get("calculatorPostcode"),!1)){t.setMessage(r.options.textPostCodeInWrongFormat,n.cv.css.messageTypes.error);return}i.postCode=t.get("calculatorPostcode");i.suburb=t.get("calculatorSuburb");t.get("calculatorCountryCode")!=""&&(i.countryCode=t.get("calculatorCountryCode"));t.set("isProcessing",!0);u=n.cv.css.freightCarrier.getFreightEstimateForCurrentOrder(i);n.when(u).done(function(i){t.set("isProcessing",!1);i.data.OptionGroups.length>0?r.options.dataSource=i.data.OptionGroups:(r.options.dataSource=[],t.setMessage(r.options.textNoFreightFoundDefaultMessage,n.cv.css.messageTypes.error));s()})}},pickupWarehouseChanged:function(){this.setWarehouse()},flagSelectedWarehouse:function(){var t=this,i=t.selectedWarehouseValue();n.each(t.get("storeLocationData"),function(n,t){this.WarehouseCode&&this.WarehouseCode==i?t.set("isSelected",!0):t.set("isSelected",!1)})},setWarehouse:function(){this.setFreight();n.cv.css.trigger(n.cv.css.eventnames.pickupWarehouseChanged,{warehouse:this.selectedWarehouseValue()})},validateInputFields:function(t){var i,u,e,h,c,o,s;if(r.viewModel.clearMessage(),i=!0,u="",this.get("isAddressBeingEdited"))i=!1;else{if(!this.get("showWarehousesForPickup")&&!this.get("showWarehousesForPickupOrIsLoading")&&this.get("showFreightSelector"))if(r.options.enableWarehouseGroupFreight){if(!this.get("isProcessing"))if(e=this.get("freightGroups"),e.length===0)i=!1,u=r.options.textNoFreightFoundDefaultMessage;else if(h=n.grep(e,function(n){return n.selectedID===null}),h.length>0)switch(e.length){case 1:i=!1;u=r.options.freightOptionNotSelected;break;default:i=!1;u=r.options.multipleFreightOptionsNotSelected}}else this.get("currentFreightID")!=null&&this.get("currentFreightID").toString()!=""||this.get("currentFreightUseOwnCarrier")!==""||(i=!1,u=r.options.freightOptionNotSelected),this.get("currentFreightUseOwnCarrier")==="UseFreightOwnCarriers"&&(n.cv.util.isNullOrWhitespace(this.get("currentFreightOwnCarrierAccount"))&&(i=!1,u=r.options.freightAccountNoNotProvided),n.cv.util.isNullOrWhitespace(this.get("currentFreightOwnCarrierName"))&&(i=!1,u=r.options.textNoOwnCarrierNameMessage)),this.get("currentFreightUseOwnCarrier")!=="UseNormalFreightCarriers"||f||(this.get("isProntoFreightQuoteEnabled")===!0&&n.cv.util.hasValue(this.get("isFreightQuoteSelected"))&&this.get("isFreightQuoteSelected")===!1?(i=!1,u=r.options.textPleaseConfirmFreightQuote):this.get("isProntoFreightQuoteEnabled")===!1&&(i=!1,u=r.options.textNoNormalCarrierMessage));c=this.get("currentFreightID");o=n.grep(this.get("itemList"),function(n){return n.ID===c});o.length>0&&o[0].IsNoFreight&&(this.get("currentFreightUseOwnCarrier")==="UseNormalFreightCarriers"||this.get("currentFreightUseOwnCarrier")==="")&&(i=!1,u=o[0].ChargeDescription);this.get("showWarehousesForPickup")&&this.get("selectedWarehouse")==null&&(i=!1,u=r.options.warehouseNotSelected);t===!0&&r.options.hasFreightProtection&&this.get("freightProtection")===null&&(i=!1,u=r.options.freightProtectionNotSelected);t===!0&&r.options.hasTailgateService&&this.get("tailgateService")===null&&(i=!1,u=r.options.tailgateServiceNotSelected);s=!this.get("isInitialLoad")&&u.length>0;(s&&r.options.postcodeRequiredBeforeErrorNotificationsShown===!1||s&&r.options.postcodeRequiredBeforeErrorNotificationsShown===!0&&r.viewM
20odel.get("hasPostCode")===!0)&&this.setMessage(u,n.cv.css.messageTypes.error)}i===!0&&this.set("showWidget",!0);(this.get("isGettingFreight")||this.get("isProcessing"))&&(i=!1,u=r.options.freightOptionNotSelected);n.cv.css.addRemovePageValidationError(i,r.name);n.cv.css.trigger(n.cv.css.eventnames.freightValidated)},ownFreightOptionClicked:function(){var n=this.get("currentFreightID");f=n!=null&&n!==""&&n>=0?!0:!1},ownFreightOptionCarrierClicked:function(){f=!0},getWarehousesForPickup:function(t){var u=this,f;u.set("isInitialLoad",!0);u.set("showWarehousesForPickupOrIsLoading",!0);u.get("storeLocationDataLoaded")==!1?(u.set("isLoadingWarehouses",!0),f=n.cv.css.storeLocator.getWarehousesForPickup(),n.when(f).done(function(f){n.each(f.data,function(n,t){t.selectWarehouse=function(){u.set("selectedWarehouse",t)}});var e={StoreName:r.options.textPleaseSelectWarehouse,WarehouseCode:""};u.set("storeLocationData",n.merge([e],f.data));t.length>0&&n.each(f.data,function(n,i){u.set("warehouseLoadedFromOrder",!0);i.StoreName==t&&u.set("selectedWarehouse",i);u.set("warehouseLoadedFromOrder",!1)});u.get("selectedWarehouse")==null&&n.each(f.data,function(n,t){(t.IsDefaultWarehouse||r.options.autoSelectSingleWarehouse&&f.data.length===1)&&u.set("selectedWarehouse",t)});u.get("selectedWarehouse")==null&&u.set("selectedWarehouse",e);u.set("storeLocationDataLoaded",!0);r.trigger(i);u.set("showWarehousesForPickup",!0);u.set("isLoadingWarehouses",!1);u.set("currentFreightID","");u.validateInputFields();u.set("isInitialLoad",!1)})):(u.set("showWarehousesForPickup",!0),u.set("currentFreightID",""),u.get("selectedWarehouse")!=null&&u.pickupWarehouseChanged(),u.validateInputFields(),u.set("isInitialLoad",!1))},deliveryMethodLoadedCheck:function(n){var t=this;n.deliveryAddressMode&&t.set("deliveryAddressMode",n.deliveryAddressMode)},isDelivery:function(){return this.get("deliveryAddressMode")==="Delivery"},safelyGetFreightQuoteInstructsVisible:function(n){return n===undefined||!n?!1:this.showDeliveryView()},deliveryAddressMode:"Delivery",isB2BPickupAndContactDetailsInUse:!1,freightGroups:[]}),f;return n.cv.css.bind(n.cv.css.eventnames.deliveryAddressModeChanged,function(t){u.set("deliveryAddressMode",t.message);u.set("isB2BPickupAndContactDetailsInUse",t.isB2BPickupAndContactDetailsInUse);u.set("selectedFreightOption",null);n.cv.css.trigger(n.cv.css.eventnames.orderChanged);switch(t.message){case"Delivery":u.set("showWarehousesForPickup",!1);u.set("showWarehousesForPickupOrIsLoading",!1);break;case"Pickup":r.options.useStorePickup&&u.getWarehousesForPickup("")}}),f=!1,u.bind("change",function(t){var f=this.get("currentFreightOwnCarrierName"),e=this.get("currentFreightOwnCarrierAccount"),i;t.field!=="freightGroups"||r.options.isFreightCalculator||u.get("showWarehousesForPickup")||u.get("showWarehousesForPickupOrIsLoading")?t.field!="currentFreightID"||r.options.isFreightCalculator||u.get("showWarehousesForPickup")||u.get("showWarehousesForPickupOrIsLoading")?t.field!="currentFreightUseOwnCarrier"||r.options.isFreightCalculator?(t.field==="currentFreightOwnCarrierName"||t.field==="currentFreightOwnCarrierAccount")&&(i=n.grep(this.get("itemListOwnCarriers"),function(n){return n.CarrierCode==f}),i.length>0&&!n.cv.util.isNullOrWhitespace(e)&&(this.set("currentFreightID",i[0].ID),t.field==="currentFreightOwnCarrierAccount"&&u.setFreight()),u.validateInputFields(!0)):u.freightSelectedInitialOwnCarrier():(u.validateInputFields(!0),u.freightSelected()):(u.validateInputFields(!0),u.freightSelected());t.field=="selectedWarehouse"&&(n.cv.css.localSetcurrentPickupAddress(u.get("selectedWarehouse")),u.flagSelectedWarehouse(),u.get("warehouseLoadedFromOrder")||u.pickupWarehouseChanged(),u.validateInputFields(!0))}),r.options.getDataOnInit&&!r.options.isDeliveryMethodsInUse&&e(!1),u},_getDefaultViewTemplate:function(){return"<div id='freight-wrapper'><!-- If have functionality configured choose if wish to use own carriers instead, or just use normal freight, also Store Pickup if normally available --><select data-bind='visible:isFreightOwnCarriersAvailable, source:itemListInitialOwnCarriers, value: currentFreightUseOwnCarrier' data-text-field='CarrierDescription' data-value-field='CarrierCode'>&nbsp;<\/select><!-- If Chose want to use own carriers instead of normal freight, now choose an actual own carrier from those available --><div id='divFreightOwnCarriersSelection' data-bind='visible:isFreightUseOwnCarriersVisisble'><label><span><br /><br />Select from your list of own Carriers<br /><\/span><\/label><select data-bind=' source:itemListOwnCarriers, value: currentFreightOwnCarrierName' data-text-field='CarrierDescription' required data-required-msg='Required' validationMessage='Your own Carrier selection is required'  data-value-field='CarrierCode'>&nbsp;<\/select><label><span><br /><br />Your Freight Account No.<\/span><\/label><input maxlength='25' type='text' required data-required-msg='Required' validationMessage='Your own Freight Account No. is required' data-bind='value: currentFreightOwnCarrierAccount'><a href='javascript:$.noop()' id='button-save-freight-own-carrier' data-bind='click: setFreightOwnCarrier'>Update<\/a><\/div><!-- Choose from normal freight options available --><label data-bind='visible:isFreightNormalCarriersLabelVisisble'><span><br /><br />Select freight on order<br /><\/span><\/label><select data-bind='visible:isFreightNormalCarriersVisisble, source: itemList, value: currentFreightID' data-text-field='CarrierDescription' data-value-field='ID'>&nbsp;<\/select><\/ul><\/div>"}};n.cv.ui.widget(r)})(jQuery);
21(function(n){var t="dataBound",i="listUpdated",r="None",u={name:"promotionalCodes",o
21ptions:{dataSource:[],promoCodeFailedMessageType:n.cv.css.messageTypes.error,isOrdersApprovalPromoEntry:!1,isOrderTrackingSummary:!1,orderNoOverride:0,autoBind:!0,listUpdated:"",triggerMessages:!0,clearWidgetMessages:!0,textApplyPromotionCodeFailed:"Failed to apply the promotion code",textPromotionCodeSuccessfullyRemoved:"Promotion code successfully removed",textRemovePromotionCodeFailed:"Failed to remove the promotion code",textApplyPromotionalCodePrompt:"Apply",textRemovePromotionalCodePrompt:"Remove",textPromotionCodeNowValid:"Promotion code: {0} ({1}) now valid",textPromotionCodeNowInValid:"Promotion code: {0} ({1}) now invalid",textPromotionCodeApplied:"Promotion code: {0} applied",textPromotionCodeRemoved:"Promotion code: {0} removed",promotionalCodeEntryLocation:"Top",promotionalCodeExpiryPrompt:"",viewTemplate:null,itemViewTemplate:null,inclusive:null,gtmSuccessEventname:"",gtmFailEventname:""},events:["dataBinding",t,i],viewModel:null,view:null,_viewAppended:!1,_itemViewAppended:!1,initialise:function(i){var r=this,u=n(i).children(":first"),f,e,o;u.data("view")?r.view=u.html():(r._viewAppended=!0,r.options.itemViewTemplate||(r.options.itemViewTemplate=r.name+"-item-template-"+kendo.guid(),r._itemViewAppended=!0),f=r.options.viewTemplate?n("#"+r.options.viewTemplate).html():r._getDefaultViewTemplate(),e=kendo.template(f),r.view=e(r.options),r._itemViewAppended&&(r.view+=r._getDefaultItemViewTemplate()),r.element.html(r.view));r.viewModel=r._getViewModel();o=r.element.children(":first");kendo.bind(o,r.viewModel);r.trigger(t);n.cv.css.bind(n.cv.css.eventnames.orderChanged,n.proxy(r.viewModel.orderUpdated,r.viewModel));n.cv.css.bind(n.cv.css.eventnames.viewApprovalOrder,function(n){n&&r.viewModel.set("order",n)})},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},_getViewModel:function(){var t=this,f=function(){if(t.options.dataSource.length==0){var i=n.Deferred();u.get("order")==null?n.cv.css.unifyPromiseOrValue(n.cv.css.localGetCurrentOrder(!0),function(){i.resolve()}):i.resolve();n.when(i).done(function(){var i=t.options.isOrdersApprovalPromoEntry||t.options.isOrderTrackingSummary?n.cv.css.localGetSelectedOrder(t.options.orderNoOverride,"",!1):n.cv.css.localGetCurrentOrder();u.set("order",i);i!=null&&(t.options.dataSource=i.PromotionalCodes,t.options.currentDataSource!=undefined&&n.each(t.options.dataSource,function(i,r){n.each(t.options.currentDataSource,function(i,f){r.PromotionCode==f.PromotionCode&&r.IsValidOnCurrentOrder!=f.IsValidOnCurrentOrder&&(r.IsValidOnCurrentOrder?u.setMessage(t.options.textPromotionCodeNowValid.format(r.PromotionCode,r.Description),n.cv.css.messageTypes.success):u.setMessage(t.options.textPromotionCodeNowInValid.format(r.PromotionCode,r.Description),n.cv.css.messageTypes.error))})}),t.options.currentDataSource=t.options.dataSource,e())})}else e()},e=function(){t.dataSource=new kendo.data.DataSource({data:t.options.dataSource});t.options.autoBind&&t.dataSource.fetch();u.updateItemList()},o=function(t,i,r){n.cv.css.ordersApproval.logApprovalEvent({_objectKey:t,eventDescription:i,eventType:r})},s=function(){if(!t.dataSource)return[];var i=[];return n.each(t.dataSource.view(),function(r,f){f.Index=r;f.isRemoving=!1;f.promoExpiryText=function(){return n.cv.util.hasValue(f.EndDate)?n.cv.util.string.format(t.options.promotionalCodeExpiryPrompt,kendo.toString(f.EndDate,"d")):""};f.execCommand_destroy=function(){f.set("isRemoving",!0);var i={_objectKey:u.get("order")._objectKey,promoCode:f.PromotionCode,orderNo:u.get("order").SoOrderNo};(t.options.isOrdersApprovalPromoEntry?n.cv.css.ordersApproval.removePromoCode(i):n.cv.css.orders.removePromoCode(i)).done(function(){t.dataSource.remove(f);n.cv.css.trigger(n.cv.css.eventnames.promoCodeRemoved,{promoCode:f.PromotionCode});var i=n.Deferred();t.options.isOrdersApprovalPromoEntry?(o(u.get("order")._objectKey,t.options.textPromotionCodeRemoved.format(f.PromotionCode.trim()),"Promotion code removed"),i.resolve()):i=n.cv.css.getCurrentOrder();i.done(function(){u.clearMessage();u.setMessage(t.options.textPromotionCodeSuccessfullyRemoved,n.cv.css.messageTypes.success);t.options.isOrdersApprovalPromoEntry||n.cv.css.trigger(n.cv.css.eventnames.orderChanged);f.set("isRemoving",!1)})}).fail(function(){u.clearMessage();u.setMessage(t.options.textRemovePromotionCodeFailed,n.cv.css.messageTypes.error);f.set("isRemoving",!1)})};i.push(f)}),i},u=kendo.observable({order:n.cv.css.localGetCurrentOrder(),promotionCode:"",usePromotionCodes:t.options.promotionalCodeEntryLocation==r?!1:!0,dataSource:t.options.dataSource,message:"",clearWidgetMessages:t.options.clearWidgetMessages,promotionalCodesExist:!1,isAdding:!1,showMessages:function(i,r){var u=this,f=i;u.set("clearWidgetMessages",!1);n.each(f,function(n,t){t!=""&&u.setMessage(t,r)});u.set("clearWidgetMessages",t.options.clearWidgetMessages)},setMessage:function(i,r){n.cv.util.notify(this,i,r,{triggerMessages:t.options.triggerMessages,source:t.name,clearExisting:t.options.clearWidgetMessages})},clearMessage:function(){this.set("message","");t.options.triggerMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"promotionalCodes",clearExisting:!0})},orderUpdated:function(){t.options.dataSource=[];f()},updateItemList:function(){var n=s();this.set("itemList",n);this.set("promotionalCodesExist",n.length>0);t.trigger(i,{count:n.length})},itemList:s(),itemListInclusive:function(){return n.grep(this.get("itemList"),function(n){return n.IsInclusive===!0})},itemListExclusive:function(){return n.grep(this.get("itemList"),function(n){return n.IsInclusive===!1})},hasInclusivePromotionCodes:function(){var n=this.itemListInclusive();return n.length>0},hasExclusivePromotionCodes:function(){var n=this.itemListExclusive();return n.length>0},hasNoPromotionCodes:function(){var n=this.itemListInclusive(),t=this.itemListExclusive();return n.length<=0&&t.length<=0},hasBothInclusiveAndExclusivePromotionCodes:function(){var n=this.itemListInclusive(),t=this.itemListExclusive();return t.length>0&&n.length>0},promoCodeInputKeyUp:function(n){n.which==13&&(n.preventDefault(),n.stopPropagation(),this.applyPromotionCode())},applyPromotionCode:function(){var i=this,r=i.promotionCode.trim(),u;if(!n.cv.util.isNullOrWhitespace(r)){if(r!==n.cv.util.stripHtml(r)){i.setMessage(t.options.textApplyPromotionCodeFailed,n.cv.css.messageTypes.error);return}i.set("isAdding",!0);u={_objectKey:i.get("order")._objectKey,promoCode:r,orderNo:i.order.SoOrderNo,gtmSuccessEventname:t.options.gtmSuccessEventname,gtmFailEventname:t.options.gtmFailEventname};(t.options.isOrdersApprovalPromoEntry?n.cv.css.ordersApproval.applyPromoCode(u):n.cv.css.orders.applyPromoCode(u)).done(function(r){var u=r.data,f;n.cv.css.trigger(n.cv.css.eventnames.promoCodeApplied,{promoCode:u.PromotionCode});f=n.Deferred();t.options.isOrdersApprovalPromoEntry?(o(i.get("order")._objectKey,t.options.textPromotionCodeApplied.format(i.promotionCode.trim()),"Promotion code applied"),f.resolve()):f=n.cv.css.getCurrentOrder();f.done(function(){i.clearMessage();u.IsValid?(i.set("promotionCode",""),i.setMessage(u.Message,n.cv.css.messageTypes.success)):u.Message!==""?i.setMessage(u.Message,t.options.promoCodeFailedMessageType):i.setMessage(t.options.textApplyPromotionCodeFailed,t.options.promoCodeFailedMessageType);i.set("isAdding",!1)})}).fail(function(){i.clearMessage();i.setMessage(t.options.textApplyPromotionCodeFailed,n.cv.css.messageTypes.error);i.set("isAdding",!1)})}}});return f(),u},_getDefaultViewTemplate:function(){var n=this;return"<div data-view='true'><div>
21<input data-bind='value: promotionCode, events: {keyup: promoCodeInputKeyUp}' class='promotional-code-input' type='text' /><input data-bind='click: applyPromotionCode' type='button' href='javascript:$.noop()' id='promotional-code-apply' value='"+n.options.textApplyPromotionalCodePrompt+"' /><div class='itemList' data-bind='source: itemList, visible: promotionalCodesExist' data-template='"+n.options.itemViewTemplate+"'><\/div><\/div><\/div>"},_getDefaultItemViewTemplate:function(){var n=this;return"<script type='text/x-kendo-template' id='"+n.options.itemViewTemplate+"'><div class='promotional-code'>#= Description #<input data-bind='click: execCommand_destroy' type='button' href='javascript:$.noop()' class='promotional-code-remove' value='"+n.options.textRemovePromotionalCodePrompt+"' /><\/div><\/script>"}};n.cv.ui.widget(u)})(jQuery);
22(function(n){var t="widgetDataInitialised",i={name:"headerLevelCostCentre",extend:"mvvmwidget",options:{triggerMessages:!0,clearWidgetMessages:!0,showCostCentreList:!1,textApplyHeaderCostCentreFailed:"Failed to apply the cost centre",costCentreList:[],autoBind:!0,viewTemplate:null,itemViewTemplate:null},extendEvents:[t],viewModelBound:function(){var n=this;n.trigger(t)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this,r=function(){i.set("headerLevelCostCentre",i.order.CostCentreCode);i.set("showCostCentre",t.options.showCostCentreList)},i=kendo.observable(n.extend({},t.options,{order:n.cv.css.localGetCurrentOrder(),headerLevelCostCentre:"",costCentreList:t.options.costCentreList,showCostCentre:t.options.showCostCentreList,message:"",clearWidgetMessages:t.options.clearWidgetMessages,isAdding:!1,showMessages:function(i,r){var u=this,f=i;u.set("clearWidgetMessages",!1);n.each(f,function(n,t){t!=""&&u.setMessage(t,r)});u.set("clearWidgetMessages",t.options.clearWidgetMessages)},setMessage:function(i,r){n.cv.util.notify(this,i,r,{triggerMessages:t.options.triggerMessages,source:t.name,clearExisting:t.options.clearWidgetMessages})},clearMessage:function(){this.set("message","");t.options.triggerMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"",clearExisting:!0})},applyHeaderCostCentre:function(){var i=this,r=i.headerLevelCostCentre.trim(),u;if(r!==n.cv.util.stripHtml(r)){i.setMessage(t.options.textApplyHeaderCostCentreFailed,n.cv.css.messageTypes.error);return}i.set("isAdding",!0);u={_objectKey:i.get("order")._objectKey,headerCostCentreCode:r,orderNo:i.order.SoOrderNo};n.cv.css.orders.applyHeaderCostCentre(u).done(function(){var t=n.Deferred();t=n.cv.css.getCurrentOrder();t.done(function(){i.clearMessage();i.setMessage("Cost centre has been applied",n.cv.css.messageTypes.success);i.set("isAdding",!1)})}).fail(function(){i.clearMessage();i.setMessage(t.options.textApplyHeaderCostCentreFailed,n.cv.css.messageTypes.error);i.set("isAdding",!1)})}}));return r(),i}};n.cv.ui.widget(i)})(jQuery);
23(function(n){var i="dataBound",r="fieldsUpdated",u="fieldsCompleted",f="widgetDataInitialised",t="fieldsChanged",e={name:"orderCompleteFields",options:{dataSource:[],inputErrorClass:"input-error",autoBind:!0,hideEmptyPrompt:!0,triggerMessages:!1,fieldsUpdated:"",showUpdateButton:!1,updateOnChange:!0,displayOrderCompleteFieldGroup:!0,displayOrderCompleteFieldGroup2:!0,textErrorUpdating:"Error updating order",textErrorEnteredDateInWrongFormat:"Date entered is in the wrong format",textErrorEnteredEmailInWrongFormat:"Email entered is in the wrong format",textErrorEnteredDecimalInWrongFormat:"Decimal entered in the wrong format",textErrorEnteredUrlInWrongFormat:"Url entered in the wrong format",textErrorNotAllFieldsComplete:"The following fields are incomplete:",textMandatoryFieldNotComplete:"Mandatory field",textErrorNotAllFieldsValid:"The following fields are invalid:",viewTemplate:null,itemViewTemplate:null,isForWarrantyClaim:!1,warrantyClaimJsonFieldGroupName:"",warrantyClaimReasonCodeLookup:"",warrantyClaimReasonCodeValuesRequireInvoiceNo:"",warrantyClaimReasonCodeValuesRequireInvValidation:"",warrantyClaimReasonCodeValuesRequirePricingShown:"",warrantyClaimOrderNo:0,linesElement:".cv-cart-warranty-lines[data-role='orderlines']",linesData:"orderLines"},events:["dataBinding",i,r,u,f,t],viewModel:null,view:null,_viewAppended:!1,_itemViewAppended:!1,initialise:function(t){var r=this,u=n(t).children(":first"),f,e,o;u.data("view")?r.view=u.html():(r.options.itemViewTemplate||(r.options.itemViewTemplate=r.name+"-item-template-"+kendo.guid(),r._itemViewAppended=!0),f=r.options.viewTemplate?n("#"+r.options.viewTemplate).html():r._getDefaultViewTemplate(),e=kendo.template(f),r.view=e(r.options),r._itemViewAppended&&(r.view+=r._getDefaultItemViewTemplate()),r.element.html(r.view));r.viewModel=r._getViewModel();o=r.element.children(":first");
23kendo.bind(o,r.viewModel);r.trigger(i);n.cv.css.bind(n.cv.css.eventnames.orderChanged,n.proxy(r.viewModel.orderUpdated,r.viewModel))},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},validateInputFields:function(n){var t=this;t.viewModel.validateInputFields(n)},setUpdateOnChange:function(n){var t=this;t.viewModel.set("updateOnChange",n)},updateOrderCompleteFields:function(){var n=this;n.viewModel.updateOrderCompleteFields()},_getViewModel:function(){var i=this,o=function(t,r,u){var f=i.viewModel,e=[],o;return r>=0&&r<t.length?(o=t[r],n.each(o.Fields,function(t,i){var r=n.cv.util.getFieldItemData(i);r.dataChanged=function(n){var t=this.parent().parent().get("updateOnChange");t&&(r.fieldValid(n)&&this.parent().parent().updateOrderCompleteField(this.fieldItem.fieldName),this.parent().parent().validateInputFields(!1))};r.dataSelected=function(n){var t=n.dataItem,u=this.parent().parent().get("updateOnChange"),i=this.fieldItem.fieldName;u&&(r.fieldValid(n)&&t!=null&&n.data.fieldItem.fieldName===i&&f.set(i,t.Value),this.parent().parent().validateInputFields(!1))};e.push(r)})):n.cv.util.hasValue(u)&&u===!0&&r<0&&n.each(t,function(t,r){r.FieldName==="WarrantyClaimReasonCode"&&(r.Lookup=n.cv.util.parseLookup(i.options.warrantyClaimReasonCodeLookup,!0),r.FieldType="list",r.Mandatory=!0);r.FieldName==="WarrantyClaimInvoiceNumber"&&(r.Mandatory=!0);var u=n.cv.util.getFieldItemData(r);u.dataChanged=function(n){var r=this.parent().parent().get("updateOnChange"),t,i;(u.fieldItem.FieldName==="WarrantyClaimInvoiceNumber"||u.fieldValid(n))&&r&&(u.fieldItem.FieldName==="WarrantyClaimReasonCode"?(t=f.get("lastWarrantyClaimInvoiceNumber"),s(n.data.WarrantyClaimReasonCode,f.get("lastWarrantyClaimReasonCode"),t,t),f.set("lastWarrantyClaimReasonCode",n.data.WarrantyClaimReasonCode)):u.fieldItem.FieldName==="WarrantyClaimInvoiceNumber"?(i=f.get("lastWarrantyClaimReasonCode"),s(i,i,n.data.WarrantyClaimInvoiceNumber,f.get("lastWarrantyClaimInvoiceNumber")),f.set("lastWarrantyClaimInvoiceNumber",n.data.WarrantyClaimInvoiceNumber)):f.updateWarrantyClaimHeaderNonCustomFields().done(function(n){f._handleDonePromiseSetWarrantyClaimHeaderFieldData(n)}).fail(function(n){f._handleFailedPromiseSetWarrantyClaimHeaderFieldData(n)}))};e.push(u)}),e},s=function(r,u,f,o){var s=i.viewModel,a=s._getIsInvoiceProdsValidationRequiredForReasonCode(r),v=s._getIsInvoiceProdsValidationRequiredForReasonCode(u),c=r!==u,l=f!==o,h=n.Deferred();c&&a!=v||l&&a?n.cv.css.orders.getCountWarrantyClaimLines().done(function(f){var a,o,v,y;(!f.errorMessage||f.errorMessage.length==0)&&f.data&&f.data.length>0?(a=-1,a=parseInt(f.data),a>0?(o=_.filter(i.viewModel.get("warrantyClaimHeaderFieldDataItemList"),function(n){return n.fieldItem.fieldName==="WarrantyClaimInvoiceNumber"}),n.cv.util.hasValue(o)&&o.length>0?n.cv.css.orders.deleteProductLinesFromWarrantyClaim().done(function(t){t.errorMessage&&t.errorMessage.length!=0?h.resolve():c?(o[0].set("WarrantyClaimInvoiceNumber",""),s.set("lastWarrantyClaimInvoiceNumber",""),h=s.updateWarrantyClaimHeaderNonCustomFields(),h.done(function(t){s._handleDonePromiseSetWarrantyClaimHeaderFieldData(t);e(r,u);n.cv.css.trigger(n.cv.css.eventnames.orderChanged,{forceRefetchOrder:!0,isOnlyForWarranty:!0});s.refreshWarrantyLines()}),h.fail(function(n){s._handleFailedPromiseSetWarrantyClaimHeaderFieldData(n)})):(n.cv.css.trigger(n.cv.css.eventnames.orderChanged,{forceRefetchOrder:!0,isOnlyForWarranty:!0}),s.refreshWarrantyLines())}):h.resolve()):c||l?(v=_.find(i.viewModel.get("warrantyClaimHeaderFieldDataItemList"),function(n){return n.fieldItem.fieldName==="WarrantyClaimInvoiceNumber"}),n.cv.util.hasValue(v)?(c&&(y=s._getIsInvoiceRequiredForReasonCode(r),v.set("WarrantyClaimInvoiceNumber",y?s.get("lastWarrantyClaimInvoiceNumber"):"")),h=s.updateWarrantyClaimHeaderNonCustomFields(),h.done(function(n){s._handleDonePromiseSetWarrantyClaimHeaderFieldData(n);e(r,u)}),h.fail(function(n){s._handleFailedPromiseSetWarrantyClaimHeaderFieldData(n)})):h.resolve()):h.resolve(),i.trigger(t)):h.resolve()}):c||l?(h=s.updateWarrantyClaimHeaderNonCustomFields(),h.done(function(n){s._handleDonePromiseSetWarrantyClaimHeaderFieldData(n)}),h.fail(function(n){s._handleFailedPromiseSetWarrantyClaimHeaderFieldData(n)})):h.resolve();h.done(function(){c&&e(r,u)})},e=function(t,r){var u=i.viewModel,e=u._getIsInvoicePricingDisplayRequiredForReasonCode(r),f=u._getIsInvoicePricingDisplayRequiredForReasonCode(t);e!==f&&n.cv.css.trigger(n.cv.css.eventnames.warrantyClaimReasonCodeSelected,{warrantyClaimRequiresProductsToBeInvoiceValidated:u._getIsInvoiceProdsValidationRequiredForReasonCode(t),warrantyClaimRequiresPricingShown:f})},h=function(){var r=i.options.isForWarrantyClaim?n.cv.css.orders.getWarrantyClaimCustomFieldGroupData():n.cv.css.orders.getOrderCompleteFieldGroupData({isForWarrantyClaim:!1,fieldGroup1Enabled:i.options.displayOrderCompleteFieldGroup,fieldGroup2Enabled:i.options.displayOrderCompleteFieldGroup2}),t;r.done(function(t){var u,r;if(t.errorMessage&&t.errorMessage.length!=0)i.options.dataSource=[],i.viewModel.setMessage(t.errorMessage,n.cv.css.messageTypes.error);else{for(i.options.dataSource=t.data,u=function(r){var u=o(t.data,r,i.options.isForWarrantyClaim);n.each(u,function(){i.viewModel.set("fieldsExist"+(r+1).toString(),!0)});i.viewModel.set("itemList"+(r+1).toString(),u);i.viewModel.set("fieldGroup"+(r+1).toString()+"Name",t.data[r].FieldGroupName);i.viewModel.set("fieldGroup"+(r+1).toString()+"Description",t.data[r].Description)},r=0;r<t.data.length;r++)u(r);i.viewModel.validateInputFields(!1)}});t=n.Deferred();i.options.isForWarrantyClaim?t=n.cv.css.orders.getWarrantyClaimHeaderFieldData().done(function(t){var r,u,e,f,s;t.errorMessage&&t.errorMessage.length!=0||(r=[],t.data&&t.data.length>0&&t.data[0].WarrantyClaimHeaderFieldData&&(r=t.data[0].WarrantyClaimHeaderFieldData,i.viewModel.set("warrantyClaimObjectKey",t.data[0]._objectKey),u=_.filter(r,function(n){return n.FieldName==="WarrantyClaimReasonCode"}),n.cv.util.hasValue(u)&&u.length>0&&(e=u[0].Value,i.viewModel.set("lastWarrantyClaimReasonCode",e)),f=_.filter(r,function(n){return n.FieldName==="WarrantyClaimInvoiceNumber"}),n.cv.util.hasValue(f)&&f.length>0&&(s=f[0].Value,i.viewModel.set("lastWarrantyClaimInvoiceNumber",s))),i.viewModel.set("warrantyClaimHeaderFieldDataItemList",o(r,-1,!0)))}):t.resolve();n.when(r,t).done(function(){i.trigger(f);n.cv.util.bindKendoWidgets(n(i.element[0]))})},c=kendo.observable({order:null,redirectToTimeoutUrl:function(t,i,r){n.cv.ajax.settings.timeoutRedirectUrl==""?n.cv.util.redirect(t,i,!r):n.cv.util.redirect(n.cv.ajax.settings.timeoutRedirectUrl,i,!r)},clearMessage:function(){var t=this.get("clearExistingMessages");this.set("clearExistingMessages",!0);this.set("message","");i.options.triggerMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"orderCompleteFields",clearExisting:this.get("clearExistingMessages")});this.set("clearExistingMessages",t)},setMessage:function(t,r){n.cv.util.notify(this,t,r,{triggerMessages:i.options.triggerMessages,source:i.name})},clearExistingMessages:!0,message:"",dataSource:i.options.dataSource,fieldsCompleted:function(t){var e=this;t=typeof t!="undefined"?t:!1;var o=[],r=!0,f="";return n.merge(n.merge(n.merge(o,this.get("itemList1")),this.get("itemList2")),this.get("warrantyClaimHeaderFieldDataItemList")),n.each(o,function(n,i){var u=i.fieldItem.fieldName==="WarrantyClaimInvoiceNumber"&&!e._getIsInvoiceRequiredForReasonCode(e.get("lastWarrantyClaimReasonCode"));u===!1&&(i.fieldItem.parent().fieldValid({data:i.fieldItem.parent()},t)||(r=!1,i.emptyPrompt||(f=f.length==0?" "+i.fieldItem.Prompt:f+", "+i.fieldItem.Prompt)))}),r===!0&&i.trigger(u),!r&&t&&this.setMessage(i.options.textErrorNotAllFieldsComplete+f,n.cv.css.messageTypes.error),r},fieldsValid:function(t){var f=this;t=typeof t!="undefined"?t:!1;var e=[],u=!0,r="";return n.merge(n.merge(n.merge(e,this.get("itemList1")),this.get("itemList2")),this.get("warrantyClaimHeaderFieldDataItemList")),n.each(e,function(n,i){var s=i.fieldItem.fieldName==="WarrantyClaimInvoiceNumber"&&!f._getIsInvoiceRequiredForReasonCode(f.get("lastWarrantyClaimReasonCode")),o,e;s===!1&&(o=this.get(i.fieldItem.fieldName),e=!0,o!=null&&(e=i.fieldItem.parent().fieldValid({data:i.fieldItem.parent()},t)),e||(u=!1,i.emptyPrompt||(r=r.length==0?" "+i.fieldItem.Prompt:r+", "+i.fieldItem.Prompt)))}),!u&&t&&this.setMessage(i.options.textErrorNotAllFieldsValid+r,n.cv.css.messageTypes.error),u},orderUpdated:function(){},updateItemList:function(){var n=i._getDataView();this.set("itemList",n);i.trigger(r,{count:n.length})},updateOnChange:i.options.updateOnChange,updateOrderCompleteField:function(t){var u={},f={},r;i.viewModel.clearMessage();n.each([this.get("itemList1"),this.get("itemList2")],function(i,r){n.each(r,function(n,r){if(t!=null&&r.fieldItem.fieldName===t){var e=this.get(r.fieldItem.fieldName);r.fieldItem.parent().fieldValid({data:r.fieldItem.parent()},!1)&&(i==0?u[r.fieldItem.fieldName]=e:i==1&&(f[r.fieldItem.fieldName]=e))}})});r={};r[this.get("fieldGroup1Name")]=u;r[this.get("fieldGroup2Name")]=f;this.updateOrderCompleteFieldList(r)},updateOrderCompleteFields:function(){var r={},u={},t;i.viewModel.clearMessage();n.each([this.get("itemList1"),this.get("itemList2")],function(t,i){n.each(i,function(n,i){var f=this.get(i.fieldItem.fieldName);i.fieldItem.parent().fieldValid({data:i.fieldItem.parent()},!1)&&(t==0?r[i.fieldItem.fieldName]=f:t==1&&(u[i.fieldItem.fieldName]=f))})});t={};t[this.get("fieldGroup1Name")]=r;t[this.get("fieldGroup2Name")]=u;this.updateOrderCompleteFieldList(t);this.validateInputFields(!1)},updateOrderCompleteFieldList:function(r){var u=i.options.isForWarrantyClaim?n.cv.css.orders.updateWarrantyClaimOrderCustomFieldGroupData({newValues:r}):n.cv.css.orders.updateOrderCompleteFieldGroupData({newValues:r});u.done(function(r){r.errorMessage!=null?i.viewModel.setMessage(i.options.textErrorUpdating,n.cv.css.messageTypes.error):(i.viewModel.orderUpdated(),i.trigger(t))});u.fail(function(){i.viewModel.setMessage(i.options.textErrorUpdating,n.cv.css.messageTypes.error)})},updateWarrantyClaimHeaderNonCustomFields:function(){var t={};return i.viewModel.clearMessage(),n.each([this.get("warrantyClaimHeaderFieldDataItemList")],function(r,u){n.each(u,function(n,r){var u=this.get(r.fieldItem.fieldName),f;r.fieldItem.fieldName==="WarrantyClaimInvoiceNumber"?(f=i.viewModel.getIsWarrantyClaimInvoiceNoVisible(),t[r.fieldItem.fieldName]=f?u:""):r.fieldItem.parent().fieldValid({data:r.fieldItem.parent()},!1)&&(t[r.fieldItem.fieldName]=u)})}),t._objectKey=this.get("warrantyClaimObjectKey"),n.cv.css.orders.setWarrantyClaimHeaderFieldData({updateData:t,jsonFieldGroup:i.options.warrantyClaimJsonFieldGroupName})},_handleDonePromiseSetWarrantyClaimHeaderFieldData:function(r){var u=this;r.errorMessage!=null?i.viewModel.setMessage(i.options.textErrorUpdating,n.cv.css.messageTypes.error):(i.viewModel.orderUpdated(),i.trigger(t));u.validateInputFields(!1)},_handleFailedPromiseSetWarrantyClaimHeaderFieldData:function(){var t=this;i.viewModel.setMessage(i.options.textErrorUpdating,n.cv.css.messageTypes.error);t.validateInputFields(!1)},_getIsInvoicePricingDisplayRequiredForReasonCode:function(n){var t=i.options.warrantyClaimReasonCodeValuesRequirePricingShown.split(",");return _.some(t,function(t){return t===n})},_getIsInvoiceProdsValidationRequiredForReasonCode:function(n){var t=i.options.warrantyClaimReasonCodeValuesRequireInvValidation.split(",");return _.some(t,function(t){return t===n})},_getIsInvoiceRequiredForReasonCode:function(n){var t=i.options.warrantyClaimReasonCodeValuesRequireInvoiceNo.split(",");return _.some(t,function(t){return t===n})},getIsWarrantyClaimInvoiceNoVisible:function(){var f=this,t=!1,r=_.find(i.viewModel.get("warrantyClaimHeaderFieldDataItemList"),function(n){return n.fieldItem.fieldName==="WarrantyClaimReasonCode"}),u;return n.cv.util.hasValue(r)&&(u=r.get("WarrantyClaimReasonCode"),t=f._getIsInvoiceRequiredForReasonCode(u)),t},refreshWarrantyLines:function(){n.cv.css.getOrderLines({orderNo:i.options.warrantyClaimOrderNo,isLocalSetSelectedOrderLines:!0}).done(function(){n(i.options.linesElement).each(function(){var t=n(this).data(i.options.linesData);t&&t.refreshLines()})})},itemList1:[],itemList2:[],fieldsExist1:!1,fieldsExist2:!1,fieldGroup1Name:"",fieldGroup2Name:"",warrantyClaimHeaderFieldDataItemList:[],warrantyClaimObjectKey:"",lastWarrantyClaimInvoiceNumber:"",lastWarrantyClaimReasonCode:"",validateInputFields:function(t){var i=!0;this.clearMessage();this.fieldsCompleted(t)?this.fieldsValid(t)||(i=!1):i=!1;n.cv.css.addRemovePageValidationError(i,"orderCompleteFields");n.cv.css.trigger(n.cv.css.eventnames.orderCompleteFieldsValidated)}});return h(),c},_getDefaultViewTemplate:function(){var n=this;return"<div data-view='true'><div><div data-bind='visible: fieldsExist1'><fieldset class='order-complete-fields'><legend data-bind='text: fieldGroup1Name'><\/legend><div class='itemList1' data-bind='source: itemList1' data-template='"+n.options.itemViewTemplate+"'><\/div><\/fieldset><\/div><div data-bind='visible: fieldsExist2'><fieldset class='order-complete-fields' data-bind='visible: fieldsExist2'><legend data-bind='text: fieldGroup2Name'><\/legend><div class='itemList2' data-bind='source: itemList2' data-template='"+n.options.itemViewTemplate+"'><\/div><\/fieldset><\/div>"+(n.options.showUpdateButton?"<input type='button' data-bind='click: updateOrderCompleteFields' value='Update' />":"")+"<\/div><\/div>"},_getDefaultItemViewTemplate:function(){var n=this;return"<script type='text/x-kendo-template' id='"+n.options.itemViewTemplate+"'><div class='fieldContainer'>"+(n.options.hideEmptyPrompt?"<label data-bind='html: prompt, invisible: emptyPrompt'><\/label>":"<label data-bind='html: prompt'><\/label>")+"<span data-bind='html: fieldTemplate'><\/span><\/div><\/script>"}};n.cv.ui.widget(e)})(jQuery);
24var CollapsedFiltersOrderByEnum;(function(n){n.Alphabetical="Alphabetical";n.Count="Count"})(CollapsedFiltersOrderByEnum||(CollapsedFiltersOrderByEnum={})),function(n){var t="change",i="widgetInitialised",r="listUpdated",u="itemchange",f={name:"metaDataSummary",options:{dataSource:null,autoBind:!0,showAll:!1,useNameValues:!1,nameFilter:"",redirectOnFilter:!0,allowCombinations:!1,refreshOnItemChange:!1,filterOnItemChange:!0,redirectOnRemoveAllFilters:!0,redirectOnPriceFilter:!1,bindDataSource:!0,filterJoinOperator:"OR",sessionTimeOutRedirectUrl:"",triggerMessages:!1,textErrorGettingFilters:"There was an error getting the current product features",mandatoryFilters:"",singleOptionFilters:"",sliderSmallStepCount:10,sliderLargeStepMultiplier:2,includePleaseSelect:!1,pleaseSelectFeatureName:"Please Select...",textCurrentFilterHeading:"Current Filter",textCurrentFilterInstru
24ctions:"Choose the filter below.",textAvailableFilterHeading:"Filter the results",mandatoryFiltersNotSelected:"Please select a value for the filter: {0}",collapseFilterItems:!1,topFilterItemsCount:0,sortCollapsedFiltersBy:CollapsedFiltersOrderByEnum.Count,showFilterItemsClass:"show-filter-items",nonTopFilterItemsClass:"non-top-filter-items",viewTemplate:null,itemViewTemplate:null},events:["dataBinding","dataBound",r,i],viewModel:null,view:null,items:function(){return this.element.find("tbody").children()},setDataSource:function(n){this.options.dataSource=n;this._dataSource();this.refresh()},_viewAppended:!1,_itemViewAppended:!1,initialise:function(t){var r=this,u=n(t).children(":first"),f,e,o;u.data("view")?r.view=u.html():(r._viewAppended=!0,r.options.itemViewTemplate||(r.options.itemViewTemplate=r.name+"-item-template-"+kendo.guid(),r._itemViewAppended=!0),f=r.options.viewTemplate?n("#"+r.options.viewTemplate).html():r._getDefaultViewTemplate(),e=kendo.template(f),r.view=e(r.options),r.options._itemViewAppended||(r.view+=r._getDefaultItemViewTemplate()),r.element.html(r.view));r.viewModel=r._getViewModel();o=r.element.children(":first");kendo.bind(o,r.viewModel);r._dataSource();r.trigger(i)},_dataSource:function(){var i=this;i.dataSource&&i._refreshHandler?i.dataSource.unbind(t,i._refreshHandler):i._refreshHandler=n.proxy(i.refresh,i);i.dataSource=kendo.data.DataSource.create(i.options.dataSource);i.dataSource.bind(t,i._refreshHandler);i.options.autoBind&&i.dataSource.fetch()},refresh:function(n){var t=this;t.refreshing||(n.action!=u||t.options.refreshOnItemChange)&&(t.viewModel.dataSource=t.options.dataSource,t.refreshing=!0,t.viewModel.updateItemList(),t.refreshing=!1)},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},_getViewModel:function(){var t=this,e=function(){var u,r,f;t.options.dataSource&&t.options.dataSource!=null||(u=n.Deferred(),t.options.useNameValues?u=n.cv.css.getProductFeatureNameValuesWithFilter({nameFilter:t.options.nameFilter}):(r=n.cv.util.queryStringValue("FilterProduct"),f="",r==undefined||n.cv.util.isNullOrWhitespace(r)||r.toLowerCase().indexOf("categorycode")===-1||(f=r),u=n.cv.css.getAvailableProductFeatureValues({mode:t.options.showAll?"showAll":"",allowCombinations:t.options.allowCombinations,additionalFilter:f,productFilter:r})),u.done(function(r){if(r.sessionHasTimedOut)t.viewModel.redirectToTimeoutUrl(t.options.sessionTimeOutRedirectUrl,null,!1);else if(r.errorMessage&&r.errorMessage.length!=0)t.viewModel.setMessage(r.errorMessage,n.cv.css.messageTypes.error);else if(r.data){r.data.Mode!=undefined&&i.set("filterMode",r.data.Mode);var u=n.cv.css.metaData.getMetaDataArray(t,r);u&&t.options.includePleaseSelect&&_.each(u,function(n){n.Data&&(n.Data.unshift({featureName:t.options.pleaseSelectFeatureName,featureNameID:t.options.pleaseSelectFeatureName,isPleaseSelect:!0}),n.selectedFilter=n.Data[0])});t.options.collapseFilterItems&&t.options.topFilterItemsCount>0&&_.each(u,function(i){i.Data.length>t.options.topFilterItemsCount&&(t.options.sortCollapsedFiltersBy===CollapsedFiltersOrderByEnum.Count&&(i.Data=_.sortBy(i.Data,function(n){return-n.featureProductCount})),i.collapsable=!0);i.moreOrLessClicked=function(i){var r=t.options.showFilterItemsClass,u=t.options.nonTopFilterItemsClass;n.cv.util.isNullOrWhitespace(r)||n(i.target).toggle().siblings("."+r).toggle();n.cv.util.isNullOrWhitespace(u)||n(i.target).parent().find("."+u).slideToggle()};n.each(i.Data,function(n,i){i.index=n;i.isVisible=function(){return i.index<t.options.topFilterItemsCount}})});t.options.dataSource=u}o();i.set("contentLoading",!1)}).fail(function(){i.setMessage(t.options.textErrorGettingFilters,n.cv.css.messageTypes.error);i.set("contentLoading",!1)}))},o=function(){t.dataSource=kendo.data.DataSource.create(t.options.dataSource);t.options.autoBind&&t.dataSource.fetch();i.updateItemList();n(".sidebarSlideToggleContent").hide();n(".sidebarSlideToggleHeader").on("click",function(){n(this).next().slideToggle("medium");n(this).next().find(".upArrow").toggle();n(this).next().find(".downArrow").toggle()})},u=function(){if(!t.dataSource)return[];var i=[],r=t.dataSource.view();return n.each(r,function(n,t){i.push(t)}),i},f=function(){if(!t.dataSource||t.dataSource.view().length===0)return[];var i=[],u=n.cv.util.getFilterFeatures(),r=function(n){var i=_.find(t.dataSource.view(),function(t){return t.FeatureID===n.Key});i&&i.isRangeSlider&&i.rangeSettings.numericSliderModeClass==="currency"&&(n.Value="$"+n.Value)};return _.each(u,function(n){_.isArray(n[0])?_.each(n,function(n){n[1].Key=n[0].Value;r(n[1]);i.push(n[1])}):(n[1].Key=n[0].Value,r(n[1]),i.push(n[1]))}),i},i=kendo.observable({dataSource:t.options.dataSource,updateItemList:function(){var n,e;i.set("contentLoading",!0);n=u();this.set("itemList",n);this.set("showAvailableFilterPane",n.length>0);this.set("hasFilterOptions",n.length>0);e=f();this.set("ActiveFilters",e);t.trigger(r,{count:n.length})},itemList:u(),message:"",clearMessage:function(){this.set("message","");t.options.triggerMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"metaDataSummary",clearExisting:!0})},setMessage:function(i,r){n.cv.util.notify(this,i,r,{triggerMessages:t.options.triggerMessages,source:t.name})}
24,clearExistingMessages:!0,mandatoryFilters:n.cv.util.isNullOrWhitespace(t.options.mandatoryFilters)?[]:t.options.mandatoryFilters.split(","),singleOptionFilters:n.cv.util.isNullOrWhitespace(t.options.singleOptionFilters)?[]:t.options.singleOptionFilters.split(","),showAvailableFilterPane:!0,hasFilterOptions:!0,ActiveFilters:f(),hasActiveFilters:function(){return this.get("ActiveFilters").length>0},removeFilter:function(){n.cv.css.metaData.setupFilter(t,this.Key,this.Value,t.viewModel.get("filterMode"))},removeFilters:function(i){n.cv.css.metaData.removeUriFilters(t,i)},isSingleSelectionFilter:function(n){return _.indexOf(this.get("singleOptionFilters"),n)!==-1},unselectedMandatoryFields:function(n){var t="";return _.every(this.get("mandatoryFilters"),function(i){var r=_.find(n,function(n){return n.featureKey===i})!=undefined;return r||(t=i),r}),t},applyFilters:function(){i.clearMessage();var r=n.cv.css.metaData.getSelectedFilters(this),u=this.unselectedMandatoryFields(r);n.cv.util.isNullOrWhitespace(u)?n.cv.css.metaData.applyFilters(t,r):i.setMessage(t.options.mandatoryFiltersNotSelected.format(u),n.cv.css.messageTypes.error)},setFilter:function(){n.cv.css.metaData.setupFilter(t,this.Key,this.Value,this.get("filterMode"),!0)},filterMode:"",isClearingAll:!1,removeAllFilters:function(){if(this.set("isClearingAll",!0),t.options.redirectOnRemoveAllFilters)n.cv.util.redirect(null,{FilterFeature:"",PageProduct:"1"},!1);else{var i=n.cv.css.metaData.getSelectedFilters(this);n.each(i,function(n,t){t.get("isSelected")&&t.set("isSelected",!1)});n.cv.css.metaData.generateNewUri(t,[]);this.set("isClearingAll",!1)}},currentFilters:[],currentFilterValue:"",textCurrentFilterHeading:t.options.textCurrentFilterHeading,textCurrentFilterInstructions:t.options.textCurrentFilterInstructions,textAvailableFilterHeading:t.options.textAvailableFilterHeading,redirectToTimeoutUrl:function(t,i,r){n.cv.ajax.settings.timeoutRedirectUrl==""?n.cv.util.redirect(t,i,!r):n.cv.util.redirect(n.cv.ajax.settings.timeoutRedirectUrl,i,!r)},contentLoading:!1,isExpanded:!0,toggleExpanded:function(){this.set("isExpanded",!this.get("isExpanded"))}});return e(),i.bind("change",function(r){var f,u;r.field=="itemList"&&r.action&&r.action=="itemchange"&&t.options.filterOnItemChange&&(f=r.items,f&&f.length>0&&(u=f[0],u.Feature!=undefined&&u.selectedFilter!=undefined&&u.selectedFilter.featureName!==t.options.pleaseSelectFeatureName&&n.cv.css.metaData.setupFilter(t,u.Feature,u.selectedFilter.featureName,i.get("filterMode"),!0)))}),i},_getDefaultItemViewTemplate:function(){var t=this,n="<script type='text/x-kendo-template' id='"+t.options.itemTemplateId+"'>";return n+="",n+"<\/script>"}};n.cv.ui.widget(f)}(jQuery);
25(function(n){var t="viewModelBound",i={name:"priceFilter",extend:"mvvmwidget",options:{minValue:0,maxValue:0,selectedMinValue:0,selectedMaxValue:0,defaultPriceFilterExpanded:!1,autoBind:!0,filterApplied:!1,triggerMessages:!0,clearWidgetMessages:!0},extendEvents:[t],viewModelBound:function(){var i=this;n.cv.css.bind(n.cv.css.eventnames.priceFilterRedirect,n.proxy(i.viewModel.redirectWithProductFilters,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.priceFilterSliderChange,n.proxy(i.viewModel.setSelectedValues,i.viewModel));i.trigger(t)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this,i=function(){var t=n.cv.util.queryStringValue("FilterProduct"),i=0,r="";return t!=undefined&&t.toLowerCase().indexOf("integratedprice")!=-1&&(i=t.toLowerCase().indexOf("integratedprice"),r=t.substring(0,i-1)+t.substring(t.indexOf(")",i)+1)),r.replace(/^[,\|]+/,"").replace(/[,\|]+$/,"")},r=kendo.observable(n.extend(t.options,{isApplying:!1,isClearing:!1,isProcessing:!1,isExpanded:t.options.defaultPriceFilterExpanded,toggleExpanded:function(){var n=this;n.set("isExpanded",!n.get("isExpanded"))},redirectToFilter:function(t){n.cv.util.redirect(null,{FilterProduct:t},!1)},filter:function(){this.set("isApplying",!0);var n=this.buildFilter();this.redirectToFilter(n)},clearFilter:function(){this.set("isClearing",!0);var n=i();this.redirectToFilter(n)},setSelectedValues:function(n){n&&n.values&&n.values.length==2&&(this.set("selectedMinValue",n.values[0]),this.set("selectedMaxValue",n.values[1]))},buildFilter:function(){var n=i();return n.length>0&&(n+=","),n+("(IntegratedPrice:ge:"+this.get("selectedMinValue")+",IntegratedPrice:le:"+this.get("selectedMaxValue")+")")},redirectWithProductFilters:function(t){var i="";t.clearAll||(i=this.buildFilter());this.get("selectedMaxValue")!==this.get("maxValue")&&(t.filterToSet.FilterProduct=i);n.cv.util.redirect(null,t.filterToSet,!1)}}));return r.bind("change",function(){}),r}};n.cv.ui.widget(i)})(jQuery);
26(function(n){var i="loggedin",r="forgotpasswordsent",u="passwordchanged",f="changingPassword",t="emailaddress",e="fieldsUpdated",o="verificationsent",s={name:"login",extend:"mvvmwidget",options:{inputErrorClass:"input-error",redirectOnLogin:!0,overrideRedirectUrl:"",cartPageUrl:"Orders.aspx",redirectOnChangePassword:!1,changePasswordRedirectUrl:"",loadOrdersAfterLogin:!0,useCookie:!0,cookieExpiry:365,isShowKeepMeLoggedIn:!1,useRegistration:!1,sendRegisterEmail:!0,notifyEmailRequired:!1,userIdRequiredAsEmail:!0,firstNameRequiredForRegistration:!0,surnameRequiredForRegistration:!0,phoneNumberRequiredForRegistration:!0,phoneNumberRegexForRegistration:"",firstNameAndLastNameRegex:"",termsField:"terms",termsRequiredForRegistration:!1,includeInBrowserHistory:!1,registerFullName:!1,registerFullNameField:"",registerUseConfirmEmail:!1,registerUseNotifyEmail:!1,registerUseCustomerCode:!1,hideRegistrationCustomerCode:!1,registerUseGeneratedPassword:!1,registerInitialRole:"",registerCustomerCode:"",registerCustomerCodeField:"",b2bRegistrationRole:"",generatedPassword:"",clearPasswordOnMismatch:!1,registerUseTerms:!1,showEmailingPassword:!1,clearEmailAfterPasswordEmailed:!1,showChangingPassword:!1,clearPasswordAfterChange:!0,clearWidgetMessages:!0,accountSelectPageUrl:"AccountSelect.aspx",clearEmailAfterVerificationEmailed:!1,sapMigrationEnabled:!1,isB2cRegistrationVerificationRequired:!1,textPasswordMismatchError:"Your passwords do not match. Please try again",textEmailMismatchError:"Your email addresses do not match. Please try again",textUserIdMandatory:"Please enter an email address",textPasswordChanged:"Password changed",textPasswordChangeRequired:"You are required to change your password",textPasswordSent:"Password sent to your email address",textEnterPassword:"Please enter a password",textEnterCurrentPassword:"Please enter the current password",textErrorChangingPassword:"Error changing password",textErrorEnteredDateInWrongFormat:"Date entered is in the wrong format",textErrorEnteredEmailInWrongFormat:"Email entered is in the wrong format",textErrorEnteredDecimalInWrongFormat:"Decimal entered in the wrong format",textErrorEnteredUrlInWrongFormat:"Url entered in the wrong format",textRegisterMandatoryFieldsMissing:"The following fields are required:",textRegisterUserErrorDefaultMessage:"There was an error registering your user at this time",textTermsNotC
26omplete:"You must agree to the terms and conditions",textMandatoryFieldNotComplete:"",textInvalidCaptcha:"The Validation Code you entered is incorrect",textB2BRegistrationCompletedMessage:"Thank you for registering. Please allow up to 48 business hours (during peak times) for your login to be validated and activated. A confirmation email of your registration has been sent to you. When your login has been fully activated another email will be sent to you with details on how to login and complete the registration process.",thirdPartyLoginRegisterFailed:"Error attempting to redirect to registration page",thirdPartyLoginGetCurrentUserFailed:"Error attempting to login",thirdPartyLoginRegistrationEmailAddressInvalidErrorMessage:"Registration Email Address is invalid.",customLoginFailed:"An unexpected error occurred attempting to login. If the issue persists, please contact support.",magicLinksLoginSuccess:"We have just sent you an email with your login link.",viewTemplate:null,itemViewTemplate:null,triggerMessages:!1,triggerRegisterMessages:!1,textUserIdLabel:"Email Address",textConfirmEmailLabel:"Confirm Email Address",textPasswordLabel:"Password",textForgotPasswordLabel:"Forgot Password",textRememberMeLabel:"Remember me",textLoginButtonLabel:"Login",textEmailMeButtonLabel:"Email Me",textCancelSendPasswordButtonLabel:"Cancel",textNewPasswordLabel:"New Password",textConfirmPasswordLabel:"Confirm Password",textChangePasswordButtonLabel:"Change Password",textNotificationEmailLabel:"Notification Email Address",textFirstNamePrompt:"First Name",textSurnamePrompt:"Last Name",textCustomerCodePrompt:"Customer Code",textInitialRolePrompt:"Initial Role",textPhoneNumberPrompt:"Phone Number",textTermsPrompt:"I have read the terms & conditions",textKeepUserLoggedInCheckbox:"Keep me logged in",validateCaptcha:!1,captchaVersion:"DEFAULT",captureRequired:"Please enter the validation code",captchaHash:"",gtmSuccessEventname:"",loginPopupId:"",fieldSelector:"",useSecureWorkflow:!1,useInvisibleCaptcha:!1},_viewAppended:!1,events:[i,r,u,e,f,o],viewModel:null,view:null,viewModelBound:function(){var t=this;n.ajax({url:"/auth/mode"}).done(function(i){if(!n.cv.util.hasValue(i,"AuthMode")){t.viewModel.set("showPasswordSection",!0);t.viewModel.set("showCustomLoginSection",!1);return}var r=i.AuthMode.toLowerCase();r==="custom"?(t.viewModel.set("showPasswordSection",!1),t.viewModel.set("isCustomLoginEnabled",!0),t.viewModel.set("showCustomLoginSection",!0),t.viewModel.set("authMode",r)):(t.viewModel.set("showPasswordSection",!0),t.viewModel.set("showCustomLoginSection",!1))});t.viewModel.set("disableRegisterButton",t.options.termsRequiredForRegistration);n.cv.css.bind(n.cv.css.eventnames.login,function(r){var o=t.viewModel,u="",h=r.isSapMigrationRedirect,c,l,e,s,a;n.cv.util.hasValue(r.isNewUser)&&r.isNewUser===!0?(c=n.cv.css.localGetCurrentOrder(),c.SoOrderPackages>0?u="/"+t.options.cartPageUrl:(e=n.cv.util.queryStringRedirectValue("R"),n.cv.util.hasContent(e)&&(u=e))):(l=n.cv.util.isNullOrWhitespace(r.redirectAfterLogin)?!1:r.redirectAfterLogin.toLowerCase().indexOf("post.aspx")!==-1,t.options.overrideRedirectUrl.length>0&&!l?(u=t.options.overrideRedirectUrl,r.redirectAfterAccountSelect&&(u="/"+t.options.accountSelectPageUrl+"?R="+encodeURIComponent(u))):(e=n.cv.util.queryStringRedirectValue("R"),u=n.cv.util.hasContent(e)&&!h?e:r.redirectAfterLogin));r.result=="15"||r.result=="16"?(o.set("isProcessing",!1),o.set("redirectUrl",u),o.set("changingPassword",!0),t.trigger(f),t.viewModel._setMessage(t.options.textPasswordChangeRequired,n.cv.css.messageTypes.info),r.result=="16"&&o.set("notifyEmailRequired",!0)):(t.trigger(i,{userId:o.get("userId")}),t.options.redirectOnLogin&&u.length>0?h||(e=n.cv.util.queryStringRedirectValue("R",{excludedParams:["message"]}),u=n.cv.util.isNullOrWhitespace(e)?u:e):u="/",u.indexOf("//")!==-1&&(s=window.location.hostname.toLowerCase(),a=u.split("/")[2].split(":")[0].toLowerCase(),a.substr(-s.length)!==s&&(u="/")),(n.cv.util.hasValue(r,"preventLoginRedirect")===!1||r.preventLoginRedirect===!1)&&n.cv.util.redirect(u,null,!1,t.options.sapMigrationEnabled))});n.cv.css.bind(n.cv.css.eventnames.googleRegister,n.proxy(t.viewModel.googleRegister,t.viewM
26odel));n.cv.css.bind(n.cv.css.eventnames.facebookLogin,n.proxy(t.viewModel.facebookLogin,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.facebookRegister,n.proxy(t.viewModel.facebookRegister,t.viewModel))},_getViewModel:function(){var i=this,h=function(t){var i=[];return n.each(t,function(n,t){t.index=n;i.push(f(t))}),i},c=function(){var n=[],t=-1;return i.options.registerUseConfirmEmail&&n.push(f({index:t+=1,FieldName:"confirmEmailAddress",Prompt:i.options.textConfirmEmailLabel,Value:"",FieldType:"email",Rows:0,Columns:0,Length:50,Mandatory:!0,Lookup:{},isViewModelField:!0})),i.options.registerUseNotifyEmail&&n.push(f({index:t+=1,FieldName:"notifyEmailAddress",Prompt:i.options.textNotificationEmailLabel,Value:"",FieldType:"email",Rows:0,Columns:0,Length:50,Mandatory:s.get("notifyEmailRequired"),Lookup:{},isViewModelField:!0})),n.push(f({index:t+=1,FieldName:"firstName",Prompt:i.options.textFirstNamePrompt,Value:"",FieldType:"varchar",Rows:0,Columns:0,Length:50,Mandatory:i.options.firstNameRequiredForRegistration,Lookup:{regex:i.options.firstNameAndLastNameRegex},isViewModelField:!0})),n.push(f({index:t+=1,FieldName:"surname",Prompt:i.options.textSurnamePrompt,Value:"",FieldType:"varchar",Rows:0,Columns:0,Length:50,Mandatory:i.options.surnameRequiredForRegistration,Lookup:{regex:i.options.firstNameAndLastNameRegex},isViewModelField:!0})),n.push(f({index:t+=1,FieldName:"userId",Prompt:i.options.textUserIdLabel,Value:"",FieldType:i.options.userIdRequiredAsEmail?"email":"varchar",Rows:0,Columns:0,Length:50,Mandatory:!0,Lookup:{},isViewModelField:!0})),n.push(f({index:t+=1,FieldName:"phoneNumber",Prompt:i.options.textPhoneNumberPrompt,Value:"",FieldType:"varchar",Rows:0,Columns:0,Length:50,Mandatory:i.options.phoneNumberRequiredForRegistration,Lookup:{regex:i.options.phoneNumberRegexForRegistration},isViewModelField:!0})),i.options.registerUseGeneratedPassword?(n.push(f({index:t+=1,FieldName:"password",Prompt:i.options.textPasswordLabel,Value:i.options.generatedPassword,FieldType:"password",Rows:0,Columns:0,Length:50,Mandatory:!0,Lookup:{},isViewModelField:!0})),n.push(f({index:t+=1,FieldName:"confirmPassword",Prompt:i.options.textConfirmPasswordLabel,Value:i.options.generatedPassword,FieldType:"password",Rows:0,Columns:0,Length:50,Mandatory:!0,Lookup:{},isViewModelField:!0})),s.set("password",i.options.generatedPassword),s.set("confirmPassword",i.options.generatedPassword)):(n.push(f({index:t+=1,FieldName:"password",Prompt:i.options.textPasswordLabel,Value:"",FieldType:"password",Rows:0,Columns:0,Length:50,Mandatory:!0,Lookup:{},isViewModelField:!0})),n.push(f({index:t+=1,FieldName:"confirmPassword",Prompt:i.options.textConfirmPasswordLabel,Value:"",FieldType:"password",Rows:0,Columns:0,Length:50,Mandatory:!0,Lookup:{},isViewModelField:!0}))),i.options.registerUseCustomerCode&&n.push(f({index:t+=1,FieldName:"customerCode",Prompt:"Customer Code",Value:i.options.registerCustomerCode,FieldType:"varchar",Rows:0,Columns:0,Length:50,Mandatory:!0,Lookup:{},isViewModelField:!0,isHidden:i.options.hideRegistrationCustomerCode})),i.options.registerUseTerms&&n.push(f({index:t+=1,FieldName:i.options.termsField,Prompt:i.options.textTermsPrompt,Value:"",FieldType:"bool",Rows:0,Columns:0,Length:1,Mandatory:i.options.termsRequiredForRegistration,Lookup:{regex:/true/},isViewModelField:!0,MandatoryMessage:i.options.textTermsNotComplete})),i.options.validateCaptcha&&i.options.captchaVersion==="DEFAULT"&&n.push(f({index:t+=1,FieldName:"captchaText",Prompt:i.options.captureRequired,Value:"",FieldType:"varchar",Rows:0,Columns:0,Length:6,Mandatory:!0,Lookup:{},isViewModelField:!0,MandatoryMessage:"The Validation Code is required"})),n},f=function(t){i.options.textMandatoryFieldNotComplete.trim()!=""&&(t.MandatoryMessage=i.options.textMandatoryFieldNotComplete);var r=n.cv.util.getFieldItemData(t);return r.dataChanged=function(n){var t=n.data.fieldItem,u=n.data[t.fieldName];r.fieldValid(n);t.isViewModelField&&s.set(t.fieldName,u);i.options.registerCustomerCodeField===t.fieldName&&i._setCustomerCode(u);i.options.termsField===t.fieldName&&i.options.termsRequiredForRegistration&&i.viewModel.set("disableRegisterButton",!u)},r},l=function(){var i=s.get("itemList"),t=[];n.each(i,function(i,r){if(r.fieldItem.mandatory){var u=r.prompt;r.fieldItem&&r.fieldItem.FieldName==="captchaText"&&(u="Validation Code");t.push(n.extend(r,{emptyMessage:u}))}});s.set("mandatoryFieldList",t)},a=function(){var t,r;i.options.useRegistration&&(t={},t.roleName=i.options.b2bRegistrationRole,r=n.cv.css.user.getUserRegistrationFieldDataForRole(t),r.done(function(t){var u=t.data.userRegistrationFieldData,r=c();u&&u.length>0&&(r=n.merge(r,h(u)));i.viewModel.set("itemList",r);i.trigger(e,{count:r.length});l(null);i.viewModel.resetCaptcha();n.cv.css.trigger(n.cv.css.eventnames.registrationFieldsLoaded,{itemList:r})}))},s=kendo.observable(n.extend({},i.options,{userId:i.options.useRegistration?"":i.options.useCookie?n.cookie(t)?n.cookie(t):"":"",confirmEmailAddress:"",firstName:"",surname:"",fullName:function(){var t=this.get("firstName"),i=this.get("surname");return t+(n.trim(t).length==0?"":" ")+i},phoneNumber:"",inputEventKeyUp:function(n){this.userIdKeyUp(n)}
26,onUsernameEventKeyUp:function(t){var i,r,u;if(!this._handleEnterKeyPressed(t)&&this.get("authMode")==="custom"){if(i=this.get("previousUserId"),i===undefined)this.set("previousUserId",n(t.target).val());else if(i===this.get("userId"))return;r=this.get("showPasswordSection");u=this.get("showCustomLoginSection");u===!1&&(r===!0&&this.set("showPasswordSection",!1),(r===!0||this.hasInlineAlertMessage())&&(this.set("showCustomLoginSection",!0),this.set("isCustomLoginEnabled",!0),this.set("inlineAlertMessage",null)));this.get("fieldSelector").indexOf('input[name="'+t.target.name+'"]')!=-2&&this.set("previousUserId",n(t.target).val())}},userIdKeyUp:function(n){this._handleEnterKeyPressed(n)},_handleEnterKeyPressed:function(n){return n.which==13?(n.preventDefault(),n.stopPropagation(),i.options.useRegistration?this.register():this.get("emailingPassword")?this.emailPassword():this.login(),!0):!1},password:"",confirmPassword:"",passwordEnabled:function(){return this.get("userId").length>0},rememberMe:n.cookie(t)!=null,keepMeLoggedIn:!1,changingPassword:i.options.showChangingPassword,emailingPassword:i.options.showEmailingPassword,emailPasswordSent:!1,emailPasswordSentError:!1,verificationEmailSent:!1,currentPassword:"",changePassword1:"",changePassword2:"",changePasswordKeyUp:function(n){n.which==13&&(n.preventDefault(),n.stopPropagation(),this.changePassword())},notifyEmailAddress:"",notifyEmailRequired:i.options.registerUseNotifyEmail&&i.options.notifyEmailRequired,customerCode:i.options.registerCustomerCode,initialRole:i.options.registerInitialRole,itemList:[],mandatoryFieldList:[],redirectUrl:"",isProcessing:!1,isProcessingGoogle:!1,isProcessingFacebook:!1,isProcessingMicrosoft:!1,showPasswordSection:!1,showCustomLoginSection:!1,isCustomLoginEnabled:!1,thirdPartyLoginRegistrationEmailAddressRequired:!1,thirdPartyLoginRegistrationEmailAddress:"",message:"",inlineAlertMessage:{},messageClass:"",type:"",isB2BRegistrationCompleted:!1,isB2CRegistrationVerificationRequiredCompleted:!1,captchaText:"",captchaImageUrl:"/ValidationImage.aspx?rand="+n.now(),resetCaptcha:function(t){var r=this,i;t=n.cv.util.hasValue(t)&&typeof t=="boolean"?t:!0;r.set("isCaptureResetting",t);i=n.grep(this.get("itemList"),function(n){return n.fieldItem.fieldName==="captchaText"})[0];i&&i.fieldItem&&i.set(i.fieldItem.FieldName,"");n.cv.css.generateCaptcha().done(function(){r.set("captchaImageUrl","/ValidationImage.aspx?rand="+n.now());r.set("isCaptureResetting",!1)})},hasMessage:function(){return this.get("message").length>0},hasInlineAlertMessage:function(){var t=this.get("inlineAlertMessage");return n.cv.util.hasValue(t,"message")?t.message.length>0:!1},changingPasswordOrNotifyEmailRequired:function(){return this.get("changingPassword")||this.get("notifyEmailRequired")},clearMessage:function(){this.set("message","");this.set("inlineAlertMessage",null);(i.options.triggerMessages||i.options.triggerRegisterMessages)&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"login",clearExisting:!0})},_setRememberMeCookie:function(){if(i.options.useCookie){var r=this;r.get("rememberMe")?n.cookie(t,r.get("userId"),{expires:i.options.cookieExpiry}):n.removeCookie(t)}},googleRegister:function(t){var r=this;r.set("isProcessingGoogle",!0);n.cv.css.user.thirdPartyLoginRegister({data:t}).done(function(t){if(t&&t.data&&t.data.result){var u=t.data.result;u.Success?n.cv.util.redirect(u.RedirectUrl,null,!1):(i.viewModel._setMessage(i.options.thirdPartyLoginRegisterFailed,n.cv.css.messageTypes.error),r.set("isProcessingGoogle",!1))}})},facebookLoginClick:function(){var t=this;t.set("isProcessingFacebook",!0);FB.getLoginStatus(function(r){if(r.status==="connected"){var u={provider:"Facebook",facebookAccessToken:r.authResponse.accessToken,overrideRedirectUrl:i.options.overrideRedirectUrl};n.cv.css.trigger(n.cv.css.eventnames.facebookLogin,u)}else FB.login(function(r){if(r.status==="connected"){var u={provider:"Facebook",facebookAccessToken:r.authResponse.accessToken,overrideRedirectUrl:i.options.overrideRedirectUrl};n.cv.css.trigger(n.cv.css.eventnames.facebookLogin,u)}else i.viewModel._setMessage(i.options.thirdPartyLoginGetCurrentUserFailed,n.cv.css.messageTypes.error),t.set("isProcessingFacebook",!1)},{scope:"email"})},!0)},facebookLogin:function(t){var r=this;n.cv.css.user.getCurrentUser({triggerEvents:!1}).done(function(u){if(u.data&&u.data.length>0){var f=u.data[0].EmailAddress;r.login(!1,t,f,"isProcessingFacebook")}else i.viewModel._setMessage(i.options.thirdPartyLoginGetCurrentUserFailed,n.cv.css.messageTypes.error),r.set("isProcessingFacebook",!1)})},facebookRegister:function(t){var r=this;r.set("isProcessingFacebook",!0);n.cv.css.user.thirdPartyLoginRegister({data:t}).done(function(t){if(t&&t.data&&t.data.result){var u=t.data.result;u.Success?n.cv.util.redirect(u.RedirectUrl,null,!1):(i.viewModel._setMessage(i.options.thirdPartyLoginRegisterFailed,n.cv.css.messageTypes.error),r.set("isProcessingFacebook",!1))}})},microsoftLoginClick:function(){var r=this,t,i;r.set("isProcessingMicrosoft",!0);t="/login.aspx?mode=msip";i=n.cv.util.queryStringRedirectValue("R",{decode:!1});n.cv.util.hasContent(i)&&(t+="&R="+i);n.cv.util.redirect(t,null,!1)},login:function(t,r,u,f){var o=n.cv.util.hasValue(f)?f:"isProcessing",e,s,h,c;if(n.cv.util.hasValue(t)&&typeof t=="boolean"||(t=!1),e=this,e.clearMessage(),!r&&e.get("userId").length===0){i.viewModel._setMessage(i.options.textUserIdMandatory,n.cv.css.messageTypes.error);return}if(r&&r.provider==="Facebook"&&this.get("thirdPartyLoginRegistrationEmailAddressRequired")){if(s=this.get("thirdPartyLoginRegistrationEmailAddress"),n.cv.util.isNullOrWhitespace(s)||n.cv.util.validateField(s,"email")===!1){i.viewModel._setMessage(i.options.thirdPartyLoginRegistrationEmailAddressInvalidErrorMessage,n.cv.css.messageTypes.error);this.set(o,!1);return}r.registrationEmailAddress=s}n.cv.util.clearMessage.apply(i.viewModel);this.set(o,!0);n.cv.css.trigger(n.cv.css.eventnames.clearOutstandingTasksCount);_.extend(n.cv.css._proxyMeta,n.cv.util.getBaseProxyMeta(i));h=r?u:e.get("userId");t||i.viewModel.get("isCustomLoginEnabled")!==!0?(c=r?"":e.get("password"),n.cv.css.login(h,c,{loadOrdersAfterLogin:i.options.loadOrdersAfterLogin,keepMeLoggedIn:e.get("keepMeLoggedIn"),gtmSuccessEventname:i.options.gtmSuccessEventname,isNewUser:t,thirdPartyLoginData:r,deleteAllChargeLines:!0,isFromCheckoutPage:i.options.overrideRedirectUrl==="Checkout.aspx"}).done(function(t){var u=t.data;if(u.result=="0"||u.result=="15"||u.result=="16")e._setRememberMeCookie();else if(e.set(o,!1),u.result===-1)switch(r.provider){case"Google":n.cv.css.trigger(n.cv.css.eventnames.googleRegister,r);break;case"Facebook":n.cv.css.trigger(n.cv.css.eventnames.facebookRegister,r)}else u.result===7&&e.set("thirdPartyLoginRegistrationEmailAddressRequired",!0),i.viewModel._setMessage(u.responseMessage,n.cv.css.messageTypes.error)}).fail(function(t){e.set(o,!1);
26t=JSON.parse(t.responseText);i.viewModel._setMessage(t.message,n.cv.css.messageTypes.error)})):n.cv.css.getNextAuthStep(h).done(function(t){if(e.set(o,!1),e.set("showCustomLoginSection",!1),t.AuthMethod.toLowerCase()==="magiclink"){e.set("showPasswordSection",!1);e.set("inlineAlertMessage",{message:e.get("magicLinksLoginSuccess"),type:n.cv.css.messageTypes.info,source:"login",clearExisting:!0});e._setRememberMeCookie();var r=n(i.viewModel.get("fieldSelector"));r.select()}else e.set("showPasswordSection",!0),e.set("isCustomLoginEnabled",!1)}).fail(function(t){var r;e.set(o,!1);e.set("showCustomLoginSection",!0);t=JSON.parse(t.responseText);i.viewModel._setMessage((r=t.message)!==null&&r!==void 0?r:e.get("customLoginFailed"),n.cv.css.messageTypes.error)})},forgotPassword:function(){var t=this;n.cv.util.clearMessage.apply(i.viewModel);t.set("changingPassword",!1);t.set("emailingPassword",!0)},emailPassword:function(){var t=this;if(n.cv.util.isNullOrWhitespace(this.get("userId"))){i.viewModel._setMessage(i.options.textUserIdMandatory,n.cv.css.messageTypes.error);return}i.options.captchaVersion==="reCaptchaV2"?n.cv.css.trigger(n.cv.css.eventnames.getReCaptchaToken,{success:n.proxy(t.emailPassword2,t),fail:function(){t.set("isProcessing",!1)},widgetId:i.element.attr("id")}):t.emailPassword2()},emailPassword2:function(t){var u=this,f;this.set("isProcessing",!0);f=n.cv.css.user.retrieveUserPassword({username:this.get("userId"),captchaVersion:i.options.captchaVersion,captchaToken:t,captchaHash:i.options.captchaHash});n.when(f).done(function(n){var t=n.data;t.result?(u.set("emailingPassword",i.options.showEmailingPassword),i.trigger(r),u._setRememberMeCookie(),i.options.clearEmailAfterPasswordEmailed&&u.set("userId","")):u.set("emailPasswordSentError",!0);i.viewModel.set("message",t.responseMessage)}).fail(function(n){u.set("emailPasswordSentError",!0);i.viewModel.set("message",JSON.parse(n.responseText).errorMessage)}).always(function(){var t=u.emailPasswordSentError?n.cv.css.inlineMessageTypes.error:n.cv.css.inlineMessageTypes.success;u.set("isProcessing",!1);u.set("emailPasswordSent",!0);u.set("messageClass",t)})},emailVerification:function(){var t=this;if(n.cv.util.isNullOrWhitespace(t.get("userId"))){n.cv.util.notify(t,i.options.textUserIdMandatory,n.cv.css.messageTypes.error);return}t.set("isProcessing",!0);n.cv.css.user.sendVerificationEmail({username:this.get("userId")}).done(function(r){var u=r.data;u.result?(t.set("emailingVerification",i.options.showEmailingVerification),t.set("verificationEmailSent",!0),i.trigger(o),t._setRememberMeCookie(),i.options.clearEmailAfterVerificationEmailed&&t.set("userId",""),n.cv.util.notify(t,u.responseMessage,n.cv.css.messageTypes.success)):n.cv.util.notify(t,u.responseMessage,n.cv.css.messageTypes.error)}).fail(function(i){i=JSON.parse(i.responseText);n.cv.util.notify(t,i.errorMessage,n.cv.css.messageTypes.error)}).always(function(){t.set("isProcessing",!1)})},cancelEmailPassword:function(){this.set("emailingPassword",!1)},changePassword:function(){var t=this,i,r;t._newPasswordsValid()!==!1&&(i=this.get("changePassword1"),r=this.get("changePassword2"),this.set("isProcessing",!0),n.cv.util.clearNotifications(t),n.cv.css.user.changeUserPassword({newPassword:i,newPasswordConfirm:r,notifyEmail:t.get("notifyEmailAddress")}).done(function(n){var i=n.data;t._afterChangePassword(i.result,i.responseMessage)}).fail(function(i){t.set("isProcessing",!1);i=JSON.parse(i.responseText);t._setMessage(i.errorMessage,n.cv.css.messageTypes.error)}))},changePasswordValidateCurrent:function(){var t=this,r=t.get("currentPassword"),u;if(n.cv.util.isNullOrWhitespace(r)){t._setMessage(i.options.textEnterCurrentPassword,n.cv.css.messageTypes.error);return}t._newPasswordsValid()!==!1&&(this.set("isProcessing",!0),n.cv.util.clearNotifications(t),u={currentPassword:r,newPassword:t.get("changePassword1"),confirmNewPassword:t.get("changePassword2")},n.cv.css.user.changeUserPasswordRequiringCurrentPassword(u).done(function(n){var i=n.data;t._afterChangePassword(i.Success,i.Messages[0])}))},_newPasswordsValid:function(){var t=this,r=t.get("changePassword1"),u=t.get("changePassword2");return r!==u?(t._setMessage(i.options.textPasswordMismatchError,n.cv.css.messageTypes.error),i.options.clearPasswordOnMismatch&&(t.set("changePassword1",""),t.set("changePassword2","")),!1):r.length===0?(t._setMessage(i.options.textEnterPassword,n.cv.css.messageTypes.error),!1):!0},_afterChangePassword:function(t,r){var f=this;t?(n.cv.util.clearNotifications(f),i.trigger(u),f._setMessage(i.options.textPasswordChanged,n.cv.css.messageTypes.success),f.get("redirectUrl").length>0&&i.options.redirectOnLogin||i.options.redirectOnChangePassword&&i.options.changePasswordRedirectUrl.length>0?f.get("redirectUrl").length>0&&i.options.redirectOnLogin?n.cv.util.redirect(f.get("redirectUrl"),null,!1):n.cv.util.redirect(i.options.changePasswordRedirectUrl,null,!1):(f.set("isProcessing",!1),i.options.clearPasswordAfterChange&&(f.
26set("currentPassword",""),f.set("changePassword1",""),f.set("changePassword2","")),f.set("changingPassword",i.options.showChangingPassword))):(f.set("isProcessing",!1),f._setMessage(r,n.cv.css.messageTypes.error))},_setMessage:function(t,r){n.cv.util.notify(this,t,r);i.viewModel.set("inlineAlertMessage",{message:t,type:r,source:"login",clearExisting:!0})},getRegisterOptions:function(){var t={};return t.EmailAddress=this.get("userId"),t.NotifyEmailAddress=this.get("notifyEmailAddress"),t.FirstName=this.get("firstName"),t.Surname=this.get("surname"),t.Password=this.get("password"),t.PhoneNumber=this.get("phoneNumber"),t.sendEmail=i.options.sendRegisterEmail,t.roleName=i.options.b2bRegistrationRole,n.cv.util.isNullOrWhitespace(this.get("customerCode"))||n.cv.util.isNullOrWhitespace(this.get("initialRole"))||(t.CustomerCode=this.get("customerCode")+"",t.initialRole=this.get("initialRole"),t.setCustAndRole=!0),i.options.b2bRegistrationRole.length>0&&(t.b2bRegRole=i.options.b2bRegistrationRole),n.each(this.get("itemList"),function(i,r){if(!r.fieldItem.isViewModelField){var u=this.get(r.fieldItem.fieldName);u==null&&r.fieldItem.FieldType!="date"&&(u="");t[r.fieldItem.fieldName]=u!=null&&u.toString()!="true"&&u.toString()!="false"&&n.type(u)!=="date"?u.toString():u}}),i.options.registerFullName&&i.options.registerFullNameField!=""&&(t[i.options.registerFullNameField]=this.fullName()),t},setValidationError:function(n,t){n&&n.setError&&n.fieldItem&&n.setError(n.fieldItem,t,t.length>0?n.fieldItem.classForErrors:"")},checkAllRequiredFields:function(){var r=!0,t="",u=this.get("mandatoryFieldList");return n.each(u,function(n,i){i.fieldItem.parent().fieldValid({data:i.fieldItem.parent()},!0)||(r=!1,t+=", "+i.emptyMessage)}),t!==""&&(t=i.options.textRegisterMandatoryFieldsMissing+" "+t.substring(1),i.viewModel._setMessage(t,n.cv.css.messageTypes.error)),r},checkPasswordsMatch:function(){var t=!0,r=n.grep(this.get("itemList"),function(n){return n.fieldItem.fieldName=="confirmPassword"})[0];return this.setValidationError(r,""),this.get("password")!=this.get("confirmPassword")&&(t=!1,i.viewModel._setMessage(i.options.textPasswordMismatchError,n.cv.css.messageTypes.error),this.setValidationError(r,i.options.textPasswordMismatchError)),t},checkEmailAddressMatch:function(){var r=!0,t;return i.options.registerUseConfirmEmail&&(t=n.grep(this.get("itemList"),function(n){return n.fieldItem.fieldName=="confirmEmailAddress"})[0],this.setValidationError(t,""),this.get("userId")!=this.get("confirmEmailAddress")&&(r=!1,i.viewModel._setMessage(i.options.textEmailMismatchError,n.cv.css.messageTypes.error),this.setValidationError(t,i.options.textEmailMismatchError))),r},checkPhoneNumberValidation:function(){var t,r,u;return i.options.phoneNumberRegexForRegistration===""?!0:(t=_.find(this.get("itemList"),function(n){return n.fieldItem.fieldName==="phoneNumber"}),n.cv.util.hasValue(t)===!1)?!0:(r=t.fieldItem.parent(),r.fieldValid({data:r},!0)===!1)?(u=t.fieldItem.errorMessage,this.setValidationError(t,u),i.viewModel._setMessage(u,n.cv.css.messageTypes.error),!1):!0},isRegisterButtonDisabled:function(){var n=this,t=n.get("isProcessing"),i=n.get("disableRegisterButton");return t||i},isRegistrationCompleted:function(){return i.options.b2bRegistrationRole.length===0&&i.options.isB2cRegistrationVerificationRequired?this.get("isB2CRegistrationVerificationRequiredCompleted"):this.get("isB2BRegistrationCompleted")},register:function(){var t=this,f,u,r,e,o;if(t.clearMessage(),t.checkAllRequiredFields()&&t.checkPasswordsMatch()&&t.checkEmailAddressMatch()&&t.checkPhoneNumberValidation()){f=t.getRegisterOptions();u=function(r){t.set("isProcessing",!1);t.set("disableRegisterButton",!1);i.viewModel._setMessage(r,n.cv.css.messageTypes.error);t.set("triggerMessages",i.options.triggerRegisterMessages);t.resetCaptcha(!1)};t.set("isProcessing",!0);t.set("disableRegisterButton",!0);i.options.validateCaptcha===!0?i.options.captchaVersion==="DEFAULT"?(r=t.get("captchaText"),r&&r.length>0?(e=n.cv.css.validateCaptcha(r),e.done(function(n){n.data.Success?s():u(i.options.textInvalidCaptcha)})):u(i.options.captureRequired)):i.options.captchaVersion==="reCaptchaV2"&&(o=i.options.useInvisibleCaptcha?n.cv.css.eventnames.executeInvisibleCaptcha:n.cv.css.eventnames.validateReCaptcha,n.cv.css.trigger(o,{success:n.proxy(s,t),fail:function(){t.set("isProcessing",!1);t.set("disableRegisterButton",!1)},widgetId:i.element.attr("id")})):s();function s(){n.cv.css.user.registerUser(f).done(function(n){var r=n.data;r.sessionHasTimedOut||(r.result===!0?i.options.b2bRegistrationRole.length===0?i.options.isB2cRegistrationVerificationRequired?(t.set("verificationRequired",r.verificationRequired),t.set("isProcessing",!1),t.set("disableRegisterButton",!1),t.set("isB2CRegistrationVerificationRequiredCompleted",!0)):t.login(!0):(t.set("verificationRequired",r.verificationRequired),t.set("isProcessing",!1),t.set("disableRegisterButton",!1),t.set("isB2BRegistrationCompleted",!0)):h(r.responseMessage))}).fail(function(){h(i.options.textRegisterUserErrorDefaultMessage)})}function h(r){t.set("isProcessing",!1);t.set("disableRegisterButton",!1);var u=t.get("triggerMessages");t.set("triggerMessages",i.options.triggerRegisterMessages);i.viewModel._setMessage(r,n.cv.css.messageTypes.error);t.set("triggerMessages",u);i.options.validateCaptcha&&i.options.captchaVersion==="reCaptchaV2"&&n.cv.css.trigger(n.cv.css.eventnames.resetReCaptchaV2)}}else n(i.element).find(".tooltip-error.validation.error input").first().focus()},enablePassword:!1,showLoginModal:function(){var t=this;n.fancybox.open({href:"#"+t.get("loginPopupId"),topRatio:"0.25",minWidth:"320",padding:"0",parent:"form:first",beforeShow:function(){t.set("enablePassword",!0)},afterShow:function(){var i=n(t.get("fieldSelector"));i.focus();window.Placeholders&&!window.Placeholders.nativeSupport&&window.Placeholders.enable(this.content[0])},afterClose:function(){t.set("enablePassword",!1)}})}}));return a(),i._extend&&i._extend.call(i,s,i),s},_setCustomerCode:function(t){var i=this,r=n.cv.util.isNullOrWhitespace(t)?i.options.registerCustomerCode:t.substring(1,t.length);i.viewModel.set("customerCode",r)},_getDefaultViewTemplate:function(){return"<div id='LoginWrapper'><div id='LoginContainer' data-bind='invisible: changingPassword'><label id='UserIdLabel'>#= textUserIdLabel #<\/label><input id='UserIdInput' type='text' data-bind='value: userId' data-value-update='keyup' /><label id='PasswordLabel' data-bind='invisible: emailingPassword'>#= textPasswordLabel #<\/label><input id='PasswordInput' type='password' data-bind='value: password, enabled: passwordEnabled, invisible: emailingPassword, events:{keyup: userIdKeyUp}' /># if (useCookie) { #<label id='RememberMeLabel' data-bind='invisible: emailingPassword'>#= textRememberMeLabel #<\/label><input id='RememberMeInput' type='checkbox' data-bind='checked: rememberMe, inv
26isible: changingPassword, invisible: emailingPassword' /># } ## if (isShowKeepMeLoggedIn) { #<label id='KeepMeLoggedInLabel' data-bind='invisible: emailingPassword'>#= textKeepUserLoggedInCheckbox #<\/label><input id='KeepMeLoggedInInput' type='checkbox' data-bind='checked: keepMeLoggedIn, invisible: changingPassword, invisible: emailingPassword' /># } #<input id='LoginButton' type='button' value='#= textLoginButtonLabel #' data-bind='click: login, invisible: emailingPassword' /><input id='EmailMeButton' type='button' value='#= textEmailMeButtonLabel #' data-bind='click: emailPassword, visible: emailingPassword' /><input id='CancelSendPasswordButton' type='button' value='#= textCancelSendPasswordButtonLabel #' data-bind='click: cancelEmailPassword, visible: emailingPassword' /><a id='ForgotPasswordLink' href='javascript:void(0)' data-bind='click: forgotPassword, invisible: emailingPassword'>#= textForgotPasswordLabel #<\/a><\/div><div id='ChangePasswordContainer' data-bind='visible: changingPassword'><label id='NewPasswordLabel'>#= textNewPasswordLabel #<\/label><input id='NewPasswordInput' type='password' data-bind='value: changePassword1, events:{keyup: changePasswordKeyUp ' /><label id='ConfirmPasswordLabel'>#= textConfirmPasswordLabel #<\/label><input id='ConfirmPasswordInput' type='password' data-bind='value: changePassword2, events:{keyup: changePasswordKeyUp}' /><label id='NotificationEmailLabel' data-bind='visible: notifyEmailRequired'>#= textNotificationEmailLabel #<\/label><input id='NotificationEmailInput' type='email' data-bind='value: notifyEmailAddress, visible: notifyEmailRequired, events:{keyup: changePasswordKeyUp}' /><input id='ChangePasswordButton' type='button' data-bind='click: changePassword' value='#= textChangePasswordButtonLabel #' /><\/div><span id='ErrorMessageContainer' data-bind='html: message'><\/span><\/div>"},_getDefaultItemViewTemplate:function(){var n=this;return"<script type='text/x-kendo-template' id='"+n.options.itemViewTemplate+"'><div class='fieldContainer'>"+(n.options.hideEmptyPrompt?"<label data-bind='html: prompt, invisible: emptyPrompt'><\/label>":"<label data-bind='html: prompt'><\/label>")+"<span data-bind='html: fieldTemplate'><\/span><\/div><\/script>"}};n.cv.ui.widget(s)})(jQuery);
27(function(n){var t={name:"logout",extend:"mvvmwidget",options:{autoBind:!0,triggerMessages:!0,clearWidgetMessages:!0,errorLoggingOut:"There was an error logging you out, please refresh the page and try again",logoutRedirectUrl:""},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this,i=kendo.observable(n.extend(t.options,{isProcessing:!1,logout:function(){var i=this;i.get("isProcessing")||(i.set("isProcessing",!0),_.extend(n.cv.css._proxyMeta,n.cv.util.getBaseProxyMeta(t)),n.cv.css.logout({logoutRedirectUrl:n.cv.util.isNullOrWhitespace(t.options.logoutRedirectUrl)?"/":t.options.logoutRedirectUrl}).done(function(r){r&&r.length>0?(n.cv.util.notify(t.viewModel,i.get("errorLoggingOut"),n.cv.css.messageTypes.error),i.set("isProcessing",!1)):n.cv.util.hasContent(t.options.logoutRedirectUrl)&&t.options.logoutRedirectUrl!=="/"&&n.cv.util.redirect(t.options.logoutRedirectUrl,null,!1,!0)}).fail(function(){n.cv.util.notify(t.viewModel,i.get("errorLoggingOut"),n.cv.css.messageTypes.error);i.set("isProcessing",!1)}))}}));return i.bind("change",function(){}),i}};n.cv.ui.widget(t)})(jQuery);
28(function(n){var r="addingGiftCard",t="addingGiftCardFailed",u="addedGiftCard",f="removingGiftCard",i="removingGiftCardFailed",e="removedGiftCard",o={name:"giftCard",extend:"mvvmwidget",options:{itemTemplate:"",defaultSummaryViewVisible:!1,triggerGlobalMessages:!1,extractOrderTotal:function(n){return n.OrderTotalAmount},validationOptions:{}},extendEvents:[r,t,u,f,i,e],viewModelBound:function(){var i=this,t=i.viewModel;t.refreshViewVisibility();n.cv.css.bind(n.cv.css.eventnames.giftCardsChanged,n.proxy(t.refreshViewVisibility,t));n.cv.css.bind(n.cv.css.eventnames.giftCardRemoved,n.proxy(t.removeGiftCard,t))},_getCurrentCards:function(){var u=this,f=function(n){return function(){u.viewModel.removeGiftCard(n)}},t=n.cv.css.localGetCurrentOrder(),i=[],r;return t&&(r=t.GiftCards||[],n.each(r,function(n,t){t.removeGiftCard=f(t.CardNumber);i.push(t)})),i},_getViewModel:function(){var s=this,h=n(s.element),c=h.find(".notify-view").length>0,l=h.find(".entry-view").length>0,a=h.find(".summary-view").length>0,v=s._getCurrentCards(),o=kendo.observable({isNotifyViewVisible:c&&!0,doesNotifyViewExist:c,showEntryView:function(){o.clearEntryView();o.set("isNotifyViewVisible",!1);o.set("isEntryViewVisible",!0)},isEntryViewVisible:l&&!c,doesEntryViewExist:l,giftCardNumber:"",giftCardPin:"",useTotalAmount:!1,amountToUse:0,isProcessing:!1,addGiftCardKeyUp:function(n){n.which==13&&(n.preventDefault(),n.stopPropagation(),this.addGiftCard())},addGiftCard:function(){var i=n.Deferred(),f,e;return o.validate(),o.set("messages",[]),o.get("isValid")===!0?(n.cv.css.trigger(n.cv.css.eventnames.processingGiftCard,{isProcessingGiftCard:!0}),s.trigger(r,{cardNumber:o.get("giftCardNumber")}),f={cardNumber:o.get("giftCardNumber"),pinNumber:o.get("giftCardPin"),useAllAmount:o.get("useTotalAmount"),amountToUse:o.get("amountToUse")},o.set("isProcessing",!0),e=n.cv.css.giftCard.addGiftCard(f),e.done(function(r){if(o.set("isProcessing",!1),r.data.Success===!1){var e=n.map(r.data.Messages,function(n){return{type:"error",message:n}});o.set("messages",e);n.each(r.data.Messages,function(t,i){o.setMessage(i,n.cv.css.messageTypes.error)});s.trigger(t,{cardNumber:o.get("giftCardNumber")});n.cv.css.trigger(n.cv.css.eventnames.processingGiftCard,{isProcessingGiftCard:!1});i.resolve();return}o.refreshViewVisibility().done(function(){o.clearEntryView();s.trigger(u,{cardNumber:o.get("giftCardNumber")});n.cv.css.trigger(n.cv.css.eventnames.orderChanged);n.cv.css.trigger(n.cv.css.eventnames.giftCardsChanged,{cardNumber:f.cardNumber,changeType:"add"});s.options.triggerGlobalMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"Gift card added",type:"success",source:"giftCard",clearExisting:!0});o.set("messages",[{type:"success",message:"Gift card added"}]);n.cv.css.trigger(n.cv.css.eventnames.processingGiftCard,{isProcessingGiftCard:!1});i.resolve()})}),e.fail(function(){o.set("isProcessing",!1);o.set("messages",[{type:"error",value:"Unknown error while adding gift card"}]);s.options.triggerGlobalMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"Unknown error while adding gift card",type:"error",source:"giftCard",clearExisting:!0});s.trigger(t,{cardNumber:o.get("giftCardNumber")});n.cv.css.trigger(n.cv.css.eventnames.processingGiftCard,{isProcessingGiftCard:!1});i.reject()})):i.reject(),i.promise()},cancelEntry:function(){o.clearEntryView();o.set("isNotifyViewVisible",!0);o.set("isEntryViewVisible",!1);o.set("messages",[])},clearEntryView:function(){o.set("giftCardNumber","");o.set("giftCardPin","");o.set("useTotalAmount",!1);o.set("amountToUse",0)},isSummaryViewVisible:s.options.defaultSummaryViewVisible,doesSummaryViewExist:a,removeGiftCard:function(t){var r=n.Deferred(),u;return s.trigger(f,{cardNumber:t}),u=n.cv.css.giftCard.removeGiftCard({cardNumber:t}),u.done(function(u){if(u.data.Success===!1){var f=n.map(u.data.Messages,function(n){return{type:"error",message:n}});o.set("messages",f);r.resolve();s.trigger(i,{cardNumber:t});return}o.refreshViewVisibility().done(function(){o.set("messages",[{type:"success",message:"Gift card removed"}]);s.trigger(e);n.cv.css.trigger(n.cv.css.eventnames.orderChanged);n.cv.css.trigger(n.cv.css.eventnames.giftCardsChanged,{cardNumber:t,changeType:"remove"});s.options.triggerGlobalMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"Gift card removed",type:"success",source:"giftCard",clearExisting:!0});r.resolve()})}),u.fail(function(){o.set("messages",[{type:"error",message:"Unknown error while removing the gift card"}]);s.options.triggerGlobalMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"Unknown error while adding gift card",type:"error",source:"giftCard",clearExisting:!0});s.trigger(i,{cardNumber:t});r.reject()}),r.promise()},giftCards:v,orderTotal:0,orderTotalAfterGiftCards:0,isValid:!0,validate:function(){var t=h.data("kendoValidator"),i;return t||(h.kendoValidator(s.options.validationOptions),t=h.data("kendoValidator"),n.cv.util.preventHiddenFieldValidation(t)),i=t.validate(),o.set("isValid",i),i},messages:[],setMessage:function(t,i,r){var u=typeof r!="undefined"?r:s.options.triggerGlobalMessages;n.cv.util.notify(this,t,i,{triggerMessages:u,source:s.name})},ensureOrder:function(t){var i=this,u=n.cv.css.localGetCurrentOrder(),r=n.Deferred();return!u||t?n.cv.css.getCurrentOrder().done(function(){r.resolve()}):r.resolve(),r.done(function(){var t=n.cv.css.localGetCurrentOrder(),r=s._getCurrentCards(),u=s.options.extractOrderTotal(t);i.set("giftCards",r);i.set("orderTotal",u);r.length>0?i.set("orderTotalAfterGiftCards",t.TotalPaymentBalanceAfterEnteredGiftCards):i.set("orderTotalAfterGiftCards",u)}),r.promise()},refreshViewVisibility:function(){var i=this,t=n.Deferred();return i.ensureOrder(!0).done(function(){var i=s._getCurrentCards(),r=o.get("orderTotalAfterGiftCards"),u=h.find(".summary-view").length>0,n;r<=0?(o.set("wasNotifyViewLastVisible",o.get("isNotifyViewVisible")),o.set("isNotifyViewVisible",!1),o.set("isEntryViewVisible",!1)):(n=o.get("wasNotifyViewLastVisible"),n!=null&&(o.set("isNotifyViewVisible",n),o.set("isEntryViewVisible",!n),n||o.set("messages",[])));o.set("isSummaryViewVisible",u&&(s.options.defaultSummaryViewVisible===!0||i&&i.length>0));t.resolve()}),t}});return o.bind("change",function(n){n.field==="useTotalAmount"&&o.set("amountToUse",0)}),n.cv.css.bind(n.cv.css.eventnames.orderChanged,function(n){if(n===!0){o.ensureOrder(!0);o.refreshViewVisibility();return}if(n!=null){var t=s._getCurrentCards();t.length>0?o.set("orderTotalAfterGiftCards",n.TotalPaymentBalanceAfterEnteredGiftCards):o.set("orderTotalAfterGiftCards",n.OrderTotalAmount)}}),o},_buildViewTemplate:function(){var n=this;n.viewTemplate=""}};n.cv.ui.widget(o)})(jQuery);
29(function(n){var t="DEFAULT",i={name:"giftCardBalance",extend:"mvvmwidget",options:{errorMessageException:"An error occurred, please try again.",captchaVersion:"",useInvisibleCaptcha:!1,showCaptcha:!1},_getViewModel:function(){var r=this,u=r.options,i=kendo.observable(n.extend({},u,{giftCardNumber:"",giftCardPin:"",isProcessing:!1,showMessage:!1,isSuccess:!0,clickCheckBalance:function(){var i=this,u,f;i.get("showCaptcha")?(u=r.options.captchaVersion===t?n.cv.css.eventnames.validateCaptcha:r.options.useInvisibleCaptcha?n.cv.css.eventnames.executeInvisibleCaptcha:n.cv.css.eventnames.validateReCaptcha,f=r.options.captchaVersion===t?i.checkBalance:i.getReCaptchaToken,n.cv.css.trigger(u,{success:n.proxy(f,i),fail:function(){i.set("isProcessing",!1)},widgetId:r.element.attr("id")})):i.checkBalance()},getReCaptchaToken:function(){var t=this;n.cv.css.trigger(n.cv.css.eventnames.getReCaptchaToken,{success:n.proxy(t.checkBalance,t),fail:function(){t.set("isProcessing",!1)}})},resetCaptcha:function(){r.options.captchaVersion===t?n.cv.css.trigger(n.cv.css.eventnames.resetCaptcha,{}):n.cv.css.trigger(n.cv.css.eventnames.resetReCaptchaV2,{})},checkBalance:function(){var t=this,f={cardNumber:i.get("giftCardNumber").trim(),pinNumber:i.get("giftCardPin").trim()},u;i.set("isProcessing",!0);u=n.cv.css.giftCard.checkBalance(f);u.done(function(i){var u=i&&i.data,f;t.set("showMessage",!0);u?u.Success&&u.Value?(t.set("isSuccess",!0),t.set("giftCardBalance",u.Value.CardBalanceFormatted),t.set("hasExpiryDate",n.cv.util.hasContent(u.Value.Extra.ExpiryDate)),t.set("expiryDate",u.Value.Extra.ExpiryDate),t.set("currency",u.Value.Extra.Currency)):(f=u.Messages.join("<br />"),t.set("isSuccess",!1),t.set("errorMessage",f)):(t.set("isSuccess",!1),t.set("errorMessage",r.options.errorMessageException));t.resetCaptcha()}).fail(function(){t.set("showMessage",!0);t.set("isSuccess",!1);t.set("errorMessage",r.options.errorMessageException);t.resetCaptcha()}).always(function(){i.set("isProcessing",!1)})},clearEntryView:function(){i.set("giftCardNumber","");i.set("giftCardPin","");i.set("isProcessing",!1);i.set("showMessage",!1)}}));return i}};n.cv.ui.widget(i)})(jQuery);
30(function(n){var t="widgetDataInitialised",i="savedSuccessfully",r={name:"userMaintenance",extend:"mvvmwidget",options:{jsonFieldGroupName:"",successfulRedirectUrl:"",notificationEmailPrompt:"",notifyEmailAddressFieldName:"NotifyEmailAddress",financeUserOnlyFields:[],autoBind:!0,triggerMessages:!1,clearWidgetMessages:!0,updateOnChange:!1,hideFinanceRelatedFields:!1,textMandatoryFieldsMissing:"The following fields are required: {0}",textErrorEnteredDateInWrongFormat:"Date entered is in the wrong format",textErrorEnteredEmailInWrongFormat:"Email entered is in the wrong format",textErrorEnteredDecimalInWrongFormat:"Decimal entered in the wrong format",textErrorEnteredUrlInWrongFormat:"Url entered in the wrong format",textMandatoryFieldNotComplete:"Mandatory field",textUpdateSuccessful:"Updated successfully",textUpdateErrorDefaultMessage:"There was an error updating your information at this time",viewTemplate:null,itemTemplate:""},extendEvents:[t,"listUpdated",i],viewModelBound:function(){var i=this,u=n.Deferred(),f=n.Deferred(),r=[];i.viewModel.set("isProcessing",!0);f=n.cv.css.user.getUserMaintenanceData({jsonFieldGroupName:i.options.jsonFieldGroupName});n.when(f).done(function(n){n.errorMessage&&n.errorMessage.length!=0||(n.data&&n.data.length>0&&n.data[0].UserDetailsFieldData?(r=n.data[0].UserDetailsFieldData,i.options.hideFinanceRelatedFields&&(r=_.filter(r,function(n){return!_.contains(i.options.financeUserOnlyFields,n.FieldName)}))):r=[],i.viewModel.set("itemList",i._getDataView(r)));u.resolve()});n.when(u).done(function(){i.viewModel.set("isProcessing",!1);i.trigger(t,{viewCount:i.viewModel.get("itemList").length,dataCount:i.viewModel.get("dataCount")}
30)})},_getDataView:function(t){var i=this,r=[];return n.each(t,function(t,u){u.index=t;u.MandatoryMessage=i.options.textMandatoryFieldNotComplete;u.FieldName===i.options.notifyEmailAddressFieldName&&i.options.notificationEmailPrompt&&(u.Placeholder=i.options.notificationEmailPrompt);var f=n.cv.util.getFieldItemData(u);f.dataChanged=function(n){var t=n.data.fieldItem,r=i.viewModel.get("updateOnChange");f.fieldValid(n)&&r&&i.viewModel.updateUserField(t.fieldName)};r.push(f)}),r},_stringEmpty:function(t){return n.type(t)=="string"&&(t=t.replace(/ /g,"")),!t},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this,r=function(){var r=t.viewModel.get("itemList"),i=[];return n.each(r,function(t,r){r.fieldItem.mandatory&&i.push(n.extend(r,{emptyMessage:r.prompt}))}),i};return kendo.observable(n.extend(t.options,{isProcessing:!1,updateOnChange:t.options.updateOnChange,currentUser:null,itemList:[],message:"",clearWidgetMessages:t.options.clearWidgetMessages,dataCount:0,updateUserField:function(i){var u=this,r={},f;n.cv.util.clearMessage.apply(t.viewModel);n.each(this.get("itemList"),function(t,u){if(i!=null&&u.fieldItem.fieldName===i){var f=this.get(u.fieldItem.fieldName);n.cv.util.validateField(f,u.fieldItem.FieldType)&&(r[u.fieldItem.fieldName]=f)}});f=u.getCurrentUser();n.when(f).done(function(i){r._objectKey=i;var f=n.cv.css.user.setCurrentUserDetails({updateData:r,jsonFieldGroup:t.options.jsonFieldGroupName});n.when(f).done(function(n){var t=n.data;t.sessionHasTimedOut||u.set("isProcessing",!1)})})},checkAllRequiredFields:function(){var u=!0,i="",f=r();return n.each(f,function(n,t){t.fieldItem.Mandatory===!0&&t[t.fieldItem.fieldName].length===0&&t.fieldItem.parent().fieldValid({data:t.fieldItem.parent()},!0)===!1&&(u=!1,i+=","+t.emptyMessage)}),i!==""&&(i=t.options.textMandatoryFieldsMissing.format(i.substring(1)),n.cv.util.setMessage.apply(t.viewModel,[i,n.cv.css.messageTypes.error])),u},validateFields:function(){var r=!0,i="";return n.each(this.get("itemList"),function(n,t){t.fieldItem.parent().fieldValid({data:t.fieldItem.parent()},!0)===!1&&(r=!1,i+=t.fieldItem.errorMessage+",")}),i!==""&&n.cv.util.setMessage.apply(t.viewModel,[i.slice(0,-1),n.cv.css.messageTypes.error]),r},getCurrentUser:function(){var u=this,t=this.get("currentUser"),r=n.Deferred(),i=n.Deferred();return t==null&&(t=n.cv.css.localGetUser()),t&&t!=null?i.resolve({data:[t]}):i=n.cv.css.getCurrentUser(),n.when(i).done(function(n){var t;n&&n.data&&n.data.length>0&&(t=n.data[0]._objectKey!=null?n.data[0]._objectKey:n.data[0],u.set("currentUser",t));r.resolve(t)}),r.promise()},getUserDetails:function(){var i=this,r=n.Deferred(),t={},u=i.getCurrentUser();return n.each(i.get("itemList"),function(n,i){var r=i.get(i.fieldItem.fieldName),u;r==null&&(r="");r.toString()!="true"&&r.toString()!="false"?i.fieldItem.FieldType=="date"&&i.fieldItem.fieldName=="Birthday"?(u=kendo.parseDate(r),t[i.fieldItem.fieldName]=u==null?null:u.toDateString().format("dd/MM/yyyy")):t[i.fieldItem.fieldName]=r.toString():t[i.fieldItem.fieldName]=r}),u.done(function(n){t._objectKey=n;r.resolve(t)}),r.promise()},saveDetails:function(){var r=this,u;n.cv.util.clearMessage.apply(t.viewModel);r.checkAllRequiredFields()&&r.validateFields()&&(r.set("isProcessing",!0),u=r.getUserDetails(),n.when(u).done(function(u){var f=n.cv.css.user.setCurrentUserDetails({updateData:u,jsonFieldGroup:t.options.jsonFieldGroupName});n.when(f).done(function(u){var f=u.data;f.sessionHasTimedOut||(t.options.successfulRedirectUrl.length==0?(r.set("isProcessing",!1),n.cv.util.setMessage.apply(t.viewModel,[t.options.textUpdateSuccessful,n.cv.css.messageTypes.success]),t.trigger(i)):n.cv.util.redirect(t.options.successfulRedirectUrl,{},!1))}).fail(function(){r.set("isProcessing",!1);n.cv.util.setMessage.apply(t.viewModel,[t.options.textUpdateErrorDefaultMessage,n.cv.css.messageTypes.error])})}))},changeDetailsKeyUp:function(n){n.which===13&&(n.preventDefault(),n.stopPropagation(),this.saveDetails())}}))},_buildViewTemplate:function(){var n=this;n._buildDefaultViewTemplate()},_buildDefaultViewTemplate:function(){var n=this;n._buildDefaultContentTemplate()},_buildDefaultContentTemplate:function(){var t=this,n="<div class='cv-ui-element-content-area'>";n+="<\/div>";t.viewTemplate+=n},_buildItemTemplateBody:function(){var n=this;n.itemTemplate+="<div><\/div>"}};n.cv.ui.widget(r)})(jQuery);
31(function(n,t){var i="widgetDataInitialised",r="addressUpdated",u={name:"myAddress",extend:"mvvmwidget",options:{enableSuburbAndPostcodeValidation:!0,suburbFieldName:"DeliverySuburb",postcodeFieldName:"DeliveryPostcode",billingSuburbFieldName:"SoBillSuburb",billingPostcodeFieldName:"SoBillPostcode",suburbAndPostcodeInvalidMessage:"The suburb and postcode don't correspond.",useAddressLookup:!1,autoPopulatedBillAddressFields:["SoBillSuburb","SoBillPostcode"],autoPopulatedDeliveryAddressFields:["DeliverySuburb","DeliveryPostcode"],customerFieldNameForDefaultAddressName:"",overlayId:"modal-delivery-addresses",hasMultipleDeliveryAddresses:!1,multipleDeliveryAddressDataSource:t,multipleAddressTextField:"Name",multipleAddressValueField:"Name",addressValidationTextField:"label",addressValidationValueField:"value",autoBind:!0,isB2c:!1,listUpdated:null,widgetDataInitialised:null,triggerMessages:!0,clearWidgetMessages:!0,isAddressDeleteConfirmMode:!1,isAddressSetMode:!0,isAddressEditMode:!1,thirdPartyDelAddrName:"",thirdPartyDelCustomerCode:"",thirdPartyDelEmailAddress:"",thirdPartyDelAddr1:"",thirdPartyDelAddr2:"",thirdPartyDelAddr3:"",thirdPartyDelAddr4:"",thirdPartyDelAddr5:"",thirdPartyDelAddr6:"",thirdPartyDelAddr7:"",thirdPartyDelPostcode:"",thirdPartyDelAddr1ValidationError:"",thirdPartyDelAddr1Invalid:!1,thirdPartyDelAddr2ValidationError:"",thirdPartyDelAddr2Invalid:!1,thirdPartyDelPostCodeValidationError:"",thirdPartyDelPostCodeInvalid:!1,notAllFieldsValid:"Not all the fields have valid values, please check and try again",suburbPostcodeNotValid:"You have an invali
31d suburb and postcode",errorValidatingSuburbPostcode:"There was an error validating the suburb and postcode",noDefaultDeliveryAddressSelected:"A default delivery address has not been selected. Nothing to process.",errorSettingDefaultDeliveryAddress:"There was an error setting the default delivery address.",errorLoadingPossibleAddresses:"There was an error loading possible delivery addresses.",defaultDeliveryAddressSameAsPrevious:"The selected default delivery address has not been changed. No update will be performed.",saveAddressSuccessMessage:"Succeeded to save the address",saveAddressFailureMessage:"Failed to save the address",deleteAddressSuccessMessage:"Succeeded to delete the address",deleteAddressFailureMessage:"Failed to delete the address",billingFieldList:["SoBillAddr1","SoBillAddr2","SoBillAddr3","SoBillAddr4","SoBillSuburb","SoBillState","SoBillPostcode","SoBillAddr7","SoBillAddr6"],deliveryFieldList:["DeliveryContactName","PhoneNumber","DeliveryAddress1","DeliveryAddress2","DeliverySuburb","DeliveryState","DeliveryPostcode","DeliveryAddress7","DeliveryAddress6"],viewTemplate:null},extendEvents:[i,"listUpdated",r],initialise:function(){var t=this,i,r;t.options.useAddressLookup&&(n.cv.css.bind(n.cv.css.eventnames.addressLookupSelected,n.proxy(t.viewModel.addressLookupSelected,t.viewModel)),n.cv.css.bind(n.cv.css.eventnames.addressLookupValueEdited,n.proxy(t.viewModel.addressLookupValueEdited,t.viewModel)),i=n("#billingAddressLookup"),i&&t.initAddressLookup(i,n("#billingAddressLookupTemplate")),r=n("#deliveryAddressLookup"),r&&t.initAddressLookup(r,n("#deliveryAddressLookupTemplate")))},initAddressLookup:function(n,t){var i={viewTemplate:t.html(),addressLookupProvider:n.data("addressLookupProvider"),addressObjectMapping:n.data("addressObjectMapping"),takeCount:n.data("takeCount"),minimumLookupLength:n.data("minimumLookupLength"),delay:n.data("delay"),mandatoryMessage:n.data("mandatoryMessage"),defaultAddress:n.data("defaultAddress"),defaultAddressId:n.data("defaultAddressId"),displayValuesFromSeq:n.data("displayValuesFromSeq"),manualMappingSeq:n.data("manualMappingSeq"),psoFieldLengthsMappingOverride:n.data("psoFieldLengthsMappingOverride"),defaultAddressType:n.data("defaultAddressType")};n.addressLookup(i)},viewModelBinding:function(){var n=this},_getViewModel:function(){var t=this,e=t.options,o=function(){return u.set("isLoadingMyDefaultAddress",!0),n.cv.css.user.myAddress().done(function(i){if(!n.cv.util.hasValue(i)){n.cv.util.notify(t.viewModel,vm.get("errorSettingDefaultDeliveryAddress"),n.cv.css.messageTypes.error);return}if(!n.cv.util.isNullOrWhitespace(i.errorMessage)){n.cv.util.notify(t.viewModel,vm.get("errorSettingDefaultDeliveryAddress"),n.cv.css.messageTypes.error);return}n.cv.util.hasValue(i.data)&&i.data.length!==0||n.cv.util.notify(t.viewModel,vm.get("errorSettingDefaultDeliveryAddress"),n.cv.css.messageTypes.error);var r=i.data[0];r.DeliveryAddressFieldData&&u.set("deliveryAddressList",f(r.DeliveryAddressFieldData));r.BillingAddressFieldData&&(u.set("billingAddressList",f(r.BillingAddressFieldData)),t.viewModel.set("differentDeliveryAndBilling",t.viewModel.addressesMatch()==!1));t.options.useAddressLookup&&(n.cv.util.hasContent(r.SoBillAddressId)?u.set("billAddressId",r.SoBillAddressId):u.clearAddressFields(["SoBillAddr2","SoBillAddr3","SoBillSuburb","SoBillState","SoBillPostcode"],null,!0),n.cv.util.hasContent(r.DeliveryAddressId)?u.set("deliveryAddressId",r.DeliveryAddressId):u.clearAddressFields(["DeliveryAddress1","DeliveryAddress2","DeliverySuburb","DeliveryState","DeliveryPostcode"],null,!1))}).always(function(){u.set("isLoadingMyDefaultAddress",!1)})},f=function(i){var r=[];return _.each(i,function(i,u){var f,e;i.index=u;f=n.cv.util.getFieldItemData(i);t.options.useAddressLookup&&(e=f.fieldItem.FieldName,(t.options.autoPopulatedBillAddressFields.indexOf(e)>=0||t.options.autoPopulatedDeliveryAddressFields.indexOf(e)>=0)&&(f[e+"_isEnabled"]=!1));r.push(f)}),r},s=function(t){if(n.cv.util.hasValue(t)){var i=u.get("multipleAddressItemList"),r=u.get("defaultDeliveryAddressIndex");t.Index<i.length&&(r>=0&&r<i.length&&i[r].set("IsDefaultDeliveryAddress",!1),t.set("IsDefaultDeliveryAddress",!0),u.set("defaultDeliveryAddressIndex",t.Index))}},h=function(){var t=u.get("multipleDeliveryAddressDataSource"),n;return t?(n=[],_.each(t.view(),function(t,i){t.Index=i;t.IsDefaultDeliveryAddress&&(u.set("defaultDeliveryAddressIndex",i),u.set("previousDefaultDeliveryAddressIndex",i));t.setAsDefaultDeliveryAddress=function(n){n.data.isThirdPartyDeliveryAddress||s(t)};n.push(t)}),n):(u.set("defaultDeliveryAddressIndex",-1),u.set("previousDefaultDeliveryAddressIndex",-1),[])},u=kendo.observable(n.extend({},e,{isProcessing:!1,isLoadingMyPossibleAddresses:!1,isLoadingMyDefaultAddress:!1,differentDeliveryAndBilling:!1,multipleAddressItemList:[],deliveryAddressList:[],billingAddressList:[],defaultDeliveryAddressIndex:-1,previousDefaultDeliveryAddressIndex:-1,objectKey:"",message:"",clearWidgetMessages:t.options.clearWidgetMessages,setMessage:function(i,r){n.cv.util.notify(this,i,r,{triggerMessages:t.options.triggerMessages,source:t.name})},addressesMatch:function(){var i=this,t=!0,r=i.get("billingAddressList");return n.each(i.get("deliveryAddressList"),function(n,i){var u=r.length>=n?r[n]:null;return u==null?(t=!1,!1):i.get(i.fieldItem.fieldName)!=u.get(u.fieldItem.fieldName)?(t=!1,!1):void 0}),t},clearMessage:function(){var n=this;n.setMessage("","")},getAddressField:function(n,t){return _.find(n,function(n){return n.fieldItem.FieldName===t})},getBillingAddressField:function(n){return this.getAddressField(this.get("billingAddressList"),n)},getBillingAddressSuburbField:function(){return this.getBillingAddressField(t.options.billingSuburbFieldName)},getBillingAddressSuburbFieldValue:function(){return this.getBillingAddressSuburbField().get(t.options.billingSuburbFieldName)},getBillingAddressPostcodeField:function(){return this.getBillingAddressField(t.options.billingPostcodeFieldName)},getBillingAddressPostcodeFieldValue:function(){return this.getBillingAddressPostcodeField().get(t.options.billingPostcodeFieldName)},getBillingAddress:function(){var i=this,u={},r;return n.each(i.get("billingAddressList"),function(n,t){u[t.fieldItem.fieldName]=this.get(t.fieldItem.fieldName)==null?"":this.get(t.fieldItem.fieldName)}),r=i.addressFieldsToUpdate("billing",u),t.options.useAddressLookup&&(r.SoBillAddressId=i.get("billAddressId")),r},getDeliveryAddressField:function(n){return this.getAddressField(this.get("deliveryAddressList"),n)},getDeliveryAddressSuburbField:function(){return this.getDeliveryAddressField(t.options.suburbFieldName)},getDeliveryAddressSuburbFieldValue:function(){return this.getDeliveryAddressSuburbField().get(t.options.suburbFieldName)},getDeliveryAddressPostcodeField:function(){return this.getDeliveryAddressField(t.options.postcodeFieldName)},getDeliveryAddressPostcodeFieldValue:function(){return this.getDeliveryAddressPostcodeField().get(t.options.postcodeFieldName)},getDelAddress:function(){var i=this,r={},u,f;return i.get("differentDeliveryAndBilling")?n.each(i.get("deliveryAddressList"),function(n,t){r[t.f
31ieldItem.fieldName]=this.get(t.fieldItem.fieldName)==null?"":this.get(t.fieldItem.fieldName)}):(u=i.get("billingAddressList"),n.each(i.get("deliveryAddressList"),function(n,t){var i=u.length>=n?u[n]:null;r[t.fieldItem.fieldName]=i==null||i.get(i.fieldItem.fieldName)==null?"":i.get(i.fieldItem.fieldName);this.set(t.fieldItem.fieldName,r[t.fieldItem.fieldName])})),f=i.addressFieldsToUpdate("delivery",r),t.options.useAddressLookup&&(f.DeliveryAddressId=i.get("differentDeliveryAndBilling")?i.get("deliveryAddressId"):i.get("billAddressId")),f},validateSuburbAndPostCode:function(i,r,u){var e=this,f=n.Deferred();return!n.cv.util.hasValue(i)||!n.cv.util.hasValue(r)?(f.resolve([{data:!1}]),f):(f=n.cv.css.deliveryAddress.validateSuburbAndPostCode({suburb:i,state:"",postcode:r,country:u}),f.fail(function(){e.setMessage(t.options.errorValidatingSuburbPostcode,n.cv.css.messageTypes.error)}),f)},validateBillingSuburbAndPostCode:function(){var n=this;return this.validateSuburbAndPostCode(n.getBillingAddressSuburbFieldValue(),n.getBillingAddressPostcodeFieldValue(),"")},validateDeliverySuburbAndPostCode:function(){var t=this,i=n.Deferred();return t.get("differentDeliveryAndBilling")?this.validateSuburbAndPostCode(t.getDeliveryAddressSuburbFieldValue(),t.getDeliveryAddressPostcodeFieldValue(),""):(i.resolve([{data:!0}]),i)},setFieldErrorMessage:function(n,t){n.setError(n.fieldItem,t,"")},billingAddressInvalid:!1,clearBillingInvalidSuburbAndPostCode:function(){var n=this;n.set("billingAddressInvalid",!1);n.setFieldErrorMessage(n.getBillingAddressPostcodeField(),"");n.setFieldErrorMessage(n.getBillingAddressSuburbField(),"")},setBillingInvalidSuburbAndPostCode:function(){var n=this;n.setFieldErrorMessage(n.getBillingAddressPostcodeField(),t.options.suburbAndPostcodeInvalidMessage);n.setFieldErrorMessage(n.getBillingAddressSuburbField(),t.options.suburbAndPostcodeInvalidMessage);n.set("billingAddressInvalid",!0)},deliveryAddressInvalid:!1,clearDeliveryInvalidSuburbAndPostCode:function(){var n=this;n.set("deliveryAddressInvalid",!1);n.setFieldErrorMessage(n.getDeliveryAddressPostcodeField(),"");n.setFieldErrorMessage(n.getDeliveryAddressSuburbField(),"")},setDeliveryInvalidSuburbAndPostCode:function(){var n=this;n.setFieldErrorMessage(n.getDeliveryAddressPostcodeField(),t.options.suburbAndPostcodeInvalidMessage);n.setFieldErrorMessage(n.getDeliveryAddressSuburbField(),t.options.suburbAndPostcodeInvalidMessage);n.set("deliveryAddressInvalid",!0)},suburbAndStateValid:function(){var i=this,r=n.Deferred();return i.clearBillingInvalidSuburbAndPostCode(),i.clearDeliveryInvalidSuburbAndPostCode(),t.options.enableSuburbAndPostcodeValidation?n.when(i.validateBillingSuburbAndPostCode(),i.validateDeliverySuburbAndPostCode()).done(function(n,t){var u=!0;n.length>0&&!n[0].data&&(i.setBillingInvalidSuburbAndPostCode(),u=!1);t.length>0&&!t[0].data&&(i.setDeliveryInvalidSuburbAndPostCode(),u=!1);r.resolve(u)}):r.resolve(!0),r},addressFieldsToUpdate:function(i,r){if(t.options.isB2c===!1)return r;var u={},f=i==="billing"?t.options.billingFieldList:t.options.deliveryFieldList;return n.each(f,function(n,t){r.hasOwnProperty(t)&&(u[t]=r[t])}),u},addressFieldsToValidate:function(i,r){if(t.options.isB2c===!1)return r;var u=[],f=i==="billing"?t.options.billingFieldList:t.options.deliveryFieldList;return n.each(r,function(n,t){f.indexOf(t.fieldItem.FieldName)!==-1&&u.push(t)}),u},validateAddressFields:function(t,i){var r=!0;return n.each(t,function(n,t){t.fieldItem.parent().fieldValid({data:t.fieldItem.parent()},i)||(r=!1)}),r},allFieldsValid:function(){var n=this,i=n.validateAddressFields(n.addressFieldsToValidate("billing",n.get("billingAddressList")),t.options.triggerMessages);if(i){if(n.get("differentDeliveryAndBilling")===!1)return i;i=n.validateAddressFields(n.addressFieldsToValidate("delivery",n.get("deliveryAddressList")),t.options.triggerMessages)}else n.validateAddressFields(n.get("deliveryAddressList"),t.options.triggerMessages);return i},updateMyAddress:function(){var i=this;n.cv.util.clearMessage.apply(t.viewModel);i.clearMessage();i.set("isProcessing",!0);i.allFieldsValid()?i.suburbAndStateValid().done(function(u){u?n.cv.css.user.updateMyAddress({deliveryAddress:i.getDelAddress(),billingAddress:i.getBillingAddress()}).done(function(u){if((!u.errorMessage||u.errorMessage.length===0)&&n.cv.util.hasValue(u.data)&&u.data.Messages&&u.data.Messages.length>0){var f=_.reduce(u.data.Messages,function(n,t){return n+(n.length>0?", ":"")+t},"");i.setMessage(f,u.data.Success?n.cv.css.messageTypes.success:n.cv.css.messageTypes.error)}i.set("isProcessing",!1);t.trigger(r)}):(i.setMessage(t.options.suburbPostcodeNotValid,n.cv.css.messageTypes.error),i.set("isProcessing",!1))}):(i.setMessage(t.options.notAllFieldsValid,n.cv.css.messageTypes.error),i.set("isProcessing",!1))},setMultipleDeliveryAddressDataSource:function(n){var r=this,i;i=n?kendo.data.DataSource.create(n):kendo.data.DataSource.create(t.options.multipleDeliveryAddressDataSource);t.options.autoBind&&i.fetch();r.set("multipleDeliveryAddressDataSource",i);r.updateMultipleAddressItemList()},updateMultipleAddressItemList:function(){var n=this;n.set("multipleAddressItemList",h())},showOverlay:function(){var t=this,i=t.get("overlayId");n.cv.util.isNullOrWhitespace(i)||n.fancybox.open({topRatio:"0.25",minWidth:"320",padding:"0",href:"#"+i,afterShow:function(){n.fancybox.update()},afterClose:function(){t.setMode(!0,!1,!1)}})},hideOverlay:function(){n.fancybox.close(!0)},cancelSetDefaultDeliveryAddress:function(){var n=this,t=n.get("multipleAddressItemList"),r,i;t&&t.length>0?(r=n.get("defaultDeliveryAddressIndex"),i=n.get("previousDefaultDeliveryAddressIndex"),r!==i&&(r>=0&&r<t.length&&t[r].set("IsDefaultDeliveryAddress",!1),i>=0&&i<t.length&&(t[i].set("IsDefaultDeliveryAddress",!0),n.set("defaultDeliveryAddressIndex",i)))):(n.set("defaultDeliveryAddressIndex",-1),n.set("previousDefaultDeliveryAddressIndex",-1));n.hideOverlay()},normalMultipleAddressItemList:function(){return n.grep(this.get("multipleAddressItemList"),function(n){return!n.isThirdPartyDeliveryAddress})},tpdMultipleAddressItemList:function(){return _.sortBy(n.grep(this.get("multipleAddressItemList"),function(n){return n.isThirdPartyDeliveryAddress}),function(n){return n.Name})},tpdMultipleAddressItemListHasContent:function(){return this.tpdMultipleAddressItemList().length>0},normalMultipleAddressItemListHasContent:function(){return this.normalMultipleAddressItemList().length>0},isAddressBookBlank:function(){return!this.tpdMultipleAddressItemListHasContent()&&!this.normalMultipleAddressItemListHasContent()},updateDefaultDeliveryAddress:function(){var i=this,e,r,u,f,o;
31if(i.get("isProcessing")===!1){if(i.set("isProcessing",!0),e=i.get("multipleAddressItemList"),r=i.get("defaultDeliveryAddressIndex"),!n.cv.util.hasValue(r)||r===-1){n.cv.util.notify(t.viewModel,i.get("noDefaultDeliveryAddressSelected"),n.cv.css.messageTypes.info,{clearExisting:!0});i.set("isProcessing",!1);return}if(u=i.get("previousDefaultDeliveryAddressIndex"),!n.cv.util.hasValue(u)||r===u){n.cv.util.notify(t.viewModel,i.get("defaultDeliveryAddressSameAsPrevious"),n.cv.css.messageTypes.info,{clearExisting:!0});i.set("isProcessing",!1);return}f=e[r];o={addressKey:f.Name,isDefaultCustomerAddress:f.IsDefaultCustomerAddress};n.cv.css.user.setDefaultDeliveryAddress(o).done(function(u){if(u&&u.data){var f=u.data;f.Success?(i.set("previousDefaultDeliveryAddressIndex",r),_.each(f.Messages,function(i){n.cv.util.hasValue(i)&&n.cv.util.notify(t.viewModel,i,n.cv.css.messageTypes.success,{clearExisting:!0})})):_.each(f.Messages,function(i){n.cv.util.hasValue(i)&&n.cv.util.notify(t.viewModel,i,n.cv.css.messageTypes.error,{clearExisting:!0})})}i.hideOverlay();i.set("isProcessing",!1)}).fail(function(){n.cv.util.notify(t.viewModel,i.get("errorSettingDefaultDeliveryAddress"),n.cv.css.messageTypes.error,{clearExisting:!0});i.hideOverlay();i.set("isProcessing",!1)})}},cancelEditDeliveryAddress:function(){this.setMode(!0,!1,!1)},loadMyPossibleAddresses:function(){var i=this,r,u;return i.set("isLoadingMyPossibleAddresses",!0),r=n.cv.css.deliveryAddress.getDeliveryAddressesForCurrentUser({customerFieldNameForDefaultAddressName:t.options.customerFieldNameForDefaultAddressName}),u=n.cv.css.deliveryAddress.getDeliveryAddressesForCurrentUser({customerFieldNameForDefaultAddressName:t.options.customerFieldNameForDefaultAddressName,isThirdPartyDelivery:!0}),n.when(r,u).done(function(t,r){var f=t[0],u=r[0],o=[],e;f&&(!f.errorMessage||f.errorMessage.length===0)&&(o=f.data);u&&(!u.errorMessage||u.errorMessage.length===0)&&u.data&&n.each(u.data,function(n,t){t.isThirdPartyDeliveryAddress=!0});e=o.concat(u.data||[]);i.setMultipleDeliveryAddressDataSource(e);e.length===0?i.hideOverlay():n.fancybox.update()}).fail(function(){i.setMessage(t.options.textErrorGettingMutipleDeliveryAddress,n.cv.css.messageTypes.error)}).always(function(){i.set("isLoadingMyPossibleAddresses",!1)})},saveDeliveryAddress:function(){var t=this,i;if(!t.validateThirdPartyDelAddr()){n.cv.util.notify(t,"Invalid delivery address",n.cv.css.messageTypes.error);return}i=t.get("thirdPartyDelAddrName");n.cv.css.deliveryAddress.updateThirdPartyDeliveryAddress({emailAddress:t.get("thirdPartyDelEmailAddress"),customerCode:t.get("thirdPartyDelCustomerCode"),name:i,address1:t.get("thirdPartyDelAddr1"),address2:t.get("thirdPartyDelAddr2"),address3:t.get("thirdPartyDelAddr3"),address4:t.get("thirdPartyDelAddr4"),address5:t.get("thirdPartyDelAddr5"),address6:t.get("thirdPartyDelAddr6"),address7:t.get("thirdPartyDelAddr7"),postCode:t.get("thirdPartyDelPostcode"),_objectKey:t.get("objectKey")}).done(function(r){r.data.Success?(t.loadMyPossibleAddresses(),t.setMode(!0,!1,!1),n.cv.util.notify(t,t.get("saveAddressSuccessMessage")+": "+i,n.cv.css.messageTypes.success)):n.cv.util.notify(t,t.get("saveAddressFailureMessage")+": "+i,n.cv.css.messageTypes.error)})},deleteDeliveryAddress:function(n){this.loadThirdPartyDeliveryAddress(n);this.setMode(!1,!1,!0)},confirmDeleteDeliveryAddress:function(){var t=this,i=t.get("thirdPartyDelAddrName");n.cv.css.deliveryAddress.removeThirdPartyDeliveryAddress({_objectKey:t.get("objectKey"),emailAddress:t.get("thirdPartyDelEmailAddress"),customerCode:t.get("thirdPartyDelCustomerCode"),name:i}).done(function(r){r.data.Success?(t.loadMyPossibleAddresses(),t.setMode(!0,!1,!1),n.cv.util.notify(t,t.get("deleteAddressSuccessMessage")+": "+i,n.cv.css.messageTypes.success)):n.cv.util.notify(t,t.get("deleteAddressFailureMessage")+": "+i,n.cv.css.messageTypes.error)})},cancelDeleteDeliveryAddress:function(){this.setMode(!0,!1,!1)},editThirdPartyDeliveryAddress:function(n){this.loadThirdPartyDeliveryAddress(n);this.setMode(!1,!0,!1)},setMode:function(t,i,r){this.set("isAddressSetMode",t);this.set("isAddressEditMode",i);this.set("isAddressDeleteConfirmMode",r);n.fancybox.update()},loadThirdPartyDeliveryAddress:function(n){this.clearValidationError();this.set("thirdPartyDelAddrName",n.data.Name);this.set("thirdPartyDelCustomerCode",n.data.CustomerCode);this.set("thirdPartyDelEmailAddress",n.data.EmailAddress);this.set("thirdPartyDelAddr1",n.data.Address1);this.set("thirdPartyDelAddr2",n.data.Address2);this.set("thirdPartyDelAddr3",n.data.Address3);this.set("thirdPartyDelAddr4",n.data.Address4);this.set("thirdPartyDelAddr5",n.data.Address5);this.set("thirdPartyDelAddr6",n.data.Address6);this.set("thirdPartyDelAddr7",n.data.Address7);this.set("thirdPartyDelPostcode",n.data.Postcode);this.set("objectKey",n.data.ObjectKey)},clearValidationError:function(){this.set("thirdPartyDelAddr1Invalid",!1);this.set("thirdPartyDelAddr2Invalid",!1);this.set("thirdPartyDelPostCodeInvalid",!1)},validateThirdPartyDelAddr:function(){return!this.get("thirdPartyDelPostCodeInvalid")&&!this.get("thirdPartyDelAddr1Invalid")&&!this.get("thirdPartyDelAddr2Invalid")},thirdPartyDelAddr1Changed:function(t){var i=n(t.target).attr("data-required-msg");this.validateRequiredField("thirdPartyDelAddr1","thirdPartyDelAddr1Invalid","thirdPartyDelAddr1ValidationError",i)},thirdPartyDelAddr2Changed:function(t){var i=n(t.target).attr("data-required-msg");this.validateRequiredField("thirdPartyDelAddr2","thirdPartyDelAddr2Invalid","thirdPartyDelAddr2ValidationError",i)},thirdPartyDelPostCodeChanged:function(t){var i=n(t.target).attr("data-required-msg");this.validateRequiredField("thirdPartyDelPostcode","thirdPartyDelPostCodeInvalid","thirdPartyDelPostCodeValidationError",i)&&(/^\d{4,5}$/.test(this.get("thirdPartyDelPostcode"))||(this.set("thirdPartyDelPostCodeInvalid",!0),this.set("thirdPartyDelPostCodeValidationError","Incorrect postcode format")))},validateRequiredField:function(t,i,r,u){var f=this.get(t);return n.cv.util.isNullOrWhitespace(f)?(this.set(i,!0),this.set(r,u),!1):(this.set(i,!1),this.set(r,""),!0)}
31,deliveryAddressId:null,billAddressId:null,setAddressField:function(n,t,i,r){var u=this,f=r?u.getBillingAddressField(n):u.getDeliveryAddressField(n);f.set(n,t);(i===!0||i===!1)&&f.set(n+"_isEnabled",i)},clearAddressFields:function(t,i,r){var u=this;n.each(t,function(n,t){u.setAddressField(t,"",i,r)})},addressLookupValueEdited:function(n){var i=this;n.Type=="Delivery"?i.clearAddressFields(t.options.autoPopulatedDeliveryAddressFields,!0,!1):i.clearAddressFields(t.options.autoPopulatedBillAddressFields,!0,!0)},populateAndDisableAddressFieldFromLookup:function(n,i,r){var u=this,f=r?t.options.autoPopulatedBillAddressFields:t.options.autoPopulatedDeliveryAddressFields;f.indexOf(n)>=0&&u.setAddressField(n,i,!1,r)},addressLookupSelected:function(t){var r=this,i=t.Address,u=t.Type=="Delivery",f;u?r.getDeliveryAddressField("DeliveryAddress1").set("DeliveryAddress1",i.SoDelAddr2):r.getBillingAddressField("SoBillAddr2").set("SoBillAddr2",i.SoBillAddr2);f=n.cv.util.isNullOrWhitespace(i.AddressId)||i.AddressId==="-1";f?r.set(u?"deliveryAddressId":"billAddressId","-1"):u?(r.set("deliveryAddressId",i.AddressId),r.setAddressField("DeliveryAddress2",i.SoDelAddr3,!1,!1),r.populateAndDisableAddressFieldFromLookup("DeliverySuburb",i.SoDelSuburb,!1),r.populateAndDisableAddressFieldFromLookup("DeliveryState",i.SoDelState,!1),r.populateAndDisableAddressFieldFromLookup("DeliveryPostcode",i.SoDelPostcode,!1)):(r.set("billAddressId",i.AddressId),r.setAddressField("SoBillAddr3",i.SoBillAddr3,!1,!0),r.populateAndDisableAddressFieldFromLookup("SoBillSuburb",i.SoBillSuburb,!0),r.populateAndDisableAddressFieldFromLookup("SoBillState",i.SoBillState,!0),r.populateAndDisableAddressFieldFromLookup("SoBillPostcode",i.SoBillPostcode,!0))}}));return u.bind("change",function(n){n.action==="itemchange"&&(u.clearMessage(),n.items&&n.items.length>0&&(u.get("billingAddressInvalid")&&_.contains([t.options.billingPostcodeFieldName,t.options.billingSuburbFieldName],n.items[0].fieldItem&&n.items[0].fieldItem.FieldName)&&u.clearBillingInvalidSuburbAndPostCode(),u.get("deliveryAddressInvalid")&&_.contains([t.options.postcodeFieldName,t.options.suburbFieldName],n.items[0].fieldItem&&n.items[0].fieldItem.FieldName)&&u.clearDeliveryInvalidSuburbAndPostCode()))}),u.set("isProcessing",!0),o().always(function(){u.get("isLoadingMyPossibleAddresses")===!1&&u.get("isLoadingMyDefaultAddress")===!1&&(u.set("isProcessing",!1),t.trigger(i))}),u.get("hasMultipleDeliveryAddresses")&&u.loadMyPossibleAddresses().always(function(){u.get("isLoadingMyPossibleAddresses")===!1&&u.get("isLoadingMyDefaultAddress")===!1&&(u.set("isProcessing",!1),t.trigger(i))}),u},_buildViewTemplate:function(){var n=this;n._buildDefaultViewTemplate()},_buildDefaultViewTemplate:function(){var n=this;n.viewTemplate+=""},_buildItemTemplateBody:function(){var n=this;n.itemTemplate+=""}};n.cv.ui.widget(u)})(jQuery);
32(function(n){var r="beforeShowNearest",t="afterShowNearest",u="beforeUpdateLatLng",i="afterUpdateLatLng",f={name:"storeLocator",extend:"mvvmwidget",events:[r,t,u,i],options:{addressIds:[],addressAutocompleteId:null,addressRegion:"au",filterList:null,latitudeId:null,longitudeId:null,mapCanvasId:null,mapZoom:12,mapMarkerTitle:"You are here",mapIconPath:"/images/",mapIconPrefix:null,mapIconSuffix:".png",mapIconWidth:50,mapIconHeight:50,spinnerId:null,spinnerOptions:{},clearStoresOnSearch:!0,loadSuburbsOnInit:!1,errorMessageAddressNotFound:"Address not found.",errorMessageAddressLookupFailed:"Address lookup failed.",errorMessageUnableToShowMap:"Unable to show map."},initialise:function(){var n=this,t=n.viewModel;t.updateFilters()},viewModelBound:function(){},_getViewModel:function(){var f=this,e=kendo.observable({storeLocations:[],fitlersHaveBeenBuild:!1,filters:[],updateFilters:function(){var i=this,r,n,t,u,e,o;if(i.get("fitlersHaveBeenBuild")==!1){if(i.set("fitlersHaveBeenBuild",!0),r=[],n=f.options.filterList,n!=null)for(t in n){if(n[t].length!=5)return;u=[];for(e in n[t][4])u.push({text:n[t][4][e][0],optVal:n[t][4][e][1]});o=n[t][2]=="select";r.push({showRadio:!o,showSelect:o,fieldToFilterAgainst:n[t][0],valueToFilterAgainst:"NOFILTER",filterType:n[t][1],optionText:n[t][3],options:u})}i.set("filters",r)}},getAppliedFilters:function(){var f=this,n=f.get("filters"),r="",u=!1,t,i;for(t in n)n[t].valueToFilterAgainst!=null&&n[t].valueToFilterAgainst!="NOFILTER"&&(r+=(u?";":"")+n[t].fieldToFilterAgainst+":"+n[t].filterType+":"+n[t].valueToFilterAgainst,u=!0);return i=f.get("selectedSuburb"),i&&i!=null&&i!=""&&i!=""&&(r+=(u?";":"")+"Suburb:eq:"+i),r},isProcessing:!1,suburbList:[],suburbListPopulated:function(){var n=this;return n.get("suburbList").length>0},getSuburbList:function(){var t=this;n.cv.css.storeLocator.getSuburbs().done(function(n){for(var r=[],i=0;i<n.data.length;i++)r.push(kendo.observable({id:n.data[i].Suburb,text:n.data[i].Suburb}));t.set("suburbList",r)})},selectedSuburb:"",updateLatLongFromAddress:function(){var s;f.trigger(u);e._clearMessages();var o=e._getAddress(),t=n("#"+f.options.latitudeId),r=n("#"+f.options.longitudeId);t.length>0&&r.length>0&&o.length>0?(s=new google.maps.Geocoder,e.set("isProcessing",!0),e._showSpinner(),s.geocode({address:o,region:f.options.addressRegion},function(n,u){e.set("isProcessing",!1);e._hideSpinner();u==google.maps.GeocoderStatus.OK?(t.val(n[0].geometry.location.lat()),r.val(n[0].geometry.location.lng())):(t.val(0),r.val(0),e._showError(f.options.errorMessageAddressNotFound));f.trigger(i)})):(e._showError(f.options.errorMessageAddressLookupFailed),f.trigger(i))},showMap:function(){e._clearMessages();var t=n("#"+f.options.latitudeId),i=n("#"+f.options.longitudeId);f.options.mapCanvasId.length>0&&t.length>0&&i.length>0?e._showMap(t.val(),i.val()):e._showError(f.options.errorMessageUnableToShowMap)},showNearest:function(){var i=this,u,e,o;f.trigger(r);
32i.set("isProcessing",!0);f.options.clearStoresOnSearch&&(i.set("storeLocations",[]),i._hideMap());i._clearMessages();i._showSpinner();u=i._getAddress();e=function(r,u,e){var o=i.getAppliedFilters(),s=n.noop;u==google.maps.GeocoderStatus.OK||u=="filterOnly"&&o!=""?(u=="filterOnly"?s=n.cv.css.storeLocator.findNearestStore({latitude:0,longitude:0,filters:o}):o!=""?(e=!1,s=n.cv.css.storeLocator.findNearestStore({latitude:r[0].geometry.location.lat(),longitude:r[0].geometry.location.lng(),filters:o})):s=n.cv.css.storeLocator.findNearestStore({latitude:r[0].geometry.location.lat(),longitude:r[0].geometry.location.lng(),filters:""}),n.when(s).done(function(u){var o,s;e?(o=new google.maps.LatLngBounds,o.extend(new google.maps.LatLng(r[0].geometry.location.lat(),r[0].geometry.location.lng())),n.each(u.data,function(n,t){t.position=new google.maps.LatLng(t.Latitude,t.Longitude);o.extend(t.position)}),s=i._showMap(r[0].geometry.location.lat(),r[0].geometry.location.lng(),o),n.cv.util.hasValue(s)&&n.each(u.data,function(n,t){t.Index=n+1;i._addMarker(s,t.position,t.StoreName,t.Index)})):n.each(u.data,function(n,t){t.Index=n+1});i.set("storeLocations",u.data);i._hideSpinner();i.set("isProcessing",!1);f.trigger(t)})):(i._showError(f.options.errorMessageAddressNotFound),f.trigger(t))};u&&u!=""&&u!=""?(o=new google.maps.Geocoder,o.geocode({address:u,region:f.options.addressRegion},function(n,t){e(n,t,!0)})):e(null,"filterOnly",!1)},searchInputKeyUp:function(n){n.which==13&&(n.preventDefault(),n.stopPropagation(),e.showNearest())},_getAddress:function(){var t="";return n.each(f.options.addressIds,function(i,r){i>0&&(t+=" ");t+=n("#"+r).val()}),t},_hideMap:function(){n("#"+f.options.mapCanvasId).empty()},_showMap:function(t,i,r,u,e){var h,s,o,c;return(u===void 0&&(u="#"+f.options.mapCanvasId),e===void 0&&(e=f.options.mapZoom),h={center:new google.maps.LatLng(t,i),zoom:e,mapTypeId:google.maps.MapTypeId.ROADMAP},s=n(u),s.length===0)?null:(o=new google.maps.Map(s.get(0),h),c=new google.maps.LatLng(t,i),new google.maps.Marker({map:o,position:c,title:f.options.mapMarkerTitle}),r&&(o.fitBounds(r),o.panToBounds(r)),o)},_addMarker:function(n,t,i,r){var u=null;f.options.mapIconPrefix&&(u=new google.maps.MarkerImage(f.options.mapIconPath+f.options.mapIconPrefix+r+f.options.mapIconSuffix,new google.maps.Size(f.options.mapIconWidth,f.options.mapIconHeight)));new google.maps.Marker({map:n,position:t,title:i,icon:u})},_showError:function(n){e._hideSpinner();e.set("isProcessing",!1);e._showMessage({Type:"error",Message:n})},_showMessage:function(t,i){var r="",u;n.each(n.cv.css.messageTypes,function(n,i){n==t.Type&&(r=i)});u=n.cv.css.trigger(n.cv.css.eventnames.message,{type:r,message:t.Message,source:f.name,clearExisting:i});u.handlerCount==0&&alert(t.Message)},_clearMessages:function(){n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:f.name,clearExisting:!0})},_showSpinner:function(){f.options.spinnerId&&n("#"+f.options.spinnerId).spin(f.options.spinnerOptions)},_hideSpinner:function(){f.options.spinnerId&&n("#"+f.options.spinnerId).spin(!1)}}),o,s;return f.options.addressAutocompleteId&&(o=n("#"+f.options.addressAutocompleteId).get(0),s=new google.maps.places.Autocomplete(o,{types:["geocode"],componentRestrictions:{country:f.options.addressRegion}}),google.maps.event.addListener(s,"place_changed",function(){e.showNearest()})),f.options.loadSuburbsOnInit&&e.getSuburbList(),e}};n.cv.ui.widget(f)})(jQuery);
33(function(n){var r="success",u="accountSelectMode",t="orderAccountSwitch",i="Hold",f="Merge",e="Delete",o={name:"accountSelect",extend:"cvGrid",events:["dataBinding","dataBound","selected",r],options:{autoBind:!1,dataSource:[],showAccountSelect:!0,showEnhancedOrderSwitchPrompt:!1,showConfirmation:!1,selected:function(r){var o=this,u=o.viewModel,h=n.Deferred(),c,s;u.set("isProcessing",!0);u.set("isConfirming",!0);u.set("RequiresEnhancedOrderSwitching",!1);c=n.cv.css.localGetCurrentAccount()!=null?n.cv.css.localGetCurrentAccount().Code:"";s=r.Code;u.set("existingAccountCode",c);u.set("codeToChangeTo",s);o._triggerReload=!1;o.options.mode==t?(o._triggerReload=!0,h=n.cv.css.orders.changeOrderAccount(s)):h.resolve();h.done(function(r){var a,l,h,v;if(o.options.mode==t)if(o.viewModel.set("isProcessing",!1),o.viewModel.set("isConfirming",!1),r.data.AdditionalData.RequiresEnhancedOrderSwitching&&(a=r.data.AdditionalData.OldOrderNo,l=r.data.AdditionalData.EnhancedOrderSwitchingTemplate,u.set("RequiresEnhancedOrderSwitching",!0),u.set("order",a),u.set("enhancedSwitchTemplate",l),h=new kendo.Observable,h.confirm=function(){u.set("isProcessing",!0);u.confirm().done(function(){u.set("isProcessing",!1)})},h.mergeOrder=function(){u.set("selectedOption",f);this.confirm()},h.holdOrder=function(){u.set("selectedOption",i);this.confirm()},h.deleteOrder=function(){u.set("selectedOption",e);this.confirm()},h.soHoldRef="",h.holdReason="",h.cancelOrder=function(){n.cv.css.localSetOrderSummaryMessages([o.options.textOrderAccountSwitchFailureMessage]);o._setAccount(c)},h.isProcessing=function(){return u.get("isProcessing")},h.selectedOption="",h.options=[i,f,e],h.selectedOptionIsHold=function(){return this.get("selectedOption")==i},h.markup=l,h.textButtonDelete=o.options.textButtonDelete,h.textButtonCancel=o.options.textButtonCancel,h.textButtonMerge=o.options.textButtonMerge,h.textButtonHold=o.options.textButtonHold,h.bind("change",function(n){n.field==="selectedOption"&&u.set("selectedOption",this.get("selectedOption"));n.field==="holdReason"&&u.set("holdReason",this.get("holdReason"));n.field==="soHoldRef"&&u.set("soHoldRef",this.get("soHoldRef"))}),v=o._formView.find(".enhancedOrderSwitchPrompt"),kendo.bind(v,h)),r.data.AdditionalData.RequiresConfirmation){if(o.options.enableConfirmation===!1){u.confirmChange();return}u.set("NotPermittedOnNewAccount",r.data.AdditionalData.NotPermittedOnNewAccount);u.set("showAccountSelect",!1);u.set("showConfirmation",!0)}else r.data.AdditionalData.RequiresEnhancedOrderSwitching?(u.set("showAccountSelect",!1),u.set("showEnhancedOrderSwitchPrompt",!0)):u.confirmChange();else o._setAccount(s)}).fail(function(){u.set("isProcessing",!1);u.set("isConfirming",!1);u.setMessage(o.options.textOrderAccountSwitchFailureMessage,n.cv.css.messageTypes.info)})},cancelChange:function(){var n=this;n.set("showAccountSelect",!0);n.set("showConfirmation",!1);n.set("isProcessing",!1)},NotPermittedOnNewAccount:[],RequiresEnhancedOrderSwitching:!1,columns:[{field:"Code",title:"Code",sortable:!0},{field:"Name",title:"Name",sortable:!0},{field:"Address1",title:"Address1",sortable:!0},{field:"AutoInvoiceEnabled",title:"Auto Invoice Payment",sortable:!0}],selectOnRowClick:!0,redirectOnLogin:!0,redirectUrl:"",enableConfirmation:!1,searchFields:null,modes:{ACCOUNTSELECT:u,ORDERACCOUNTSWITCH:t},mode:u,showAccountSwitchHeading:function(){return this.options.mode==t},clearExistingMessages:!1,triggerMessages:!0,setMessage:function(t,i){n.cv.util.notify(this,t,i,{triggerMessages:this.widget.options.triggerMessages,source:this.widget.name})},textButtonCancel:"Cancel",textButtonMerge:"Merge",textButtonHold:"Hold",textButtonDelete:"Replace",textOrderAccountSwitchMessage:"The Order has been reassigned to the selected Customer Account.",textOrderAccountSwitchFailureMessage:"The Order is still assigned to the original Customer Account."},initialise:function(t){var i=this,r,u;i.setDataSource(n.cv.data.dataSource({method:"customer/accountsearch",params:n.cv.css.accounts.getAccountSelectFilter()}));r=i.element.find("[data-role='search']");r&&r.data("search")&&r.data("search").setDataSource(i.dataSource);u=i.element.find("[data-role='pager']");u&&u.data("pager")&&u.data("pager").setDataSource(i.dataSource);i.dataSource.fetch();i._formView=n(t)},_getViewModel:function(){var r=this,t=n.extend(r._getDefaultViewModel(),{popupClose:function(){if(t.set("isProcessing",!0),t.set("isCanceling",!0),r._triggerReload){var i=n.cv.css.localGetCurrentAccount()!=null?n.cv.css.localGetCurrentAccount().Code:"";r._setAccount(i)}else n.fancybox.close(),t.set("showAccountSelect",!0),t.set("showConfirmation",!1),t.set("showEnhancedOrderSwitchPrompt",!1),t.set("isProcessing",!1),t.set("isCanceling",!1)}});return t.set("confirmChange",function(){var i=t.get("codeToChangeTo");t.get("RequiresEnhancedOrderSwitching")?(t.set("showAccountSelect",!1),t.set("showConfirmation",!1),t.set("showEnhancedOrderSwitchPrompt",!0)):(t.set("isProcessing",!0),t.set("isConfirming",!0),n.cv.css.orders.changeOrderAccount({customerCode:i,confirmChangeCustomer:!0}).done(function(){r._setAccount(i)}).fail(function(){t.set("isProcessing",!1);t.set("isConfirming",!1);t.setMessage(r.options.textOrderAccountSwitchFailureMessage,n.cv.css.messageTypes.info)}))}),t.set("confirm",function(){var t=this,e=t.get("selectedOption"),s=t.get("order"),h=t.get("existingAccountCode"),o=t.get("codeToChangeTo"),u,f=n.Deferred();return n.cv.util.isNotDeclaredOrNullOrWhitespace(e)||n.cv.util.isNotDeclaredOrNullOrWhitespace(s)||n.cv.util.isNotDeclaredOrNullOrWhitespace(h)||n.cv.util.isNotDeclaredOrNullOrWhitespace(o)?f.resolve():(t.set("isProcessing",!0),t.set("isConfirming",!0),u={oldOrderNo:s,oldCustomerCode:h,targetCustomerCode:o},e===i&&(u.reference=this.get("soHoldRef"),u.holdReason=this.get("holdReason")),f=n.cv.css.orders.enhancedChangeOrderAccount(e.toLowerCase(),u),f.done(function(i){i.errorMessage&&i.errorMessage.length!=0?(r.viewModel.setMessage(i.errorMessage,n.cv.css.messageTypes.warning),t.set("isProcessing",!1),t.set("isConfirming",!1)):(n.cv.css.localSetOrderSummaryMessages([r.options.textOrderAccountSwitchMessage]),r._setAccount(o),r.options.redirectOnLogin||(t.set("isProcessing",!1),t.set("isConfirming",!1))
33)}),f.promise())}),t},_triggerReload:!1,openView:function(n){var i=this,t=i.viewModel;t.set("showAccountSelect",!0);t.set("showConfirmation",!1);t.set("isProcessing",!1);this.options.mode=n!=undefined?n:u},_setAccount:function(t){var i=this,u=n.Deferred(),f;n.cv.css.bind(n.cv.css.eventnames.localOrderChanged,function(){u.resolve()});i.viewModel.set("isProcessing",!0);f=n.cv.css.setCurrentAccount(t);f.done(function(){i.options.redirectOnLogin?n.when(u).done(function(){i._triggerReload?location.reload():i.options.redirectUrl==""?n.cv.util.redirect(n(location).attr("href"),null,!1):n.cv.util.redirect(i.options.redirectUrl,null,!1)}):n.cv.css.refreshCurrentOrder().always(function(n){n.parent().trigger(r,n);i.trigger(r,n)})}).fail(function(){i.viewModel("isProcessing",!1);i.viewModel("isConfirming",!1)})}};n.cv.ui.widget(o)})(jQuery);
34(function(n){var r="success",u="accountSelectMode",t="orderAccountSwitch",i="Hold",f="Merge",e="Delete",o={name:"userImpersonationSelect",extend:"cvGrid",events:["dataBinding","dataBound","selected",r],options:{autoBind:!1,dataSource:[],showAccountSelect:!0,showEnhancedOrderSwitchPrompt:!1,showConfirmation:!1,selected:function(r){var o=this,u=o.viewModel,h=n.Deferred(),c,s;u.set("isProcessing",!0);u.set("isConfirming",!0);u.set("RequiresEnhancedOrderSwitching",!1);c=n.cv.css.localGetCurrentAccount()!=null?n.cv.css.localGetCurrentAccount().Code:"";s=r.EmailAddress;u.set("existingAccountCode",c);u.set("codeToChangeTo",s);o._triggerReload=!1;o.options.mode==t?(o._triggerReload=!0,h=n.cv.css.orders.changeOrderAccount(s)):h.resolve();h.done(function(r){var a,l,h,v;if(o.options.mode==t)if(o.viewModel.set("isProcessing",!1),o.viewModel.set("isConfirming",!1),r.data.AdditionalData.RequiresEnhancedOrderSwitching&&(a=r.data.AdditionalData.OldOrderNo,l=r.data.AdditionalData.EnhancedOrderSwitchingTemplate,u.set("RequiresEnhancedOrderSwitching",!0),u.set("order",a),u.set("enhancedSwitchTemplate",l),h=new kendo.Observable,h.confirm=function(){u.set("isProcessing",!0);u.confirm().done(function(){u.set("isProcessing",!1)})},h.mergeOrder=function(){u.set("selectedOption",f);this.confirm()},h.holdOrder=function(){u.set("selectedOption",i);this.confirm()},h.deleteOrder=function(){u.set("selectedOption",e);this.confirm()},h.soHoldRef="",h.holdReason="",h.cancelOrder=function(){n.cv.css.localSetOrderSummaryMessages([o.options.textOrderAccountSwitchFailureMessage]);o._setAccount(c)},h.isProcessing=function(){return u.get("isProcessing")},h.selectedOption="",h.options=[i,f,e],h.selectedOptionIsHold=function(){return this.get("selectedOption")==i},h.markup=l,h.textButtonDelete=o.options.textButtonDelete,h.textButtonCancel=o.options.textButtonCancel,h.textButtonMerge=o.options.textButtonMerge,h.textButtonHold=o.options.textButtonHold,h.bind("change",function(n){n.field==="selectedOption"&&u.set("selectedOption",this.get("selectedOption"));n.field==="holdReason"&&u.set("holdReason",this.get("holdReason"));n.field==="soHoldRef"&&u.set("soHoldRef",this.get("soHoldRef"))}),v=o._formView.find(".enhancedOrderSwitchPrompt"),kendo.bind(v,h)),r.data.AdditionalData.RequiresConfirmation){if(o.options.enableConfirmation===!1){u.confirmChange();return}u.set("NotPermittedOnNewAccount",r.data.AdditionalData.NotPermittedOnNewAccount);u.set("showAccountSelect",!1);u.set("showConfirmation",!0)}else r.data.AdditionalData.RequiresEnhancedOrderSwitching?(u.set("showAccountSelect",!1),u.set("showEnhancedOrderSwitchPrompt",!0)):u.confirmChange();else o._setAccount(s)}).fail(function(){u.set("isProcessing",!1);u.set("isConfirming",!1);u.setMessage(o.options.textOrderAccountSwitchFailureMessage,n.cv.css.messageTypes.info)})},cancelChange:function(){var n=this;n.set("showAccountSelect",!0);n.set("showConfirmation",!1);n.set("isProcessing",!1)},NotPermittedOnNewAccount:[],RequiresEnhancedOrderSwitching:!1,columns:[{field:"EmailAddress",title:"Email",sortable:!0},{field:"FirstName",title:"First Name",sortable:!0},{field:"Surname",title:"Surname",sortable:!0}],selectOnRowClick:!0,redirectOnLogin:!0,redirectUrl:"",enableConfirmation:!1,searchFields:null,modes:{ACCOUNTSELECT:u,ORDERACCOUNTSWITCH:t},mode:u,showAccountSwitchHeading:function(){return this.options.mode==t},clearExistingMessages:!1,triggerMessages:!0,setMessage:function(t,i){n.cv.util.notify(this,t,i,{triggerMessages:this.widget.options.triggerMessages,source:this.widget.name})},textButtonCancel:"Cancel",textButtonMerge:"Merge",textButtonHold:"Hold",textButtonDelete:"Replace",showUsersTheLoggedInUserIsRepFor:!1,textOrderAccountSwitchMessage:"The Order has been reassigned to the selected Customer Account.",textOrderAccountSwitchFailureMessage:"The Order is still assigned to the original Customer Account."},initialise:function(t){var i=this,f=n.cv.css.accounts.getAccountSelectFilter(),r,u;f.showUsersTheLoggedInUserIsRepFor=i.options.showUsersTheLoggedInUserIsRepFor;i.setDataSource(n.cv.data.dataSource({method:"user/userImpersonateSearch",params:f}));r=i.element.find("[data-role='search']");r&&r.data("search")&&r.data("search").setDataSource(i.dataSource);u=i.element.find("[data-role='pager']");u&&u.data("pager")&&u.data("pager").setDataSource(i.dataSource);i.dataSource.fetch();i._formView=n(t)},_getViewModel:function(){var r=this,t=n.extend(r._getDefaultViewModel(),{popupClose:function(){if(t.set("isProcessing",!0),t.set("isCanceling",!0),r._triggerReload){var i=n.cv.css.localGetCurrentAccount()!=null?n.cv.css.localGetCurrentAccount().Code:"";r._setAccount(i)}else n.fancybox.close(),t.set("showAccountSelect",!0),t.set("showConfirmation",!1),t.set("showEnhancedOrderSwitchPrompt",!1),t.set("isProcessing",!1),t.set("isCanceling",!1)}});return t.set("confirmChange",function(){var i=t.get("codeToChangeTo");t.get("RequiresEnhancedOrderSwitching")?(t.set("showAccountSelect",!1),t.set("showConfirmation",!1),t.set("showEnhancedOrderSwitchPrompt",!0)):(t.set("isProcessing",!0),t.set("isConfirming",!0),n.cv.css.orders.changeOrderAccount({customerCode:i,confirmChangeCustomer:!0}).done(function(){r._setAccount(i)}).fail(function(){t.set("isProcessing",!1);t.set("isConfirming",!1);t.setMessage(r.options.textOrderAccountSwitchFailureMessage,n.cv.css.messageTypes.info)}))}),t.set("confirm",function(){var t=this,e=t.get("selectedOption"),s=t.get("order"),h=t.get("existingAccountCode"),o=t.get("codeToChangeTo"),u,f=n.Deferred();return n.cv.util.isNotDeclaredOrNullOrWhitespace(e)||n.cv.util.isNotDeclaredOrNullOrWhitespace(s)||n.cv.util.isNotDeclaredOrNullOrWhitespace(h)||n.cv.util.isNotDeclaredOrNullOrWhitespace(o)?f.resolve():(t.set("isProcessing",!0),t.set("isConfirming",!0),u={oldOrderNo:s,oldCustomerCode:h,targetCustomerCode:o},e===i&&(u.reference=this.get("soHoldRef"),u.holdReason=this.get("holdReason")),f=n.cv.css.orders.enhancedChangeOrderAccount(e.toLowerCase(),u),f.done(function(i){i.errorMessage&&i.errorMessage.length!=0?(r.viewModel.setMessage(i.errorMessage,n.cv.css.messageTypes.warning),t.set("isProcessing",!1),t.set("isConfirming",!1)):(n.cv.css.localSetOrderSummaryMessages([r.options.textOrderAccountSwitchMessage]),r._setAccount(o),r.options.redirectOnLogin||(t.set("isProcessing",!1),t.set("isConfirming",!1))
34)}),f.promise())}),t},_triggerReload:!1,openView:function(n){var i=this,t=i.viewModel;t.set("showAccountSelect",!0);t.set("showConfirmation",!1);t.set("isProcessing",!1);this.options.mode=n!=undefined?n:u},_setAccount:function(t){var i=this;i.viewModel.set("isProcessing",!0);n.cv.css.user.impersonateUser({email:t,showUsersTheLoggedInUserIsRepFor:i.options.showUsersTheLoggedInUserIsRepFor}).done(function(){n.cv.css.refreshCurrentOrder().always(function(n){n.parent().trigger(r,n);i.trigger(r,n)});i.options.redirectOnLogin&&(i._triggerReload?location.reload():i.options.redirectUrl==""?n.cv.util.redirect(n(location).attr("href"),null,!1):n.cv.util.redirect(i.options.redirectUrl,null,!1))}).fail(function(){i.viewModel("isProcessing",!1);i.viewModel("isConfirming",!1)})}};n.cv.ui.widget(o)})(jQuery);
35(function(n){var t="change",i="listUpdated",r={name:"recentlyViewedProduct",extend:"mvvmwidget",options:{dataSource:[],numberOfProducts:4,carouselId:"",useZone:!1,isEmptyExcludingSelf:!0,autoBind:!0,hideIfEmpty:!0,listTitle:"Items Recently Viewed",viewTemplate:null,itemViewTemplate:null,noData:!0,hideWhenNoItems:!1},extendEvents:[i],viewModel:null,view:null,items:function(){return this.element.children()},setDataSource:function(n){this.options.dataSource=n;this._dataSource();this.refresh()},initialised:function(){this.viewModel.initialise()},_viewAppended:!1,_itemViewAppended:!1,beforeShow:function(){var t=this,i=n("#"+t.options.carouselId).data("owlCarousel");i&&i.destroy();n("#"+t.options.carouselId).html("")},afterShow:function(){var t=this,u=t.viewModel,i=n.cv.css.recentlyViewedProduct.localGetRecentlyViewedProducts(),e,f,r;if(i!=null&&i.length>0){for(e=n.cv.util.hasValue(n.cv.css.recentlyViewedProduct.currentProduct)?i[0].productC
35ode===n.cv.css.recentlyViewedProduct.currentProduct.productCode?1:0:0,this.options.noData=!1,f=[],r=e;r<i.length;r++)f.push(i[r].productCode);var o=n("#"+t.options.carouselId),s=n.cv.css.owlCarousel.mapOptions(o.data("carouselOptions")),h=s.items,c=n.cv.css.recentlyViewedProduct.getRecentlyViewedProduct({productCodes:f,maxNumberOfProducts:t.options.numberOfProducts,itemsPerPage:h});n.when(c).done(function(i){if(u.set("isContentLoading",!1),n.cv.util.hasValue(i.data)){var r=n.cv.util.isNullOrWhitespace(i.data.productImpressions)?[]:JSON.parse(i.data.productImpressions),f=0;if(n.cv.util.hasValue(i.data.productCount)&&(f=i.data.productCount),u.set("productCount",f),u.updateViewModelPropertiesForData(),i.data.result.length>0){n("#"+t.options.carouselId).html(i.data.result);n.cv.css.owlCarousel.bindProductCarousel(n("#"+t.options.carouselId),i.data.productCount);n("#"+t.options.carouselId+" .form-number").each(function(){n.cv.util.kendoNumericTextBox(this)});kendo.init(n("#"+t.options.carouselId));n.cv.css.trigger(n.cv.css.eventnames.initialiseProductImageLazyLoad);const r=n(t.element).find("select.cv-dropdown");r.length>0&&r.kendoDropDownList()}r.length>0&&n.cv.css.trigger(n.cv.css.eventnames.recentlyViewedProductsSet,{productImpressions:r})}})}},_dataSource:function(){var i=this;i.dataSource&&i._refreshHandler?i.dataSource.unbind(t,i._refreshHandler):i._refreshHandler=n.proxy(i.refresh,i);i.dataSource=kendo.data.DataSource.create(i.options.dataSource);i.dataSource.bind(t,i._refreshHandler);i.options.autoBind&&i.dataSource.fetch()},refresh:function(){var n=this;n.viewModel.dataSource=n.options.dataSource;n.viewModel.updateItemList()},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},_getViewModel:function(){var t=this,r=function(){return t.dataSource?(n.each(t.dataSource.view(),function(n,t){t.Index=n}),t.dataSource.view()):[]},u=function(i){return i.length>0&&!t.options.useZone&&n.each(i,function(t,r){if(!r.itemUrl)return n.cv.css.recentlyViewedProduct.localRemoveRecentlyViewedProducts(i),i=[],!1}),i.length>t.options.numberOfProducts&&i.splice(t.options.numberOfProducts),i};return kendo.observable({dataSource:t.options.dataSource,initialise:function(){var i=n.cv.css.recentlyViewedProduct.localGetRecentlyViewedProducts()||[],r=this;if(t.options.useZone){t.beforeShow();t.afterShow();return}i=u(i);t.options.dataSource=i;r.set("productCount",i.length);r.updateViewModelPropertiesForData();t.options.useZone||n.cv.css.trigger(n.cv.css.eventnames.recentlyViewedProductsSet,{productImpressions:i,isJson:!1});t.options.useZone&&(r.set("isContentLoading",!t.options.noData),r.set("noData",t.options.noData))},updateItemList:function(){var n=r();this.set("itemList",n);t.trigger(i,{count:n.length})},itemList:r(),isEmpty:!0,isEmptyExcludingSelf:!0,productCount:0,hideWidgetWhenNoItems:function(){return this.get("isEmptyExcludingSelf")&&this.get("hideWhenNoItems")},hideWhenNoItems:t.options.hideWhenNoItems,isContentLoadingOrIsEmpty:function(){return this.get("isContentLoading")||this.get("isEmpty")},updateViewModelPropertiesForData:function(){var n=this;n.get("productCount")===0?(n.set("isEmpty",!0),n.set("isEmptyExcludingSelf",!0)):(n.set("isEmpty",!1),n.set("isEmptyExcludingSelf",!1))}})},_getDefaultViewTemplate:function(){var n=this;return"# if(hideIfEmpty) { #<section class='sidebar-toppurchases' data-bind='invisible: isEmpty'># } else { #<section class='sidebar-toppurchases'># } #<h4>"+n.options.listTitle+"<\/h4><ul class='toppurchases-grid clearfix' data-bind='source: itemList' data-template='"+n.options.itemTemplateId+"'><\/ul><\/section>"},_getDefaultItemViewTemplate:function(){var n=this;return"<script type='text/x-kendo-template' id='"+n.options.itemTemplateId+"'><li># if (data.SEOUrl != '') { #<a href='/Product#= data.SEOUrl #'># } else { #<a href='/ProductDisplay.aspx?Product=#= data.productCode #'># } ## if (data.picture1 != '' && data.picture1 != 'NoImage.gif') { #<img src='/images/ProductImages/#= data.picture1 #' /># } else {#<img src='/images/TemplateImages/placeholder/placeholder-product-100x100.png' alt='' /># } #<span>#= description #<\/span><\/a><\/li><\/script>"}};n.cv.ui.widget(r)})(jQuery);
36var currentDynamicRowIndex=0;(function(n){var r="dataBound",u="linesRendered",t="productAddedToCart",f="productAddToCartFail",i="productsAddedToCart",e="widgetBound",o={name:"quickAdd",options:{dataSource:[],quickAddLineDefaultDataSource:{productC
36ode:"",costCentreCode:"",description:"",quantity:"",notes:"",hasMultipleCostCentres:!1,costCentreList:[],price:"",discount:"",extendedAttributes:""},refreshOrderLines:!0,linesElement:"[data-role='orderlines']",linesData:"orderLines",clearAdditionalWidgetMessages:"orderLines",defaultCostCentreCodeControl:'<input class="disabled" type="text" disabled="disabled">',showExpandCollapseButton:!1,isCollapsableAreaExpandedByDefault:!1,expandCollapseButtonLabelExpanded:"Expand to {0}",expandCollapseButtonLabelCollapsed:"Collapse to 1",autoBind:!0,clearExistingMessages:!0,getCurrentOrderLinesOnAdd:!0,linesRendered:null,noteIsExtendedLineDescription:!0,triggerMessages:!0,allowDecimals:!1,preValidateLines:!1,inValidProductClass:"inValidProductClass",ValidProductClass:"ValidProductClass",EmptyProductClass:"EmptyProductClass",CurrentlyBeingValidatedProductClass:"CurrentlyBeingValidatedProductClass",stockCodeEntryLineCount:10,numberOfColumns:1,numberOfLinesPerColumn:10,enableOrderLineNotes:!1,useCostCentres:!1,costCentreList:[],pleaseSelectText:"Please Select...",useOrderEntry:!0,isStockCodeEntryAvailable:!1,textProductPreValidateError:"Your products have not been successfully added - Check the code is correct.",textProductAddedMessage:"Your product has been successfully added",textProductsAddedMessage:"These products have been successfully added:",textAddAllMessage:"{0} : {1}",textAddButtonLabel:"Add",textAddAllButtonLabel:"Add All",viewTemplate:null,itemViewTemplate:null,categoryFilter:"",gtmPageType:"",pageSize:20,extendedAttributesDataSource:[],extendedAttributesDelimiter:";",isForWarrantyClaim:!1,isForWarrantyClaimServiceProducts:!1,isWarrantyClaimRequiresProductsToBeInvoiceValidated:!1,isWarrantyClaimRequiresPricingShown:!1,warrantyClaimServiceProductsDataSource:[],showWarningWhenProductAlreadyInCart:!1,warningMessageWhenProductAlreadyInCart:"",warningHeaderWhenProductAlreadyInCart:"Warning",orderNoOverride:0,incTax:!1,excludeOrderRestrictedProducts:!1,increaseQuantitiesInPackQty:!1,addMinimumQuantityToCart:!1},events:["dataBinding",r,u,t,f,i,e],viewModel:null,view:null,_viewAppended:!1,_itemViewAppended:!1,initialise:function(i){var u=this,s=n(i).children(":first"),h,c,l,f,o;s.data("view")?u.view=s.html():(u._viewAppended=!0,u.options.itemViewTemplate||(u.options.itemViewTemplate=u.name+"-item-template-"+kendo.guid(),u._itemViewAppended=!0),h=u.options.viewTemplate?n("#"+u.options.viewTemplate).html():u._getDefaultViewTemplate(),c=kendo.template(h),u.view=c(u.options),u._itemViewAppended||(u.view+=u._getDefaultItemViewTemplate()),u.element.html(u.view));u.viewModel=u._getViewModel();l=u.element.children(":first");kendo.bind(l,u.viewModel);n.cv.css.bind(n.cv.css.eventnames.orderChanged,n.proxy(u.viewModel.setLocalAddedOrderLines,u.viewModel),!0);n.cv.css.bind(n.cv.css.eventnames.viewApprovalOrder,function(n){n&&u.viewModel.set("orderNoApproval",n.SoOrderNo)});u.trigger(r);f=!1;n(document).mousedown(function(){f=!0});n(document).mouseup(function(){setTimeout(function(){f=!1},5);u.kendoAutoComplete&&u.kendoAutoComplete.popup.visible()&&(u.kendoAutoComplete._last=-1)});o=u.element.find("input");o.on("keydown",function(n){var t=u.element.find("input:visible"),i=n.keyCode||n.which;i=="9"&&(window.currentTabTarget=t.get(t.index(this)+1))});o.on("click",function(){window.currentTabTarget=this});o.on("blur",function(n){this==window.currentTabTarget&&f==!1&&(n.preventDefault(),setTimeout(function(){window.currentTabTarget.focus();f=!0},1))});u.trigger(e);n.cv.css.bind(n.cv.css.eventnames.addProductToOrderByEnterKey,function(){u.viewModel.addAll()});u.bind(t,function(t){n.cv.css.trigger(n.cv.css.eventnames.cartLineAdded,t)});u.options.isForWarrantyClaim&&!u.options.isForWarrantyClaimServiceProducts&&n.cv.css.bind(n.cv.css.eventnames.selectCodeOptionSelected,n.proxy(u.viewModel._setSelectedWarrantyClaimValues,u.viewModel));u.options.isForWarrantyClaim&&n.cv.css.bind(n.cv.css.eventnames.warrantyClaimReasonCodeSelected,n.proxy(u.viewModel._warrantyClaimReasonCodeSelected,u.viewModel));n.cv.util.numerictextboxSelectOnFocus(u.element);u._autoCompleteBinding()},_autoCompleteBinding:function(){var t=this;t.autoCompleteInput=n(t.element).find("input[data-text-field='Description']");t.kendoAutoComplete=t.autoCompleteInput.data("selectCode2");n.cv.util.hasValue(t.kendoAutoComplete)&&t.kendoAutoComplete.bind("close",t.viewM
36odel._autoCompleteClosed)},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},productsAlreadyInCart:[],_getViewModel:function(){for(var e,r=this,p=r.options.isForWarrantyClaim&&!r.options.isForWarrantyClaimServiceProducts?n.cv.data.dataSource({method:"products/productSearchWarrantyClaimQuickAdd",pageSize:r.options.pageSize,params:function(n){var t=r.viewModel.getSearchString(n);return r.viewModel.set("fastOrderEntrySearchTerm",t),{searchString:t,pageSizeArg:r.options.pageSize}},requestEnd:function(t){t.response.data&&t.response.data.length>0&&n.cv.css.trigger(n.cv.css.eventnames.productSearched,{searchTerm:r.viewModel.get("fastOrderEntrySearchTerm"),searchType:ProductSearchType.Preview,searchFrom:r.options.name})}}):r.options.isForWarrantyClaim&&r.options.isForWarrantyClaimServiceProducts?r.options.warrantyClaimServiceProductsDataSource:n.cv.data.dataSource({method:"products/productSearchQuickAdd",pageSize:r.options.pageSize,params:function(n){var t=r.viewModel.getSearchString(n);return r.viewModel.set("fastOrderEntrySearchTerm",t),{searchString:t,categoryFilter:r.options.categoryFilter,pageSizeArg:r.options.pageSize,excludeOrderRestrictedProducts:r.options.excludeOrderRestrictedProducts}},requestEnd:function(t){t.response.data&&t.response.data.length>0&&n.cv.css.trigger(n.cv.css.eventnames.productSearched,{searchTerm:r.viewModel.get("fastOrderEntrySearchTerm"),searchType:ProductSearchType.Preview,searchFrom:r.options.name})}}),w=function(){var t=[],n;for((_.isArray(r.options.costCentreList)&&r.options.costCentreList.length===0||r.options.costCentreList==="[]")&&(r.options.costCentreList=""),r.options.costCentreList.length>1&&r.options.costCentreList.unshift({CostCentreCode:"",Name:r.options.pleaseSelectText}),r.options.costCentreList.length===1&&(r.options.quickAddLineDefaultDataSource.costCentreCode=r.options.costCentreList[0].CostCentreCode),r.options.quickAddLineDefaultDataSource.costCentreList=r.options.costCentreList,r.options.quickAddLineDefaultDataSource.hasMultipleCostCentres=r.options.costCentreList.length>0,r.options.quickAddLineDefaultDataSource.warrantyClaimServiceProductsDataSource=r.options.warrantyClaimServiceProductsDataSource,n=0;n<r.options.stockCodeEntryLineCount;n++)t.push(r.options.quickAddLineDefaultDataSource);r.options.dataSource=t;b();k()},b=function(){r.dataSource=kendo.data.DataSource.create(r.options.dataSource);r.options.autoBind&&r.dataSource.fetch();r.viewModel.updateItemList()},c=function(){var n,t,i;if(!r.dataSource)return[];var f=s(),o=e.get("numberOfColumns"),h=e.get("numberOfLinesPerColumn"),u=[],c=0;for(n=0;n<o;n++){for(t={columnIndex:n,lineItems:[]},i=0;i<h;i++)t.lineItems.push(f[c++]);u.push(t)}return u},s=function(){return r.dataSource?(n.each(r.dataSource.view(),function(u,f){f.Index=u;f.lastValidQuantity=f.quantity;f.enableOrderLineNotes=e.get("enableOrderLineNotes");f.enableOrderLineExtendedAttributes=e.get("enableOrderLineExtendedAttributes");f.useCostCentres=e.get("useCostCentres");f.costCentreList=e.get("costCentreList");f.warrantyClaimServiceProductsDataSource=e.get("warrantyClaimServiceProductsDataSource");f.selectedWarrantyClaimServiceProductCode="";f.useOrderEntry=e.get("useOrderEntry");f.textAddButtonLabel=e.get("textAddButtonLabel");f.isAdding=!1;f.triggerMessages=e.get("triggerMessages");f.clearWidgetMessages=e.get("clearExistingMessages");f.name=e.get("name");f.bypassQtyStep=function(){var n=f.get("packQty");return n==undefined||n===0};f.execCommand_addProductKeyUp=function(n){n.which==13&&(n.preventDefault(),n.stopPropagation(),r.viewModel.addAll())};f.extendedAttributesDataSource=n.cv.css.product.extendedAttributeDataSource(f,"productCode");f.bind("change",function(t){var i,u;t.field=="extendedAttribute"&&(i=f.get("extendedAttribute"),n.cv.util.hasContent(i)&&i.ExtendedAttributes!=undefined?f.set("extendedAttributes",i.ExtendedAttributes):(f.set("extendedAttributes",""),f.set("extendedAttribute","")));t.field=="productCode"&&f.forceOrderPackQty&&(u=r.viewModel.productSearchDataSource.data(),f.set("packQty",0),f.set("quantity",""),n.each(u,function(t,i){if(i.ProductCode.toLowerCase()==f.productC
36ode.toLowerCase()){var u=n.cv.util.getProductDetailsDefaultQuantity(r.options.increaseQuantitiesInPackQty,r.options.addMinimumQuantityToCart,{ProductDetailsDefaultQuantityWhenNotIncreasePackQtyNotAddMinQty:i.ProductDetailsDefaultQuantityWhenNotIncreasePackQtyNotAddMinQty,ProductDetailsDefaultQuantityWhenIncreasePackQtyNotAddMinQty:i.ProductDetailsDefaultQuantityWhenIncreasePackQtyNotAddMinQty,ProductDetailsDefaultQuantityWhenNotIncreasePackQtyAddMinQty:i.ProductDetailsDefaultQuantityWhenNotIncreasePackQtyAddMinQty,ProductDetailsDefaultQuantityWhenIncreasePackQtyAddMinQty:i.ProductDetailsDefaultQuantityWhenIncreasePackQtyAddMinQty});return f.set("packQty",i.PackQty),f.set("minQuantity",u),f.set("quantity",u),f.set("increaseQtyStepFromZero",u),f.set("addToCartQtyStepFromZero",u),!1}return!0}))});r.options.preValidateLines&&(f.preValidate=function(){var t=n(r.element.find(".k-input").get(this.Index)),e,o,s=!0,h=function(){if(clearTimeout(e),e=null,t.val()==="")t.attr("data-product-validated","1"),u(r.options.EmptyProductClass),s=!0;else if(o!=t.val()){o=t.val();var h=n.cv.css.product.productSearchExact({searchString:t.val(),searchType:"exact"}),f=h.responseText,i=JSON&&JSON.parse(f)||n.parseJSON(f);i.data&&i.data[0]&&i.data[0].ProductCode.toLowerCase()===t.val().toLowerCase()?(t.attr("data-product-validated","1"),u(r.options.ValidProductClass),s=!0):(t.attr("data-product-validated","0"),u(r.options.inValidProductClass),s=!1)}else o==t.val()&&s==!0&&(t.attr("data-product-validated","1"),u(r.options.ValidProductClass))},u;t.parent().next().click(function(){o=t.val();s=!0;h()});r.bind(i,function(){t.val()===""&&(t.attr("data-product-validated","1"),u(r.options.EmptyProductClass))});t.keyup(function(n){t.attr("data-product-validated","0");u(r.options.CurrentlyBeingValidatedProductClass);e&&(clearTimeout(e),e=null);e=setTimeout(h,1e3);f.execCommand_addProductKeyUp(n)});t.focusin(function(){o=t.val()});t.focusout(function(){h()});u=function(n){t.removeClass(r.options.ValidProductClass+" "+r.options.inValidProductClass+" "+r.options.EmptyProductClass+" "+r.options.CurrentlyBeingValidatedProductClass);t.addClass(n)}});f.execCommand_add=function(i){if(i.which!==9&&(!i.shiftKey||i.which!==9)&&a(f)&&!n.cv.util.isNullOrWhitespace(f.productCode)){var u=v(f);e.get("orderNoApproval")?(r.viewModel.clearMessage(),f.set("isAdding",!0),n.cv.css.ordersApproval.addLineToOrder({productCode:f.productCode,orderNo:e.get("orderNoApproval"),quantity:u.quantity,notes:u.notes}).done(function(i){n.cv.css.trigger(n.cv.css.eventnames.approvalOrderUpdated,e.get("orderNoApproval"));i.data.message.length>0?r.viewModel.setMessage(i.data.message,n.cv.css.messageTypes.success):(r.viewModel.setMessage(r.options.textProductAddedMessage,n.cv.css.messageTypes.success),r.trigger(t,{lineSeq:i.LineSeq,productCode:f.productCode}))}).always(function(){f.set("isAdding",!1);f.set("productCode","");f.set("quantity","");f.set("notes","");f.set("extendedAttributes","");f.set("extendedAttribute","")})):r.options.isForWarrantyClaim?(r.viewModel.clearMessage(),f.set("isAdding",!0),n.cv.css.orders.addLineToWarrantyClaimOrder({productCode:f.productCode,quantity:u.quantity,notes:u.notes,noteIsExtendedLineDescription:u.noteIsExtendedLineDescription}).done(function(t){n.cv.css.trigger(n.cv.css.eventnames.warrantyClaimOrderUpdated,r.options.orderNoOverride);l(f,t.data,!0)}).always(function(){f.set("isAdding",!1);o(f)})):(r.viewModel.setLocalUpdatedCurrentOrderLines(),r.viewModel.clearMessage(),f.set("isAdding",!0),_.extend(n.cv.css._proxyMeta,n.cv.util.getBaseProxyMeta(r)),n.cv.css.addToCurrentOrder(u).done(function(n){l(f,n.data,!0,!1)}))}};f.execCommand_warrantyClaimServiceProductSelected=function(){if(!n.cv.util.isNullOrWhitespace(f.selectedWarrantyClaimServiceProductCode)){var t=_.filter(f.get("warrantyClaimServiceProductsDataSource"),function(n){return n.ProductCode===f.selectedWarrantyClaimServiceProductCode});if(n.cv.util.hasValue(t,"[0]")){f.set("productCode",t[0].ProductCode);f.set("selectedWarrantyClaimServiceProductNettPrice",t[0].NettPriceForOne);return}}f.set("productCode","");f.set("selectedWarrantyClaimServiceProductNettPrice","");f.set("selectedWarrantyClaimServiceProductCode","")};
36f.packQuantityTarget="packQty";f.quantityTarget="quantity";f.execCommand_increaseQty=function(){n.cv.util.kendoNumericTextBoxIncrease(this)};f.execCommand_decreaseQty=function(){n.cv.util.kendoNumericTextBoxDecrease(this,this.get("minQuantity"))}}),r.dataSource.view()):[]},l=function(i,u,e,s){if(s===void 0&&(s=!0),u.editOrderOk===!0)if(o(i),n("#ProductSearch"+i.Index).focus(),r.trigger(t,{lineSeq:u.newLineSeq,productCode:i.productCode}),u.message.length==0)r.viewModel.setMessage(r.options.textProductAddedMessage,n.cv.css.messageTypes.success);else{var h=n.cv.css.messageTypes.success;u.result&&u.result.length>0?n.each(u.result,function(t,i){return n.cv.util.isNullOrWhitespace(i.SubstitutedStockCode)?!0:(h=n.cv.css.messageTypes.info,!1)}):u.message.toLowerCase().indexOf("substituted")>=0&&(h=n.cv.css.messageTypes.info);r.viewModel.setMessage(u.message,h)}else r.trigger(f,{productCode:i.productCode,errorMessage:u.message}),r.viewModel.setMessage(u.message,n.cv.css.messageTypes.error);r.options.refreshOrderLines&&!n.cv.css.isOciExpressCheckout&&r.viewModel.refreshLines(e,s);i.set("isAdding",!1)},a=function(n){n.get("quantity")&&n.get("quantity").length!=0||n.get("productCode").length==0||n.set("quantity",n.get("minQuantity"));var i=!0,t=n.get("quantity");return(isNaN(t)||!r.options.allowDecimals&&t%1!=0||t<0)&&(i=!1),i?n.set("lastValidQuantity",t):n.set("quantity",n.get("lastValidQuantity")),i},v=function(n){var t={},i,u,f,e;return t.productCode=n.get("productCode"),u=n.get("quantity"),u=isNaN(i=parseFloat(u))||i<=0?1:i,t.quantity=u,t.costCentre=n.get("costCentreCode"),t.notes=n.get("notes"),t.noteIsExtendedLineDescription=r.options.noteIsExtendedLineDescription,t.campaignCode="",t.attributes="",t.stampData="",t.stampProofData="",f=n.get("price"),e=n.get("discount"),f=isNaN(i=parseFloat(f))||i<0?-1:i,e=isNaN(i=parseFloat(e))||i<0||i>100?-1:i,t.price=f,t.discount=e,t.gtmPageType=r.options.gtmPageType,t.extendedAttributes=n.get("extendedAttributes"),t},o=function(n){n.set("productCode","");n.set("description","");n.set("quantity","");n.set("lastValidQuantity","");(r.options.costCentreList.length==0||r.options.costCentreList.length>1)&&n.set("costCentreCode","");n.set("notes","");n.set("price","");n.set("discount","");n.set("selectedWarrantyClaimServiceProductNettPrice","");n.set("selectedWarrantyClaimServiceProductCode","");n.set("selectedWarrantyClaimLineAmount","");n.set("selectedWarrantyClaimProductNettPrice","");n.set("extendedAttributes","");n.set("extendedAttribute","")},k=function(){n(document).mousedown(function(){e.set("_mouseClicked",!0)});n(document).mouseup(function(){e.set("_mouseClicked",!1)})},y={isAddingAll:!1,dataSource:r.options.dataSource,stockCodeEntryLineCount:r.options.stockCodeEntryLineCount,numberOfColumns:r.options.numberOfColumns,numberOfLinesPerColumn:r.options.numberOfLinesPerColumn,enableOrderLineNotes:r.options.enableOrderLineNotes,useCostCentres:r.options.useCostCentres,costCentreList:r.options.costCentreList,useOrderEntry:r.options.useOrderEntry,warrantyClaimServiceProductsDataSource:r.options.warrantyClaimServiceProductsDataSource,isWarrantyClaimRequiresProductsToBeInvoiceValidated:r.options.isWarrantyClaimRequiresProductsToBeInvoiceValidated,isWarrantyClaimRequiresPricingShown:r.options.isWarrantyClaimRequiresPricingShown,isStockCodeEntryAvailable:r.options.isStockCodeEntryAvailable&&r.options.stockCodeEntryLineCount>0,textAddButtonLabel:r.options.textAddButtonLabel,textAddAllButtonLabel:r.options.textAddAllButtonLabel,message:"",clearExistingMessages:r.options.clearExistingMessages,triggerMessages:r.options.triggerMessages,name:r.options.name,setMessage:function(t,i){n.cv.util.notify(this,t,i,{triggerMessages:r.options.triggerMessages,source:r.name})},clearMessage:function(){var i,t;if(this.set("message",""),r.options.triggerMessages&&(n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"quickAdd",clearExisting:!0,clearAllExisting:!0}),r.options.clearAdditionalWidgetMessages.length>0))for(i=r.options.clearAdditionalWidgetMessages.split(","),t=0;t<i.length;t++)n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:i[t],
36clearExisting:!0})},updateItemList:function(){this.set("itemList",s());this.set("columnarData",c());r.trigger(u)},itemList:s(),columnarData:c(),updateItem:function(t){var i=t.sender.dataSource.data(),r=t.sender.value();n.each(i,function(){var n=this;return n.ProductCode.toLowerCase()===r.toLowerCase()?(t.data.set("description",n.Description),!1):!0})},getLocalUpdatedCurrentOrderLines:function(){var t={};return t=n.cv.css.localGetUpdatedCurrentOrderLines(),t==null&&(t={linesBeforeAdd:[],updatedLines:[]}),t.linesBeforeAdd==undefined&&(t.linesBeforeAdd=[]),t.updatedLines==undefined&&(t.updatedLines=[]),t},setLocalAddedOrderLines:function(){var t=this.getLocalUpdatedCurrentOrderLines(),r={},i=[];r=n.cv.css.localGetCurrentOrderLines();r!=null&&(i=_.pluck(_.filter(t.linesBeforeAdd,function(n){return _.find(r,function(t){return t.LineSeq==n.LineSeq&&t.OrderedQty!=n.OrderedQty})}),"LineSeq"),i.length>0&&t.updatedLines!=undefined&&t.updatedLines.length>0&&(i=_.union(i,t.updatedLines)),i.length>0&&(t.updatedLines=i),t.linesBeforeAdd!=undefined&&t.linesBeforeAdd.length>0&&(t.addedLines=_.difference(_.pluck(r,"LineSeq"),_.pluck(t.linesBeforeAdd,"LineSeq"))),n.cv.css.localSetUpdatedCurrentOrderLines(t))},setLocalUpdatedCurrentOrderLines:function(){var i=this.getLocalUpdatedCurrentOrderLines(),t,r=[],u=[];t=n.cv.css.localGetCurrentOrderLines();t!=null&&(r=_.pluck(t,"LineSeq"),u=_.pluck(t,"OrderedQty"),n.each(r,function(n,t){i.linesBeforeAdd[n]={LineSeq:t,OrderedQty:u[n]}}),n.cv.css.localSetUpdatedCurrentOrderLines(i))},addAll:function(){var u=this,f=n.grep(u.get("itemList"),function(t){return a(t)&&t.quantity.toString().length>0&&!n.cv.util.isNullOrWhitespace(t.productCode)}),e="",h=[],l=[],y=this.get("clearExistingMessages"),s=[],c,p;f.length>0&&n(r.element.find('input.k-input[data-product-validated="0"]')).length===0?(n.each(f,function(n,t){s.push(v(t))}),this.clearMessage(),this.set("isAddingAll",!0),_.extend(n.cv.css._proxyMeta,n.cv.util.getBaseProxyMeta(r)),c=n.cv.util.hasValue(u.get("orderNoApproval")),c?n.each(s,function(t,i){s[t]=n.extend({},{orderNo:u.get("orderNoApproval")},i)}):u.setLocalUpdatedCurrentOrderLines(),r.options.showWarningWhenProductAlreadyInCart&&(r.productsAlreadyInCart=[],n.each(f,function(t,i){n.cv.util.cartHasProduct(i.productCode)&&r.productsAlreadyInCart.push(i.productCode)})),p=c?n.cv.css.ordersApproval.addLineToOrderBulk({batchData:s}):n.cv.css.orders.addToCurrentOrderBulk({batchData:s,triggerGetLines:r.options.getCurrentOrderLinesOnAdd,gtmPageType:r.options.gtmPageType,triggerRefresh:!n.cv.css.isOciExpressCheckout}),n.when(p).done(function(s){if(n.each(f,function(n,i){var u=s.data[n];s.errorMessage[n]==null&&u!=null&&u.editOrderOk===!0?(u.message.length==0?(e=e.length===0?i.productCode:e+", "+i.productCode,r.trigger(t,{lineSeq:u.newLineSeq,productCode:i.productCode})):l.push({productCode:i.productCode,successMessage:u.message}),o(i)):s.errorMessage[n]!=null?h.push({productCode:i.productCode,errorMessage:s.errorMessage[n]}):u!=null&&u.message!==""&&h.push({productCode:i.productCode,errorMessage:u.message})}),n("#ProductSearch0").focus(),c||r.trigger(i,{products:f}),e.length>0){var a=function(){u.setMessage(r.options.textProductsAddedMessage+" "+e,n.cv.css.messageTypes.success)},v=r.productsAlreadyInCart;r.options.showWarningWhenProductAlreadyInCart&&v.length>0?n.cv.util.showOverlayMessage(r.options.warningHeaderWhenProductAlreadyInCart,r.options.warningMessageWhenProductAlreadyInCart.replace("{0}",v.join()),!0,a):a()}h.length>0&&(u.set("clearExistingMessages",!1),n.each(h,function(t,i){u.setMessage(r.options.textAddAllMessage.format(i.productCode,i.errorMessage),n.cv.css.messageTypes.error)}),u.set("clearExistingMessages",y));l.length>0&&(u.set("clearExistingMessages",!1),n.each(l,function(t,i){u.setMessage(i.successMessage,n.cv.css.messageTypes.success)}),u.set("clearExistingMessages",y));u.set("isAddingAll",!1)})):f.length>0&&u.setMessage(r.options.textProductPreValidateError)},refreshLines:function(t,i){i===void 0&&(i=!0);var u=r.options.orderNoOverride===0?n.cv.css.getCurrentOrder():n.cv.css.getOrder({orderNo:r.options.orderNoOverride,isLocalSetSelectedOrder:!0}),f=r.options.orderNoOverride===0?t?n.cv.css.localGetCurrentOrderLines():n.cv.css.getCurrentOrderLines():n.cv.css.getOrderLines({orderNo:r.options.orderNoOverride,isLocalSetSelectedOrderLines:!0});n.when(u,f).done(function(){i&&n.cv.css.trigger(n.cv.css.eventnames.orderChanged);n(r.options.linesElement).each(function(){var t=n(this).data(r.options.linesData);t&&(t.viewModel.set("isOrderLinesServerFetched",!0),t.updateAllLines(!1),t.viewModel.set("isOrderLinesServerFetched",!1))})})},_mouseClicked:!1,_autoCompleteClosed:function(){var t,i,u;(this.options.preventDefaultSelection=!1,this._last==13)&&(t=r.viewModel.productSearchDataSource,t&&t._data&&t._data.length>0&&t._data[0].ProductCode&&(i=n(this.input).val().toLowerCase(),u=t._data[0].ProductCode.toLowerCase(),u.startsWith(i)||(this.options.preventDefaultSelection=!0)))},autoCompleteBlurEvent:function(){},productSearchDataSource:p,isCollapsableAreaExpandedByDefault:r.options.isCollapsableAreaExpandedByDefault,isCollapsableAreaExpanded:r.options.isCollapsableAreaExpandedByDefault,toggleCollapsableArea:function(){this.set("isCollapsableAreaExpanded",!this.get("isCollapsableAreaExpanded"))},expandCollapseButtonLabel:function(){return this.get("isCollapsableAreaExpanded")?r.options.expandCollapseButtonLabelCollapsed:r.options.expandCollapseButtonLabelExpanded.format(this.get("stockCodeEntryLineCount"))},showAddButton:function(){return!this.get("isCollapsableAreaExpanded")},_setSelectedWarrantyClaimValues:function(t){var u=this,i;r.options.isForWarrantyClaim&&r.options.isForWarrantyClaimServiceProducts===!1&&n.cv.util.hasValue(t)&&n.cv.util.hasValue(t.itemIndex)&&n.cv.util.hasValue(t.selectedDataItem)&&(i=_.filter(u.get("itemList"),function(n){return n.Index===t.itemIndex}),n.cv.util.hasValue(i,"[0]")&&(r.options.isWarrantyClaimRequiresProductsToBeInvoiceValidated?i[0].set("selectedWarrantyClaimLineAmount",kendo.toString(t.selectedDataItem.SolLineAmount-(r.options.incTax?0:t.selectedDataItem.SolShippedSalesTaxAmt),"c")+" (Order Qty: "+t.selectedDataItem.SolShippedQty+")"):i[0].set("selectedWarrantyClaimProductNettPrice",t.selectedDataItem.NettPriceForOne)))},_warrantyClaimReasonCodeSelected:function(t){var i=this;r.options.isForWarrantyClaim&&n.cv.util.hasValue(t)&&n.cv.util.hasValue(t.warrantyClaimRequiresProductsToBeInvoiceValidated)&&n.cv.util.hasValue(t.warrantyClaimRequiresPricingShown)&&(n.each(i.get("itemList"),function(n,i){i.set("isWarrantyClaimRequiresProductsToBeInvoiceValidated",t.w
36arrantyClaimRequiresProductsToBeInvoiceValidated);i.set("isWarrantyClaimRequiresPricingShown",t.warrantyClaimRequiresPricingShown);o(i)}),i.set("isWarrantyClaimRequiresProductsToBeInvoiceValidated",t.warrantyClaimRequiresProductsToBeInvoiceValidated),i.set("isWarrantyClaimRequiresPricingShown",t.warrantyClaimRequiresPricingShown))},getSearchString:function(t){var i="";return n.cv.util.hasValue(t,"filter.filters[0]")&&(i=t.filter.filters[0].value,t.filter.filters=[]),i}},h=0;h<r.options.stockCodeEntryLineCount;h++)y["ProductCode"+h]=function(n){n.preValidate()};return e=kendo.observable(y),r.viewModel=e,w(),e},_getDefaultViewTemplate:function(){var n=this,t="<div><div class='itemList' data-bind='source: itemList' data-template='"+n.options.itemTemplateId+"'>";return t+"<\/div>"},_getDefaultItemViewTemplate:function(){var t=this,n="<script type='text/x-kendo-template' id='"+t.options.itemTemplateId+"'>";return n+="<div>",n+="Product",n+"<\/div><\/script>"}};n.cv.ui.widget(o)})(jQuery);
37var __spreadArray=this&&this.__spreadArray||function(n,t,i){if(i||arguments.length===2)for(var r=0,f=t.length,u;r<f;r++)!u&&r in t||(u||(u=Array.prototype.slice.call(t,0,r)),u[r]=t[r]);return n.concat(u||Array.prototype.slice.call(t))};(function(n){var t="orders",i="lines",r="listUpdated",u="orderLinesRetrieved",f="noOrderLinesRetrieved",e="showingOrder",o="invoiceReprintRequested",s="linesCopiedToCart",h="InvoiceNo",c="OrderNo",l={name:"orderSearch",extend:"mvvmwidget",options:{dataSource:[],autoBind:!1,popupWindowId:"",popupTrackingDataWindowIdPrefix:"modal-order-tracking-",reprintInvoiceOverlayId:"reprint-invoice",searchType:h,guid:"",triggerMessages:!0,recordsPerPage:10,topCount:0,defaultStartOrderDateDays:"30",orderStatusOptions:[],defaultOrderStatusSelected:"A",orderStatusesDefaultStartDays:"",sortColumn:"SoOrderNo",sortDirection:"desc",useDateFilter:!0,overrideOrderBy:"",isLiveSearch:!0,showOnlyUserOrders:!0,showOnlyInvoiceNo:!1,forceCurrentCustomer:!1,erpInvoiceReprintOutputFormatsDictionary:[],reprintInvoiceContact:"",changeApproverOptions:[],reassignApproversEnabled:!1,canReassignApprovers:!1,showApprovalStatus:!0,showApprovalLog:!0,lastSearchMethod:"",isFinanceUser:!1,searchOnLoad:!1,consolidateNoteLines:!1,showAsIncTax:!1,consolidateSearchOptions:!1,orderStatusCodes:"",enableInvoiceReprintBatching:!1,noResultsMessage:"Your search returned no results.",invoiceOrNumberEmpty:"Please enter an invoice or order number to search for.",serialNumberEmpty:"Please enter a serial number to search for.",orderStatusIsEmpty:"Please select an order status.",errorRetrievingResults:"We're sorry. There was an error retrieving your search results. Please try again.",invoiceReprintRequestSuccess:"Your invoice reprint request was successful. The reprint will be sent to {0}.",multipleInvoiceReprintRequestSuccess:"Your invoice reprint request for invoices {0} was successful.The reprints will be sent to {1}.",errorWithReprintFaxOrEmail:"Please enter either a fax number or valid email address.",errorRequestingReprint:"We're sorry. There was an error processing your reprint request. Please try again.",noOrderSelectedForReprint:"No orders have been selected for reprint. Please select at least one order and try again.",noProductSelectedForReceipt:"No products have been selected for receipt. Please select at least one product and try again.",noProductSelectedForDeleteBackorder:"No products have been selected for backorder deletion. Please select at least one product and try again.",deleteOrderRequestSuccess:"The selected order has now been deleted.",deleteOrderRequestError:"We're sorry. There was an error deleting the selected order. Please try again.",productsReceiptRequestSuccess:"The selected products have now been receipted.",productsReceiptRequestError:"We're sorry. There was an error receipting the selected products. Please try again.",productsDeleteBackOrderSuccess:"Backorders for the selected products have now been deleted.",productsDeleteBackOrderError:"We're sorry. There was an error deleting backorders for the selected products. Please try again.",textProductsAddedMessage:"{0} products have now been copied to your cart.",copyProductErrorMessage:"{0} : {1}",errorCopyingProducts:"We're sorry. There was an error copying products to your cart. Please try again.",noLinesToCopy:"There are no lines with quantities above 0 to copy to your cart.",orderCannotBeFound:"The requested order cannot be found.",orderContainsNoLines:"This order has no lines to display.",cancelOrderRequestSuccess:"The selected order has now been cancelled.",cancelOrderRequestError:"We're sorry. There was an error cancelling the selected order. Please try again.",cancelOrderHeader:"Confirm Order Cancellation",cancelOrderLabel:"Please enter a reason for cancelling this order. Click [Confirm] to proceed with cancellation.",cancelOrderReasonLabel:"Reason",cancelOrderMandatoryMessage:"Please enter a reason for cancelling the order.",changeApproverHeader:"Confirm Change of Approver:",changeApproverLabel:"Please enter a reason for the change of approver. Click [Confirm] to save the changes.",changeApproverReasonLabel:"Reason",EnableCancelOfApprovalOrders:"An email will be sent to both the previous and new approver.",changeApproverMandatoryMessage:"Please enter a reason for the change of approver.",noOrderTrackingDataMessage:"We're sorry. We couldn't find any tracking data for this order.",changeApproverErrorMessage:"An error occured while attempting to change the approver.",orderReceiptingInformationMessage:"When receipting orders please consider the correct Unit of Measure for each line.",fastReceiptFullOrderRequestSuccess:"The order has been successfully receipted.",fastReceiptFullOrderRequestError:"There was an error receipting the order at this time, please try again later.",invoiceOrNumberClearedMessage:"Invoice / Order Number has been cleared.",deliveryDateValidationMessage:"Start Delivery Date cannot be greater than the End Delivery Date.",gstPrompt:"GST",confirmationReason:"",showReceipt:!1,showDeleteBackOrder:!1,canSelectOrders:!1,isShowingOrder:!1,isRequestingReceipt:!1,showLocalOrderTrackInLiveOrderSearch:!1,completedStatuses:["Complete"],hideTrackOrdersButtonInLiveOrderSearchPage:!0,isFromMyStampsAdminPage:!1,sqFromStamps:"",stampsWidgetContainer:".order-search-line-product-info-sub",showReceiptingStatuses:[],unreceiptedStatusResource:"",partiallyReceiptedStatusResource:"",fullyReceiptedStatusResource:"",overdueReceiptedStatusResource:"",orderTrackingMode:"Classic",overdueReceiptingDays:0,accountSelectPageUrl:"AccountSelect.aspx",trackOptionDisplayFlags:[],enableReturns:!1,returnItemsButtonLabel:"",hideReturnsButtonLabel:"",hideUnreturnableItemsButtonLabel:"",showUnreturnableItemsButtonLabel:"",enableO
37nlineReceipting:!1,showReceiptingLog:!0,submitReturnUrl:"SubmitReturn.aspx",returnQtyExceedsShippedQtyMessage:"The return quantity cannot exceed the shipped quantity.",returnQtyExceedsReceiptQtyMessage:"The return quantity cannot exceed the receipted quantity.",selectProductToReturnMessage:"Please select at least one product to return.",errorsInSomeOfTheLinesMessage:"There are errors in some of the lines.",noProductsToReturnMessage:"There are no products to return",returnStatuses:"",consolidateItemisedCharges:!0,enableDepositPaymentsForOrders:!1,ordersAwaitingPaymentPageUrl:"",showProductDescriptionInProductSearchResults:!1,customSearchFilterFields:[],customSearchFilterFieldsForAdvancedSearch:[],quoteDialogExpiredMessage:"",resumeOrderRequestSuccess:"The selected order has been successfully resumed",resumeOrderRequestError:"There was an error resuming the order at this time, please try again later",checkoutQuoteStatuses:["02"],enableLiveQuoteConversion:!1,switchOrderOnHoldMessage:"You have opted to switch to another order, so your existing order is now on hold.",displayPriceOfIndividualItems:!1,showQuoteForCustomerCheckout:!1,enableInvoiceDateSearch:!1,showExplodedTotal:!1,showTotalAndTaxSummary:!1,totalAmtSummaryStringField:"AllOrderTotalAmountString",totalTaxSummaryStringField:"AllOrderTotalTaxString"},extendEvents:[r,u,f,e,o,s],_mode:t,initialised:function(){var i=this,t=i.viewModel;i.setupSinglePageHistoryStateHandler({displayResultList:!0},function(n){n.displayResultList&&t.goBackToResults()});n.cv.css.bind(n.cv.css.eventnames.exportToCSV,t.exportToCSVWithOptions.bind(t))},initDataSource:function(){var c=this,t=c.viewModel,i=n.cv.util.queryStringValue("Order"),r=n.cv.util.queryStringValue("Invoice"),e=n.cv.util.queryStringValue("OrderSuffix"),o=n.cv.util.hasContent(e)?e:"",s=n.cv.util.queryStringValue("R"),u=t.get("isFinanceUser")&&n.cv.util.hasContent(s)&&s.toLowerCase()==="account.aspx",h=n.cv.util.queryStringValue("IsLiveSearch"),f=n.cv.util.hasContent(h)?h.toLowerCase()==="true":t.get("isLiveSearch");n.cv.util.hasContent(r)&&n.cv.util.hasContent(i)?t.getOrder(i,o,r,!u,u,f):n.cv.util.isNullOrWhitespace(r)&&n.cv.util.hasContent(i)?t.getOrderByOrderNumber(i,o,u,f):n.cv.util.hasContent(r)&&n.cv.util.isNullOrWhitespace(i)?t.getOrderByInvoiceNumber(r,u,f):t.get("searchOnLoad")&&t.searchWithOptions()},_setupOrderLinesDataSource:function(t){var i=this,r=i.viewModel,u;i._linesDataSource==undefined&&(u=n.cv.data.dataSource({method:"ordersApproval/LoadOrderLines",params:i._constructLineParamsFunction()}),i._linesDataSource=u);i._linesDataSource!=undefined&&i._linesDataSource.fetch(function(u){var f=u.items;f=i._preBindingLineModification(f.toJSON());f=new kendo.data.ObservableArray(f);r.set("lines",f);r.set("isLineDataDirty",!1);f.bind("change",function(){r.set("isLineDataDirty",!0)});t&&n.type(t)==="function"&&t()})},_preBindingLineModification:function(t){var i=_.filter(t,function(n){return n.LineType&&n.LineType==="DN"&&n.LineSeq%1!=0&&n.Description&&n.Description.length>0});return i=_.map(i,function(n){return{LineSeq:parseInt(n.LineSeq,10),Description:n.Description}}),i=_.groupBy(i,"LineSeq"),i=_.map(i,function(n){return _.reduce(n,function(n,t){return n.LineSeq=t.LineSeq,n.Description==null&&(n.Description=""),n.Description+=" "+t.Description,n},{})}),t=_.filter(t,function(t){return t.LineType&&t.LineType==="DN"&&t.LineSeq%1==0||t.LineType==="SN"&&t.Product&&n.type(t.Product)==="array"&&t.Product.length===1}),_.each(t,function(t,r){t.index=r;var u=_.find(i,function(n){return n.LineSeq===t.LineSeq});u!=null&&(t.ExtendedLineDescription=n.trim(u.Description));t.isRejectChecked=!1;t.displayRejectionNoteEditor=!1;t.toggleReject=function(){var t=this.get("isRejectChecked");n.cv.util.hasValue(t)||(t=!1);this.set("isRejectChecked",!t)};t.packQuantityTarget="Product[0].PackQty";t.quantityTarget="OrderedQty";t.increaseQty=function(){n.cv.util.kendoNumericTextBoxIncrease(this)};t.decreaseQty=function(){n.cv.util.kendoNumericTextBoxDecrease(this,0)}}),t},_constructLineParamsFunction:function(){var n=this,t=n.viewModel;return function(){return{sort:[{field:"LineSeq",dir:"asc"}],take:5e3,soOrderNo:t.get("orderNo")}}},orderSearchService:function(){return"orders/search"},orderLineSearchService:function(){return n.cv.css.orders.getOrderLines},orderLineSearchExtendedParams:function(){return{}},isSearchResultsHidden:function(){return!1},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},initOrderList:function(t,i,r){var u=this,f=u.viewModel;i.index=t;i.disableView=!1;i.isShowingOrder=!1;i.isRequestingReceipt=!1;i.hasAddress=!1;i.requestInvoiceReprint=!1;i.orderNumberWithSuffix=function(t){t===void 0&&(t=!0);var u=i.get("SoOrderNo"),r=i.get("SoBoSuffix");return u+(n.cv.util.hasContent(r)?(t?" ":"")+r:"")};
37i.orderNumberDisplay=function(){var t=f._getTrackOptionDisplayFlag("OverrideOrderNumberDisplayProperty","");return n.cv.util.hasContent(t)?i.get(t):i.orderNumberWithSuffix(!0)};i.showOrder=function(n){r.showOrder(n.data);r.showApprovalStatusLines(n.data);r.showApprovalLogLines(n.data);r.showProjectDetails(n.data)};i.bind("change",function(n){n.field=="requestInvoiceReprint"&&r._invoiceReprintOrdersChanged()});i.hasOrderTotalCharges=!1;i.isReprintDisabled=function(){return r.get("isRequestingReprint")===!0||this.IsOrderStatusComplete===!1||n.cv.util.isNullOrWhitespace(this.get("SoInvoiceDate"))};i.reprintSingleInvoice=function(){this.isReprintDisabled()||(r.unselectAllOrders(),this.reprintInvoice())};i.reprintInvoice=function(){this.isReprintDisabled()||(this.set("requestInvoiceReprint",!0),r.set("orderSelectedForSingleInvoiceReprint",this),r.showInvoiceReprint())};i.fastReceiptFullOrder=function(n){r.fastReceiptFullOrder(n.data)};i.showReceiptingColumn=r.showReceiptingColumn();i.reprintClicked=function(){if(this.isReprintDisabled()===!1){var t=this.get("requestInvoiceReprint");n.cv.util.hasValue(t)||(t=!1);this.set("requestInvoiceReprint",!t)}};i.showPricing=function(){return this.get("Customer[0].ShowPricing")||!0};i.isIncTax=function(){return this.get("Customer[0].ShowTaxAs")||!0};i.showViewInvoiceOnline=i.SoOrderStatus==="90"&&i.SoCreditNoteNo===0;i.showQuoteForCustomerCheckout=r.get("showQuoteForCustomerCheckout");i.SoActualDeliveryDateDisplay=function(){return i.SoOrderStatus==="90"&&i.SoActualDeliveryDate&&Date.parse(i.SoActualDeliveryDate)!==Date.parse("01/01/1970")?i.SoActualDeliveryDate:""}},_getDefaultViewModel:function(){var l=this,y=function(){return l.dataSource?(n.each(l.dataSource.view(),function(n,t){l.initOrderList(n,t,a)}),l.dataSource.view()):[]},p=function(t,i){var e,u,f,r,o;if(t.length>0){for(e=[],u=[],f=0;f<t.length;f++)r=t[f],r.Mandatory=!1,r.Hidden=!1,r.Protected=!1,r.Readonly=!1,r.FieldType=="list"&&(r.FieldType="autocomplete"),r.FieldType=="bool"&&(r.FieldType="varchar",r.Lookup={"1":"Yes","2":"No"},r._boolToDropdown=!0),o=n.cv.util.getFieldItemData(t[f]),o.fieldValid=n.noop,u.length<5?u.push(o):(e.push({group:u}),u=[],u.push(o));u.length>0&&e.push({group:u});a.set(i,e)}},w=l.options.customSearchFilterFields,b=l.options.customSearchFilterFieldsForAdvancedSearch,v,k,a;return l.options.customSearchFilterFields=[],l.options.customSearchFilterFieldsForAdvancedSearch=[],v=w.length>0,k=l.options.searchOnLoad,(v||b.length>0)&&setTimeout(function(){p(w,"customSearchFilterFields");p(b,"customSearchFilterFieldsForAdvancedSearch");var t=n(l.element).find(".cv-custom-fields");n.cv.css.initialiseKendoControls(t);t.find("select.form-select").kendoDropDownList();k&&a.searchWithOptions()},4),a=kendo.observable(n.extend({},l.options,{mode:t,isOrdersMode:function(){return this.get("mode")===t},isLinesMode:function(){return this.get("mode")===i},invoiceOrOrderNumber:"",orderSelectedForSingleInvoiceReprint:null,reprintInvoiceFileFormats:l.options.erpInvoiceReprintOutputFormatsDictionary&&l.options.erpInvoiceReprintOutputFormatsDictionary.length>0?l.options.erpInvoiceReprintOutputFormatsDictionary:[],reprintInvoiceFileFormat:l.options.erpInvoiceReprintOutputFormatsDictionary&&l.options.erpInvoiceReprintOutputFormatsDictionary.length>0?l.options.erpInvoiceReprintOutputFormatsDictionary[0].value:"",reprintAvailable:!0,invoiceReprintOrderString:"",orderStatus:l.options.defaultOrderStatusSelected,startOrderDate:new Date((new Date).setDate((new Date).getDate()-parseInt(l.options.defaultStartOrderDateDays))),endOrderDate:new Date,startInvoiceDate:null,endInvoiceDate:null,today:new Date,reference:"",productSearch:"",accountCode:"",itemList:y(),dataCount:0,isProcessing:!1,isSearchingInvoiceOrNumber:!1,isSearchingWithOptions:!1,isRequestingReprint:!1,isCopyingToCurrentOrder:!1,isProcessingChangeApprover:!1,searchClicked:!1,showingSearch:!0,showingResults:!1,orderNotFound:!1,showingOrderDetails:!1,showingInvoiceReprint:!1,hasInvoiceReprintOrders:!1,hasMultipleInvoiceReprintOrders:!1,reprintingAll:!1,showInvoiceOrNumberValidationErrors:!1,showSearchingWithOptionsValidationErrors:!1,showInvoiceReprintValidationErrors:!1,showQuoteConvert:!1,showQuoteConvertExpiredAccept:!1,showQuoteForCustomerCheckout:!1,orderDetailHeader:{},orderDetailLines:[],orderDetailLinesWithoutCharges:[],_orderDetailLinesWithoutCharges:function(){var n=this.get("orderDetailLines");return _.filter(n,function(n){return n.LineType!=="SC"})},_consolidateLines:function(n){return n=_.groupBy(n,"Description"),_.map(n,function(n){return _.reduce(n,function(n,t){return n.Description=t.Description,n.LineAmount+=t.LineAmount,n.LineAmountExTax+=t.LineAmountExTax,n.LineAmountIncTax+=t.LineAmountIncTax,n.LineTax+=t.LineTax,n},{Description:"",LineAmount:0,LineAmountExTax:0,LineAmountIncTax:0,LineTax:0})})},positiveChargeLines:[],_positiveChargeLines:function(){var t=this.get("orderDetailLines"),n=_.filter(t,function(n){return n.LineType==="SC"&&n.LineAmount>=0});return a.consolidateItemisedCharges?a._consolidateLines(n):n},hasPositiveChargeLines:function(){return this._positiveChargeLines().length>0},negativeChargeLines:[],_negativeChargeLines:function(){var t=this.get("orderDetailLines"),n=_.filter(t,function(n){return n.LineType==="SC"&&n.LineAmount<0});return a.consolidateItemisedCharges?a._consolidateLines(n):n},hasNegativeChargeLines:function(){return this._negativeChargeLines().length>0},orderDocuments:[],hasOrderDocuments:function(){return this.get("orderDocuments").length>0},approvalStatusLines:[],approvalLogLines:[],isLineDataDirty:!1,hasApprovalStatusLines:!1,hasApprovalStatusLogs:!1,receiptingLogLines:[],orderTrackingLines:[],orderTrackProofOfDeliveryUrl:"",isOrderReceiptingUpdated:!1,newOrderReceiptingStatus:"",hasTransactionsLogs:!1,hasBalanceOwing:!1,balanceAmountOwing:0,transactionsLogLines:[],loadTransactionsLog:function(t){n.cv.util.loadPaymentTransactionsLog(this,t._objectKey,t.SoOrderTotalAmount)},payBalance:function(){var t=this,r=t.orderDetailHeader.SoOrderNo,i=t.orderDetailHeader.SoBoSuffix,u=l.options.ordersAwaitingPaymentPageUrl+"&order=".concat(r)+(n.cv.util.isNullOrWhitespace(i)?"":"&orderSuffix=".concat(i))+"&R=".concat(window.location.href);n.cv.util.redirect(u,null,!1)},isOrderIntegrated:function(){return!_.contains(["R","RJ"],this.get("orderStatus"))},preferredDeliveryDate:function(){var n=this.get("orderDetailHeader");return n.PreferredDeliveryDate},actualDeliveryDate:function(){var n=this.get("orderDetailHeader");return n.SoOrderStatus==="90"&&n.SoActualDeliveryDate&&Date.parse(n.SoActualDeliveryDate)!==Date.parse("01/01/1970")?n.SoActualDeliveryDate:""},isSortingOrders:!1,sortColumn:l.options.sortColumn,sortDirection:l.options.sortDirection,hasProjectDetails:!1,projectName:"",clientProjects:[],isChangingProject:!1,canShowCarrier:function(){var t=this;if(t._getTrackOptionDisplayFlag("CanShowCarrier",!0)==!1)return!1;var i=t.get("orderDetailHeader"),r=t.get("isLiveSearch"),u=t.get("showLocalOrderTrackInLiveOrderSearch"),f=t.get("hideTrackOrdersButtonInLiveOrderSearchPage");return t.isOrderIntegrated()&&(!n.cv.util.isNullOrWhitespace(i.CarrierName)||r&&f===!1&&u===!1&&(n.cv.util.isNullOrWhitespace(i.CarrierCode)===!1||n.cv.util.isNullOrWhitespace(i.ConsignmentNote)===!1))},canShowTrackOrder:function(){var t=this,i=t.get("orderDetailHeader"),r=t.get("isLiveSearch"),u=t.get("showLocalOrderTrackInLiveOrderSearch"),f=t.get("hideTrackOrdersButtonInLiveOrderSearchPage");return!n.cv.util.isNullOrWhitespace(i.TrackingUrl)||r&&!f&&!u},canShowOrderDocuments:function(){var n=this;return n._getTrackOptionDisplayFlag("CanShowOrderDocuments",!0)},showLiveOrderTrackingData:function(){var t=this,r=t.get("isLiveSearch"),u=t.get("showLocalOrderTrackInLiveOrderSearch"),f=t.get("hideTrackOrdersButtonInLiveOrderSearchPage"),i=t.get("orderDetailHeader.TrackingUrl");return r&&!f&&!u&&(!n.cv.util.hasValue(i)||i.length===0)},isLoadingTrackingData:!1,loadTrackingData:function(){var t=this,i=t.get("orderDetailHeader"),r=t.get("orderStatus");t.set("isLoadingTrackingData",!0);t.set("orderTrackProofOfDeliveryUrl","");n.cv.css.orders.getOrderTrackingData({_objectKey:i._objectKey,orderTrackingOptionCode:r}).done(function(r){if(n.cv.util.hasValue(r.data,"error.length")&&r.data.error.length>0)n.cv.util.notify(t,r.data.error,n.cv.css.messageTypes.error);else if(n.cv.util.hasValue(r.data,"warning.length")&&r.data.warning.length>0)n.cv.util.notify(t,r.data.warning,n.cv.css.messageTypes.warning);else if(n.cv.util.hasValue(r.data)&&r.data.length>0){t.set(t.orderTrackingLinesPropertyName(),r.data);var u=r.data[0].TrackingNumber;n.cv.css.orders.getOrderTrackingSignature({_objectKey:i._objectKey,trackingNumber:u}).done(function(i){t.set("orderTrackProofOfDeliveryUrl",n.cv.util.isNullOrWhitespace(i.data)?"":"/OMSignature.aspx?x="+u)}).always(function(){n.fancybox.open({href:t.orderTrackingLinesModalId(),modal:!0,topRatio:"0.25",minWidth:"800",padding:"0"});t.set("isLoadingTrackingData",!1)})}else n.cv.util.notify(t,t.get("noOrderTrackingDataMessage"),n.cv.css.messageTypes.warning)}).always(function(){t.set("isLoadingTrackingData",!1)})},dataSourceBound:function(){a.set("isSortingOrders",!1)},confirmationHandler:function(){var t=this.popupWindowId;n.fancybox.open({href:t,modal:!0,topRatio:"0.25",minWidth:"800",padding:"0"})},confirmationCancelClick:function(){var t=this,i=t.get("confirmationType"),r;i==="cancel-order"?t.set("isProcessingCancelOrder",!1):i==="change-approver"&&(r=t.get("approvalData"),r.set("newApprover",""),t.showApprovalStatusLines(t.currentOrder),t.set("isProcessingChangeApprover",!1));n.fancybox.close()},confirmationOKClick:function(){var t=this,e=t.get("confirmationIsMandatory"),o=t.get("confirmationReason").trim(),r,f,i,u;if(e&&o.length===0){t.set("confirmationHasError",!0);return}r=t.get("confirmationType");r==="cancel-order"?(f=t.get("currentOrder"),n.cv.css.ordersApproval.cancelOrderNeedingApproval({_objectKey:f._objectKey,reason:t.get("confirmationReason")}).done(function(i){if(i.data.Success)t.set("isProcessingCancelOrder",!1),n.fancybox.close(),t.get("lastSearchMethod")==="isSearchingWithOptions"?t.searchWithOptions():t.searchInvoiceOrNumber(),t.goBackToResults(),n.cv.util.notify(t,t.cancelOrderRequestSuccess,n.cv.css.messageTypes.success);else{var r=l.options.cancelOrderRequestError;n.cv.util.hasValue(i.data.DebugInfo)&&i.data.DebugInfo.length>0&&(r=i.data.DebugInfo.join().replace(/,/g,", "));n.cv.util.notify(t,r,n.cv.css.messageTypes.error);return}})):r==="change-approver"&&(i=t.get("currentOrder"),u=t.get("newApprover"),t.set("isProcessingChangeApprover",!0),n.cv.css.ordersApproval.changeApproverForSalesorderApproval({_objectKey:i._objectKey,id:u.id,costCentreCode:u.costCentreCode,reason:t.get("confirmationReason")}).done(function(r){if(r.data==="True")t.showApprovalStatusLines(i),t.showApprovalLogLines(i),n.fancybox.close(),t.set("confirmationReason","");else{n.cv.util.notify(t,t.changeApproverErrorMessage,n.cv.css.messageTypes.error);return}}).always(function(){t.set("isProcessingChangeApprover",!1)}))},hasReceiptingLogs:function(){return this.get("receiptingLogLines").length>0},hasTrackOptionDisplayFlags:n.cv.util.hasValue(l.options.trackOptionDisplayFlags,"[0]"),_getTrackOptionDisplayFlag:function(t,i){var u=this,f,r;return u.get("hasTrackOptionDisplayFlags")==!1?i:(f=u.get("orderStatusToSearch"),r=_.find(l.options.trackOptionDisplayFlags,function(n){return n.StatusCode===f}),n.cv.util.hasValue(r,t)===!1)?i:r[t]},canShowInvoiceDetails:function(){var n=this;return n._getTrackOptionDisplayFlag("CanShowInvoiceDetails",!0)},canShowOrderStatus:function(){var n=this;return n._getTrackOptionDisplayFlag("CanShowOrderStatus",!0)},canShowReprintInvoiceOnSearchResults:function(){var n=this;return n._getTrackOptionDisplayFlag("CanShowReprintInvoiceOnSearchResults",!0)},canShowShippedQuantities:function(){var n=this;return n._getTrackOptionDisplayFlag("CanShowShippedQuantities",!0)},canShowWarehouse:function(){var n=this;return n._getTrackOptionDisplayFlag("CanShowWarehouse",!0)},canCopyToCurrentOrder:function(){var n=this;return n._getTrackOptionDisplayFlag("CanCopyToCurrentOrder",!0)},orderTrackingLinesPropertyName:function(){var i=this,t=i._getTrackOptionDisplayFlag("OverrideOrderTrackingLinesPropertyName","");return n.cv.util.hasContent(t)?t:"orderTrackingLines"},orderTrackingLinesModalId:function(){var i=this,r=l.options.guid,t=i._getTrackOptionDisplayFlag("OverrideOrderTrackingLinesModalNamePrefix","");return"#"+(n.cv.util.hasContent(t)?t:l.options.popupTrackingDataWindowIdPrefix)+r},orderNumberSortField:function(){var n=this;return n._getTrackOptionDisplayFlag("OverrideOrderNumberSortProperty","SoOrderNo")},defaultStartOrderDate:function(){(this.get("startOrderDate")==null||this.get("startOrderDate").length==0)&&this.set("startOrderDate",new Date((new Date).setDate((new Date).getDate()-parseInt(this.get("defaultStartOrderDateDays")))))},defaultEndOrderDate:function(){(this.get("endOrderDate")==null||this.get("endOrderDate").length==0)&&this.set("endOrderDate",this.get("today"))},changeApprover:function(n){var t=this,i=n.data,r=n.sender.dataItem();t.set("confirmationHeader",l.options.changeApproverHeader);t.set("confirmationLabel",l.options.changeApproverLabel);t.set("confirmationReasonLabel",l.options.changeApproverReasonLabel);t.set("confirmationErrorMessage",l.options.changeApproverMandatoryMessage);t.set("confirmationHasError",!1);t.set("confirmationIsMandatory",!0);t.set("confirmationType","change-approver");t.set("newApprover",r);t.set("approvalData",i);t.confirmationHandler()},cancelOrder:function(n){var t=this,i=n.data;return t.set("isProcessingCancelOrder",!0),t.set("confirmationHeader",l.options.cancelOrderHeader),t.set("confirmationLabel",l.options.cancelOrderLabel),t.set("confirmationReasonLabel",l.options.cancelOrderReasonLabel),t.set("confirmationErrorMessage",l.options.cancelOrderMandatoryMessage),t.set("confirmationHasError",!1),t.set("confirmationIsMandatory",!0),t.set("confirmationReason",""),t.set("confirmationType","cancel-order"),t.set("confirmationData",i.currentOrder.SoOrderNo),l.viewModel.confirmationHandler(),!1},canCancelOrder:function(){var n=this,t=n.get("orderStatus");return t!="C"},updateViewModelFromDataSource:function(){var i=y(),u,f,t;this.set("itemList",i);this.set("dataCount",l.dataSource.data().length);u=_.find(this.get("itemList"),function(n){return n.IsOrderStatusComplete===!0});u?a.set("canSelectOrders",!0):a.set("canSelectOrders",!1);f=this.get("orderTrackingMode");f==="ReceiptOnly"&&this.dataSource._data.length>0&&(t=this.dataSource.sort(),(t===undefined||t.length===0)&&this.dataSource.sort([{field:"ReceiptedStatusOrder",dir:"asc"},{field:"SoInvoiceDate",dir:"asc"},{field:"SoOrderNo",dir:"asc"},{field:"SoBoSuffix",dir:"asc"}]));l.trigger(r,{viewCount:i.length,dataCount:this.get("dataCount")}
37);this.get("dataCount")>0?(this.setSearchProperties(),this.set("showingResults",l.isSearchResultsHidden()===!1)):((this.get("isSearchingInvoiceOrNumber")||this.get("isSearchingWithOptions"))&&n.cv.util.setMessage.apply(l.viewModel,[this.get("noResultsMessage"),n.cv.css.messageTypes.info]),this.set("showingResults",!1));this.set("isSearchingInvoiceOrNumber",!1);this.set("isSearchingWithOptions",!1);this.viewModelUpdated()},viewModelUpdated:n.noop,setSearchProperties:function(n){this.set("showInvoiceOrNumberValidationErrors",!1);this.set("showSearchingWithOptionsValidationErrors",!1);n!=undefined&&this.set(n,!0)},getSearchDefaults:function(){var n=this,t={liveSearch:this.get("isLiveSearch"),onlySearchCurrentUser:this.get("showOnlyUserOrders"),showOnlyInvoiceNo:this.get("showOnlyInvoiceNo"),forwardOrderSearch:!1,completedOrders:!1,forceCurrentCustomer:this.get("forceCurrentCustomer"),pageSize:this.get("recordsPerPage"),take:this.get("recordsPerPage"),serialnum:"",startDeliveryDate:null,endDeliveryDate:null,invnum:"",status:"",startorderdate:kendo.toString(this.get("startOrderDate"),"dd/MM/yyyy"),endorderdate:kendo.toString(this.get("endOrderDate"),"dd/MM/yyyy"),startInvoiceDate:this.getStartInvoiceDate(),endInvoiceDate:this.getEndInvoiceDate(),reference:"",productsearch:"",accountCode:"",topCount:l.options.topCount,useDateFilter:l.options.useDateFilter,overrideOrderBy:l.options.overrideOrderBy,searchType:l.options.searchType,orderTrackingMode:l.options.orderTrackingMode,customSearchFieldData:null,customSearchFieldDataForAdvancedSearch:null,orderStatusCodes:l.options.orderStatusCodes,showTotalAndTaxSummary:l.options.showTotalAndTaxSummary,success:function(){}},f=n.get("customSearchFilterFields"),r=n.getCustomSearchParams(f),u,i;return r&&(t.customSearchFieldData=r),u=n.get("customSearchFilterFieldsForAdvancedSearch"),i=n.getCustomSearchParams(u),i&&(t.customSearchFieldDataForAdvancedSearch=i),t},getCustomSearchParams:function(t){var e,r,o,u;if(t.length==0)return null;for(e={},r=0;r<t.length;r++)for(o=t[r].group,u=0;u<o.length;u++){var f=o[u],s=f.fieldItem.FieldName,i=f[s];if(i!=null&&n.trim(i).length!==0){if(f.fieldItem.FieldType=="date"&&(i=kendo.toString(i,"yyyy-MM-dd")),f.fieldItem._boolToDropdown)switch(i){case"1":i="1";break;case"2":i="0"}e[s]=i}}return e},showSerialNumberValidationErrors:!1,serialNumber:"",isSerialNumberProvided:function(){var n=this,t=n.isInvoiceOrOrderNumberProvided();return t===!1&&n.get("serialNumber").length>0},isSerialNumberValid:function(){var n=this;return n.get("showSerialNumberValidationErrors")&&n.get("consolidateSearchOptions")===!1?this.get("serialNumber").length>0:!0},searchSerialNumber:function(){var t=this;t.setSearchProperties("isSearchingSerialNumber");t.set("showInvoiceOrNumberValidationErrors",!0);t.set("lastSearchMethod","isSearchingSerialNumber");t.isSerialNumberValid()?t.search(_.extend(t.getSearchDefaults(),{serialnum:t.get("serialNumber"),searchType:t.get("searchType"),orderTrackingMode:t.get("orderTrackingMode")}),"isSearchingSerialNumber"):(n.cv.util.notify(t,t.get("serialNumberEmpty"),n.cv.css.messageTypes.error),t.set("isSearchingSerialNumber",!1),l.setDataSource([]))},isInvoiceOrOrderNumberProvided:function(){return this.get("invoiceOrOrderNumber").length>0},isInvoiceOrNumberValid:function(){return this.get("showInvoiceOrNumberValidationErrors")&&this.get("consolidateSearchOptions")===!1?this.get("invoiceOrOrderNumber").length>0:!0},isOrderStatusValid:function(){return this.get("showSearchingWithOptionsValidationErrors")?this.get("orderStatus").length>0:!0},isSearchOptionsValid:function(){var t=!0;return this.isOrderStatusValid()||(t=!1,n.cv.util.setMessage.apply(l.viewModel,[this.get("orderStatusIsEmpty"),n.cv.css.messageTypes.error]),l.setDataSource([])),t},searchInvoiceOrNumber:function(){var t=this;t.setSearchProperties("isSearchingInvoiceOrNumber");t.set("showInvoiceOrNumberValidationErrors",!0);t.set("lastSearchMethod","isSearchingInvoiceOrNumber");t.isInvoiceOrNumberValid()?t.search(_.extend(t.getSearchDefaults(),{invnum:t.get("invoiceOrOrderNumber"),searchType:t.get("searchType"),orderTrackingMode:t.get("orderTrackingMode"),serialnum:t.get("serialNumber")}),"isSearchingInvoiceOrNumber"):(n.cv.util.setMessage.apply(l.viewM
37odel,[t.get("invoiceOrNumberEmpty"),n.cv.css.messageTypes.error]),t.set("isSearchingInvoiceOrNumber",!1),l.setDataSource([]))},searchWasProductSearch:!1,searchWithOptions:function(){var t=this,i,r;if(t.get("consolidateSearchOptions")&&t.isInvoiceOrOrderNumberProvided()){t.searchInvoiceOrNumber();return}this.setSearchProperties("isSearchingWithOptions");this.set("showSearchingWithOptionsValidationErrors",!0);this.set("lastSearchMethod","isSearchingWithOptions");this.isSearchOptionsValid()?(t.showProductDescriptionInProductSearchResults===!0&&t.set("searchWasProductSearch",n.trim(this.get("productSearch")||"").length>0),i=this.get("startDeliveryDate")!==null?kendo.toString(this.get("startDeliveryDate"),"dd/MM/yyyy"):null,r=this.get("endDeliveryDate")!==null?kendo.toString(this.get("endDeliveryDate"),"dd/MM/yyyy"):null,this.search(_.extend(this.getSearchDefaults(),{status:this.get("orderStatus"),startorderdate:kendo.toString(this.get("startOrderDate"),"dd/MM/yyyy"),endorderdate:kendo.toString(this.get("endOrderDate"),"dd/MM/yyyy"),reference:this.get("reference"),productsearch:this.get("productSearch"),accountCode:this.get("accountCode"),startDeliveryDate:i,endDeliveryDate:r,serialnum:t.get("serialNumber")}),"isSearchingWithOptions")):this.set("isSearchingWithOptions",!1)},getStartInvoiceDate:function(){return l.options.enableInvoiceDateSearch&&this.get("startInvoiceDate")?kendo.toString(this.get("startInvoiceDate"),"dd/MM/yyyy"):null},getEndInvoiceDate:function(){return l.options.enableInvoiceDateSearch&&this.get("endInvoiceDate")?kendo.toString(this.get("endInvoiceDate"),"dd/MM/yyyy"):null},exportToCSVWithOptions:function(){var t=this,i,r,u;if(t.get("consolidateSearchOptions")&&t.isInvoiceOrOrderNumberProvided()){t.searchInvoiceOrNumber();return}if(this.setSearchProperties("isSearchingWithOptions"),this.set("showSearchingWithOptionsValidationErrors",!0),this.set("lastSearchMethod","isSearchingWithOptions"),!this.isSearchOptionsValid()){this.set("isSearchingWithOptions",!1);return}t.showProductDescriptionInProductSearchResults===!0&&t.set("searchWasProductSearch",n.trim(this.get("productSearch")||"").length>0);i=this.get("startDeliveryDate")!==null?kendo.toString(this.get("startDeliveryDate"),"dd/MM/yyyy"):null;r=this.get("endDeliveryDate")!==null?kendo.toString(this.get("endDeliveryDate"),"dd/MM/yyyy"):null;this.set("orderStatusToSearch",this.get("orderStatus"));n.cv.css.trigger(n.cv.css.eventnames.isSearchingWithOptions,{enabled:!0});u=_.extend(this.getSearchDefaults(),{page:1,pageSize:1e4,take:1e4,sort:[],status:this.get("orderStatus"),startorderdate:kendo.toString(this.get("startOrderDate"),"dd/MM/yyyy"),endorderdate:kendo.toString(this.get("endOrderDate"),"dd/MM/yyyy"),startInvoiceDate:this.getStartInvoiceDate(),endInvoiceDate:this.getEndInvoiceDate(),reference:this.get("reference"),productsearch:this.get("productSearch"),accountCode:this.get("accountCode"),startDeliveryDate:i,endDeliveryDate:r});n.cv.css.orderSearch(u).done(function(n){var e=n.data,o=function(n,t){return t===null||t==="1969-12-31T14:00:00.000Z"?"":t},u=["SoOrderNo","SoOrderDate","SoCustCode","Status","SoCustReference","OrderTotalAmountExGst"],r,f,i;l.options.enableInvoiceDateSearch&&(u=__spreadArray(__spreadArray([],u,!0),["SoInvoiceNo","SoInvoiceDate"],!1));l.options.showExplodedTotal&&(u=__spreadArray(__spreadArray([],u,!0),["SoOrderTotalTax","OrderTotalAmount"],!1));r=e.map(function(n){return u.map(function(t){return JSON.stringify(n[t],o)}).join(",")});r.unshift(u.join(","));r=r.join("\r\n");r=r.split('\\"').join('""');f=new Blob([""+r]);window.navigator&&window.navigator.msSaveBlob&&navigator.appVersion.toString().indexOf(".NET")>0?window.navigator.msSaveBlob(f,"export.csv"):(i=document.createElement("a"),i.setAttribute("href",URL.createObjectURL(f)),i.setAttribute("download","export.csv"),i.setAttribute("target","_blank"),i.style.display="none",document.body.appendChild(i),i.click(),setTimeout(function(){document.body.removeChild(i)},0));t.set("isSearchingWithOptions",!1)}).always(function(){n.cv.css.trigger(n.cv.css.eventnames.isSearchingWithOptions,{enabled:!1})});
37n.cv.util.clearMessage.apply(l.viewModel)},updateSearchResult:function(){var t=this,r=t.get("newOrderReceiptingStatus"),u=t.get("orderDetailHeader"),i=_.find(t.dataSource._data,function(n){return n.SoOrderNo===u.SoOrderNo&&n.SoBoSuffix===u.SoBoSuffix}),f=new Date,e=n.cv.util.toDate(i.SoInvoiceDate)<=f.setDate(f.getDate()-parseInt(t.get("overdueReceiptingDays")));i!=null&&(e&&t.orderTrackingMode==="ReceiptOnly"?i.Receipted=r==="R"?t.get("fullyReceiptedStatusResource"):t.get("overdueReceiptedStatusResource"):r==="UR"?i.Receipted=t.get("unreceiptedStatusResource"):r==="PR"?i.Receipted=t.get("partiallyReceiptedStatusResource"):r==="R"&&(i.Receipted=t.get("fullyReceiptedStatusResource")),t.updateViewModelFromDataSource())},getOrderByOrderNumber:function(n,t,i,r){var u=this,f=u.get("isFromMyStampsAdminPage")===!1,e=f&&!i,o=f&&i;u.set("invoiceOrOrderNumber",n);u.set("searchType",c);u.getOrder(n,t,"",e,o,r)},getOrderByInvoiceNumber:function(n,t,i){var r=this;r.set("invoiceOrOrderNumber",n);r.set("searchType",h);r.getOrder("","",n,!t,t,i)},getOrder:function(t,i,r,u,f,e){var o=this;n.cv.util.clearNotifications(o);o.set("orderNotFound",!1);o.set("showingResults",!1);o.set("isSearchingInvoiceOrNumber",!0);o.set("isLiveSearch",e);o.set("checkCustomerCode",u);o.set("showingSearch",!1);n.cv.css.getOrder({orderNo:t,suffix:i,invoiceNo:r,checkCustomerCode:u,checkAdditionalCustomerCodes:f,liveOrder:e,sqFromStamps:l.options.sqFromStamps}).done(function(t){t.data&&t.data.length>0?(o.setDisableView(!1),o.showOrder(kendo.observable(t.data[0])),o.showApprovalStatusLines(t.data[0]),o.showApprovalLogLines(t.data[0])):(n.cv.util.notify(l.viewModel,o.get("orderCannotBeFound"),n.cv.css.messageTypes.error),o.set("orderNotFound",!0));o.set("isSearchingInvoiceOrNumber",!1)}).fail(function(){n.cv.util.notify(l.viewModel,o.get("errorRetrievingResults"),n.cv.css.messageTypes.error);o.set("isSearchingInvoiceOrNumber",!1)})},search:function(t){var r=this,i;n.cv.util.clearMessage.apply(l.viewModel);r.set("showingResults",!1);i=n.cv.data.dataSource({method:l.orderSearchService(),params:t,pageSize:l.options.recordsPerPage,requestEnd:function(t){if(t.response.data===""&&n.cv.util.notify(l.viewModel,r.get("errorRetrievingResults"),n.cv.css.messageTypes.error),l.options.showTotalAndTaxSummary&&t.response.data.length>0){var i=n(".paginator-bottom[data-visible=true]");i&&i.length>0&&(i[0].innerHTML="<span class='totalsummary-amount'>"+t.response.data[0][l.options.totalAmtSummaryStringField]+"<\/span><div>Inc. GST "+t.response.data[0][l.options.totalTaxSummaryStringField]+"<\/div>")}}});i.bind("requestEnd",l.viewModel.dataSourceBound);l.setDataSource(i);this.set("orderStatusToSearch",this.get("orderStatus"))},setDisableView:function(t){var i=this;i.dataSource&&n.each(i.dataSource.view(),function(n,i){i.set("disableView",t)})},fastReceiptFullOrder:function(t){var i=this;return i.setDisableView(!0),n.cv.util.hasValue(t.isRequestingReceipt)&&t.set("isRequestingReceipt",!0),n.cv.css.orders.fastReceiptFullOrder({_objectKey:t._objectKey}).done(function(t){t.data.toLowerCase()==="true"?(n.cv.util.notify(l.viewModel,l.options.fastReceiptFullOrderRequestSuccess,n.cv.css.messageTypes.success),l.viewModel.lastSearchMethod==="isSearchingInvoiceOrNumber"?l.viewModel.searchInvoiceOrNumber():l.viewModel.searchWithOptions()):n.cv.util.notify(l.viewModel,l.options.fastReceiptFullOrderRequestError,n.cv.css.messageTypes.error)}).fail(function(){n.cv.util.notify(l.viewModel,l.options.fastReceiptFullOrderRequestError,n.cv.css.messageTypes.error)}).always(function(){n.cv.util.hasValue(t.isRequestingReceipt)&&t.set("isRequestingReceipt",!1);i.setDisableView(!1);n.cv.css.trigger(n.cv.css.eventnames.refreshOutstandingTasksCount)})},showOrder:function(n){l.addNewUiHistoryState({displayResultList:!1});var t=this,i=t.loadDeliveryAddressAndOrderLines(n);return t.loadDocumentsAndReceiptingLog(n),l.options.enableDepositPaymentsForOrders&&t.loadTransactionsLog(n),i},loadDocumentsAndReceiptingLog:function(t){var i=this;i.set("orderDocuments",[]);n.cv.css.orders.getOrderDocuments({orderNo:t.SoOrderNo,suffix:t.SoBoSuffix}).done(function(t){t.data&&n.isArray(t.data)&&i.set("orderDocuments",t.data)});l.options.showReceiptingLog&&n.cv.css.orders.getReceiptingLogLines({orderNo:t.SoOrderNo,suffix:t.SoBoSuffix}).done(function(t){t.data&&n.isArray(t.data)&&i.set("receiptingLogLines",t.data)})},loadDeliveryAddressAndOrderLines:function(t){var i,o,r;n.cv.css.localSetSelectedOrder(t);l.trigger(e,{orderNoOverride:t.SoOrderNo,isOrderTrackingSummary:!0});i=this;i.setDisableView(!0);i.set("addColumnCountClass",!i.get("addColumnCountClass"));n.cv.util.hasValue(t.isShowingOrder)&&t.set("isShowingOrder",!0);i.set("isCompletedOrder",_.contains(l.options.completedStatuses,t.Status||t.OrderStatusDescription));i.set("isConfirmedOrProntoEnteredNotCompletedOrder",t.IsConfirmedOrProntoEnteredNotCompletedOrder);i.set("orderCanSelectLines",!1);i.set("orderNoOptionsAvailable",!0);i.set("orderCanReceiptLines",!1);i.set("orderCanDeleteBackOrder",!1);i.set("currentOrder",t);i.set("approvalRequired",t.ApprovalRequired);i.set("hasOrderTotalCharges",t.OrderTotalChargesExTax>0);t.ApprovalRequired&&i.get("reassignApproversEnabled")?i.set("canReassignApprovers",!0):i.set("canReassignApprovers",!1);o=n.cv.util.hasValue(t,"Customer[0].ShowPricing")?t.Customer[0].ShowPricing:!0;t.set("showPricing",o);t.set("isIncTax",function(){return n.cv.util.hasValue(t,"Customer[0].ShowTaxAs")?t.Customer[0].ShowTaxAs:!0});t.set("orderNumberWithSuffix",function(i){i===void 0&&(i=!0);var u=t.get("SoOrderNo"),r=t.get("SoBoSuffix");return u+(n.cv.util.hasContent(r)?(i?" ":"")+r:"")});
37t.set("orderNumberDisplay",function(){var r=i._getTrackOptionDisplayFlag("OverrideOrderNumberDisplayProperty","");return n.cv.util.hasContent(r)?t.get(r):t.orderNumberWithSuffix(!0)});var u=i.get("orderStatus"),s=i.get("isLiveSearch")&&u!=="R"&&u!=="RJ",h={};return s&&(h=n.cv.css.orders.getDeliveryAddressLive({orderNo:t.SoOrderNo,suffix:t.SoBoSuffix,soCustCode:t.SoCustCode,soOrderStatus:t.SoOrderStatus}).done(function(n){n.data&&(t.SoDelAddr1=n.data.SoDelAddr1,t.SoDelAddr2=n.data.SoDelAddr2,t.SoDelAddr3=n.data.SoDelAddr3,t.SoDelAddr4=n.data.SoDelAddr4,t.SoDelAddr5=n.data.SoDelAddr5,t.SoDelAddr6=n.data.SoDelAddr6,t.SoDelPostcode=n.data.SoDelPostcode,t.SoDelIns=n.data.SoDelIns)})),r=n.Deferred(),n.when(h).done(function(){var e=n.extend({orderNo:t.SoOrderNo,suffix:t.SoBoSuffix,liveOrder:s,soOrderStatus:t.SoOrderStatus,checkCustomerCode:i.get("checkCustomerCode"),isInvoiceOrder:t.IsFromInvoiceSearch||!1,orderTrackingOptionCode:u,sqFromStamps:l.options.sqFromStamps},l.orderLineSearchExtendedParams());l.orderLineSearchService()(e).done(function(u){u.data&&u.data.length>0?i.processOrderLinesData(i,u,t):(l.trigger(f),n.cv.util.notify(l.viewModel,i.get("orderContainsNoLines"),n.cv.css.messageTypes.error));i.setDisableView(!1);n.cv.util.hasValue(t.isShowingOrder)&&t.set("isShowingOrder",!1);t.SoDelAddr1||t.SoDelAddr2||t.SoDelAddr3||t.SoDelAddr4||t.SoDelAddr5||t.SoDelAddr6||t.SoDelPostcode||t.SoDelPostcode?i.set("hasAddress",!0):i.set("hasAddress",!1);i.set("addColumnCountClass",!i.get("addColumnCountClass"));r.resolve()}).fail(function(t){t.data&&n.isArray(t.data)&&i.set("orderDocuments",t.data);r.reject()})}),r.promise()},consolidatedNoteLines:function(t){var i=[];if(t.length>0){var r=_.chain(t).filter(function(t){return t.LineType==="DN"&&n.trim(t.StockCode)!==""}).groupBy(function(n){return n.StockCode}),e=r.value(),o=r.keys().value(),s=_.chain(t).filter(function(t){return t.LineType==="DN"&&n.trim(t.StockCode)===""}).groupBy(function(n){return parseInt(n.SolLineSeq)}).value(),u=function(t,i){if(t.ExtendedLineDescription="",t.NoteLineArray=[],i){var r=_.reduce(i,function(t,i){return n.trim(t)+" "+i.SolLineDescription},"");t.ExtendedLineDescription=r;n.each(i,function(n,i){t.NoteLineArray.push(i.SolLineDescription)})}},f=[];_.each(t,function(t){var r,h;t.SolLineSeq%1==0&&(r=void 0,n.trim(t.StockCode)!==""&&_.contains(o,t.StockCode)?_.contains(f,t.StockCode)||(r=e[t.StockCode],u(t,r),i.push(t),f.push(t.StockCode)):(r=s[t.SolLineSeq.toString()],u(t,r),i.push(t),(t.LineType==="SN"||t.LineType==="KN")&&r&&r.length>0&&(h=r[0],h.ExtendedLineDescription=t.ExtendedLineDescription)))})}return i},_removeGivexGiftCardNoteLines:function(t){var r=[],i;if(t.length>0){if(i=_.chain(t).filter(function(t){return t.LineType==="SC"&&n.cv.util.hasValue(t.Product,"[0]")&&t.Product[0].IsGiveXGiftCard&&n.cv.util.hasValue(t.ExtendedAttributesList)&&t.ExtendedAttributesList.length>5}
37).value(),i.length===0)return t;var u=_.chain(t).filter(function(n){return n.LineType==="DN"}).groupBy(function(n){return parseInt(n.SolLineSeq)}),e=u.value(),o=u.keys().value(),f=[];_.each(i,function(n){var t=n.SolLineSeq.toString(),i;_.contains(o,t)&&(i=e[t],_.each(i,function(n){f.push(n.SolLineSeq)}))});_.each(t,function(n){_.contains(f,n.SolLineSeq)===!1&&r.push(n)})}return r},processOrderLinesData:function(t,r,f){var e,s,h,c,o;l.trigger(u,{lines:r.data});t.set("orderDetailHeader",f);t.set("showDocumentDownloadLink",f.DocumentDownloadLinkUrl&&f.SoOrderStatus==="90"&&f.SoCreditNoteNo===0);t.set("reprintAvailable",!isNaN(f.SoOrderStatus)&&parseInt(f.SoOrderStatus)>=80&&f.SoOrderStatus<=90);t.set("showingSearch",!1);t.set("showingResults",!1);t.set("showingOrderDetails",!0);t.set("mode",i);t.showQuoteConvertButton();var a=t.get("orderTrackingMode")!=="HideReceipt"&&_.find(r.data,function(n){return n.CanOrderReceipt===1||n.CanOrderReceipt===!0}),v=_.find(r.data,function(n){return n.CanDeleteBackOrder===1||n.CanDeleteBackOrder===!0}),y=_.find(r.data,function(n){return n.CanDeleteOrder===1||n.CanDeleteOrder===!0});a?(t.set("orderCanReceiptLines",!0),n.cv.util.isNullOrWhitespace(t.orderReceiptingInformationMessage)||n.cv.util.notify(t,t.orderReceiptingInformationMessage,n.cv.css.messageTypes.info)):t.set("orderCanReceiptLines",!1);v?t.set("orderCanDeleteBackOrder",!0):t.set("orderCanDeleteBackOrder",!1);y?t.set("canDeleteOrder",!0):t.set("canDeleteOrder",!1);e=r.data;t.consolidateNoteLines&&e.length>0&&(e=t.consolidatedNoteLines(e));e=t._removeGivexGiftCardNoteLines(e);l.options.enableReturns&&n.cv.util.hasValue(e,"[0]")&&(s=n.cv.util.hasValue(e[0].Order,"[0]")?e[0].Order[0].OrderUnreturnableMessage:"",t.set("orderUnreturnable",n.cv.util.hasContent(s)),t.set("orderUnreturnableMessage",s),h=t.get("orderDetailHeader").SoOrderStatus,c=_.find(t.get("returnStatuses"),function(n){return n===h}),c?(t.set("isReturnsStatus",!0),t.set("showNoReturnToolTip",!1)):(t.set("isReturnsStatus",!1),t.set("showNoReturnToolTip",t.get("orderUnreturnable"))));e=new kendo.data.ObservableArray(e);_.each(e,function(i,r){i.index=r;i.hasNegativeShippedQty=i.ShippedQty<0;i.isReceiptChecked=i.hasNegativeShippedQty?parseFloat(i.ReceiptQty)<=parseFloat(i.ShippedQty):parseFloat(i.ReceiptQty)>=parseFloat(i.ShippedQty);i.isDeleteBackOrderChecked=!1;i.originalReceiptQty=i.ReceiptQty;i.ReceiptedQty=parseFloat(i.ReceiptQty);i.isCompletedOrder=_.contains(l.options.completedStatuses,f.Status||f.OrderStatusDescription);i.canShowShippedQuantitiesInLine=i.LineType!=="SC"&&i.isCompletedOrder&&t.canShowShippedQuantities();i.isConfirmedOrProntoEnteredNotCompletedOrder=f.IsConfirmedOrProntoEnteredNotCompletedOrder;i.CanDeleteBackOrder&&i.SolBackorderQty>0?(i.hasBackOrder=!0,t.set("orderCanSelectLines",!0),t.set("orderNoOptionsAvailable",!1)):i.hasBackOrder=!1;i.CanOrderReceipt&&i.ShippedQty!==0&&(t.set("orderCanSelectLines",!0),t.set("orderNoOptionsAvailable",!1));t.get("orderTrackingMode")==="HideReceipt"&&(t.set("orderCanSelectLines",!1),t.set("orderNoOptionsAvailable",!0));i.toggleReceipt=function(t){n.cv.util.toggleCvCheckboxValue(t,this,"isReceiptChecked")};i.setReceiptQty=function(){var t=this.get("isReceiptChecked");n.cv.util.hasValue(t)||(t=!1);t?(this.get("ShippedQty")===null&&this.set("ShippedQty","0"),this.set("ReceiptQty",this.get("ShippedQty"))):this.set("ReceiptQty",this.get("originalReceiptQty"))};i.checkReceiptQty=function(){var t=this.get("ReceiptQty"),i=this.get("ShippedQty");t=n.cv.util.hasValue(t)?t:0;i=n.cv.util.hasValue(i)?i:0;this.set("isReceiptChecked",this.hasNegativeShippedQty?t<=i:t>=i)};i.toggleDeleted=function(t){n.cv.util.toggleCvCheckboxValue(t,this,"isDeleteBackOrderChecked")};i.packQuantityTarget="Product[0].PackQty";i.quantityTarget="ReceiptQty";i.increaseQty=function(){this.hasNegativeShippedQty?n.cv.util.kendoNumericTextBoxIncreaseAllowNegative(this):n.cv.util.kendoNumericTextBoxIncrease(this)};i.decreaseQty=function(){this.hasNegativeShippedQty?n.cv.util.kendoNumericTextBoxDecreaseAllowNegative(this):n.cv.util.kendoNumericTextBoxDecrease(this,0)};i.isIncTax=f.isIncTax;i.hasReceiptQty=parseFloat(i.ReceiptQty)>0;i.lineUnreturnable=n.cv.util.hasContent(i.LineUnreturnableMessage);i.returnQty=0;i.returnQtyErrorMessage="";n.cv.util.hasValue(i.Product,"[0]")&&i.Product[0].IsGiveXGiftCard&&n.cv.util.hasValue(i.ExtendedAttributesList)&&i.ExtendedAttributesList.length>5&&(i.deliveryDate=i.ExtendedAttributesList[0],i.recipientsName=i.ExtendedAttributesList[1],i.recipientsEmail=i.ExtendedAttributesList[2],i.sendersName=i.ExtendedAttributesList[3],i.sendersEmail
37=i.ExtendedAttributesList[4],i.giftCardMessage=i.ExtendedAttributesList[5]);i.increaseReturnsQty=function(){n.cv.util.kendoNumericTextBoxIncrease(this,"returnQty")};i.decreaseReturnsQty=function(){n.cv.util.kendoNumericTextBoxDecrease(this,0,"returnQty")};i.markupPriceTotal=function(){return i.MarkupPrice*i.OrderedQty}});o=!1;e.bind("change",function(n){var t=n.field,i;(t==="isReceiptChecked"||t==="ReceiptQty")&&(o||(o=!0,i=n.items[0],t==="isReceiptChecked"?i.setReceiptQty():i.checkReceiptQty(),o=!1))});t.set("orderDetailLines",e);t.set("orderDetailLinesWithoutCharges",t._orderDetailLinesWithoutCharges());t.set("positiveChargeLines",t._positiveChargeLines());t.set("negativeChargeLines",t._negativeChargeLines());n.cv.css.trigger(n.cv.css.eventnames.orderHistoryLinesRendered,{stampsWidgetContainer:l.options.stampsWidgetContainer,lines:e,InsertToLines:!0});n.cv.util.scroll(l.element.offset().top)},showApprovalStatusLines:function(t){if(l.options.showApprovalStatus!=!1){var i=this,r=[];n.cv.css.ordersApproval.getApproverOptionsForOrder({orderNo:t.SoOrderNo,suffix:t.SoBoSuffix}).done(function(u){u.data&&n.isArray(u.data)&&(n.each(u.data,function(){r.push({value:this.UserId,text:(this.FirstName+" "+this.Surname).trim()+" ("+this.UserId+")",id:this.ID,costCentreCode:this.CostCentreCode})}),n.cv.css.getSalesOrderApprovals({orderNo:t.SoOrderNo}).done(function(n){var t=n.data,u;t&&t.length>0?(i.set("approvalStatusLines",t),u=[],u.push({value:"",text:"Select Another Approver",id:-1,costCentreCode:""}),_.each(r,function(n){n.value!==t[0].ApprovalBy&&(n.costCentreCode=t[0].CostCentreCode,u.push(n))}),i.set("changeApproverOptions",u),i.set("hasApprovalStatusLines",!0)):i.set("hasApprovalStatusLines",!1)}))})}},showApprovalLogLines:function(t){if(l.options.showApprovalLog!=!1){var i=this;n.cv.css.ordersApproval.getSalesOrderApprovalLogs({orderNo:t.SoOrderNo}).done(function(n){n.data&&n.data.length>0?(i.set("approvalLogLines",n.data),i.set("hasApprovalStatusLogs",!0)):i.set("hasApprovalStatusLogs",!1)})}},isInvoiceDateSet:function(){return this.orderDetailHeader.SoInvoiceDate&&this.orderDetailHeader.SoInvoiceDate!==Date.parse("01/01/1970")},showProjectDetails:function(t){var i=this,r,u;t.ProjectId?(r=n.cv.css.customerClient.getCustomerProjectByProjectId({projectId:t.ProjectId}),u=n.cv.css.customerClient.projectSearch(),n.when(r,u).done(function(n,t){n[0].data.result.length>0?(i.set("projectName",n[0].data.result[0].Name),i.set("selectedProject",n[0].data.result[0].ProjectId),i.set("clientProjects",t[0].data.result),i.set("hasProjectDetails",!0)):i.set("hasProjectDetails",!1)})):i.set("hasProjectDetails",!1)},onEditProject:function(){var n=this;n.set("isChangingProject",!0)},changeProject:function(){var t=this;n.cv.css.customerClient.setCurrentOrderProject({clearSelectedProject:!1,orderNumber:t.get("orderDetailHeader.SoOrderNo"),projectId:t.get("selectedProject.ProjectId")}).done(function(){t.set("projectName",t.get("selectedProject.Name"));t.set("currentOrder.ProjectId",t.get("selectedProject.ProjectId"));t.set("isChangingProject",!1)})},showQuoteConvertButton:function(){var t=this,i=t.get("orderDetailHeader");if(t.set("showQuoteConvert",!1),l.options.enableQuoteConversionToOrderInOrderSearch&&i.SoOrderStatus=="02"){if(!l.options.enableExpiredQuotesConversionToOrdersInOrderSearch&&i.SoDeliveryDate&&n.cv.util.toDate(i.SoDeliveryDate)<new Date)return;t.set("showQuoteConvert",!0)}},selectAllOrders:function(){this._selectAllOrders(!0)},unselectAllOrders:function(){this._selectAllOrders(!1)},_selectAllOrders:function(t){n.each(a.dataSource.data(),function(){this.get("IsOrderStatusComplete")===!0&&this.set("requestInvoiceReprint",t)})},deleteOrder:function(){a.set("isDeletingOrder",!0);var t=a.get("orderDetailHeader");n.cv.css.orders.deleteOrder({_objectKey:t._objectKey}).done(function(t){t.data==="True"?n.cv.util.notify(l.viewModel,l.options.deleteOrderRequestSuccess,n.cv.css.messageTypes.success):n.cv.util.notify(l.viewModel,l.options.deleteOrderRequestError,n.cv.css.messageTypes.error)}).fail(function(){n.cv.util.notify(l.viewModel,l.options.deleteOrderRequestError,n.cv.css.messageTypes.error)}).always(function(){a.set("isDeletingOrder",!1)})},isCustomerQuote:function(){var n=this.get("orderDetailHeader");return n.IsConvertedToCustomerQuote},markupPriceTotalIncTax:function(){var n=this.get("orderDetailHeader");return n.MarkupPriceTotalIncTax},resumeOrder:function(){var t=this,i=t.get("orderDetailHeader");n.cv.util.hasValue(i._objectKey)===!1&&(i=t.get("currentOrder"));t.set("isResumingOrder",!0);i.set("isResumingOrder",!0);n.cv.css.getCurrentOrder().done(function(r){var u=!1;n.cv.util.hasValue(r)&&n.cv.util.hasValue(r.data)&&n.cv.util.hasValue(r.data[0])&&(u=r.data[0].ItemLineCount>0);n.cv.css.user.getCurrentUser().done(function(r){var f=n.Deferred();r&&r.data&&r.data.length>0?r.data[0].CustomerCode&&r.data[0].CustomerCode!==i.SoCustCode?f=n.cv.css.setCurrentAccount(i.SoCustCode):f.resolve(!0):f.resolve(!1);f.done(function(r){n.type(r)==="boolean"&&r||n.cv.util.hasValue(r)&&n.cv.util.hasValue(r.data)&&r.data.toLowerCase()==="true"?n.cv.css.ordersOnHold.resumeOrder({_objectKey:i._objectKey}).done(function(r){if(r.data.result.Success)n.cv.util.notify(t,t.resumeOrderRequestSuccess,n.cv.css.messageTypes.success),n.cv.util.redirectAfterNotification(l.options.ordersPageUrl,{message:t.resumeOrderRequestSuccess,messagetype:n.cv.css.messageTypes.success},!1),u&&n.cv.util.notify(t,t.switchOrderOnHoldMessage,n.cv.css.messageTypes.info);else{i.set("isResumingOrder",!1);t.set("isResumingOrder",!1);var f=t.resumeOrderRequestError;n.cv.util.hasValue(r.data.result.Messages)&&r.data.result.Messages.length>0&&(f=r.data.result.Messages.join().replace(/,/g,", "));n.cv.util.notify(t,f,n.cv.css.messageTypes.error)}}).fail(function(){i.set("isResumingOrder",!1);t.set("isResumingOrder",!1);n.cv.util.notify(t,t.resumeOrderRequestError,n.cv.css.messageTypes.error)}):(i.set("isResumingOrder",!1),t.set("isResumingOrder",!1),n.cv.util.notify(t,t.resumeOrderRequestError,n.cv.css.messageTypes.error))})})})},openCustomerQuoteDialog:function(){n.fancybox.open({modal:!0,topRatio:"0.25",minWidth:"250",padding:"0",href:"#print-customer-quote-dialog"})},printCustomerQuote:function(t){var u=this,f=a.get("orderDetailHeader"),e=f._objectKey,i=t.data.emailAddress,r=t.data.displayPriceOfIndividualItems;n.cv.util.hasContent(i)&&n.cv.css.customerQuote.sendCustomerQuoteEmail({_objectKey:e,emailAddress:i,displayPriceOfIndividualLineItems:r});window.open("/"+u.get("currentOrder.PrintOrderUrl")+"&popup=1&displayPriceOfIndividualLineItems="+r);n.fancybox.close()},isQuoteOrder:function(){var n=a.get("orderDetailHeader");return _.contains(l.options.checkoutQuoteStatuses,n.SoOrderStatus)},quoteIsExpired:!1,quoteDialogCustomerReference:"",quoteDialogMessage:"",quoteDialogMessageCalculated:function(){var i=this.get("quoteIsExpired")===!0,r=this.get("quoteDialogExpiredMessage"),t=this.get("quoteDialogMessage");return n.cv.util.hasContent(t)?t:i?r:""},quoteDialogIsInMessageMode:function(){var t=this.get("quoteDialogMessage"),i=this.get("quoteIsExpired")===!0;return n.cv.util.hasContent(t)?!0:i},onShowCheckoutQuoteDialog:function(){var t=a.get("orderDetailHeader"),i=t._objectKey;a.set("quoteIsExpired",!1);a.set("quoteDialogCustomerReference","");a.set("quoteDialogMessage","");n.cv.css.orders.quoteCheckoutVerify({_objectKey:i,isCustomerReferenceNecessary:!1}).done(function(i){a.set("quoteDialogCustomerReference",i.data.customerReference);i.data.result.Success===!0?a.set("quoteIsExpired",i.data.isExpired):i.data.result&&i.data.result.Messages&&i.data.result.Messages.length>0&&a.set("quoteDialogMessage",i.data.result.Messages.join("<br>"));l.options.enableLiveQuoteConversion&&new Date<=t.QuotationExpiryDate?a.onCheckoutQuote():n.fancybox.open({href:"#convert-quote-to-order-dialog",afterShow:function(){n.fancybox.update()}})})},onCheckoutQuote:function(){var t=this,i=t.get("orderDetailHeader"),u=i._objectKey,r;t.set("quoteDialogIsProcessing",!0);r=!l.options.enableLiveQuoteConversion||i.QuotationExpiryDate<new Date;n.cv.css.orders.quoteCheckoutVerify({_objectKey:u,customerReference:t.get("quoteDialogCustomerReference"),isCustomerReferenceNecessary:r}).done(function(n){if(n.data.customerReferenceError===!0){t.set("quoteDialogIsProcessing",!1);return}n.data.result.Success===!0?window.location.href=n.data.checkoutUri:n.data.result&&n.data.result.Messages&&n.data.result.Messages.length>0&&a.set("quoteDialogMessage",n.data.result.Messages.join("<br>"))})},selectAllProducts:function(){this._selectAllProducts(!0)},unselectAllProducts:function(){this._selectAllProducts(!1)},_selectAllProducts:function(t){var i=this.get("orderDetailLines");n.each(i,function(){this.CanOrderReceipt&&(this.set("isReceiptChecked",t),t?this.set("ReceiptQty",this.get("ShippedQty")):this.set("ReceiptQty",this.get("originalReceiptQty")));this.CanDeleteBackOrder&&this.hasBackOrder&&this.set("isDeleteBackOrderChecked",t)})},requestSelectedInvoice:function(){var t=this,i=t._getInvoiceReprintOrders();
37if(!t.isReprintFaxOrEmailValid()){n.cv.util.notify(l.viewModel,l.options.errorWithReprintFaxOrEmail,n.cv.css.messageTypes.error,{triggerMessages:!1});return}t.reprintSelectedOrders(i)},reprintSelectedOrders:function(t){var r=this,u,i;if(!n.cv.util.hasValue(t)||t.length===0){n.cv.util.notify(l.viewModel,l.options.noOrderSelectedForReprint,n.cv.css.messageTypes.error);return}u=l.options.enableInvoiceReprintBatching===!0?kendo.guid():"";i=[];n.each(t,function(n,t){i.push({orderNo:t.SoOrderNo,suffix:t.SoBoSuffix,reprintTo:r.get("reprintInvoiceContact"),outputFormat:r.get("reprintInvoiceFileFormat"),forceOrderCreation:!0,ignoreCustomerChecks:!0,batchGroupID:u,invoiceNumber:"",expectedInvoiceNo:"",errMsg:""})});n.cv.css.orders.setInvoiceReprintBulk({batchData:i}).done(function(f){var o=f.data,s=_.filter(o,function(n){return n.result.Success}),h=_.filter(o,function(n){return!n.result.Success}),e,c;s.length>0&&(e="",n.each(s,function(r){var u=i[r].orderNo;e+=e.length>0?", ":"";e+=u+(i[r].suffix.length>0?" ":"")+i[r].suffix;n.each(t,function(n,t){return t.get("SoOrderNo")===u?(t.set("requestInvoiceReprint",!1),!1):!0})}),l.options.enableInvoiceReprintBatching===!0&&n.cv.css.orders.sendInvoiceReprintBatchGroup({batchGroupID:u,errMsg:""}
37),r.hideInvoiceReprint(),c=l.viewModel.get("multipleInvoiceReprintRequestSuccess").format(e,l.viewModel.get("reprintInvoiceContact")),n.cv.util.notify(l.viewModel,c,n.cv.css.messageTypes.success));h.length>0&&n.each(h,function(t,r){var u=i[t].orderNo+(i[t].suffix.length>0?" ":"")+i[t].suffix+": "+(r.result.Messages.length>0?r.result.Messages[0]:"");n.cv.util.notify(l.viewModel,u,n.cv.css.messageTypes.error)})}).fail(function(){n.cv.util.notify(l.viewModel,l.options.errorRequestingReprint,n.cv.css.messageTypes.error)})},sortByColumn:function(t,i,r){var u=this;n.cv.util.sortByColumn(u,t,i,r)},requestReceiptFullOrder:function(){return this._selectAllProducts(!0),this.requestReceiptSelected(),!1},requestReceiptSelected:function(){var r=this.get("orderDetailLines"),t=!1,i;n.each(r,function(){return this.get("isReceiptChecked")===!0?(t=!0,!1):!0});t?(i=this,i.receiptSelectedProducts()):n.cv.util.notify(l.viewModel,l.options.noProductSelectedForReceipt,n.cv.css.messageTypes.error)},receiptSelectedProducts:function(){var f=this.get("orderDetailLines"),t=[],i=this.get("orderDetailHeader"),r=!0,u=!1;return n.each(f,function(){if(this.CanOrderReceipt){var f=n.cv.util.isNullOrWhitespace(this.get("ReceiptQty"))?0:this.get("ReceiptQty"),i=this.get("ShippedQty"),e=this.get("hasNegativeShippedQty");t.push({SolLineSeq:this.get("SolLineSeq"),ReceiptQty:f,SolShippedQty:i});(e&&i<0&&f<0||!e&&i>0&&f>0)&&(u=!0);(e&&i<0&&f>i||!e&&i>0&&f<i)&&(r=!1)}}),r?this.set("newOrderReceiptingStatus","R"):u?i.Receipted===this.overdueReceiptedStatusResource&&this.orderTrackingMode==="ReceiptOnly"?this.set("newOrderReceiptingStatus","OR"):this.set("newOrderReceiptingStatus","PR"):this.set("newOrderReceiptingStatus","UR"),this.set("isRequestingReceipt",!0),this.set("isOrderReceiptingUpdated",!0),n.cv.css.orders.saveOrderLineReceiptChanges({_objectKey:i._objectKey,changes:t,orderReceiptStatus:this.get("newOrderReceiptingStatus")==="OR"?"PR":this.get("newOrderReceiptingStatus")}).done(function(){n.cv.util.notify(l.viewModel,l.options.productsReceiptRequestSuccess,n.cv.css.messageTypes.success)}).fail(function(){n.cv.util.notify(l.viewModel,l.options.productsReceiptRequestError,n.cv.css.messageTypes.error)}).always(function(){a.set("isRequestingReceipt",!1);n.cv.css.trigger(n.cv.css.eventnames.refreshOutstandingTasksCount)})},requestDeleteSelectedBackorder:function(){var i=_.find(this.get("orderDetailLines"),function(n){return n.isDeleteBackOrderChecked===!0}),t;if(i)t=this,t._requestDeleteSelectedBackorder();else return n.cv.util.notify(l.viewModel,l.options.noProductSelectedForDeleteBackorder,n.cv.css.messageTypes.error),!1;return!1},_requestDeleteSelectedBackorder:function(){var i=this.get("orderDetailLines"),t=[],r=this.get("orderDetailHeader");return n.each(i,function(){this.get("isDeleteBackOrderChecked")&&t.push({SolLineSeq:this.get("SolLineSeq")})}),this.set("isRequestingDeleteSelectedBackorder",!0),n.cv.css.orders.saveOrderLineDeleteBackOrderChanges({_objectKey:r._objectKey,changes:t}).done(function(t){t.data==="True"?n.cv.util.notify(l.viewModel,l.options.productsDeleteBackOrderSuccess,n.cv.css.messageTypes.success):n.cv.util.notify(l.viewModel,l.options.productsDeleteBackOrderError,n.cv.css.messageTypes.error)}).fail(function(){n.cv.util.notify(l.viewModel,l.options.productsDeleteBackOrderError,n.cv.css.messageTypes.error)}).always(function(){a.set("isRequestingDeleteSelectedBackorder",!1)})},backToResults:function(){var i=this,t;i._onReturnItemsClick(!1);t=n.cv.util.queryStringValue("R");t&&t.toLowerCase()!=="account.aspx"?n.cv.util.redirect(t,{},!1):history.back()},goBackToResults:function(){var i=n.cv.util.queryStringValue("R");i==null?(this.get("isOrderReceiptingUpdated")===!0&&(this.updateSearchResult(),this.set("isOrderReceiptingUpdated",!1)),this.set("showingSearch",!0),this.set("showingResults",l.isSearchResultsHidden()===!1),this.set("showingOrderDetails",!1),this.set("showQuoteConvert",!1),this.hideInvoiceReprint(),this.set("orderDetail",{}),this.set("mode",t),this.get("dataCount")===0&&this.searchInvoiceOrNumber()):i.toLowerCase()=="account.aspx"?history.back():n.cv.util.redirect(i,{},!1)},showInvoiceReprint:function(){var t=this,i;(t.get("showingOrderDetails")||t.get("hasInvoiceReprintOrders"))&&(t.set("showingInvoiceReprint",!0),i=t.get("reprintInvoiceOverlayId"),n.cv.util.isNullOrWhitespace(l.options.reprintInvoiceOverlayId)?t.set("showingInvoiceReprint",!1):n.fancybox.open({href:"#"+l.options.reprintInvoiceOverlayId,afterShow:function(){n.fancybox.update();kendo.init(n("#"+i))}}))},hideInvoiceReprint:function(){var t=this,i;n.fancybox.close();t.set("showingInvoiceReprint",!1);i=t.get("orderSelectedForSingleInvoiceReprint");n.cv.util.hasValue(i)&&(i.set("requestInvoiceReprint",!1),t.set("orderSelectedForSingleInvoiceReprint",null))},processInvoiceReprint:function(){var n=this;n.get("showingOrderDetails")?n.reprintSingleInvoice():(n.set("orderSelectedForSingleInvoiceReprint",null),n.requestSelectedInvoice())},testRegEx:function(t){var i=this,r=i.get("reprintInvoiceContact");return n.cv.util.testRegEx(t,r,!1)},isReprintFaxOrEmailValid:function(){return this.isReprintValidFax()||this.isReprintValidEmail()},isReprintValidFax:function(){var n=this.get("reprintInvoiceContact");return n=n.replace(/\(/g,"").replace(/\)/g,"").replace(/\s/g,""),this.set("reprintInvoiceContact",n),this.testRegEx(/^\+?[0-9]{10,}$/)},isReprintValidEmail:function(){return this.testRegEx(/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i)},_invoiceReprintOrdersChanged:function(){var i=this._getInvoiceReprintOrders(),t;this.set("hasInvoiceReprintOrders",i.length>0);this.set("hasMultipleInvoiceReprintOrders",i.length>1);t="";n.each(i,function(n,i){t+=t.length>0?", ":"";t+=i.SoOrderNo+(i.SoBoSuffix.length>0?" ":"")+i.SoBoSuffix});this.set("invoiceReprintOrderString",t)},_getInvoiceReprintOrders:function(){return _.filter(this.get("itemList"),function(n){return n.requestInvoiceReprint})},reprintSingleInvoice:function(){var t=this,i=t.get("orderDetailHeader");t.set("isRequestingReprint",!0);t.set("showInvoiceReprintValidationErrors",!0);this.isReprintFaxOrEmailValid()?t._reprintSingleInvoice({orderNo:i.SoOrderNo,suffix:i.SoBoSuffix,reprintTo:t.get("reprintInvoiceContact"),outputFormat:t.get("reprintInvoiceFileFormat"),forceOrderCreation:!0,ignoreCustomerChecks:!0,batchGroupID:"",invoiceNumber:"",expectedInvoiceNo:"",errMsg:""}
37):(n.cv.util.notify(l.viewModel,t.get("errorWithReprintFaxOrEmail"),n.cv.css.messageTypes.error,{triggerMessages:!1}),t.set("isRequestingReprint",!1))},_reprintSingleInvoice:function(t){var i=this;n.cv.css.orders.setInvoiceReprint(t).done(function(){var t,r,u=!1,f=arguments[0].data.result,e=i.get("invoiceReprintRequestSuccess").format(i.get("reprintInvoiceContact")),s;f.Success===!0?(i.hideInvoiceReprint(),n.cv.util.notify(l.viewModel,e,n.cv.css.messageTypes.success),u=!0):(s=(r=(t=f.Messages)===null||t===void 0?void 0:t[0])!==null&&r!==void 0?r:e,n.cv.util.notify(l.viewModel,s,n.cv.css.messageTypes.error));i.set("showInvoiceReprintValidationErrors",!1);i.set("isRequestingReprint",!1);i.set("triggerMessages",l.options.triggerMessages);u&&l.trigger(o)}).fail(function(){n.cv.util.notify(l.viewModel,i.get("errorRequestingReprint"),n.cv.css.messageTypes.error);i.set("showInvoiceReprintValidationErrors",!1);i.set("isRequestingReprint",!1)})},getProductParams:function(t,i){var r={};return r.productCode=i&&n.cv.util.hasValue(t.Product)&&t.Product.length>0&&this.isOrderIntegrated()?t.Product[0].ProductCode:t.StockCode,r.quantity=t.OrderedQty,r.costCentre=t.CostCentreCode,r.notes=t.ExtendedLineDescription,r.noteIsExtendedLineDescription=!0,r.uom=t.SolStkUnitDesc,r},copyToCurrentOrder:function(){var t=this,r=_.filter(this.get("orderDetailLines"),function(n){return n.StockCode.length>0&&n.OrderedQty>0&&n.LineType!="SC"&&!n.IsCustomerQuoteProductOnly}),i="",u=[],o=this.get("clearExistingMessages"),f=[],e=0;t.set("isCopyingToCurrentOrder",!0);r.length>0?(n.each(r,function(n,i){f.push(t.getProductParams(i,t.get("isLiveSearch")))}),n.cv.css.orders.addToCurrentOrderBulk({batchData:f,triggerGetLines:!1}).done(function(f){n.each(r,function(n,t){var r=f.data[n];f.errorMessage[n]==null&&r!=null&&r.editOrderOk===!0?(i=i.length==0?t.StockCode:i+", "+t.StockCode,e++):f.errorMessage[n]!=null?u.push({productCode:t.StockCode,errorMessage:f.errorMessage[n]}):r!=null&&r.message!=""&&u.push({productCode:t.StockCode,errorMessage:r.message})});l.trigger(s,{lines:r});i.length>0&&n.cv.util.setMessage.apply(l.viewModel,[t.get("textProductsAddedMessage").format(e,i),n.cv.css.messageTypes.success]);u.length>0&&(t.set("clearExistingMessages",!1),n.each(u,function(i,r){n.cv.util.setMessage.apply(l.viewModel,[t.get("
37copyProductErrorMessage").format(r.productCode,r.errorMessage),n.cv.css.messageTypes.error])}),t.set("clearExistingMessages",o));t.set("isCopyingToCurrentOrder",!1)}).fail(function(){n.cv.util.setMessage.apply(l.viewModel,[t.get("errorCopyingProducts"),n.cv.css.messageTypes.error]);t.set("isCopyingToCurrentOrder",!1)})):(t.set("isCopyingToCurrentOrder",!1),n.cv.util.setMessage.apply(l.viewModel,[t.get("noLinesToCopy"),n.cv.css.messageTypes.info]))},backToStampOrders:function(){var t=n.cv.util.queryStringValue("r");n.cv.util.redirect(t,null,!1)},showReceiptingColumn:function(){var n=this,t=n.get("orderStatusToSearch"),i=_.find(n.get("showReceiptingStatuses"),function(n){return n.value===t});return i?!0:!1},hasExclusivePromotionCodes:function(){var n=this;return n.hasPromotionCodeType(!1)&&!n.isOrderIntegrated()},hasInclusivePromotionCodes:function(){return this.hasPromotionCodeType(!0)},hasPromotionCodeType:function(n){return this.hasPromotionCodes()&&_.some(this.getPromoCodesOfType(n))},hasPromotionCodes:function(){var t=this.get("orderDetailHeader.PromotionalCodes");return n.cv.util.hasValue(t,"[0]")},getPromoCodesOfType:function(t){return this.hasPromotionCodes()?n.grep(this.get("orderDetailHeader.PromotionalCodes"),function(n){return n.IsInclusive===t}):[]},promotionalDiscountAmountExGst:function(){var n=this.get("orderDetailHeader")?this.promotionalDiscountTotal(!1,!0):0;return kendo.toString(n,"c")},promotionalDiscountAmountIncGst:function(){var n=this.get("orderDetailHeader")?this.promotionalDiscountTotal(!0,!1):0;return kendo.toString(n,"c")},promotionalDiscountTotal:function(t,i){var u=this,r=0,f=u.getPromoCodesOfType(t);return n.each(f,function(t,f){var o=n.grep(u.get("orderDetailHeader.PromotionalCodeAmounts"),function(n){return n.PromotionCode===f.PromotionCode}),e;o.length>0&&(e=o[0],r+=e.TotalAmount,i&&(r-=e.TotalAmountTax))}),r},navigateToAccountSelect:function(){n.cv.util.navigateToPageWithRedirectOption(l.options.accountSelectPageUrl,!0)},isReturnsMode:!1,showUnreturnableItems:!0,orderUnreturnable:!1,orderUnreturnableMessage:"",isProcessingReturnSelected:!1,isProcessingReturnAll:!1,isProcessingReturn:function(){return this.get("isProcessingReturnSelected")||this.get("isProcessingReturnAll")},returnItemsButtonLabel:l.options.returnItemsButtonLabel,hideUnreturnableItemsButtonLabel:l.options.hideUnreturnableItemsButtonLabel,_onReturnItemsClick:function(n){var t=this;t.set("isReturnsMode",n);t.set("returnItemsButtonLabel",n?l.options.hideReturnsButtonLabel:l.options.returnItemsButtonLabel);t.set("returnOptionsAvailable",n);t._showHideUnReturnableItemsButton();t.showUnreturnableItems===!1&&t.onHideUnreturnableItemsClick()},onReturnItemsClick:function(){var n=this,t=!n.get("isReturnsMode");n._onReturnItemsClick(t)},onHideUnreturnableItemsClick:function(){var n=this,t=!n.showUnreturnableItems;n.set("showUnreturnableItems",t);n.set("hideUnreturnableItemsButtonLabel",t?l.options.hideUnreturnableItemsButtonLabel:l.options.showUnreturnableItemsButtonLabel)},onReturnSelectedItemsClick:function(){var t=this,i,r;t.set("isProcessingReturnSelected",!0);i=t._validateLinesForReturn();i.allValid?(r={returnOrderInfo:t._returnOrderInfo()},n.cv.css.returns.processReturn(r).done(function(i){var r=i.data;n.cv.util.hasValue(r)&&r.Success&&n.cv.util.hasContent(r.Value)?n.cv.util.redirect(l.options.submitReturnUrl,{sq:r.Value},!1):(n.cv.util.notify(t,r.Messages[0],n.cv.css.messageTypes.error,{clearExisting:!0}),t.set("isProcessingReturnSelected",!1))})):(n.cv.util.notify(t,i.message,n.cv.css.messageTypes.error,{clearExisting:!0}),t.set("isProcessingReturnSelected",!1))},onReturnAllItemsClick:function(){var r=this,t=this,i;if(t.set("isProcessingReturnAll",!0),n.cv.util.hasValue(this._returnableLines(),"[0]")===!1){n.cv.util.notify(t,l.options.noProductsToReturnMessage,n.cv.css.messageTypes.error,{clearExisting:!0});t.set("isProcessingReturnAll",!1);return}_.each(t._returnableLines(),function(n){if(l.options.enableOnlineReceipting){var t=kendo.parseFloat(n.ReceiptQty);t===null?n.set("returnQty",n.ShippedQty):n.set("returnQty",t)}else n.set("returnQty",n.ShippedQty)});i={returnOrderInfo:t._returnOrderInfo()};n.cv.css.returns.processReturn(i).done(function(i){var u=i.data;n.cv.util.hasValue(u)&&u.Success&&n.cv.util.hasContent(u.Value)?(n.cv.util.clearNotifications(r),n.cv.util.redirect(l.options.submitReturnUrl,{sq:u.Value},!1)):(n.cv.util.notify(t,u.Messages[0],n.cv.css.messageTypes.error,{clearExisting:!0}),t.set("isProcessingReturnAll",!1))})},_returnOrderInfo:function(){var t=this,n=t.get("orderDetailHeader");return{SoOrderNo:n.SoOrderNo,SoBoSuffix:n.SoBoSuffix,SoCustCode:n.SoCustCode,SoActualDeliveryDate:n.SoActualDeliveryDate,SoWhseCode:n.SoWhseCode,SoInvoiceNo:n.SoInvoiceNo,SoConsignmentNote:n.ConsignmentNote,SoDelAddr1:n.SoDelAddr1,SoDelAddr2:n.SoDelAddr2,SoDelAddr3:n.SoDelAddr3,SoDelAddr4:n.SoDelAddr4,SoDelAddr5:n.SoDelAddr5,SoDelAddr6:n.SoDelAddr6,SoDelAddr7:n.SoDelAddr7,SoDelSuburb:n.SoDelSuburb,SoDelPostcode:n.SoDelPostcode,SoDelState:n.SoDelState,SoDelPhone:n.SoDelPhone,ReturnOrderLineInfos:t._returnOrderLineInfo()}},_returnOrderLineInfo:function(){var n=this;return _.map(n._linesForReturn(),function(n){return{SolLineSeq:n.SolLineSeq,StockCode:n.StockCode,ReturnQty:n.returnQty,ItemPrice:n.ItemPrice,SolDiscRate:n.SolDiscRate,CostCentreCode:n.CostCentreCode}})},_linesForReturn:function(){return _.filter(this._returnableLines(),function(n){return n.returnQty>0})},_returnableLines:function(){return _.filter(this._orderDetailLinesWithoutCharges(),function(n){return n.LineType!=="DN"&&n.lineUnreturnable===!1})}
37,_validateLinesForReturn:function(){var t={allValid:!0,message:""},i;return n.cv.util.hasValue(this._returnableLines(),"[0]")===!1?(t.allValid=!1,t.message=l.options.noProductsToReturnMessage,t):(i=this._linesForReturn(),n.cv.util.hasValue(i,"[0]")===!1)?(t.allValid=!1,t.message=l.options.selectProductToReturnMessage,t):(_.each(i,function(i){var r="",u;return l.options.enableOnlineReceipting?(u=kendo.parseFloat(i.ReceiptQty),u===null?i.returnQty>i.ShippedQty&&(r=l.options.returnQtyExceedsShippedQtyMessage):i.returnQty>u&&(r=l.options.returnQtyExceedsReceiptQtyMessage)):i.returnQty>i.ShippedQty&&(r=l.options.returnQtyExceedsShippedQtyMessage),i.set("returnQtyErrorMessage",r),t.allValid&&n.cv.util.hasContent(r)&&(t.allValid=!1,t.message=l.options.errorsInSomeOfTheLinesMessage),!0}),t)},hideOptionsColumn:function(){return this._showOptionsColumn()===!1},_showOptionsColumn:function(){var n=this,t=n.get("orderNoOptionsAvailable")===!1,i=n.get("returnOptionsAvailable");return t?!0:i?!0:!1},showHideUnReturnableItemsButton:!1,_showHideUnReturnableItemsButton:function(){var n=this;n.set("showHideUnReturnableItemsButton",n.isReturnsMode&&n._returnableLines().length>0&&n._returnableLines().length!==n.get("orderDetailLines").length)},orderStatusSelected:function(t){var r,u,e,i;if(!n.cv.util.isNullOrWhitespace(l.options.orderStatusesDefaultStartDays)&&(r=t.dataItem,r)&&(u=r.value,!n.cv.util.isNullOrWhitespace(u)))for(var o=this,s=l.options.orderStatusesDefaultStartDays.split(","),f=0;f<s.length;){if(e=s[f],e.indexOf(":")>-1&&(i=e.split(":"),i.length===2&&i[0]===u)){o.set("startOrderDate",new Date((new Date).setDate((new Date).getDate()-parseInt(i[1]))));o.set("endOrderDate",new Date);break}f++}}})),v&&a.set("searchOnLoad",!1),a.bind("change",function(t){var i=a;t.field=="startOrderDate"&&a.defaultStartOrderDate();t.field=="endOrderDate"&&a.defaultEndOrderDate();t.field==="startDeliveryDate"&&n.cv.util.hasValue(i.get("startDeliveryDate"))&&n.cv.util.hasValue(i.get("endDeliveryDate"))&&Date.parse(i.get("startDeliveryDate"))>Date.parse(i.get("endDeliveryDate"))&&(i.set("startDeliveryDate",null),n.cv.util.setMessage.apply(i,[i.get("deliveryDateValidationMessage"),n.cv.css.messageTypes.warning]));(t.field=="showingSearch"||t.field=="showingResults"||t.field=="showingOrderDetails"||t.field=="showingInvoiceReprint")&&n.cv.util.clearMessage.apply(l.viewModel);i.consolidateSearchOptions&&i.isInvoiceOrOrderNumberProvided()&&(t.field==="startOrderDate"||t.field==="endOrderDate"||t.field==="orderStatusOptions"||t.field==="reference"||i.get("isLiveSearch")===!1&&t.field==="productSearch")&&(i.set("invoiceOrOrderNumber",""),n.cv.util.setMessage.apply(i,[i.get("invoiceOrNumberClearedMessage"),n.cv.css.messageTypes.info]))}),l._extend&&l._extend.call(l,a,l),a}};n.cv.ui.widget(l)})(jQuery);
38(function(n){var t="NO_SELECTION",i="SINGLE_SELECTION",u="MULTIPLE_SELECTION",r="NO_SELECTION_SINGLE_SELECTION_FALLBACK",f="approversBound",e={name:"orderApproval",extend:"mvvmwidget",options:{modeBindings:{MPA:t,MPANG:t,MPAS:t,H:t,SPA:r,HC:t,HAL:t,MPU:u,ADV:i,SPU:i,SPUL:i},doNotClearExistingApprovals:!1,multiSelectThrottleTimeout:1e3,noApproverFound:"Your order cannot be submitted - there is no approver with the authority for an order of this value.",genericErrorSettingApprover:"Unable to set the approver for this order.",singleApproverAutoSelected:"The approver for this order has been automatically selected.",noSelectionAutoSelected:"The approver(s) for this order have been automatically selected.",groupAutoSelectMessage:"The approval group for this order has been automatically selected.",selectedApproverSavedMessage:"Selected Approver has been saved",isForDialog:!1,orderObjectKey:""},extendEvents:[f],initialise:function(){var n=this,i=n.viewModel,t=n.options;t.isForDialog===!1&&n._fetchApprovalOptions();n._setApproversThrottled=_.debounce(function(){n._setApprovers(i.get("selectedApprovers"))},t.multiSelectThrottleTimeout)},_triggerSimpleError:function(t){n.cv.css.trigger(n.cv.css.eventnames.approvalError,{errorMessage:t})},_fetchApprovalOptions:function(){var e=this,u=e.viewModel,o=e.options;return e._reset(),u.set("isProcessing",!0),n.cv.css.orderApproval.getApproverOptions({_objectKey:u.get("orderObjectKey"),doNotClearExisting:o.isForDialog===!0||o.doNotDeleteExistingApprovals}).done(function(s){var c=s.data;if(c){var y=c.WillRequireApprovalIfSubmitted,p=c.CanBeApproved,w=c.ApprovalType,h=c.ApproverOptions,l=c.ApprovalGroups,a=c.ErrorMessage,v=h.length===1;e._augmentApprovalOptions(h);u.set("isApprovalRequired",y||!1);
38y===!0&&p===!1?(u.set("errorMessage",o.noApproverFound),e._triggerSimpleError(o.noApproverFound)):n.cv.util.hasValue(a)?(u.set("errorMessage",a),e._triggerSimpleError(a)):(u.set("approvalType",w),n.cv.util.hasValue(h)&&h.length>0?(v&&(u.set("approverAutoSelected",!0),u.set("autoSelectedMessage",o.singleApproverAutoSelected),e._setApprovers([h[0].ID])),(u.mode()===t||u.mode()===r&&v)&&(u.set("approverAutoSelected",!0),u.set("autoSelectedMessage",o.noSelectionAutoSelected),e._setApprovers(_.map(h,function(n){return n.ID}))),v||u.mode()!==i&&u.mode()!==r||h.unshift({ID:"",displayValue:"Please Select ..",FirstName:"",Surname:"",UserId:""}),u.set("approvalOptions",h),e.trigger(f,e)):n.cv.util.hasValue(l)&&l.length>0&&(u.set("approvalGroups",l),u.set("approverAutoSelected",!0),u.set("autoSelectedMessage",o.groupAutoSelectMessage),e._setApprovers(_.map(l,function(n){return n.GroupID}))))}u.set("isProcessing",!1)}).fail(function(n){e._handleFailedDynamicServiceResponse(n)})},_handleFailedDynamicServiceResponse:function(t){var i=this,u=i.options,f=i.viewModel,r;try{t=JSON.parse(t.responseText);r=u.errorRetrievingResults+": "+t.errorMessage;n.cv.css.trigger(n.cv.css.eventnames.approvalError,{message:r})}catch(e){}f.set("isProcessing",!1);i._isBinding=!1},_augmentApprovalOptions:function(t){return n.cv.util.hasValue(t)?_.each(t,function(n){n.displayValue=n.FirstName+" "+n.Surname+" ("+n.UserId+")";n.isSelected=!1}):t},_setApprovers:function(t){var i=this,f=i.options,r=i.viewModel,u=!0,e={};n.cv.util.hasValue(t)&&(t.length===0||t[0]==="")&&(t=[],u=!1);r.set("isSaving",!0);n.cv.css.orderApproval.setApproverOptions({_objectKey:r.get("orderObjectKey"),approverOrGroupIds:t.join(",")}).done(function(t){var o=t.data,s=f.genericErrorSettingApprover;if(o&&o.IsSetOk){n.cv.css.trigger(n.cv.css.eventnames.approvalConfirmed);i.options.isForDialog===!0&&n.cv.util.notify({triggerMessages:!0,source:"order-approval-selection",message:i.options.selectedApproverSavedMessage,type:n.cv.css.messageTypes.info,clearExisting:!0});return}if(u===!1){n.when(e).done(function(){n.cv.css.trigger(n.cv.css.eventnames.approvalNotSpecified)});return}o.Message&&o.Message.length>0&&(s=o.Message);n.cv.util.notify(r,s,n.cv.css.messageTypes.error);n.cv.css.trigger(n.cv.css.eventnames.approvalError,{message:s})}).fail(function(n){i._handleFailedDynamicServiceResponse(n)}).always(function(){r.set("isSaving",!1);n.cv.css.trigger(n.cv.css.eventnames.approversSelected)})},_setApproversThrottled:n.noop,_reset:function(){var t=this,n=t.viewModel;n.set("approvalType","");n.set("approvalOptions",[]);n.set("approvalGroups",[]);n.set("selectedApprovers",[]);n.set("isApprovalRequired",!1);n.set("approverAutoSelected",!1);n.set("autoSelectedMessage","");n.set("singleSelectedApprover","");n.set("errorMessage","")},setupForOrder:function(t){var i=this.viewModel;return this._reset(),i.set("orderObjectKey",t._objectKey),this._fetchApprovalOptions().done(function(r){var u=r.data,f,o,e;u.WillRequireApprovalIfSubmitted==!0&&(i.set("isApprovalRequired",!0),u.ApproverOptions&&u.ApproverOptions.length>0&&(n.cv.util.hasContent(t.ApproveBy)&&(f=_.find(u.ApproverOptions,function(n){return n.UserId.toLowerCase()==t.ApproveBy.toLowerCase()}),f&&i.set("singleSelectedApprover",f.ID)),t.ApprovalRecords&&t.ApprovalRecords.length>0&&(o=i.get("approvalOptions"),e=[],_.each(t.ApprovalRecords,function(t){if(n.cv.util.hasContent(t.ApprovalBy)){var i=_.find(o,function(n){return n.UserId.toLowerCase()==t.ApprovalBy.toLowerCase()});i&&(i.set("isSelected",!0),e.push(i.ID))}}),i.set("selectedApprovers",e))))})},_getViewModel:function(){var f=this,e=f.options;return kendo.observable(n.extend({},f.options,{isProcessing:!1,approvalType:"",isApprovalRequired:!1,approvalOptions:[],approvalGroups:[],selectedApprovers:[],singleSelectedApprover:"",approverAutoSelected:!1,autoSelectedMessage:"",errorMessage:"",isSaving:!1,mode:function(){var t=e.modeBindings[this.get("approvalType")];return n.cv.util.hasValue(t)===!1?null:t},selectApprover:function(t){var r=this,e=t.data,i=r.get("selectedApprovers");n.cv.css.trigger(n.cv.css.eventnames.selectingApprovers);f.options.isForDialog===!1&&r.set("isSaving",!0);r.mode()===u?(e.isSelected===!0?i.push(e.ID):i=_.without(i,e.ID),r.set("selectedApprovers",i),f.options.isForDialog===!1&&f._setApproversThrottled(i)):(i=[],i.push(this.get("singleSelectedApprover")),r.set("selectedApprovers",i),f.options.isForDialog===!1&&f._setApprovers(i))},isVisible:function(){return this.get("isApprovalRequired")===!0||this.get("errorMessage")},showNoSelectionSection:function(){var n=this.get("approverAutoSelected")===!0;return n?!0:this.mode()===t?!0:this.shouldDisplayGroups()===!0?!0:!1},showSingleSelectionSection:function(){return this.showNoSelectionSection()===!1&&(this.mode()===i||this.mode()===r)},showMultipleSelectionSection:function(){return this.showNoSelectionSection()===!1&&this.mode()===u},shouldDisplayOptions:function(){var n=this.get("approvalOptions");return n&&n.length>0},shouldDisplayGroups:function(){var n=this.get("approvalGroups");return n&&n.length>0},onCloseApproverSelect:function(){var t=this;t.get("isProcessing")||(t.hasApproverSelected()?(t.get("approverAutoSelected")===!1&&f._setApprovers(t.get("selectedApprovers")),n.fancybox.close()):t.set("errorMessage","Please select an approver"))},onCancelApproverSelect:function(){n.fancybox.close()},hasApproverSelected:function(){var t=this,n=t.get("selectedApprovers");return n&&n.length>0},enableCancelButton:function(){var n=this.get("isSaving");return n==!1},enableOkButton:function(){var n=this.hasApproverSelected(),t=this.get("isSaving");return this.get("isProcessing")==!1&&t==!1&&n}}))}};n.cv.ui.widget(e)})(jQuery);
39(function(n){var t="orders",i="lines",r="listUpdated",u="orderLinesRetrieved",f="noOrderLinesRetrieved",e="showingOrder",o="linesCopiedToCart",s={name:"ordersOnHold",extend:"mvvmwidget",options:{dataSource:[],autoBind:!0,popupWindowId:"",orderFilter:"",holdOrderRedirectUrl:"OrdersOnHold.aspx",ordersPageUrl:"",triggerMessages:!0,isLiveSearch:!1,clearWidgetMessages:!0,recordsPerPage:10,noResultsMessage:"Your search returned no results",errorRetrievingResults:"There was an error retrieving your search results at this time, please try again later",deleteOrderRequestSuccess:"The selected order has been successfully deleted",deleteOrderRequestError:"There was an error deleting the order at this time, please try again later",productsAddedMessage:"{0} products have been successfully copied to your current order",errorCopyingProducts:"There was an error copying your products at this time, please try again later",noLinesToCopy:"There are no lines with quantities to copy to your current order",orderCannotBeFound:"Your requested order cannot be found",orderContainsNoLines:"This order has no lines to display",resumeOrderRequestSuccess:"The selected order has been successfully resumed",resumeOrderRequestError:"There was an error resuming the order at this time, please try again later",copyProductErrorMessage:"{0} : {1}",switchOrderOnHoldMessage:"You have opted to switch to another order, so your existing order is now on hold.",stampsWidgetContainer:".orders-approval-line-product-info-sub"},extendEvents:[r,u,f,e,o],_mode:t,initialised:function(){var t=this;this.reinstateViewModelFromHistoryState()&&(t.initDataSource(),n.cv.util.isNullOrWhitespace(t.viewModel.get("orderFilter"))||t.viewModel.filterOrders());t.setupSinglePageHistoryStateHandler({displayResultList:!0},function(n){n.displayResultList&&t.viewModel.goBackToResults()})},initDataSource:function(){var t=this,r=n.cv.util.queryStringValue("order"),u,i;n.cv.util.isNullOrWhitespace(r)||t.viewModel.get("singleOrderLoaded")?(u="ordersOnHold/GetOrdersOnHold",i=n.
39cv.data.dataSource({method:u,params:t._constructOrderParamsFunction(),pageSize:t.options.recordsPerPage}),i.bind("requestEnd",t.viewModel.dataSourceBound),t.setDataSource(i)):(t.viewModel.getOrder(r,""),t.viewModel.set("singleOrderLoaded",!0))},_constructOrderParamsFunction:function(){var t=this,n=t.viewModel;return function(){var i=n.get("orderFilter"),r=n.get("sortColumn"),u=n.get("sortDirection"),t={filter:{filters:[]},sort:[{field:r,dir:u}]};return n.set("currentSort",r+" "+u),i.trim().length>0&&(t.filter.filters.push({field:"SoOrderNo",operator:"contains",value:i}),t.filter.filters.push({field:"SoCustCode",operator:"contains",value:i}),t.filter.filters.push({field:"SoHoldRef",operator:"contains",value:i})),t.filter.filters.length>1&&(t.filter.logic="or"),t}},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var s=this,c=function(){return s.dataSource?(n.each(s.dataSource.view(),function(n,t){t.index=n;t.disableView=!1;t.isShowingOrder=!1;t.isDeletingOrder=!1;t.isResumingOrder=!1;t.showOrder=function(){h.showOrder(t)};t.deleteOrder=function(){h.deleteOrder(t)};t.resumeOrder=function(){h.resumeOrder(t)}}),s.dataSource.view()):[]},h=kendo.observable(n.extend({},s.options,{mode:t,isOrdersMode:function(){return this.get("mode")===t},isLinesMode:function(){return this.get("mode")===i},invoiceOrOrderNumber:"",itemList:c(),dataCount:0,isSearchingInvoiceOrNumber:!1,isSearchingWithOptions:!1,isCopyingToCurrentOrder:!1,showingSearch:!1,showingResults:!1,showingOrderDetails:!1,showInvoiceOrNumberValidationErrors:!1,showSearchingWithOptionsValidationErrors:!1,orderDetailHeader:{},orderDetailLines:[],singleOrderLoaded:!1,isSortingOrders:!1,sortColumn:"SoOrderNo",sortDirection:"asc",dataSourceBound:function(){h.set("isSortingOrders",!1)},deleteOrder:function(t){var i=this;i.setDisableView(!0);n.cv.util.hasValue(t._objectKey)===!1&&(t=i.get("currentOrder"));t.set("isDeletingOrder",!0);n.cv.css.ordersOnHold.deleteOrder({_objectKey:t._objectKey}).done(function(r){t.set("isDeletingOrder",!1);r.data==="True"?n.cv.util.notify(i,i.deleteOrderRequestSuccess,n.cv.css.messageTypes.success):n.cv.util.notify(i,i.deleteOrderRequestError,n.cv.css.messageTypes.error);i.goBackToResults();i.dataSource.fetch()}).fail(function(){t.set("isDeletingOrder",!1);n.cv.util.notify(i,i.deleteOrderRequestError,n.cv.css.messageTypes.error)}).always(function(){i.setDisableView(!1)})},resumeOrder:function(t){var i=this;s.viewModelJson&&(s.saveViewModelJsonToCurrentHistoryState(s.viewModelJson),s.saveUiStateToCurrentHistoryState({currentPage:s.dataSource.page()}));i.setDisableView(!0);n.cv.util.hasValue(t._objectKey)===!1&&(t=i.get("currentOrder"));i.set("isResumingOrder",!0);t.set("isResumingOrder",!0);n.cv.css.getCurrentOrder().done(function(r){var u=!1;n.cv.util.hasValue(r)&&n.cv.util.hasValue(r.data)&&n.cv.util.hasValue(r.data[0])&&(u=r.data[0].ItemLineCount>0);n.cv.css.user.getCurrentUser().done(function(r){var f=n.Deferred();r&&r.data&&r.data.length>0?r.data[0].CustomerCode&&r.data[0].CustomerCode!==t.SoCustCode?f=n.cv.css.setCurrentAccount(t.SoCustCode):f.resolve(!0):f.resolve(!1);f.done(function(r){n.type(r)==="boolean"&&r||n.cv.util.hasValue(r)&&n.cv.util.hasValue(r.data)&&r.data.toLowerCase()==="true"?n.cv.css.ordersOnHold.resumeOrder({_objectKey:t._objectKey}).done(function(r){if(r.data.result.Success)n.cv.util.notify(i,i.resumeOrderRequestSuccess,n.cv.css.messageTypes.success),n.cv.util.redirectAfterNotification(s.options.ordersPageUrl,{message:i.resumeOrderRequestSuccess,messagetype:n.cv.css.messageTypes.success},!1),u&&n.cv.util.notify(i,i.switchOrderOnHoldMessage,n.cv.css.messageTypes.info);else{t.set("isResumingOrder",!1);i.set("isResumingOrder",!1);var f=i.resumeOrderRequestError;n.cv.util.hasValue(r.data.result.Messages)&&r.data.result.Messages.length>0&&(f=r.data.result.Messages.join().replace(/,/g,", "));n.cv.util.notify(i,f,n.cv.css.messageTypes.error);i.setDisableView(!1)}}).fail(function(){t.set("isResumingOrder",!1);i.set("isResumingOrder",!1);n.cv.util.notify(i,i.resumeOrderRequestError,n.cv.css.messageTypes.error);i.setDisableView(!1)}):(t.set("isResumingOrder",!1),i.set("isResumingOrder",!1),n.cv.util.notify(i,i.resumeOrderRequestError,n.cv.css.messageTypes.error),i.setDisableView(!1))})})})},updateViewModelFromDataSource:function(){var t=c(),i,u;this.set("itemList",t);this.set("dataCount",s.dataSource.data().length);i=_.find(h.itemList,function(n){return n.IsOrderStatusComplete===!0});i?h.set("canSelectOrders",!0):h.set("canSelectOrders",!1);s.trigger(r,{viewCount:t.length,dataCount:this.get("dataCount")}
39);this.get("dataCount")>0?(u=n.cv.util.queryStringValue("order"),n.cv.util.isNullOrWhitespace(u)||this.get("singleOrderLoaded")?(this.set("showingSearch",!0),this.set("showingResults",!0),this.setSearchProperties()):this.set("showingOrderDetails",!0)):(this.get("isSearchingInvoiceOrNumber")||this.get("isSearchingWithOptions"))&&n.cv.util.setMessage.apply(s.viewModel,[this.get("noResultsMessage"),n.cv.css.messageTypes.info]);this.set("isSearchingInvoiceOrNumber",!1);this.set("isSearchingWithOptions",!1)},setSearchProperties:function(n){this.set("showInvoiceOrNumberValidationErrors",!1);this.set("showSearchingWithOptionsValidationErrors",!1);n!=undefined&&this.set(n,!0)},getOrder:function(t,i){var r=this;n.cv.util.clearNotifications(r);r.set("showingResults",!1);r.set("isSearchingInvoiceOrNumber",!0);r.set("invoiceOrOrderNumber",t+i);n.cv.css.getOrder({orderNo:t+i}).done(function(t){t.data&&t.data.length>0?r.showOrder(new kendo.data.ObservableObject(t.data[0])):n.cv.util.notify(s.viewModel,r.get("orderCannotBeFound"),n.cv.css.messageTypes.error);r.set("isSearchingInvoiceOrNumber",!1)}).fail(function(){n.cv.util.notify(s.viewModel,r.get("errorRetrievingResults"),n.cv.css.messageTypes.error);r.set("isSearchingInvoiceOrNumber",!1)})},sortByColumn:function(t,i,r){var u=this;n.cv.util.sortByColumn(u,t,i,r)},filterOrders:function(){var t=this.get("dataSource"),n;this.get("invoiceOrOrderNumber").length>0?this.set("isSearchingInvoiceOrNumber",!1):this.set("isSearchingInvoiceOrNumber",!0);t.page(1);n=["dataSource","itemList","orderDetailLines","orderDetailHeader","orderDetail","currentOrder"];s.viewModelJson=s.getViewModelJson(n)},clearOrderFilter:function(){this.set("orderFilter","");this.filterOrders()},setDisableView:function(t){var i=this;i.dataSource&&n.each(i.dataSource.view(),function(n,i){i.set("disableView",t)})},showOrder:function(t){var r=this;s.addNewUiHistoryState({displayResultList:!1});r.setDisableView(!0);t.set("OrderNo","TBA");r.set("currentOrder",t);t.set("isShowingOrder",!0);n.cv.css.ordersOnHold.getOrderLines({_objectKey:t._objectKey}).done(function(o){if(o.data&&o.data.length>0){s.trigger(u,{lines:o.data});r.set("orderDetailHeader",t);r.set("showingSearch",!1);r.set("showingResults",!1);r.set("showingOrderDetails",!0);r.set("mode",i);_.each(o.data,function(n,t){n.index=t;r.set("orderNoOptionsAvailable",!1)});var h=new kendo.data.ObservableArray(o.data);r.set("orderDetailLines",h);n.cv.css.trigger(n.cv.css.eventnames.ordersOnHoldLinesRendered,{stampsWidgetContainer:s.options.stampsWidgetContainer,lines:h,InsertToLines:!0});n.cv.css.localSetSelectedOrder(t);n.cv.css.localSetSelectedOrderLines(o.data);n.cv.util.bindKendoWidgets(n(s.element[0]));n.cv.css.trigger(n.cv.css.eventnames.viewApprovalOrder,t);n.cv.css.trigger(n.cv.css.eventnames.showOrderSummary);n.cv.util.scroll(0);s.trigger(e)}else s.trigger(f),n.cv.util.notify(s.viewModel,r.get("orderContainsNoLines"),n.cv.css.messageTypes.error);r.setDisableView(!1);t.set("isShowingOrder",!1)})},backToResults:function(){var t=n.cv.util.queryStringValue("R");t==null||t.toLowerCase()=="account.aspx"?history.back():n.cv.util.redirect(t,{},!1)},goBackToResults:function(){var i=n.cv.util.queryStringValue("R");i==null?(this.get("dataCount")===0&&s.initDataSource(),this.set("showingSearch",!0),this.set("showingResults",!0),this.set("showingOrderDetails",!1),this.set("orderDetail",{}),this.set("mode",t),n.cv.css.trigger(n.cv.css.eventnames.hideOrderSummary)):i.toLowerCase()=="account.aspx"?history.back():n.cv.util.redirect(i,{},!1)},getProductParams:function(n,t){var i={};return i.productCode=t?n.ProductCode:n.StockCode,i.quantity=n.OrderedQty,i.costCentre=n.CostCentreCode,i.notes=n.ExtendedLineDescription,i.noteIsExtendedLineDescription=!0,i.stampData=n.MyStampsApiData,i.myStampsApiImage=n.MyStampsApiImage,i.extendedAttributes=n.ExtendedAttributes,i.uom=n.SolStkUnitDesc,i},copyToCurrentOrder:function(){var t=this,r=_.filter(this.get("orderDetailLines"),function(n){return n.StockCode.length>0&&n.OrderedQty>0&&n.LineType!="SC"&&!n.IsCustomerQuoteProductOnly}),i="",u=[],h=this.get("clearExistingMessages"),f=[],e=0;t.set("isCopyingToCurrentOrder",!0);r.length>
390?(n.each(r,function(n,i){f.push(t.getProductParams(i,t.get("isLiveSearch")))}),n.cv.css.orders.addToCurrentOrderBulk({batchData:f,triggerGetLines:!1}).done(function(f){n.each(r,function(n,t){var r=f.data[n];f.errorMessage[n]==null&&r!=null&&r.editOrderOk===!0?(i=i.length==0?t.StockCode:i+", "+t.StockCode,e++):f.errorMessage[n]!=null?u.push({productCode:t.StockCode,errorMessage:f.errorMessage[n]}):r!=null&&r.message!=""&&u.push({productCode:t.StockCode,errorMessage:r.message})});s.trigger(o,{lines:r});i.length>0&&n.cv.util.setMessage.apply(s.viewModel,[t.get("productsAddedMessage").format(e,i),n.cv.css.messageTypes.success]);u.length>0&&(t.set("clearExistingMessages",!1),n.each(u,function(i,r){n.cv.util.setMessage.apply(s.viewModel,[t.get("copyProductErrorMessage").format(r.productCode,r.errorMessage),n.cv.css.messageTypes.error])}),t.set("clearExistingMessages",h));t.set("isCopyingToCurrentOrder",!1)}).fail(function(){n.cv.util.setMessage.apply(s.viewModel,[t.get("errorCopyingProducts"),n.cv.css.messageTypes.error]);t.set("isCopyingToCurrentOrder",!1)})):(t.set("isCopyingToCurrentOrder",!1),n.cv.util.setMessage.apply(s.viewModel,[t.get("noLinesToCopy"),n.cv.css.messageTypes.info]))}}));return h.bind("change",function(t){(t.field=="showingSearch"||t.field=="showingResults"||t.field=="showingOrderDetails")&&n.cv.util.clearMessage.apply(s.viewModel)}),h}};n.cv.ui.widget(s)})(jQuery);
40(function(n){var t="beforeCopy",i="afterCopy",r={name:"copyFavourites",extend:"mvvmwidget",extendEvents:[t,i],options:{copyTypeControlId:"copyType",fromControlId:"from",toControlId:"to",isSiteAdmin:!1},viewModelBound:function(){var n=this},_getViewModel:function(){var u=this,r=kendo.observable(n.extend(u.options,{copyType:"User",from:"",to:"",showValidationErrors:!1,fromIsInvalid:function(){return r.get("showValidationErrors")?r.get("from").length==0:!1},toIsInvalid:function(){return r.get("showValidationErrors")?r.get("to").length==0:!1},doCopy:function(f){if(f.preventDefault(),r.set("showValidationErrors",!0),!r._isFormInvalid()){u.trigger(t);var e=n.cv.css.copyFavourites.doCopy({copyType:r.get("copyType"),from:r.get("from"),to:r.get("to")});n.when(e).done(function(t){t.data.errorMessage?r._showMessage({Type:n.cv.css.messageTypes.error,Message:t.data.errorMessage},!0):r._showMessage({Type:n.cv.css.messageTypes.success,Message:"Favourites successfully copied."},!0);u.trigger(i)})}},_showMessage:function(t,i){var r=n.cv.css.trigger(n.cv.css.eventnames.message,{type:t.Type,message:t.Message,source:u.name,clearExisting:i});r.handlerCount==0&&alert(t.Message)},_clearMessages:function(){n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:u.name,clearExisting:!0})},_isFormInvalid:function(){return r._isFormValid()==!1},_isFormValid:function(){return r.fromIsInvalid()==!1&&r.toIsInvalid()==!1}}));return r}};n.cv.ui.widget(r)})(jQuery);
41var ScheduleStatus,OrderShareType;(function(n){n[n.UnknownStatus=0]="UnknownStatus";n[n.Scheduled=1]="Scheduled";n[n.OverBudget=2]="OverBudget";n[n.ScheduleEnded=3]="ScheduleEnded";n[n.Invalid=4]="Invalid";n[n.Disabled=5]="Disabled";n[n.RequiresApproval=6]="RequiresApproval";n[n.SelectApprover=7]="SelectApprover";n[n.Deleted=8]="Deleted";n[n.Rejected=9]="Rejected"})(ScheduleStatus||(ScheduleStatus={})),function(n){n[n.Personal=1]="Personal";n[n.Shared=2]="Shared"}(OrderShareType||(OrderShareType={})),function(n){var t="orders",i="lines",r="templateOrdersUpdated",u="beforeViewLines",f="afterViewLines",e="beforeBack",o="afterBack",s="beforePrintOpened",h="beforeAddToTemplateOrder",c="afterAddToTemplateOrder",l="beforeReprice",a="afterReprice",v="beforeDeleteOrder",y="afterDeleteOrder",p="beforeRemoveAllLines",w="afterRemoveAllLines",b="beforeUpdateTemplateOrder",k="afterUpdateTemplateOrder",d="beforeAddLinesToCart",g="afterAddLinesToCart",nt={name:"templateOrders",extend:"mvvmwidget",options:{dataSource:[],autoBind:!0,triggerMessages:!0,recordsPerPage:10,clearWidgetMessages:!0,allowDecimals:!1,canEditCurrentOrder:!1,allowCreationOfCompanyOrderTemplates:!1,allowCreationOfAllowTemplateBillToOrderTemplates:!1,allowCreationOfRoleOrderTemplates:!1,usePleaseSelectForTemplateNames:!1,enableImmediateTemplateReprice:!1,disableLivePricesPrefetchIfTemplateRepriceIsOff:!1,hasOrderLines:!1,isMobile:!1,autoScrollToTop:!0,showCostCentreSelectList:!1,costCentres:[],scrollContainer:"body",
41scrollTarget:"html,body",isIgnoreMaxCount:!1,currentUserEmail:"",productSearchTake:15,enableDeleteAllButton:!0,enableClearQtysButton:!0,confirmDeleteMessage:"Are you sure you want to delete the '{0}' template?",confirmDeleteAllMessage:"Are you sure you want to delete ALL templates?",deleteOrderTemplateSuccessMessage:"The '{0}' template was successfully deleted.",deleteOrderTemplateFailureMessage:"Unable to delete the '{0}' template.",immediateRepriceNotEnabledMessage:"Pricing for products on the '{0}' template may have changed. Please click the [Re-Price] button to update pricing.",repriceOrderTemplateSuccessMessage:"Pricing for the '{0}' template was successfully updated.",repriceOrderTemplateFailureMessage:"Unable to re-price the '{0}' template.",addProductSuccessMessage:"Product '{0}' has been added to the template.",addProductFailureMessage:"Unable to add product '{0}' to the template - ",addProductErrorMessage:"We're sorry. There was an error adding product '{0}' to the template. Please try again.",addProductRequiredSearchTerm:"Please enter either a search term, or a product code to add to the template.",viewOrder_LoadErrorMessage:"We're sorry. There was an error loading the '{0}' template. Please try again.",orderTemplateContainsNoLines:"The '{0}' template has no lines to display",confirmRemoveAllLinesMessage:"Are you sure you want to remove all lines from the '{0}' template?",removeAllLinesSuccessMessage:"All lines were successfully removed from the '{0}' template.",removeAllLinesFailureMessage:"Unable to remove all lines from the '{0}' template.",unsavedChangesReversedMessage:"All unsaved changes have now been reversed.",updateTemplateOrderSuccessMessage:"The '{0}' template has been successfully updated.",updateTemplateOrderFailureMessage:"We're sorry. There was an error updating the '{0}' template. Please try again.",addLinesToCartSuccessMessage:"The products from the '{0}' template have now been added to your cart.",addLinesToCartSuccessMessageNoItems:"",successMessageAndReturnMessageSpacer:"<br /><br />",noItemsAddedReturnMessage:"No items have been added to your cart.",addLinesToCartFailureMessage:"We're sorry. There was an error copying products from the '{0}' template to your cart. Please try again.",backToOrdersDoYouWantToSaveYourOrderMessage:"Your '{0}' template contains unsaved changes. Would you like to save them before returning to the Order Template List?",loadUserTemplatesFailureMessage:"We're sorry. There was an error loading eligible templates to Append or Overwrite. Please try again.",templateNameInvalidMessage:"The Template Name is either missing or invalid. Please correct and try again.",selectedTemplateInvalidMessage:"The template you selected is either missing or invalid. Please try another.",createUserTemplatesFailureMessage:"Unable to save the template. {0}",confirmClearQuantitiesMessage:"Are you sure you want to reset all line quantities to zero?",requestQuoteUrl:"/OrderComplete.aspx?type=quote",itemsResequenced:"Line sequence updated",stampsWidgetContainer:".order-template-line-product-info-sub",openPrintOrderPage:function(n,t){n&&window.open("/"+t+"&popup=1")},setQtyAutomatically:!0,defaultAddProductQuantity:1,showCostCentreEntryField:!1,confirm:function(n){return this.confirmHandlers[n.scenario](n)},confirmHandlers:{deleteOrder:function(t){var i=n.Deferred();return i.resolve(window.confirm(t.message)),i.promise()},removeAllLines:function(t){var i=n.Deferred();return i.resolve(window.confirm(t.message)),i.promise()},returnToOrderList:function(t){var i=n.Deferred();return i.resolve(window.confirm(t.message)),i.promise()},clearLineQuantities:function(t){var i=n.Deferred();return i.resolve(window.confirm(t.message)),i.promise()}},isStandingOrderMode:!1,isUserStandingOrderAdministrator:!1,standingOrderActiveStatus:"Active",standingOrderOverBudgetStatus:"Over Budget",standingOrderScheduleEndedStatus:"Schedule Ended",standingOrderInvalidStatus:"Invalid",standingOrderSuspendedStatus:"Suspended",standingOrderRequiresApprovalStatus:"Requires Approval",standingOrderSelectApproverStatus:"Select Approver",standingOrderApprovalRejectedStatus:"Approval Rejected",standingOrderUnknownStatus:"* Unknown Status *",standingOrderIconForActiveStatus:"cv-ico-general-checkmark",standingOrderIconForOverBudgetStatus:"cv-ico-general-statistics",standingOrderIconForScheduleEndedStatus:"cv-ico-general-stop",standingOrderIconForInvalidStatus:"cv-ico-general-cross",standingOrderIconForSuspendedStatus:"cv-ico-general-hourglass",standingOrderIconForRequiresApprovalStatus:"cv-ico-general-users",standingOrderIconForSelectAp
41proverStatus:"cv-ico-general-users",standingOrderIconForApprovalRejectedStatus:"cv-ico-general-cross",standingOrderIconForUnknownStatus:"cv-ico-general-question",standingOrderNoLinesMessage:"The order must have at least 1 product with a quantity of 1 or more",modalPopupEditStandingOrderTitle:"Edit Standing Order Schedule",modalPopupChangeOwnershipId:"modal-popup-change-ownership",modalPopupCancelNextScheduleId:"modal-popup-cancel-next-order",modalPopupDeleteScheduledOrderId:"modal-popup-delete-order",accountSelectPageUrl:"AccountSelect.aspx",isSortable:!1,increaseQuantitiesInPackQty:!1,addMinimumQuantityToCart:!1},extendEvents:["loading","loadingComplete",r,u,f,e,o,h,c,l,a,v,y,s,p,w,b,k,d,g,"afterResequence"],_mode:t,initialised:function(){var n=this,t;n.reinstateViewModelFromHistoryState()?n._setupTemplateOrderAndProductSearchDataSource():(t=["dataSource","productSearchDataSource"],n.saveViewModelToCurrentHistoryState(t));n.setupSinglePageHistoryStateHandler({displayResultList:!0},function(t){t.displayResultList&&n.viewModel.goBackToOrders()})},initDataSource:function(){var n=this;n._setupTemplateOrderAndProductSearchDataSource()},_setupTemplateOrderAndProductSearchDataSource:function(){var i=this,t=i.viewModel,r=t.get("isParValueMode");t.get("templateOrdersLoaded")||(r=n.cv.util.queryStringValue("ParValueOrderMode")==="true",t.set("isParValueMode",r),t.set("templateOrdersLoaded",!0));i._setupTemplateOrderDataSource(r);i._setupProductSearchDataSource()},_setupProductSearchDataSource:function(){var t=this,i=t.viewModel,r=n.cv.data.dataSource({method:"products/productSearch",params:t._constructProductSearchParamsFunction(),pageSize:t.options.productSearchTake});i.set("productSearchDataSource",r)},_constructProductSearchParamsFunction:function(){var t=this;return function(i){var r=n.cv.util.hasValue(i.filter.filters,"[0]")?i.filter.filters[0].value:"",u;return r=n.trim(r),u={searchString:r,searchType:"contains",contractFilter:"",extraSelect:"",skipArg:0,takeArg:t.options.productSearchTake},delete i.filter,u}},_setupTemplateOrderDataSource:function(t){var i=this,r="orderTemplate/GetOrderTemplatesForUser",u;t&&(r="orderTemplate/GetParValueOrderTemplatesForUser");i.options.isStandingOrderMode&&(r="orders/getStandingOrders");u=n.cv.data.dataSource({method:r,params:i._constructOrderParamsFunction(r),pageSize:i.options.recordsPerPage,parse:function(n){if(i.options.isStandingOrderMode){n.data==null&&(n.data=[]);var t=_.map(n.data,function(n){var t=[n,"SoOrderNo","SoCustReference","OrderTotalAmount","CompanyTemplate","fwCreatedBy","fwCreated","fwUpdatedBy","fwUpdated","WillRequireApprovalIfSubmitted","ApproveBy","ApprovalRecords","SoOrderDate","_objectKey"],r=_.omit.apply(_,t),u=_.pick.apply(_,t);return i._augmentSchedule(r,u)});return n.data=t,n}return n}});u.bind("requestStart",i.viewModel.dataSourceBinding);u.bind("requestEnd",i.viewModel.dataSourceBound);i.setDataSource(u)},_augmentSchedule:function(t,i){var f;t=n.extend({},t);t.Owner=t.Owner.toLowerCase();t.IsCurrentUserOwner=t.Owner===this.options.currentUserEmail.toLowerCase();var r=t,u=ScheduleStatus[t.ScheduleStatus],e=OrderShareType[t.OrderShareType];r.canCurrentUserAdministerStandingOrder=this.options.isUserStandingOrderAdministrator||t.IsCurrentUserOwner||i.CompanyTemplate;r.isPersonal=e==OrderShareType.Personal;r.isSuspended=u==ScheduleStatus.Disabled;r.requiresApproval=u==ScheduleStatus.RequiresApproval;r.requiresApproverSelection=u==ScheduleStatus.SelectApprover&&t.IsCurrentUserOwner;f=[ScheduleStatus.ScheduleEnded,ScheduleStatus.Invalid,ScheduleStatus.Disabled];r.canCancelNextSchedule=_.contains(f,u)==!1;switch(u){case ScheduleStatus.Scheduled:case ScheduleStatus.UnknownStatus:r.scheduleStatus=this.options.standingOrderActiveStatus;r.statusIcon=this.options.standingOrderIconForActiveStatus;r.cssClass="cv-schedule-status-unknown";break;case ScheduleStatus.OverBudget:r.scheduleStatus=this.options.standingOrderOverBudgetStatus;r.statusIcon=this.options.standingOrderIconForOverBudgetStatus;r.cssClass="cv-schedule-status-over-budget";break;case ScheduleStatus.ScheduleEnded:r.scheduleStatus=this.options.standingOrderScheduleEndedStatus;r.statusIcon=this.options.standingOrderIconForScheduleEndedStatus;r.cssClass="cv-schedule-status-schedule-ended";break;case ScheduleStatus.Invalid:r.scheduleStatus=this.options.standingOrderInvalidStatus;r.statusIcon=this.options.standingOrderIconForInvalidStatus;r.cssClass="cv-schedule-status-invalid";break;case ScheduleStatus.Disabled:r.scheduleStatus=this.options.standingOrderSuspendedStatus;r.statusIcon=this.options.standingOrderIconForSuspendedStatus;r.cssClass="cv-schedule-status-disabled";break;case ScheduleStatus.RequiresApproval:r.scheduleStatus=this.options.standingOrderRequiresApprovalStatus;r.statusIcon=this.options.standingOrderIconForRequiresApprovalStatus;r.cssClass="cv-schedule-status-requires-approval";break;
41case ScheduleStatus.SelectApprover:r.scheduleStatus=this.options.standingOrderSelectApproverStatus;r.statusIcon=this.options.standingOrderIconForSelectApproverStatus;r.cssClass="cv-schedule-status-select-approver";break;case ScheduleStatus.Rejected:r.scheduleStatus=this.options.standingOrderApprovalRejectedStatus;r.statusIcon=this.options.standingOrderIconForApprovalRejectedStatus;r.cssClass="cv-schedule-status-rejected";break;default:r.scheduleStatus=this.options.standingOrderUnknownStatus;r.statusIcon=this.options.standingOrderIconForUnknownStatus;r.cssClass="cv-schedule-status-fallback"}return n.extend(i,{schedule:t})},_constructOrderParamsFunction:function(t){var u=this,i=u.viewModel,r=n.cv.util.queryStringValue("order");return r&&r.length>0&&(n.cv.util.clearNotifications(i),i._viewOrder_Internal(r)),function(){var f=n.cv.util.queryStringValue("role"),u=i.get("orderFilter").trim(),e=i.get("sortColumn"),o=i.get("sortDirection"),r={};return t!=="orders/getStandingOrders"&&u.length>0?r.searchTerm=u:(r={filter:{keepinitfilter:!0,filters:[]},sort:[{field:e,dir:o}]},u.length>0&&r.filter.filters.push({field:"SoCustReference",operator:"contains",value:u}),n.cv.util.hasValue(f)&&r.filter.filters.push({field:"UserRoleWhenOrderTemplate",operator:"contains",value:f}),r.filter.filters.length>1&&(r.filter.logic="and")),r}},_preBindingLineModification:function(t,i){var r=_.filter(i,function(n){return n.LineType&&n.LineType==="DN"&&n.LineSeq%1!=0&&n.Description&&n.Description.length>0}),u,f;return r=_.map(r,function(n){return{LineSeq:parseInt(n.LineSeq,10),Description:n.Description}}),r=_.groupBy(r,"LineSeq"),r=_.map(r,function(n){return _.reduce(n,function(n,t){return n.LineSeq=t.LineSeq,n.Description==null&&(n.Description=""),n.Description+=" "+t.Description,n},{})}),i=_.filter(i,function(t){return t.LineType&&t.LineType==="SC"&&(t.SolLineSeq===988||t.SolLineSeq===989)||t.LineType==="DN"&&t.LineSeq%1==0||t.LineType==="SN"&&t.Product&&n.type(t.Product)==="array"&&t.Product.length===1}),u=this._generateResequenceOptions(i),t.set("lineResequenceOptions",u),f=t.get("isParValueMode"),_.each(i,function(i,u){var o,e;i.index=u;i.disableView=!1;o=_.find(r,function(n){return n.LineSeq===i.LineSeq});o!=null&&(i.ExtendedLineDescription=n.trim(o.Description));i._originalExtendedLineDescription=i.ExtendedLineDescription;i.isParValueTemplateOrder=f;i.isDeleteChecked=!1;i.newLineSeq=i.LineSeq;i.prevLineSeq=i.LineSeq;i.toggleDeleted=function(t){n.cv.util.toggleCvCheckboxValue(t,this,"isDeleteChecked")};i.lastValidQuantity=i.OrderedQty;i.packQuantityTarget="Product[0].PackQty";i.quantityTarget="OrderedQty";e="0";i.Product&&i.Product.length>0&&(e=n.cv.util.getProductDetailsDefaultQuantity(t.increaseQuantitiesInPackQty,t.addMinimumQuantityToCart,{ProductDetailsDefaultQuantityWhenNotIncreasePackQtyNotAddMinQty:i.Product[0].ProductDetailsDefaultQuantityWhenNotIncreasePackQtyNotAddMinQty,ProductDetailsDefaultQuantityWhenIncreasePackQtyNotAddMinQty:i.Product[0].ProductDetailsDefaultQuantityWhenIncreasePackQtyNotAddMinQty,ProductDetailsDefaultQuantityWhenNotIncreasePackQtyAddMinQty:i.Product[0].ProductDetailsDefaultQuantityWhenNotIncreasePackQtyAddMinQty,ProductDetailsDefaultQuantityWhenIncreasePackQtyAddMinQty:i.Product[0].ProductDetailsDefaultQuantityWhenIncreasePackQtyAddMinQty}));i.minQuantity=e;i.quantity=e;i.increaseQtyStepFromZero=e;i.addToCartQtyStepFromZero=e;i.increaseQty=function(){n.cv.util.kendoNumericTextBoxIncrease(this)};i.decreaseQty=function(){n.cv.util.kendoNumericTextBoxDecrease(this,0)};i.increaseQtyOnHand=function(){n.cv.util.kendoNumericTextBoxIncrease(this,"qtyOnHand")};i.decreaseQtyOnHand=function(){n.cv.util.kendoNumericTextBoxDecrease(this,0,"qtyOnHand")};i.changeExtendedLineDescription=function(){this.ExtendedLineDescription!==this._originalExtendedLineDescription&&t.set("isLineDataDirty",!0)};i.qtyOnHand="";i.quantityInCart=t.getQuantityInCart(i.StockCode)}),i},_constructLineParamsFunction:function(){var n=this,t=n.viewModel;return function(){return{sort:[{field:"LineSeq",dir:"asc"}],take:5e3,soOrderNo:t.get("orderNo")}}},_generateResequenceOptions:function(n){for(var r=n.length,i=[],t=0;t<r;t+=1)i.push({Option:t+1});return i},_scrollPage:function(){var t=this,i=t.options.scrollContainer;t.options.autoScrollToTop&&i!=""&&n(t.options.scrollTarget).animate({scrollTop:n(i).offset().top},t.options.scrollSpeed)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var nt=this,ut=function(){if(!nt.dataSource)return[];var t=nt.dataSource.data();return n.each(t,function(n,t){t.index=n;t._isLastRow=!1;t.isLoadingOrderLine=!1;t.viewOrder=function(){tt.viewOrder(t)}}),t.length>0&&t[t.length-1]!=null&&t[t.length-1].set("_isLastRow",!0),t},tt=kendo.observable(n.extend({}
41,nt.options,{mode:t,isOrdersMode:function(){return this.get("mode")===t},isLinesMode:function(){return this.get("mode")===i},isProcessingOrderTemplates:function(){return this.get("isFilteringOrders")===!0||this.get("isClearingFilter")===!0||this.get("isLoadingOrderLines")===!0||this.get("isDeletingOrder")===!0||this.get("isRemovingAllLines")===!0||this.get("isResequencingLines")===!0||this.get("isRepricingOrder")===!0||this.get("isAddingProduct")===!0||this.get("isAddingLinesToCart")===!0||this.get("isSavingOrder")===!0||this.get("isDataSourceBinding")===!0||this.get("isSavingTemplate")===!0||this.get("isUndoing")===!0||this.get("isClearingQtys")===!0||this.get("isSortingOrders")===!0},isFilteringOrders:!1,isClearingFilter:!1,isLoadingOrderLines:!1,isDeletingOrder:!1,isRemovingAllLines:!1,isResequencingLines:!1,isRepricingOrder:!1,isAddingProduct:!1,isAddingLinesToCart:!1,isSavingOrder:!1,isSavingTemplate:!1,isUndoing:!1,isClearingQtys:!1,actionIsSave:!1,saveTemplateType:"",saveTypeValue:"create",saveTypeIsCreate:function(){return this.get("saveTypeValue")==="create"},saveTypeIsAppend:function(){return this.get("saveTypeValue")==="append"},saveTypeIsOverwrite:function(){return this.get("saveTypeValue")==="overwrite"},saveTemplateName:"",saveIsCompanyTemplate:!1,saveIsAllowTemplateBillTo:!1,saveIsAllowTemplateBillToForSelectedOrder:!1,showIsAllowTemplateBillToForSelectedOrder:!1,enableIsAllowTemplateBillTo:!1,saveIsRoleTemplate:!1,isAllCustomers:!1,saveTemplateList:[],saveTemplateListValue:"",saveTemplateNameInvalid:!1,saveSelectedTemplateInvalid:!1,isDataSourceBinding:!1,dataSourceBinding:function(){tt.set("isDataSourceBinding",!0)},dataSourceBound:function(){tt.set("isDataSourceBinding",!1);tt.set("isSortingOrders",!1)},changeIsCompanyTemplate:function(){tt.get("saveIsCompanyTemplate")===!1&&tt.set("saveIsAllowTemplateBillTo",!1)},changeIsAllowTemplateBillToForSelectedOrder:function(){tt.set("isLineDataDirty",!0)},saveButtonClick:function(){var t=this,i,r,u;t.set("isSavingTemplate",!0);i=n.cv.util.stripHtml(t.get("saveTemplateName"));t.set("saveTemplateName",i);r=this._actionValidate();r?(u={saveMode:t.get("saveTypeValue"),templateName:i,isCompanyTemplate:t.get("saveIsCompanyTemplate"),isAllowTemplateBillTo:t.get("saveIsAllowTemplateBillTo"),isRoleTemplate:t.get("saveIsRoleTemplate"),templateType:t.get("saveTemplateType"),selectedTemplate:t.get("saveTemplateListValue"),allCustomers:t.get("isAllCustomers")},n.cv.css.orderTemplate.createNewTemplateForUser(u).done(function(i){var r,u;i.data.Success?(n.cv.util.notify(t,i.data.Message,n.cv.css.messageTypes.success),nt.dataSource.fetch(),t.set("actionIsSave",!1),r=["dataSource","productSearchDataSource"],nt.saveViewModelToCurrentHistoryState(r)):(u=n.cv.util.string.format(nt.options.createUserTemplatesFailureMessage,i.data.Message),n.cv.util.notify(t,u,n.cv.css.messageTypes.error));t.set("isSavingTemplate",!1)}).fail(function(){var i=n.cv.util.string.format(nt.options.createUserTemplatesFailureMessage,"call failed");n.cv.util.notify(t,i,n.cv.css.messageTypes.error);t.set("isSavingTemplate",!1)})):t.set("isSavingTemplate",!1)},_actionValidate:function(){var t=!0;return this.set("saveTemplateNameInvalid",!1),this.set("saveSelectedTemplateInvalid",!1),this.saveTypeIsCreate()==!0?n.cv.util.isNullOrWhitespace(this.get("saveTemplateName"))&&(n.cv.util.notify(tt,nt.options.templateNameInvalidMessage,n.cv.css.messageTypes.error),this.set("saveTemplateNameInvalid",!0),t=!1):this.get("saveTemplateListValue")==""&&(n.cv.util.notify(tt,nt.options.selectedTemplateInvalidMessage,n.cv.css.messageTypes.error),this.set("saveSelectedTemplateInvalid",!0),t=!1),t},requestQuote:function(t){var i=this.addAllLinesToCart(t);n.when(i).done(function(t){t.data.message!=nt.options.noItemsAddedReturnMessage&&n.cv.util.redirect(nt.options.requestQuoteUrl)})},updateViewModelFromDataSource:function(){var n=ut();this.set("orderData",n);this.set("isFilteringOrders",!1);this.set("isClearingFilter",!1);nt.trigger(r,{data:n})},orderFilter:"",orderData:[],isSortingOrders:!1,sortColumn:nt.options.isStandingOrderMode?"SoCustReference":"TemplateName",sortDirection:"asc",orders:function(){var t=this,n=t.get("orderData");return n==null&&(n=[]),n},canEditAnyOrders:function(){var r=this,n=r.get("orderData"),t,i=!1;return n==null&&(n=[]),n&&n.length>0&&(t=n,i=_.filter(t,function(n){return n.IsTemplateOrderThisUserCanModify}).length>0),i},filterOrders:function(){var n=this.get("dataSource");this.get("orderFilter").length>0?this.set("isFilteringOrders",!0):this.set("isClearingFilter",!0);n.page(1)},clearOrderFilter:function(){this.set("orderFilter","");this.filterOrders()},setDisableView:function(t){var i=this;i.dataSource&&n.each(i.dataSource.view(),function(n,i){i.set("disableView",t)})},viewOrder:function(t){var i=this;nt.addNewUiHistoryState({displayResultList:!1});i.setDisableView(!0);n.cv.util.clearNotifications(i);i._viewOrder_Internal(t)},onChange:function(n){var u=n.newIndex,f=n.oldIndex,e=nt.viewModel.lines.length,r,t;nt.viewModel.set("PROCESSING_LINE_SEQUENCES",!0);nt.viewModel.set("isResequencingLines",!0);var o=nt.viewModel.get("lines"),i=_.map(o,_.clone),s=i.splice(f,1)[0];for(i.splice(u,0,s),nt.viewModel.set("lines",i),t=0;t<e;t++)r=nt.viewModel.lines[t],r.set("newLineSeq",t+1);nt.viewModel.set("isResequencingLines",!1);nt.viewModel.set("PROCESSING_LINE_SEQUENCES",!1);nt.viewModel.set("isLineDataDirty",!0)},viewTemplateName:"",_viewOrder_Internal:function(t,r,e,o){var s,h,l,a,c;return o===void 0&&(o=!1),s=this,n.type(t)=="number"&&(t=t.toString()),h=n.t
41ype(t)==="string"?t:t.SoOrderNo,n.type(t)!=="string"&&(e=t,(r==null||r.length==0)&&(r=e.SoCustReference)),e==null&&(l=s.get("currentOrder"),l!=null&&l.SoOrderNo==h&&(e=l)),a=e.SoBoSuffix,s.set("orderNo",h),s.set("soBoSuffix",a),s.set("viewTemplateName",r),nt.trigger(u),c=n.cv.util.isNullOrWhitespace(r)?h:r,_.extend(n.cv.css._proxyMeta,{templateName:c},n.cv.util.getBaseProxyMeta(nt)),n.cv.css.orderTemplate.getTemplateOrder({soOrderNo:h,soBoSuffix:a,restrictToParValueOrders:s.get("isParValueMode")===!0,_objectKey:e!=null?e._objectKey:""}).done(function(t){var r=null,h,u;if(n.cv.util.hasValue(t.data,"[0]")?r=t.data[0]:n.cv.util.hasValue(t.data,"order[0]")&&n.cv.util.hasValue(t.data,"schedule[0]")&&(r=nt._augmentSchedule(t.data.schedule[0],t.data.order[0])),r==null){n.cv.util.notify(nt.viewModel,"Order Not Found",n.cv.css.messageTypes.error);return}s.set("currentOrder",r);s.set("canEditCurrentOrder",r.IsTemplateOrderThisUserCanModify);r.CompanyTemplate?(s.set("saveIsAllowTemplateBillToForSelectedOrder",r.AllowTemplateBillTo),s.set("showIsAllowTemplateBillToForSelectedOrder",!0)):(s.set("saveIsAllowTemplateBillToForSelectedOrder",!1),s.set("showIsAllowTemplateBillToForSelectedOrder",!1));n.cv.util.hasValue(e)&&e.set("isLoadingOrderLine",!0);h=s.get("orderRepricedList").indexOf(e.SoOrderNo+(e.SoBoSuffix||""))>=0;u=nt.options;n.cv.css.orderTemplate.loadOrderTemplateLines({_objectKey:r._objectKey,disableLivePricesPrefetch:u.enableImmediateTemplateReprice==!1&&u.disableLivePricesPrefetchIfTemplateRepriceIsOff&&o==!1&&h==!1}).done(function(t){var v,u,e,y,p,o,l,h,a,d,g;for(s.set("mode",i),s._linesDataSource=t.data,u=t.data,e=u&&u.length>0,s.set("hasOrderLines",e),y=nt.options.isStandingOrderMode?!1:e,s.set("enableDeleteAllButton",y),p=nt.options.isStandingOrderMode?!1:e,s.set("enableClearQtysButton",p),u=nt._preBindingLineModification(s,u),u=new kendo.data.ObservableArray(u),_.each(u,function(t){t.get("IsProductAccessible")||t.set("OrderedQty",0);n.cv.util.isNullOrWhitespace(t.ExtendedAttributes)||t.set("extendedAttribute",n.cv.css.product.extendedAttributeSelected(t.ExtendedAttributes));t.set("extendedAttributesDataSource",n.cv.css.product.extendedAttributeDataSource(t,"StockCode"));t.set("costCentreCode",t.get("CostCentreCode"));t.bind("change",function(i){var r,f;if(i.field==="OrderedQty"&&!s.isQuantityValid(t)&&t.get("quantityReset"))t.set("quantityReset",!1);else if(i.field==="newLineSeq"&&s.get("isResequencingLines")!==!0){var o=this.newLineSeq-1,h=this.prevLineSeq-1,c=s.lines.length,e=void 0;s.set("isResequencingLines",!0);var l=s.get("lines"),u=_.map(l,_.clone),a=u.splice(h,1)[0];for(u.splice(o,0,a),r=0;r<c;r++)e=u[r],e.set("prevLineSeq",r+1),e.set("newLineSeq",r+1);s.set("lines",u);s.set("isResequencingLines",!1)}else i.field==="extendedAttribute"&&(f=t.get("extendedAttribute"),n.cv.util.hasContent(f)&&f.ExtendedAttributes!=undefined?t.set("ExtendedAttributes",f.ExtendedAttributes):(t.set("ExtendedAttributes",""),t.set("extendedAttribute","")))})}),s.set("lines",u),s.set("isLineDataDirty",!1),u.bind("change",function(){s.set("isLineDataDirty",!0)}),o=0;o<nt.dataSource._data.length;o++)nt.dataSource._data[o].set("isLoadingOrderLine",!1);l=nt.element.find(".cv-sortable").data("kendoSortable");l!=null&&l.destroy();var w=nt.element.find(".cv-sortable").length>0,b=nt.element.find("[data-template=template-order-lines-row-template]"),k=s.get("isSortable")&&r.IsTemplateOrderThisUserCanModify;k&&!w?b.addClass("cv-sortable"):!k&&w&&b.removeClass("cv-sortable");nt.element.find(".cv-sortable").kendoSortable({data:tt.lines,change:tt.onChange,ignore:"input, .cv-link",hint:function(n){return n.clone().addClass("hint")},placeholder:function(n){return n.clone().addClass("placeholder").text("Place Here")},cursorOffset:{top:-10,left:-230}});nt.options.enableImmediateTemplateReprice===!0||nt.viewModel.get("isRepricingOrder")||nt.viewModel.get("isSavingOrder")||!nt.viewModel.get("canEditCurrentOrder")||(h=!1,a=s.get("currentOrder"),n.cv.util.hasValue(a.TemplateOrderRepricedTimeStamp)?(d=(new Date).setHours(0,0,0,0),g=new Date(a.TemplateOrderRepricedTimeStamp).setHours(0,0,0,0),g<d&&(h=!0)):h=!0,h===!0&&(v=n.cv.util.string.format(nt.options.immediateRepriceNotEnabledMessage,c),n.cv.util.notify(nt.viewModel,v,n.cv.css.messageTypes.warning)));n.cv.css.localSetSelectedOrder(r);n.cv.css.localSetSelectedOrderLines(t.data);n.cv.util.bindKendoWidgets(n(nt.element[0]));n.cv.css.trigger(n.cv.css.eventnames.viewApprovalOrder,r);n.cv.css.trigger(n.cv.css.eventnames.showOrderSummary);n.cv.css.trigger(n.cv.css.eventnames.toggleStandingOrderRecurrenceInformation,!0);nt.trigger(f);n.cv.css.trigger(n.cv.css.eventnames.templateOrderLinesRendered,{stampsWidgetContainer:nt.options.stampsWidgetContainer,lines:u,InsertToLines:!0});nt._scrollPage()}).fail(function(){var t=n.cv.util.string.format(nt.options.viewOrder_LoadErrorMessage,c);n.cv.util.notify(nt.viewModel,t,n.cv.css.messageTypes.error);s.setDisableView(!1)}).always(function(){n.cv.util.hasValue(e)&&e.set("isLoadingOrderLine",!1)})}).fail(function(){var t=n.cv.util.string.format(nt.options.viewOrder_LoadErrorMessage,c);n.cv.util.notify(nt.viewModel,t,n.cv.css.messageTypes.error);s.setDisableView(!1)}).always(function(){s.set("isLoadingOrderLines",!1)})},deleteOrder:function(t){var i=this;t.preventDefault();t.stopPropagation();var r=t.data,u=!1,f=nt.options.confirm({widget:nt,viewModel:i,message:nt.options.confirmDeleteMessage.replace("{0}",n.cv.util.stripHtml(t.data.TemplateName)),scenario:"deleteOrder"});return f.done(function(f){!0===f&&(i.set("isDeletingOrder",!0),t.data.set("isDeletingSingleOrder",!0),nt.trigger(v,r),n.cv.css.orderTemplate.deleteOrderTemplate({soOrderNo:r.SoOrderNo,soBoSuffix:r.SoBoSuffix!=null?r.SoBoSuffix:""}
41).done(function(r){if(r.data&&n.type(r.data)==="string"&&r.data.indexOf("Error!")!==-1){n.cv.util.notify(i,r.data,n.cv.css.messageTypes.error);return}var u=n.cv.util.string.format(nt.options.deleteOrderTemplateSuccessMessage,t.data.TemplateName);n.cv.util.notify(i,u,n.cv.css.messageTypes.success);nt.dataSource.fetch()}).fail(function(){var r=n.cv.util.string.format(nt.options.deleteOrderTemplateFailureMessage,t.data.TemplateName);n.cv.util.notify(i,r,n.cv.css.messageTypes.error)}).always(function(){i.set("isDeletingOrder",!1);t.data.set("isDeletingSingleOrder",!1);nt.trigger(y,{Order:r,WasDeleted:u})}))}),!1},orderNo:0,soBoSuffix:"",currentOrder:null,lines:[],isLineDataDirty:!1,lineResequenceOptions:[],productSearchTerm:"",addProductQuantity:nt.options.defaultAddProductQuantity,productSearchDataSource:[],_getLineChanges:function(){for(var f,r=this.get("lines"),e=r.length,u=[],t,i=0;i<e;i+=1)t=r[i],f=n.cv.util.hasValue(t.OrderedQty)?t.OrderedQty:0,u.push({LineSeq:t.LineSeq,Description:t.Description,StockCode:t.ProductCode,ExtendedLineDescription:t.ExtendedLineDescription,Qty:f,Resequence:t.newLineSeq,CostCentreCode:t.costCentreCode,ExtendedAttributes:t.ExtendedAttributes,Delete:t.isDeleteChecked===!0});return u},isAllowedToChangeAndIsDirty:function(){var n=this.get("canEditCurrentOrder"),t=this.get("isLineDataDirty"),i=this._validateStandingOrderChanges();return n&&t&&i},_getLineQuantities:function(){for(var t,r,f=this.get("lines"),c=f.length,e=[],o,i,s=this.get("isParValueMode")===!0,h=this.get("isIgnoreMaxCount")===!0,u=0;u<c;u+=1)i=f[u],o=i.LineSeq,t=n.cv.util.hasValue(i.OrderedQty)?i.OrderedQty:0,s&&(r=i.get("qtyOnHand")===undefined||i.get("qtyOnHand")===null||i.get("qtyOnHand")===""?h?0:t:i.get("qtyOnHand"),h?t=r:r!=null&&r>=0&&r<=t?t=t-r:r>=t&&(t=0)),(s||t>0)&&e.push({LineSeq:o,Qty:t});return e},isQuantityValid:function(n){var i=!0,t=n.OrderedQty;return(isNaN(t)||n.QtyDecimalPlaces===0&&t%1!=0||t<0)&&(i=!1),i?n.set("lastValidQuantity",t):(n.set("quantityReset",!0),n.set("OrderedQty",n.get("lastValidQuantity"))),i},_checkUpdateRequiredBeforeReturnToOrderList:function(){var t=n.Deferred(),i=this;return i.isAllowedToChangeAndIsDirty()?nt.options.confirm({widget:nt,viewModel:i,message:n.cv.util.string.format(nt.options.backToOrdersDoYouWantToSaveYourOrderMessage,i.get("viewTemplateName")),scenario:"returnToOrderList"}).done(function(n){!0===n?i._saveOrderLineChanges_Internal(!1).always(function(){t.resolve()}):t.resolve()}):t.resolve(),t.promise()},backToOrders:function(){history.back()},goBackToOrders:function(i){var r=this;return i&&(i.preventDefault(),i.stopPropagation()),r._checkUpdateRequiredBeforeReturnToOrderList().done(function(){nt.trigger(e);r.set("currentOrder",null);r.set("mode",t);n.cv.util.clearNotifications(r);nt.dataSource.fetch();n.cv.css.trigger(n.cv.css.eventnames.hideOrderSummary);n.cv.css.trigger(n.cv.css.eventnames.toggleStandingOrderRecurrenceInformation,!1);nt.trigger(o)}),!1},addProductToTemplate:function(t){var i=this,u=i.currentOrder,r=i.get("productSearchTerm");return(t.preventDefault(),t.stopPropagation(),n.cv.util.clearNotifications(i),n.trim(r)==="")?(n.cv.util.notify(i,nt.options.addProductRequiredSearchTerm,n.cv.css.messageTypes.error),!1):(i.set("isAddingProduct",!0),nt.trigger(h,r),n.cv.util.clearNotifications(i),n.cv.css.orderTemplate.addLineToTemplateOrder({productCode:r,orderNo:u.SoOrderNo,quantity:i.get("addProductQuantity"),setQtyAutomatically:nt.options.setQtyAutomatically}).done(function(t){var f=n.cv.util.stripHtml(r),u=n.cv.util.string.format(nt.options.addProductSuccessMessage,f);t.data.editOrderOk===!1?(u=n.cv.util.string.format(nt.options.addProductFailureMessage,f),n.cv.util.notify(i,u+t.data.message,n.cv.css.messageTypes.error,{clearExisting:!1})):(n.cv.util.notify(i,u,n.cv.css.messageTypes.success,{clearExisting:!1}),i.set("productSearchTerm",""));n.cv.util.hasValue(t,"meta.warning")&&n.cv.util.hasContent(t.meta.warning)&&n.cv.util.notify(i,t.meta.warning,n.cv.css.messageTypes.warning,{clearExisting:!1})}).fail(function(){var t=n.cv.util.string.format(nt.options.addProductErrorMessage,n.cv.util.stripHtml(r));n.cv.util.notify(i,t,n.cv.css.messageTypes.error,{clearExisting:!1})}).always(function(){i.set("isAddingProduct",!1);nt.trigger(c,r);i._viewOrder_Internal(u)}
41),!1)},orderRepricedList:[],repriceOrder:function(t){var r=this,i=r.currentOrder;return t.preventDefault(),t.stopPropagation(),r.set("isRepricingOrder",!0),nt.trigger(l,i),n.cv.util.clearNotifications(r),n.cv.css.orderTemplate.repriceOrder({soOrderNo:i.SoOrderNo,soBoSuffix:i.SoBoSuffix!=null?i.SoBoSuffix:""}).done(function(){var t=n.cv.util.string.format(nt.options.repriceOrderTemplateSuccessMessage,i.TemplateName);n.cv.util.notify(r,t,n.cv.css.messageTypes.success)}).fail(function(){var t=n.cv.util.string.format(nt.options.repriceOrderTemplateFailureMessage,i.TemplateName);n.cv.util.notify(r,t,n.cv.css.messageTypes.error)}).always(function(){nt.trigger(a,i);r._viewOrder_Internal(i,null,null,!0);nt.unbind("afterViewLines").bind("afterViewLines",function(){r.set("isRepricingOrder",!1)});r.get("orderRepricedList").push(i.SoOrderNo+(i.SoBoSuffix||""))}),!1},clearLineQuantities:function(n){var t=this,i;n?(n.preventDefault(),n.stopPropagation(),i=nt.options.confirm({widget:nt,viewModel:t,message:nt.options.confirmClearQuantitiesMessage,scenario:"clearLineQuantities"}),i.done(function(n){n===!0&&t._clearLineQuantities_Internal()})):t._clearLineQuantities_Internal()},_clearLineQuantities_Internal:function(){var i,n,r,t;for(tt.set("isClearingQtys",!0),i=this.get("lines"),r=i.length,t=0;t<r;t+=1)n=i[t],n.get("LineType").toUpperCase()==="SN"&&(this.get("isParValueMode")===!0?n.set("qtyOnHand",""):n.set("OrderedQty",0));tt.set("isClearingQtys",!1)},removeAllLines:function(t){var i=this,r=i.currentOrder,u;return t.preventDefault(),t.stopPropagation(),n.cv.util.clearNotifications(i),u=nt.options.confirm({widget:nt,viewModel:i,message:nt.options.confirmRemoveAllLinesMessage.replace("{0}",r.TemplateName),scenario:"removeAllLines"}),u.done(function(t){t===!0&&(i.set("isRemovingAllLines",!0),nt.trigger(p,r),n.cv.css.orderTemplate.removeAllLines({soOrderNo:r.SoOrderNo}).done(function(){var t=n.cv.util.string.format(nt.options.removeAllLinesSuccessMessage,r.TemplateName);n.cv.util.notify(i,t,n.cv.css.messageTypes.success)}).fail(function(){var t=n.cv.util.string.format(nt.options.removeAllLinesFailureMessage,r.TemplateName);n.cv.util.notify(i,t,n.cv.css.messageTypes.error)}).always(function(){i.set("isRemovingAllLines",!1);nt.trigger(w,r);i._viewOrder_Internal(r)}))}),!1},addAllLinesToCart:function(t){var f;t.preventDefault();t.stopPropagation();var i=this,r=i.currentOrder,u=i._getLineQuantities(),e=i._getLineChanges();return i.set("isAddingLinesToCart",!0),f=i.get("isLineDataDirty")===!0?{soOrderNo:r.get("SoOrderNo"),soBoSuffix:r.get("SoBoSuffix"),lineQtys:u,lineUpdates:e,isParValueMode:i.get("isParValueMode")===!0}:{soOrderNo:r.get("SoOrderNo"),soBoSuffix:r.get("SoBoSuffix"),lineQtys:u,isParValueMode:i.get("isParValueMode")===!0},nt.trigger(d,r),n.cv.css.trigger(n.cv.css.eventnames.cartItemsChanging),n.cv.css.orderTemplate.addAllProductsToCart(f).done(function(t){var u;u=t.data.message==nt.options.noItemsAddedReturnMessage?n.cv.util.string.format(nt.options.addLinesToCartSuccessMessageNoItems,r.TemplateName):n.cv.util.string.format(nt.options.addLinesToCartSuccessMessage,r.TemplateName);n.type(t.data.message)==="string"&&t.data.message.length>0&&(u=u.length>0?u+nt.options.successMessageAndReturnMessageSpacer+t.data.message:t.data.message);t.data.message==nt.options.noItemsAddedReturnMessage?n.cv.util.notify(i,u,n.cv.css.messageTypes.warning):n.cv.util.notify(i,u,n.cv.css.messageTypes.success)}).fail(function(){var t=n.cv.util.string.format(nt.options.addLinesToCartFailureMessage,r.TemplateName);n.cv.util.notify(i,t,n.cv.css.messageTypes.error)}).always(function(){i.set("isAddingLinesToCart",!1);n.cv.css.trigger(n.cv.css.eventnames.orderChanged);i.get("isParValueMode")===!0&&nt.viewModel.clearLineQuantities();nt.trigger(g,r)})},saveOrderLineChanges:function(n){return n.preventDefault(),n.stopPropagation(),this._validateStandingOrderChanges()&&this._saveOrderLineChanges_Internal(),!1},_validateStandingOrderChanges:function(){var t=!0,i,r;return nt.options.isStandingOrderMode&&(i=this.get("lines"),i.length===0&&(t=!1),r=_.find(i,function(n){return n.get("LineType").toUpperCase()==="SN"&&n.get("OrderedQty")>0&&n.get("isDeleteChecked")===!1}),r===undefined&&(t=!1)),t||n.cv.util.notify(this,nt.options.standingOrderNoLinesMessage,n.cv.css.messageTypes.error),t},_saveOrderLineChanges_Internal:function(t){var i=this,r=i.currentOrder,u=i._getLineChanges();return t==null&&(t=!0),i.set("isSavingOrder",!0),nt.trigger(b,r),n.cv.util.clearNotifications(i),n.cv.css.orderTemplate.saveChanges({soOrderNo:r.get("SoOrderNo"),soBoSuffix:r.get("SoBoSuffix"),changes:u,isAllowTemplateBillTo:i.get("saveIsAllowTemplateBillToForSelectedOrder")}).done(function(t){if(n.cv.util.hasValue(t,"meta.error")&&n.cv.util.hasContent(t.meta.error)){n.cv.util.notify(i,t.meta.error,n.cv.css.messageTypes.error);return}nt.viewModel.set("isLineDataDirty",!1);var u=n.cv.util.string.format(nt.options.updateTemplateOrderSuccessMessage,r.TemplateName||r.SoCustReference);n.cv.util.notify(i,u,n.cv.css.messageTypes.success);n.cv.util.hasValue(t,"meta.warning")&&n.cv.util.hasContent(t.meta.warning)&&n.cv.util.notify(i,t.meta.warning,n.cv.css.messageTypes.warning,{clearExisting:!1})}).fail(function(){var t=n.cv.util.string.format(nt.options.updateTemplateOrderFailureMessage,r.TemplateName||r.SoCustReference);n.cv.util.notify(i,t,n.cv.css.messageTypes.error)}).always(function(){i.set("isSavingOrder",!1);nt.trigger(k,r);t===!0?(i._viewOrder_Internal(r),nt.unbind("afterViewLines").bind("afterViewLines",function(){i.set("isSavingOrder",!1)})):i.set("isSavingOrder",!1)})},undoLineChanged:function(t){var i=this,r=i.get("orderNo");t.preventDefault();t.stopPropagation();i.set("isUndoing",!0);n.cv.util.clearNotifications(i);i._viewOrder_Internal(r).done(function(){var t=n.cv.util.string.format(nt.options.unsavedChangesReversedMessage,r);n.cv.util.notify(i,t,n.cv.css.messageTypes.success);i.set("isUndoing",!1)})},printOrder:function(n){var t=this;return n.preventDefault(),n.stopPropagation(),nt.trigger(s),nt.options.openPrintOrderPage&&nt.options.openPrintOrderPage(t.get("currentOrder.SoOrderNo"),t.get("currentOrder.PrintOrderUrl")),!1},sortByColumn:function(t,i,r){var u=this;n.cv.util.sortByColumn(u,t,i,r)},getQuantityInCart:function(t){var r=0,i;return n.cv.util.isNullOrWhitespace(t)||(i=n.cv.css.localGetCurrentOrderLines(),i&&i.length!==0&&n.each(i,function(n,i){i.StockCode===t&&(r+=i.OrderedQty)})),r},_normalizeOrderForStandingOrders:function(n){n.data._normalizeOrderForStandingOrders!=null&&(n.data=this.currentOrder)},_updateSchedule:function(t){var r=this,u=-1,i,e;if(t.success&&n.cv.util.hasValue(t,"order[0]")&&n.cv.util.hasValue(t,"schedule[0]")){var o=t.order[0],s=t.schedule[0],h=s.OrderNumber,f=r.get("dataSource").data();for(i=0;i<f.length;i++)if(f[i].SoOrderNo==h){u=i;break}e=nt._augmentSchedule(s,o);u!=-1&&f.splice(u,1,e);r.currentOrder&&r.currentOrder.SoOrderNo==o.SoOrderNo&&r.set("currentOrder",e)}return u},onEditSchedule_ForView:function(n){this.onEditSchedule(n)},onEditSchedule:function(t){this._normalizeOrderForStandingOrders(t);var i=t.data;this.set("selectedSchedule",i);n.cv.css.orders.getStandingOrderScheduleEditHtml({_objectKey:i._objectKey}).done(function(t){var r='<header class="modal-header standing-order">
41\n                                <span class="ico-heading">'.concat(nt.options.modalPopupEditStandingOrderTitle,'<\/span>\n                             <\/header>\n                             <section class="modal-content standing-order">').concat(t.data,"<\/section>"),u=n.cv.util.createContainer({html:r}),i="#"+u.attr("id");n.fancybox.open({href:i,beforeClose:function(){var f=n(i),r=f.find("[data-role=schedulestandingorder]").data("scheduleStandingOrder").viewModel,t=r.get("responseOrder"),u=r.get("responseSchedule");t&&u&&tt._updateSchedule({schedule:u,order:t,success:!0});tt.currentOrder&&n.cv.util.hasValue(t,"[0].SoCustReference")&&tt.currentOrder.set("TemplateName",t[0].SoCustReference)},minWidth:"90%"})})},onChangeToSharedOrder:function(n){return this._normalizeOrderForStandingOrders(n),this._changePersonalSharedState(n.data._objectKey,!1)},onChangeToPersonalOrder:function(n){return this._normalizeOrderForStandingOrders(n),this._changePersonalSharedState(n.data._objectKey,!0)},_changePersonalSharedState:function(t,i){var r=this;return n.cv.css.orders.changeStandingOrderPersonalSharedState({_objectKey:t,setToPersonal:i}).done(function(n){var t=n.data;t.success&&r._updateSchedule(t)})},availableOwners:[],isChangingOwnership:!1,onChangeOwnership:function(t){this._normalizeOrderForStandingOrders(t);var i=this,r=t.data;i.set("selectedSchedule",r);n.cv.css.orders.getPossibleStandingOrderOwners({_objectKey:r._objectKey}).done(function(t){i.set("availableOwners",_.map(t.data.availableOwners,function(n){return{name:n,value:n.toLowerCase()}}));var r="#"+nt.options.modalPopupChangeOwnershipId,u=n("select.cv-dropdown",r);u.data("kendoDropDownList")==null&&u.kendoDropDownList();n.fancybox({href:r,beforeClose:function(){i.set("isChangingOwnership",!1)}})})},onChangeOwnershipSubmit:function(){var t=this,i=t.get("selectedSchedule");return t.set("isChangingOwnership",!0),n.cv.css.orders.setStandingOrderOwner({_objectKey:i._objectKey,newOwner:i.schedule.Owner}).done(function(n){var i=n.data;i.success&&t._updateSchedule(i)}).always(function(){n.fancybox.close();t.set("isChangingOwnership",!1)})},onCancelNextScheduled:function(t){this._normalizeOrderForStandingOrders(t);var i=t.data;this.set("selectedSchedule",i);n.fancybox({href:"#"+nt.options.modalPopupCancelNextScheduleId})},selectedSchedule:null,onCancelNextScheduledSubmit:function(){var t=this,i=t.get("selectedSchedule");return n.cv.css.orders.cancelNextScheduledOrder({_objectKey:i._objectKey}).done(function(n){var i=n.data;i.success&&t._updateSchedule(i)}).always(function(){n.fancybox.close()})},onSuspend:function(t){this._normalizeOrderForStandingOrders(t);var i=this,r=t.data;return n.cv.css.orders.suspendStandingOrder({_objectKey:r._objectKey}).done(function(n){var t=n.data;t.success&&i._updateSchedule(t)})},onResume:function(t){this._normalizeOrderForStandingOrders(t);var i=this,r=t.data;return n.cv.css.orders.resumeStandingOrder({_objectKey:r._objectKey}).done(function(n){var t=n.data;t.success?i._updateSchedule(t):i.set("messages",t.messages)})},onDelete:function(t){this._normalizeOrderForStandingOrders(t);var i=t.data;this.set("selectedSchedule",i);n.fancybox({href:"#"+nt.options.modalPopupDeleteScheduledOrderId})},onDeleteSubmit:function(t){var r=this,u=r.get("selectedSchedule");return n.cv.css.orders.deleteStandingOrder({_objectKey:u._objectKey}).done(function(n){var u=n.data;u.Success&&(r.get("mode")==i?nt.viewModel.goBackToOrders(t):nt.dataSource.fetch())}).always(function(){n.fancybox.close()})},onSelectApprover:function(t){var u,i,r,f;this._normalizeOrderForStandingOrders(t);u=this;i=t.data;u.set("selectedSchedule",i);r=n("[data-role=orderapproval]:first");r.length>0&&(f=r.data("orderApproval"),f.setupForOrder(i).done(function(t){t.data.WillRequireApprovalIfSubmitted==!0&&n.fancybox({href:"#"+r.attr("id"),modal:!0,beforeClose:function(){setTimeout(function(){var t=i._objectKey;n.cv.css.orderApproval.notifyApprovers({_objectKey:t});n.cv.css.orders.getStandingOrderInformation({_objectKey:t}).done(function(n){var t=n.data;t.success&&u._updateSchedule(t)})},4)}})}))},navigateToAccountSelect:function(){n.cv.util.navigateToPageWithRedirectOption(nt.options.accountSelectPageUrl,!0)}})),rt=n.cv.util.queryStringValue("action"),it;if(rt&&rt.toLowerCase()=="save"){tt.set("actionIsSave",!0);n.cv.css.orderTemplate.getOrderTemplatesForUser({take:9999}).done(function(t){var i=[],r;nt.options.usePleaseSelectForTemplateNames?i.push({TemplateID:"",TemplateName:"Please Select..."}):i.push({TemplateName:""});r=t.data;n.each(r,function(n,t){t.IsTemplateOrderThisUserCanModify&&(t.TemplateID=t.TemplateName,i.push(t))});tt.set("saveTemplateList",i)}).fail(function(){n.cv.util.notify(tt,nt.options.loadUserTemplatesFailureMessage,n.cv.css.messageTypes.error)});it=n.cv.util.queryStringValue("TemplateType").toLowerCase();switch(it){case"order":tt.set("saveTemplateType",it);break;case"catalogue":tt.set("saveTemplateType",it)}}return tt}};n.cv.ui.widget(nt)}(jQuery);
42(function(n){var t="cataloguechanged",i=!0,r={name:"catalogueSelect",options:{globalCatalogueAccess:"",currentCatalogue:"",catalogues:"",catalogueOptionsTextField:"Description",catalogueOptionsValueField:"CatalogueCode",globalCatalogueValue:"",currentCatalogueNotListedCatalogueValue:"NONE",reloadOnChange:!0,usingKendoDropdown:!1,reloadOnChangePage:"/home.aspx",catalogueListPrompt:"My Catalogues",globalCatalogueText:"Global",currentCatalogueNotListedCatalogueText:"Please Select...",successfulChangeCatalogueText:"Your catalogue was successfully changed.",errorChangingCatalogueText:"There was an error changing your catalogue, please try again or try another catalogue.",viewTemplate:null},events:[t],viewModel:null,view:null,_viewAppended:!1,initialise:function(t){var i=this,u=n(t).children(":first"),f,r,e;u.data("view")?i.view=u.html():(i.options.viewTemplate||(i.options.viewTemplate=i._getDefaultViewTemplate()),f=kendo.template(i.options.viewTemplate),i.view=f(i.options),n(t).append(i.view),i._viewAppended=!0);r=i._getViewModel();e=n(i.element).children(":first");kendo.bind(e,r);n.cv.css.bind(n.cv.css.eventnames.accountChanged,n.proxy(r.resetCatalogueList,r));n.cv.css.bind(n.cv.css.eventnames.userChanged,n.proxy(r.resetCatalogueList,r))},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},_getViewModel:function(){var r=this,s=function(){var t=n.Deferred(),i="",f;r.options.catalogues.length==0?(i=n.cv.css.catalogue.localGetUserCatalogues(),i!=null?t.resolve(i):(f=n.cv.css.catalogue.getUserCatalogues(),n.when(f).done(function(n){t.resolve(n.data)}))):t.resolve(r.options.catalogues);n.when(t).done(function(n){u.set("catalogues",n)})}
42,h=function(){var h=u.get("catalogues"),t="",f,s,c;h&&h.length>0?typeof h=="object"?(t=h,e(t)&&(f={},f[r.options.catalogueOptionsTextField]=r.options.globalCatalogueText,f[r.options.catalogueOptionsValueField]=r.options.globalCatalogueValue,t=n.merge([f],t)),o(t)&&(s={},s[r.options.catalogueOptionsTextField]=r.options.currentCatalogueNotListedCatalogueText,s[r.options.catalogueOptionsValueField]=r.options.currentCatalogueNotListedCatalogueValue,t=n.merge([s],t))):(t=h.split(","),e(t)&&(f=r.options.globalCatalogueText,t=n.merge([f],t)),o(t)&&(s=r.options.currentCatalogueNotListedCatalogueText,t=n.merge([s],t))):(c={},c[r.options.catalogueOptionsTextField]="",c[r.options.catalogueOptionsValueField]="",t=n.merge([c],t));u.set("cataloguesDataSource",t);r.options.currentCatalogue.length>0&&u.set("currentCatalogue",r.options.currentCatalogue);i=!1},e=function(n){return r.options.globalCatalogueAccess.toLowerCase()!="full"&&r.options.globalCatalogueAccess.toLocaleLowerCase()!="viewonly"||f(n,r.options.globalCatalogueText)?r.options.currentCatalogue!=""||f(n,r.options.globalCatalogueText)?!1:!0:!0},o=function(n){return f(n,r.options.currentCatalogue)||r.options.currentCatalogue==r.options.globalCatalogueValue||f(n,r.options.currentCatalogueNotListedCatalogueValue)||f(n,r.options.currentCatalogueNotListedCatalogueText)?!1:!0},f=function(t,i){var u=!1;return n.each(t,function(n,t){var f;return f=typeof t=="object"?t[r.options.catalogueOptionsValueField]:t,i==f?(u=!0,!1):void 0}),u},c=function(){var n={};return n[r.options.catalogueOptionsTextField]="",n[r.options.catalogueOptionsValueField]="",n},u=kendo.observable({currentCatalogue:"",catalogues:r.options.catalogues,cataloguesDataSource:c(),isProcessing:!1,canRedirect:!r.options.usingKendoDropdown,hasCatalogues:function(){return this.get("catalogues")&&this.get("catalogues").length>0?!0:!1},catalogueSelected:function(){var i=this,u=i.currentCatalogue,f;u!==r.options.currentCatalogueNotListedCatalogueValue&&u!==r.options.currentCatalogue&&(u==r.options.globalCatalogueText&&(u=r.options.globalCatalogueValue),i.set("isProcessing",!0),f=n.cv.css.catalogue.setUserCatalogue({catalogueCode:u}),n.when(f).done(function(){i.set("widgetMessage",r.options.successfulChangeCatalogueText);r.trigger(t);n.cv.css.removeLocalStorage(n.cv.css.localStorageKeys.currentOrder);r.options.reloadOnChange&&i.get("canRedirect")===!0&&n.cv.util.redirect(r.options.reloadOnChangePage,null,!1)}).fail(function(){i.set("widgetMessage",r.options.errorChangingCatalogueText);i.set("isProcessing",!1)}))},dropdownlistSelect:function(){this.set("canRedirect",!0)},resetCatalogueList:function(){n.cv.css.catalogue.localSetUserCatalogues(null)},widgetMessage:"",clearWidgetMessage:function(){this.set("widgetMessage","")}});return u.bind("change",function(n){n.field!="currentCatalogue"||i||u.catalogueSelected();n.field=="catalogues"&&h()}),s(),u},_getDefaultViewTemplate:function(){var n=this;return"<div class='row clearfix'><div class='row-left' data-bind='visible: hasCatalogues'>"+n.options.catalogueListPrompt+"<\/div><div class='row-right'># if ($.isArray(catalogues)) { #<select data-bind='source: cataloguesDataSource, value: currentCatalogue' data-text-field='Description' data-value-field='CatalogueCode'><\/select># } else { #<select data-bind='source: cataloguesDataSource, value: currentCatalogue'><\/select># } #<\/div><\/div>"}};n.cv.ui.widget(r)})(jQuery);
43(function(n){var i="widgetDataInitialised",r="listUpdated",u="allUnconfirmed",f="allConfirmed",h="proceed",e="cancel",c="bottom",o="top",s="both",t=n.Deferred(),l={name:"checkoutMessages",extend:"mvvmwidget",options:{dataSource:[],autoBind:!0,useMultiLineConfirmations:!1,useGlobalConfirmation:!0,getDataOnInit:!1,listUpdated:null,allUnconfirmed:null,allConfirmed:null,widgetDataInitialised:null,triggerMessages:!1,clearWidgetMessages:!0,pageable:!0,pagerPosition:o,textConfirmMessagePrompt:"I confirm I have read this message",textConfirmAllMessagesPrompt:"I confirm I have read all messages",textUnconfirmedCheckoutMessagesExist:"You have messages you need to confirm you have read",viewTemplate:null,itemTemplate:""},events:["dataBinding","dataBound",i,r,f,u,e],initialise:function(n,t){var i=this;if(t.IS_MAF)i.onPageShow(function(){i.dataSource&&_.each(i.dataSource.data(),function(n){n.set("isConfirmed",!1)})})},viewModelBinding:function(){var i=this;n.cv.css.trigger(n.cv.css.eventnames.orderCompleteLoadRegistration,{name:i.name});i._PREORDERSUBMIT=t},viewModelBound:function(){var i=this;n.cv.css.addRemoveSubmitPromiseObjects("true",i.name,t.promise());n.cv.css.bind(n.cv.css.eventnames.orderChanged,n.proxy(i.viewModel.orderUpdated,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.preOrderSubmit,n.proxy(i.viewModel.preOrderSubmit,i.viewModel))},initDataSource:function(){var r=this,o=n.Deferred(),u=n.cv.css.localGetCurrentOrder(),f=[],e;
43r.options.getDataOnInit||r.viewModel.get("isPreCheckout")?(r.viewModel.set("isProcessing",!0),e=n.Deferred(),u==null?e=n.cv.css.getCurrentOrder():e.resolve(),n.when(e).done(function(){if(u=n.cv.css.localGetCurrentOrder(),n.cv.util.hasValue(u)){var i=n.cv.css.orders.determineCheckoutMessages({_objectKey:u._objectKey});n.when(i).done(function(i){i.errorMessage&&i.errorMessage.length!=0?r.viewModel.setMessage(i.errorMessage,n.cv.css.messageTypes.error):(f=i.data,f.length==0&&(t.resolve(),n.cv.css.trigger(n.cv.css.eventnames.widgetPreOrderSubmitComplete)));var u=_.map(r.dataSource.data(),function(n){return{rowID:n.RowID,isConfirmed:n.isConfirmed}});r.setDataSource(f);r.options.IS_MAF===!0&&_.each(r.dataSource.data(),function(n){_.each(u,function(t){n.RowID==t.rowID&&n.set("isConfirmed",t.isConfirmed)})});r.viewModel.set("dataLoaded",!0);o.resolve()})}})):(r.setDataSource(f),o.resolve());n.when(o).done(function(){r.viewModel.set("isProcessing",!1);r.trigger(i,{viewCount:r.viewModel.get("itemList").length,dataCount:r.viewModel.get("dataCount"),hasMessagesRequiringConfirmation:r.viewModel.get("hasMessagesRequiringConfirmation")})})},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var i=this,s=[],a=function(){if(!i.dataSource)return s;var t=!1;return n.each(i.dataSource.data(),function(n,i){i.RequiresUserConfirmation==1&&(t=!0)}),t},c=function(){if(!i.dataSource)return s;var t=!0;return n.each(i.dataSource.data(),function(n,i){i.RequiresUserConfirmation!=1||i.isConfirmed&&i.isConfirmed!=undefined||(t=!1)}),t},l=function(){return i.dataSource?(n.each(i.dataSource.view(),function(n,t){t.index=n;t.RequiresUserConfirmation!=1||t.isConfirmed||(t.isConfirmed=!1);i.options.useMultiLineConfirmations&&t.bind("change",function(n){n.field=="isConfirmed"&&(o.set("isSingleConfirmation",!0),o.set("areAllCheckoutMessagesConfirmed",c()),o.set("isSingleConfirmation",!1))})}),i.dataSource.view()):s},o=kendo.observable(n.extend(i.options,{isProcessing:!1,isProceeding:!1,isCancelling:!1,isSingleConfirmation:!1,isPreCheckout:!1,updateViewModelFromDataSource:function(){var n=l();this.set("itemList",n);this.set("areAllCheckoutMessagesConfirmed",c());this.set("dataCount",i.dataSource.data().length);this.set("hasMessagesRequiringConfirmation",a());i.trigger(r,{viewCount:n.length,dataCount:this.get("dataCount"),hasMessagesRequiringConfirmation:this.get("hasMessagesRequiringConfirmation")})},itemList:l(),message:"",clearWidgetMessages:i.options.clearWidgetMessages,setMessage:function(t,r){n.cv.util.notify(this,t,r,{triggerMessages:i.options.triggerMessages,source:i.name})},clearMessage:function(){this.set("message","");i.options.triggerMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"checkoutMessages",clearExisting:!0})},dataCount:0,dataLoaded:!1,checkoutMessagesExist:function(){return this.get("dataCount")>0},multipleCheckoutMessagesExist:function(){return this.get("dataCount")>1},areAllCheckoutMessagesConfirmed:c(),hasMessagesRequiringConfirmation:!1,orderUpdated:function(){this.set("isPreCheckout",!1);this.set("dataLoaded",!1);t=n.Deferred();n.cv.css.addRemoveSubmitPromiseObjects("true",i.name,t.promise());i.initDataSource()},preOrderSubmit:function(){var r=this;this.set("isPreCheckout",!0);i.options.getDataOnInit||this.get("dataLoaded")!==!1?this.get("areAllCheckoutMessagesConfirmed")?(t.resolve(),n.cv.css.trigger(n.cv.css.eventnames.widgetPreOrderSubmitComplete)):r.preOrderSubmitFail():i.initDataSource()},preOrderSubmitFail:function(){},confirmAllCheckoutMessages:function(){this.get("areAllCheckoutMessagesConfirmed")?(n.each(i.dataSource.data(),function(n,t){t.RequiresUserConfirmation!=1||t.isConfirmed&&t.isConfirmed!=undefined||t.set("isConfirmed",!0)}),this.clearMessage(),i.trigger(f)):(n.each(i.dataSource.data(),function(n,t){t.RequiresUserConfirmation==1&&(t.isConfirmed||t.isConfirmed==undefined)&&t.set("isConfirmed",!1)}),i.trigger(u),this.setMessage(i.options.textUnconfirmedCheckoutMessagesExist,n.cv.css.messageTypes.info));n.cv.css.trigger(n.cv.css.eventnames.checkoutMessages,{allCheckoutMessagesConfirmed:this.get("areAllCheckoutMessagesConfirmed")})},cancel:function(){this.set("isProceeding",!1);this.set("isCancelling",!0);i.trigger(e)},proceed:function(){this.set("isCancelling",!1);this.get("areAllCheckoutMessagesConfirmed")&&(this.set("isProceeding",!0),n.cv.css.trigger(h),this.get("isPreCheckout")&&(t.resolve(),n.cv.css.trigger(n.cv.css.eventnames.widgetPreOrderSubmitComplete)))}}));return o.bind("change",function(n){n.field=="areAllCheckoutMessagesConfirmed"&&(o.get("isSingleConfirmation")||o.confirmAllCheckoutMessages())}),o},_buildViewTemplate:function(){var n=this;n._buildDefaultViewTemplate()},_buildDefaultViewTemplate:function(){var n=this;n._buildDefaultPagerTopTemplate();n._buildDefaultContentTemplate();n._buildDefaultPagerBottomTemplate()},_buildDefaultContentTemplate:function(){var t=this,n="<div class='cv-ui-element-content-area'>";t.options.useGlobalConfirmation&&(n+="<label for='checkout-message-confirmation-global'>
43",n+="<span data-bind='invisible: multipleCheckoutMessagesExist'>"+t.options.textConfirmMessagePrompt+"<\/span>",n+="<span data-bind='visible: multipleCheckoutMessagesExist'>"+t.options.textConfirmAllMessagesPrompt+"<\/span>",n+="<\/label>",n+="<input type='checkbox' id='checkout-message-confirmation-global' data-bind='checked: areAllCheckoutMessagesConfirmed' />");n+="<div class='itemList' data-bind='source: itemList' data-template='"+t.options.itemTemplateId+"'><\/div>";n+="<\/div>";t.viewTemplate+=n},_buildDefaultPagerTopTemplate:function(){var n=this;n.options.pageable&&(n.options.pagerPosition==s||n.options.pagerPosition==o)&&n._buildDefaultPagerTemplate()},_buildDefaultPagerBottomTemplate:function(){var n=this;n.options.pageable&&(n.options.pagerPosition==s||n.options.pagerPosition==c)&&n._buildDefaultPagerTemplate()},_buildDefaultPagerTemplate:function(){var n=this;n.viewTemplate+="<div data-role='pager' data-auto-bind='false' data-bind='source: dataSource'><\/div>"},_buildItemTemplateBody:function(){var t=this,n="# if(index % 2 == 0) { #";n+="<div class='checkout-message odd-row'>";n+="# } else { #";n+="<div class='checkout-message even-row'>";n+="# } #";n+="<span data-bind='html: Message'><\/span>";t.options.useMultiLineConfirmations&&(n+="# if(RequiresUserConfirmation == 1) { #",n+="<span class='checkout-message-confirmation'>",n+="<input type='checkbox' id='checkout-message-confirmation#= RowID #' data-bind='checked: isConfirmed' />",n+="<label for='checkout-message-confirmation#= RowID #'>",n+=t.options.textConfirmMessagePrompt,n+="<\/label>",n+="<\/span>",n+="# } #");n+="<\/div>";t.itemTemplate+=n}};n.cv.ui.widget(l)})(jQuery);
44(function(n){var t={name:"mailingList",extend:"mvvmwidget",options:{emailAddress:"",listId:"",autoBind:!0,triggerMessages:!0,clearWidgetMessages:!0,textMandatoryFieldsMissing:"The following fields are required: {0}",subscribeSuccess:"Thank you for signing up",unsubscribeSuccess:"We have removed you from our list",emailAddressIsEmpty:"Please enter an email address",invalidEmailAddress:"{0} is not a valid email",errorSubscribing:"We can't sign you up at the moment, please contact us directly if this issue persists",errorUnsubscribing:"We can't unsubscribe you up at the moment, please contact us directly if this issue persists",errorSubscribingTransactionalMessage:"This email is already registered but not subscribed yet. Would you like to receive occasional promotional material and information? Please click <a href='' target='_blank'>here<\/a> to sign up.",isMailChimpV3:!1,hasFieldGroup:!1},viewModelBound:function(){var t=this,i;t.options.isMailChimpV3===!0&&(i=[],t.viewModel.set("isProcessing",!0),n.cv.css.mailingList.getNewsletterSubscribeFieldGroupData().done(function(r){n.cv.util.hasValue(r,"errorMessage[0]")===!1&&(n.cv.util.hasValue(r,"data[0].Fields")===!0?(i=r.data[0].Fields,t.viewModel.set("fieldGroupDescription",r.data[0].Description)):i=[],t.viewModel.set("itemList",t._getDataView(i)))}).always(function(){t.viewModel.set("isProcessing",!1)}))},_getDataView:function(t){var i=this,r=[];return n.each(t,function(t,u){u.index=t;u.MandatoryMessage=i.options.textMandatoryFieldNotComplete;u.FieldName===i.options.notifyEmailAddressFieldName&&i.options.notificationEmailPrompt&&(u.Placeholder=i.options.notificationEmailPrompt);var f=n.cv.util.getFieldItemData(u);r.push(f)}),r},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this,i=kendo.observable(n.extend(t.options,{emailAddress:t.options.emailAddress,listId:t.options.listId,fieldGroupDescription:"",itemList:[],isSubscribing:!1,isUnsubscribing:!1,_getItemListFields:function(){var t=this,i={};return n.cv.util.clearMessage.apply(t),n.each(t.get("itemList"),function(n,t){i[t.fieldItem.fieldName]=this.get(t.fieldItem.fieldName)}),i},_checkAllRequiredFields:function(){var r=this,u=!0,i="",f=r._getMandatoryFieldList();return n.each(f,function(n,t){t.fieldItem.parent().fieldValid({data:t.fieldItem.parent()},!0)||(u=!1,i+=","+t.emptyMessage)}),i!==""&&(i=t.options.textMandatoryFieldsMissing.format(i.substring(1)),n.cv.util.setMessage.apply(r,[i,n.cv.css.messageTypes.error])),u},_getMandatoryFieldList:function(){var i=this,t=[];return n.each(i.get("itemList"),function(i,r){r.fieldItem.mandatory&&t.push(n.extend(r,{emptyMessage:r.prompt}))}),t},subscribeOnEnter:function(n){n.which==13&&(n.preventDefault(),n.stopPropagation(),this.subscribe())},subscribe:function(){var i=this;i.get("isSubscribing")||i.get("isUnsubscribing")||i._isEmailComplete()&&i._checkAllRequiredFields()&&(i.set("isSubscribing",!0),n.cv.css.mailingList.getMemberStatus({listID:i.get("listId"),emailAddress:i.get("emailAddress")}).done(function(r){r.Status!=="Transactional"?n.cv.css.mailingList.subscribe({listID:i.get("listId"),emailAddress:i.get("emailAddress"),options:i._getItemListFields()},t.options.isMailChimpV3).done(function(n){var u=n,f=i.get("subscribeSuccess"),r=i.get("errorSubscribing");t.options.isMailChimpV3&&(u=n.Succeeded,r=n.Error||r);i._processReturnData(u,f,r,"isSubscribing")}).fail(function(){n.cv.util.notify(t.viewModel,i.get("errorSubscribing"),n.cv.css.messageTypes.error);i.set("isSubscribing",!1)}
44):(n.cv.util.notify(t.viewModel,i.get("errorSubscribingTransactionalMessage"),n.cv.css.messageTypes.error),i.set("isSubscribing",!1))}).fail(function(){n.cv.util.notify(t.viewModel,i.get("errorSubscribing"),n.cv.css.messageTypes.error);i.set("isSubscribing",!1)}))},unsubscribe:function(){var i=this;i.get("isSubscribing")||i.get("isUnsubscribing")||i._isEmailComplete()&&(i.set("isUnsubscribing",!0),n.cv.css.mailingList.unsubscribe({listID:i.get("listId"),emailAddress:i.get("emailAddress")},t.options.isMailChimpV3).done(function(n){i._processReturnData(n,i.get("unsubscribeSuccess"),i.get("errorUnsubscribing"),"isUnsubscribing")}).fail(function(){n.cv.util.notify(t.viewModel,i.get("errorUnsubscribing"),n.cv.css.messageTypes.error);i.set("isUnsubscribing",!1)}))},_processReturnData:function(i,r,u,f){var o=this,e=t.options.isMailChimpV3?i:i.data;t.options.isMailChimpV3&&e===!0||e&&e.Success?(n.cv.util.notify(t.viewModel,r,n.cv.css.messageTypes.success),o.set("emailAddress",""),n.each(o.get("itemList"),function(n,t){t.set(t.fieldItem.fieldName,"")})):n.cv.util.notify(t.viewModel,u,n.cv.css.messageTypes.error);n.cv.util.hasValue(e,"DebugInfo[0]")===!0&&console.log(e.DebugInfo);o.set(f,!1)},_isEmailComplete:function(){var i=this,r=!0;return i._isValidEmail()&&i.get("emailAddress").length!=0||(i.get("emailAddress").length==0?n.cv.util.notify(t.viewModel,i.get("emailAddressIsEmpty"),n.cv.css.messageTypes.error):n.cv.util.notify(t.viewModel,i.get("invalidEmailAddress").format(i.get("emailAddress")),n.cv.css.messageTypes.error),r=!1),r},_isValidEmail:function(){var t=this;return n.cv.util.validateField(t.get("emailAddress"),"email")},_showMessages:function(i,r){var u="";n.each(i,function(n,t){u+="<div>"+t+"<\/div>"});u.length>0&&n.cv.util.notify(t.viewModel,u,r)}}));return i.bind("change",function(){}),i}};n.cv.ui.widget(t)})(jQuery);
45(function(n){var t="onBeforeSubmit",i="onAfterSubmit",r="onCancel",u="onPopupClosed",f={name:"productReviewWidget",options:{dynamicService:"productReview",viewTemplate:null,productCode:null,productDescription:null,reviewerName:"",reviewerEmail:"",submitButtonText:"Submit Review",cancelButtonText:"Cancel",popupId:null,fancyboxOptions:{},ratings:[],triggerMessages:!1,useStarRatingPlugin:!0,namePrompt:"Name",emailPrompt:"Email",ratingPrompt:"Overall Rating",locationPrompt:"Location",titlePrompt:"Review Title",summaryPrompt:"Your Review"},events:[t,i,r,u],_viewModel:null,_view:null,_viewAppended:!1,_errorClass:"error",_defaultPopupId:"productReviewPopup",initialise:function(t){var i=this,r,u,f;i.options.productCode=t.attr("data-product-code");r=n(t).children(":first");r.data("view")?i.view=r.html():(i.options.viewTemplate||(i.options.viewTemplate=i._getDefaultViewTemplate()),u=kendo.template(i.options.viewTemplate),i.view=u(i.options),r.append(i.view),i._viewAppended=!0);i.viewModel=i._getViewModel();f=n(i.element).children(":first");kendo.bind(f,i.viewModel)},destroy:function(){var n=this;n.element.removeData(n.options.prefix+n.options.name);n._viewAppended&&n.element.empty()},_getViewModel:function(){var f=this,e=kendo.observable({productDescription:"[PRODUCT]",name:"",email:"",location:"",title:"",summary:"",rating:"",ratings:[],submitButtonText:null,cancelButtonText:null,isSaving:!1,isNotSaving:function(){return!this.get("isSaving")},_getSubmitData:function(){return{productCode:f.options.productCode,name:this.name,email:this.email,location:this.location,title:this.title,text:this.summary,ratingCode:this.rating}},submit:function(r){if(r.preventDefault(),this.set("showValidationErrors",!0),!this.isFormInvalid()&&!this.get("isSaving")){this.set("isSaving",!0);f.options.useStarRatingPlugin&&n("input.star").rating("readOnly",!0);var e=this._getSubmitData(),u=this._getSubmitData();f.trigger(t,u);n.cv.ajax.call(f.options.dynamicService+"/SaveProductReview",{parameters:e,success:function(){f.trigger(i,u);f.options.popupId&&n.fancybox.close();f.viewModel.resetForm()}})}},cancel:function(t){t.preventDefault();f.trigger(r);f.options.popupId&&n.fancybox.close()},resetForm:function(){f.viewModel.set("showValidationErrors",!1);
45f.viewModel.set("name",f.options.reviewerName);f.viewModel.set("email",f.options.reviewerEmail);f.viewModel.set("location","");f.viewModel.set("title","");f.viewModel.set("summary","");f.viewModel.set("rating","");f.viewModel.set("isSaving",!1);f.options.useStarRatingPlugin&&n("input.star").rating("readOnly",!1).rating("select",!1)},show:function(t){if(t.preventDefault(),this.isPopup()){var r=f.options.popupId?f.options.popupId:f._defaultPopupId,i={href:"#"+r,afterClose:function(){f.viewModel.set("showValidationErrors",!1);f.trigger(u)}};i=n.extend(i,f.options.fancyboxOptions);n.fancybox(i)}},isPopup:function(){return f.options.popupId!=null},showValidationErrors:!1,isFormInvalid:function(){var n=!this.isFormValid();return n&&f.options.triggerMessages&&this.triggerValidationMessage(),n},isFormValid:function(){return this.nameIsEmpty()==!1&&this.emailIsEmpty()==!1&&this.emailIsInvalid()==!1&&this.locationIsEmpty()==!1&&this.titleIsEmpty()==!1&&this.summaryIsEmpty()==!1&&this.ratingIsEmpty()==!1},triggerValidationMessage:function(){var i=this,t="",r="",u=!0,e=i.get("name"),o=f.name;t=i.nameIsEmpty()?f.options.namePrompt:"";t=i.emailIsEmpty()?(t.length>0?t+", ":"")+f.options.emailPrompt:t;t=i.ratingIsEmpty()?(t.length>0?t+", ":"")+f.options.ratingPrompt:t;t=i.locationIsEmpty()?(t.length>0?t+", ":"")+f.options.locationPrompt:t;t=i.titleIsEmpty()?(t.length>0?t+", ":"")+f.options.titlePrompt:t;t=i.summaryIsEmpty()?(t.length>0?t+", ":"")+f.options.summaryPrompt:t;t=t.length>0?"The following fields are required: "+t:t;i.emailIsEmpty()||(r=i.emailIsInvalid()?f.options.emailPrompt+" is invalid":"");i.name=o;t.length>0&&(n.cv.util.notify(i,t,n.cv.css.messageTypes.error,{triggerMessages:f.options.triggerMessages,source:f.name,clearExisting:!0}),u=!1);r.length>0&&n.cv.util.notify(i,r,n.cv.css.messageTypes.error,{triggerMessages:f.options.triggerMessages,source:f.name,clearExisting:u});i.name=e},nameIsEmpty:function(){return!!this.get("showValidationErrors")&&n.trim(this.get("name")).length==0},nameInputClass:function(){return this.nameIsEmpty()?f._errorClass:""},emailIsEmpty:function(){return!!this.get("showValidationErrors")&&n.trim(this.get("email")).length==0},emailIsInvalid:function(){if(this.get("showValidationErrors")){if(this.emailIsEmpty()==!1)return!/\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/.test(this.get("email"));return!0}return!1},emailInputClass:function(){return this.emailIsEmpty()||this.emailIsInvalid()?f._errorClass:""},emailErrorText:function(){return this.emailIsEmpty()?"Required":this.emailIsInvalid()?"Invalid":""},locationIsEmpty:function(){return!!this.get("showValidationErrors")&&n.trim(this.get("location")).length==0},locationInputClass:function(){return this.locationIsEmpty()?f._errorClass:""},titleIsEmpty:function(){return!!this.get("showValidationErrors")&&n.trim(this.get("title")).length==0},titleInputClass:function(){return this.titleIsEmpty()?f._errorClass:""},summaryIsEmpty:function(){return!!this.get("showValidationErrors")&&n.trim(this.get("summary")).length==0},summaryInputClass:function(){return this.summaryIsEmpty()?f._errorClass:""},ratingIsEmpty:function(){return!!this.get("showValidationErrors")&&n.trim(this.get("rating")).length==0},ratingInputClass:function(){return this.ratingIsEmpty()?f._errorClass:""}});return f.options.productDescription==null?n.cv.ajax.call(f.options.dynamicService+"/GetProductInfo",{parameters:{productCode:f.options.productCode},success:function(n){n.data.length==1&&e.set("productDescription",n.data[0].Description)}}):e.set("productDescription",f.options.productDescription),e.set("name",f.options.reviewerName),e.set("email",f.options.reviewerEmail),e.set("submitButtonText",f.options.submitButtonText),e.set("cancelButtonText",f.options.cancelButtonText),e},_getDefaultViewTemplate:function(){var t=this,i;return t.options.ratings.length==0&&n.cv.ajax.call(t.options.dynamicService+"/LoadRatings",{parameters:{},success:function(i){t.options.ratings=i.data;t.viewModel.set("ratings",i.data);var r=n(".star");r.rating();r.first().addClass("required")}}),i=["<section class='cv-ui-layout-pagecontent'>","\t<div class='row'>","\t\t<div class='twelve columns'>","\t\t\t<h1 class='page-heading'>Write A Product Review<\/h1>","","\t\t\t<div class='cv-ui-widget-review'>","\t\t\t\t<div class='row'>","\t\t\t\t\t<div class='twelve columns'>","\t\t\t\t\t\t<p>If you have a <span style='font-weight: bold' data-bind='text: productDescription'><\/span>, let us know what you think. Write an opinion and share your opinions with others. All reviews will be independantly reviewed before being posted. Review must be on this particular product and not on the service or warranty issues.<\/p>","\t\t\t\t\t<\/div>","\t\t\t\t<\/div>","","\t\t\t\t<div class='row'>","\t\t\t\t\t<div class='six columns'>","\t\t\t\t\t\t<div data-bind='attr: { class: nameInputClass }'>","\t\t\t\t\t\t\t<label style='display: inline'>Name:<\/label> <label class='error' style='display: inline-block'>*<\/label>","\t\t\t\t\t\t\t<input type='text' data-bind='attr: { class: nameInputClass }, value: name, enabled: isNotSaving' data-value-update='keyup' maxlength='100'>","\t\t\t\t\t\t\t<small data-bind='visible: nameIsEmpty'>Required<\/small>","\t\t\t\t\t\t<\/div>","","\t\t\t\t\t\t<div data-bind='attr: { class: emailInputClass }'>","\t\t\t\t\t\t\t<label style='display: inline'>
45Email:<\/label> <label class='error' style='display: inline-block'>*<\/label>","\t\t\t\t\t\t\t<input type='email' data-bind='attr: { class: emailInputClass }, value: email, enabled: isNotSaving' data-value-update='keyup' maxlength='100'>","\t\t\t\t\t\t\t<small data-bind='visible: emailIsInvalid, text: emailErrorText'><\/small>","\t\t\t\t\t\t<\/div>","","\t\t\t\t\t\t<div data-bind='attr: { class: locationInputClass }'>","\t\t\t\t\t\t\t<label style='display: inline'>Location:<\/label> <label class='error' style='display: inline-block'>*<\/label>","\t\t\t\t\t\t\t<input type='text' data-bind='attr: { class: locationInputClass }, value: location, enabled: isNotSaving' data-value-update='keyup' maxlength='100'>","\t\t\t\t\t\t\t<small data-bind='visible: locationIsEmpty'>Required<\/small>","\t\t\t\t\t\t<\/div>","","\t\t\t\t\t\t<div data-bind='attr: { class: titleInputClass }'>","\t\t\t\t\t\t\t<label style='display: inline'>Review Title:<\/label> <label class='error' style='display: inline-block'>*<\/label>","\t\t\t\t\t\t\t<input type='text' data-bind='attr: { class: titleInputClass }, value: title, enabled: isNotSaving' data-value-update='keyup' maxlength='100'>","\t\t\t\t\t\t\t<small data-bind='visible: titleIsEmpty'>Required<\/small>","\t\t\t\t\t\t<\/div>","","\t\t\t\t\t\t<div data-bind='attr: { class: summaryInputClass }'>","\t\t\t\t\t\t\t<label style='display: inline'>Your Review:<\/label> <label class='error' style='display: inline-block'>*<\/label>","\t\t\t\t\t\t\t<textarea data-bind='attr: { class: summaryInputClass }, value: summary, enabled: isNotSaving' data-value-update='keyup'><\/textarea>","\t\t\t\t\t\t\t<small data-bind='visible: summaryIsEmpty'>Required<\/small>","\t\t\t\t\t\t<\/div>","\t\t\t\t\t<\/div>","","\t\t\t\t\t<div class='five columns'>","\t\t\t\t\t\t<div class='cv-ui-rating'>","\t\t\t\t\t\t\t<div class='row'>","\t\t\t\t\t\t\t\t<div class='five columns'>","\t\t\t\t\t\t\t\t\t<label class='overall' style='display: inline'>Overall Rating<\/label> <label class='error' style='display: inline-block'>*<\/label>","\t\t\t\t\t\t\t\t<\/div>","\t\t\t\t\t\t\t\t<div class='seven columns' data-bind='attr: { class: ratingInputClass }'>","                                   <div data-bind='source: ratings' data-template='"+t.options.itemTemplateId+"_rating_star'><\/div>","\t\t\t\t\t\t\t\t\t<div style='height: 2.5em'><\/div>","\t\t\t\t\t\t\t\t\t<small data-bind='visible: ratingIsEmpty'>Required<\/small>","\t\t\t\t\t\t\t\t<\/div>","\t\t\t\t\t\t\t<\/div>","\t\t\t\t\t\t<\/div>","\t\t\t\t\t<\/div>","\t\t\t\t<\/div>","\t\t\t\t","\t\t\t\t<hr />","\t\t\t\t<div class='row row-buttons'>","\t\t\t\t\t<div class='twelve columns' data-bind='visible: isNotSaving'>","\t\t\t\t\t\t<a href='javascript:$.noop()' class='cv-ui-button-green' data-reveal-id='modal-publish' data-bind='click: submit, text: submitButtonText'><\/a>","\t\t\t\t\t\t<a href='javascript:$.noop()' class='cv-ui-button-red' data-bind='click: cancel, text: cancelButtonText'><\/a>","\t\t\t\t\t<\/div>","\t\t\t\t\t<div class='twelve columns' data-bind='visible: isSaving'>","\t\t\t\t\t\tReview is being submitted. Please wait...<br />&nbsp;","\t\t\t\t\t<\/div>","\t\t\t\t<\/div>","\t\t\t<\/div>","\t\t<\/div>","\t<\/div>   "," <script type='text/x-kendo-template' id='"+t.options.itemTemplateId+"_rating_star'>","<input name='stars' type='radio' class='star' data-bind='value: Code, attr: { title: Description }, checked: rating' />"," <\/script>","<\/section>"].join("\n"),t.options.popupId&&(i=["<div id='productReviewPopup' style='display: none; margin-left: auto; margin-right: auto'>",i,"<\/div>"].join("\n")),i}};n.cv.ui.widget(f)})(jQuery);
46(function(n){var t={name:"continueToPayment",extend:"mvvmwidget",options:{validationWidgets:"deliveryAddress,freightCarrier,orderCompleteFields,deliveryMethod,forwardOrder",step1Container:"#cv-zone-checkout-step1-container",step2Container:"#cv-zone-checkout-step2-container",step2Hash:"step2",scrollToElement:"#cv-zone-layout",autoBind:!0,usingAddressValidation:!1,submitQuote:!1,validateOrderBeforeDisplayingPaymentOptions:!1,triggerMessages:!0,clearWidgetMessages:!0,errorLoggingOut:"There was an error logging you out, please refresh the page and try again",addressAndDeliveryStepNumber:2,step1OnCheckoutPage:1,step2OnCheckoutPage:2},initializedWidgets:{},initialise:function(){var t=this,i=t.viewModel;n(t.element).click(function(){i.continueOrder()});t.options.usingAddressValidation&&i._setIsDisabled(!0);n.cv.css.bind(n.cv.css.eventnames.addressValidated,n.proxy(t.viewModel._validationUpdated,t.viewModel));
46n.cv.css.bind(n.cv.css.eventnames.freightValidated,n.proxy(t.viewModel._validationUpdated,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.updateFreightStatusChanged,n.proxy(t.viewModel._setInProcessing,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.orderCompleteFieldsValidated,n.proxy(t.viewModel._validationUpdated,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.deliveryMethodValidated,n.proxy(t.viewModel._validationUpdated,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.addressBeingEdited,n.proxy(t.viewModel._addressBeingEdited,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.addressValidationUpdated,n.proxy(t.viewModel.addressValidationUpdated,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.widgetInitializingOnCheckout,n.proxy(t.addInitializingWidget,t));n.cv.css.bind(n.cv.css.eventnames.widgetFinishedInitializingOnCheckout,n.proxy(t.widgetFinishInitialized,t));n.cv.util.setupSinglePageHistoryStateHandler(t.element.attr("id"),{step:t.options.step1OnCheckoutPage},function(n){t.viewModel._showStep(n.step)},!1)},addInitializingWidget:function(n){var t=this;t.initializedWidgets[n]=!1;t.viewModel._setIsDisabled(!0)},widgetFinishInitialized:function(n){var t=this;t.initializedWidgets[n]=!0;_.every(_.values(t.initializedWidgets))&&t.viewModel._setIsDisabled(!1)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},scrollToTop:function(){var i=this,t=n(i.options.scrollToElement).offset();n.cv.util.hasValue(t)&&n("html,body").animate({scrollTop:t.top},"fast")},_getDefaultViewModel:function(){var t=this,i=kendo.observable(n.extend({},t.options,{_validationWidgets:t.options.validationWidgets.split(","),isProcessing:!1,isDisabled:t.options.usingAddressValidation,hasErrorsPreventingCheckout:!1,_hasValidationErrors:function(){var t=!1;return n.each(this.get("_validationWidgets"),function(i,r){_.contains(_.keys(n.cv.css.pageValidationErrors),r)&&(t=!0)}),t},_processPageValidationErrors:function(){var r="[data-role='{0}']",t,i=[];return n.each(this.get("_validationWidgets"),function(u,f){n(r.format(f.toLowerCase())+":not([data-is-view-only='true'])").each(function(){t=n(this).data(f);t&&n.isFunction(t.validateInputFields)&&i.push(t.validateInputFields(!0,null,!0))})}),n.when.apply(n,i)},_setInProcessing:function(n){var t=this;t._setIsProcessing(n)},_validationUpdated:function(){var n=this;n._setIsProcessing(!1)},_addressBeingEdited:function(){var n=this;t.options.usingAddressValidation&&n._setIsDisabled(!0);n.get("isDisabled")||n._setIsProcessing(!0)},addressValidationUpdated:function(n){var t=this;t._setIsDisabled(!n.valid)},_setIsProcessing:function(i){var r=this;r.set("isProcessing",i);i?n(t.element).addClass(n.cv.css.isProcessingClass):n(t.element).removeClass(n.cv.css.isProcessingClass)},_setIsDisabled:function(i){var r=this;r.set("isDisabled",i);i?n(t.element).addClass("disabled"):n(t.element).removeClass("disabled")},_setMessage:function(i,r,u){u===void 0&&(u=!0);n.cv.util.notify(this,i,r,{triggerMessages:!0,clearExisting:u,source:t.name})},_clearMessages:function(){n.cv.util.clearNotifications({viewModel:this,clearExisting:!0,source:t.name},!0)},_hasErrorPreventingCheckout:function(n){return _.some(n,function(n){return n.preventsCheckOut===!0})},_showStep:function(i){i===t.options.step1OnCheckoutPage?(window.location.hash="",n(t.options.step2Container).fadeOut("fast"),n(t.options.step1Container).fadeIn("fast"),t.scrollToTop(),n.cv.css.trigger(n.cv.css.eventnames.goToStep,t.options.addressAndDeliveryStepNumber)):i===t.options.step2OnCheckoutPage&&(window.location.hash=t.options.step2Hash,n(t.options.step1Container).fadeOut("fast"),n(t.options.step2Container).fadeIn("fast"),t.scrollToTop(),n.cv.css.trigger(n.cv.css.eventnames.continueToPayment))},_displayValidationMessages:function(t){var i=this,r=!0,u=n.cv.css.orders.buildLineValidationMessageArray(t.lineValidationErrors);return(i._hasErrorPreventingCheckout(t.headerValidationErrors)||i._hasErrorPreventingCheckout(u))&&(i.set("hasErrorsPreventingCheckout",!0),n.each(t.headerValidationErrors,function(t,u){u.preventsCheckOut&&(r=!1,i._setMessage(u.errorMessage,n.cv.css.messageTypes.error,!1))}),n.each(u,function(t,u){n.each(u.lineMessages,function(t,u){n.cv.util.hasContent(u.errorMessage)&&u.preventsCheckOut&&(i._setMessage(u.lineSeq+", "+u.productC
46ode+": "+u.errorMessage,n.cv.css.messageTypes.error,!1),r=!1)})})),r},continueOrder:function(){var i=this;i.get("isDisabled")||(i.get("isProcessing")?i._processPageValidationErrors():(i._setIsProcessing(!0),i._processPageValidationErrors().done(function(){if(i._hasValidationErrors())i.submitQuote||i._setIsProcessing(!1);else if(i.submitQuote)i._setIsProcessing(!0),n.cv.css.orders.validateForCheckout({_objectKey:n.cv.css.localGetCurrentOrder(!1)._objectKey}).done(function(t){var r=t.data,u=i._displayValidationMessages(r);u?n.cv.css.trigger(n.cv.css.eventnames.submitQuote):i._setIsProcessing(!1)}).fail(function(){i._setIsProcessing(!1)});else{t.options.validateOrderBeforeDisplayingPaymentOptions&&(i._setIsProcessing(!0),i.set("hasErrorsPreventingCheckout",!1),i._clearMessages());var r=t.options.validateOrderBeforeDisplayingPaymentOptions?n.cv.css.orders.validateForCheckout({_objectKey:n.cv.css.localGetCurrentOrder(!1)._objectKey}).done(function(t){var r=t.data;n.cv.util.hasValue(r,"modifiedLines[0]")&&(n.cv.css.localUpdateCurrentOrderLines(r.modifiedLines),n.cv.css.trigger(n.cv.css.eventnames.localOrderChanged,{preventValidation:!0}));i._displayValidationMessages(r)}):n.cv.css.getResolvedPromise();r.done(function(){i.get("hasErrorsPreventingCheckout")===!1&&i._showStep(t.options.step2OnCheckoutPage);i._setIsProcessing(!1)})}})))}}));return i.bind("change",function(){}),i}};n.cv.ui.widget(t)})(jQuery);
47(function(n){var t="productAdded",i="productRemoved",r={name:"productCompareButton",options:{productCode:"",description:"",image:"",enableRemoval:!0,productAdded:null,productRemoved:null,label:"Add to Compare",title:null,viewTemplate:"",gtmPageType:""},events:[t,i],viewModel:null,view:null,_viewAppended:!1,initialise:function(t,i){var r=this,f=n(r.element).attr("data-product-code"),e=n(r.element).attr("data-description"),u,o;f&&(i.productCode=f);e&&(i.description=e);u=n(t).children(":first");u.data("view")?r.view=u.html():(r.options.viewTemplate||(r.options.viewTemplate=r._getDefaultViewTemplate()),o=kendo.template(r.options.viewTemplate),r.view=o(r.options),n(t).append(r.view),r._viewAppended=!0);r._bind();
47n.cv.css.bind(n.cv.css.eventnames.productComparisonComparisonsChanged,function(){r.refresh()})},refresh:function(){this._bind()},destroy:function(){var n=this;n.element.removeData(n.options.prefix+n.options.name);n._viewAppended&&n.element.empty()},_bind:function(){var t=this,i=t._getViewModel(),r=n(t.element).children(":first");kendo.bind(r,i)},_getViewModel:function(){var r=this,u=n.cv.css.localDoesProductComparisonExist(r.options.productCode);return kendo.observable({productCode:r.options.productCode,description:r.options.description,image:r.options.image,title:r.options.title?r.options.title:r.options.productCode+" : "+r.options.description,label:r.options.label,isSelected:u,enableRemoval:r.options.enableRemoval,configureProductInComparisonList:function(){var u={productCode:r.options.productCode,description:r.options.description,image:r.options.image,isChecked:!1},f=n.cv.css.localDoesProductComparisonExist(u);f?this.enableRemoval===!0&&(n.cv.css.trigger(n.cv.css.eventnames.productComparisonRemoveProduct,u),r.trigger(i,{data:u}),n(r.element).trigger(i,[u])):(n.cv.css.trigger(n.cv.css.eventnames.productC
47omparisonAddProduct,u),r.trigger(t,{data:u}),n(r.element).trigger(t,[u]))}})},_getDefaultViewTemplate:function(){return"<div> \n<input type='checkbox' \ndata-bind=' \nclick: configureProductInComparisonList, \nchecked: isSelected, \nattr: { title: title } \n' \n><\/input> \n<span data-bind='text: label, attr: { title: title }' /> \n<\/div>"}};n.cv.ui.widget(r)})(jQuery),function(n){var t="productsCleared",i="productsRemoved",r="compareSelected",u={name:"productCompareList",options:{maximumComparableProducts:3,selectedMode:"selected",removeImageUri:"/images/icon-remove.png",removeImageTitle:"Remove",productsCleared:null,productsRemoved:null,compareSelected:null,title:"Product Compare",noProductsMessage:"No products have been selected for comparison",maxComparisonsExceededMessage:"You cannot compare more than {1} products at a time. You have {0} products selected. Please deselect some products.",compareSelectedButtonText:"Compare Selected",removeCheckedButtonText:"Remove Checked",removeAllButtonText:"Remove All",viewTemplate:"",gtmPageType:""},events:[t,i,r],viewModel:null,view:null,_viewAppended:!1,initialise:function(t){var i=this,r=n(t).children(":first"),u;r.data("view")?i.view=r.html():(i.options.viewTemplate||(i.options.viewTemplate=i._getDefaultViewTemplate()),u=kendo.template(i.options.viewTemplate),i.view=u(i.options),n(t).append(i.view),i._viewAppended=!0);this._bind();
47n.cv.css.bind(n.cv.css.eventnames.productComparisonComparisonsChanged,function(){i.refresh()})},refresh:function(){this._bind()},_bind:function(){var t=this,i=t._getViewModel(),r=n(t.element).children(":first");kendo.bind(r,i)},destroy:function(){var n=this;n.element.removeData(n.options.prefix+n.options.name);n._viewAppended&&n.element.empty()},_getViewModel:function(){var u=this,f=n.cv.css.localGetProductComparisons(),e=kendo.observable({products:f,hasProducts:f.length>0,hasNoProducts:f.length===0,productCount:f.length,maximumComparableProducts:u.options.maximumComparableProducts,noProductsMessage:u.options.noProductsMessage,title:u.options.title,removeImageUri:u.options.removeImageUri,removeImageTitle:u.options.removeImageTitle,compareSelectedButtonText:u.options.compareSelectedButtonText,removeCheckedButtonText:u.options.removeCheckedButtonText,removeAllButtonText:u.options.removeAllButtonText,clearProducts:function(){n.cv.css.localClearProductComparisons();u.trigger(t);n(u.element).trigger(t)},removeChecked:function(){var t=[];n.each(this.get("products").toJSON(),function(i,r){r.isChecked===!0&&(t.push(r),n.cv.css.trigger(n.cv.css.eventnames.productC
47omparisonRemoveProduct,r))});u.trigger(i,{data:t});n(u.element).trigger(i,[t])},compareSelected:function(){if(this.canCompare()){var t=this.getSelectedProducts();n.each(t,function(n,t){delete t.isChecked;delete t.deleteProduct});n.cv.css.trigger(n.cv.css.eventnames.productComparisonShowComparison,t);u.trigger(r,{data:t});n(u.element).trigger(r,[t])}},getSelectedProducts:function(){var t=[];return u.options.selectedMode==="selected"?n.each(this.get("products").toJSON(),function(n,i){i.isChecked===!0&&t.push(i)}):t=this.get("products").toJSON(),t},selectedProductCount:function(){return this.getSelectedProducts().length},canCompare:function(){var t=u.options.maximumComparableProducts,n=this.selectedProductCount();return n>=2&&n<=t},overMaximumProducts:function(){var n=u.options.maximumComparableProducts,t=this.selectedProductCount();return t>n},maximumProductsMessage:function(){var n=u.options.maxComparisonsExceededMessage,t=u.options.maximumComparableProducts,i=this.selectedProductCount();return n=n.replace("{0}",i),n.replace("{1}",t)}});return n.each(e.get("products"),function(t,i){i.set("deleteProduct",function(){n.cv.css.localRemoveProductComparison(this.get("productCode"))});i.get("isChecked")===undefined&&i.set("isChecked",!1);i.bind("change",function(t){t.field==="isChecked"&&n.cv.css.localUpdateProductComparison(i.toJSON())})}),e},_getDefaultViewTemplate:function(){return'<div class="sidebar-window-compare"> \n    <span class="sidebar-window-title" data-bind="text: title"><\/span> \n    <span class="sidebar-window-no-products" data-bind="visible: hasNoProducts, text: noProductsMessage"><\/span> \n    <ul class="sidebar-window-list" data-template="product-compare-list-item-template" data-bind="visible: hasProducts, source: products"> \n    <\/ul> \n    <div class="sidebar-window-over-maximum" data-bind="visible: overMaximumProducts, text: maximumProductsMessage"> \n    <\/div> \n    <div class="sidebar-window-buttons"> \n        <a href="javascript:void(0);" class="button-generic" data-bind="click: compareSelected, enabled: canCompare, text: compareSelectedButtonText"><\/a> \n        <a href="javascript:void(0);" class="button-generic" data-bind="click: removeChecked, text: removeCheckedButtonText"><\/a> \n        <a href="javascript:void(0);" class="button-generic" data-bind="click: clearProducts, text: removeAllButtonText"><\/a> \n    <\/div> \n<\/div> \n<script id="product-compare-list-item-template" type="text/x-kendo-template"> \n    <li> \n        <div class="list-checkbox"><input type="checkbox" data-bind="checked: isChecked" /><\/div> \n        <div class="list-desc" data-bind="text: description"><\/div> \n        <div class="sidebar-window-list-remove"><a href="javascript:void(0);" data-bind="click: deleteProduct"><img data-bind="attr: {src: removeImageUri, title: removeImageTitle}"/><\/a><\/div> \n    <\/li> \n<\/script>'}};n.cv.ui.widget(u)}(jQuery),function(n){var t="productAddedToCart",i="productAddFailed",r="beforeShown",u="afterShown",f={name:"productCompare",options:{products:[],enableAutoShow:!0,enableKendoCurrencyFormatting:!0,kendoNumberFormat:"C",dollarSign:"$",dollarSignPosition:"front",spaceBetweenSignAndAmount:!1,highlightFeatureCssClass:"highlight-feature",enableAddProductFailedMessage:!1,picture1Prefix:"",productAddedToCart:null,afterShown:null,productAddFailed:null,enableAddToCart:!0,enableAvailability:!0,enableEqualFeatureValueHighlighting:!0,enableUnconfiguredFeatureRemoval:!0,noFeatureValueContent:" - ",createFeatureInfoArrays:!1,compareItemsTop:[],showImage:!0,showRibbon:!0,imagePrompt:"",imgString:"",increaseQuantitiesInPackQty:!1,addMinimumQuantityToCart:!1,title:"Product Comparisons",addToCartButtonText:"Add to Cart",viewTemplate:""},events:[t,i,r,u],viewModel:null,view:null,_viewAppended:!1,initialise:function(t){var i=this,r=n(t).children(":first"),u;r.data("view")?i.view=r.html():(i.options.viewTemplate||(i.options.viewTemplate=i._getDefaultViewTemplate()),u=kendo.template(i.options.viewTemplate),i.view=u(i.options),n(t).append(i.view),i._viewAppended=!0);n(t).hide();i.options.products.length>0&&i.refresh();i.options.enableAutoShow&&n.cv.css.bind(n.cv.css.eventnames.productC
47omparisonShowComparison,function(n){i.options.products=n;i.refresh()})},refresh:function(){var t=this,i=this._bind();i.done(function(){t.trigger(r);n(t.element).trigger(r);n(t.element).show();t.trigger(u);n(t.element).trigger(u)})},destroy:function(){var n=this;n.element.removeData(n.options.prefix+n.options.name);n._viewAppended&&n.element.empty()},compare:function(n){var t=this;t.options.products=n;t.refresh()},_bind:function(){var t=this,i=t._getViewModel();return i.done(function(i){var r=n(t.element).children(":first");kendo.bind(r,i)}),i},_createFieldListDataImage:function(t,i,r,u){var o=this,f={},c=!1,s=[],h=[],l=[],a=o.options.imgString,e;if(_.contains(i,"Picture1")||_.contains(i,"ProductMedia")){for(f.Title=t,f.Key="Image",s=_.contains(i,"ProductListImageUri")?_.pluck(u,"ProductListImageUri"):[],o.options.showRibbon&&(h=_.contains(i,"BpdRibbonImage")?_.pluck(u,"BpdRibbonImage"):[]),e=0;e<s.length;e++){var v=s[e].ImageUri,y=o.options.showRibbon?h[e]:"",p=o.options.showRibbon&&!n.cv.util.isNullOrWhitespace(h[e])?"":"cv-is-hidden";l.push(a.format(v,y,p))}f.Data=l;f.DataArray=[];_.each(f.Data,function(n){n!=null&&(c=!0)});f.ShowFeature=c;r.push(f)}return r},_createFieldListData:function(t,i,r,u,f,e){var o={},s=[],h=[],c=!1;return(_.contains(r,i)||n.cv.util.hasValue(e)&&_.contains(r,e))&&(o.Title=t,o.Key=i,s=_.contains(r,i)?_.pluck(f,i):[],h=_.contains(r,e)?_.pluck(f,e):[],s.length>0&&_.each(s,function(t,i){n.cv.util.isNullOrWhitespace(t)&&h.length>=i&&!n.cv.util.isNullOrWhitespace(h[i])&&(s[i]=h[i])}),o.Data=s,o.DataArray=[],_.each(o.Data,function(n){n!=null&&(c=!0)}),o.ShowFeature=c,u.push(o)),u},_createAddToCartData:function(n,t,i,r,u){var g=this,o={},c=[],s=!1,h=_.contains(i,"ProductCode")?_.pluck(u,"ProductCode"):[],l=_.contains(i,"AllowOrderEntryForProduct")?_.pluck(u,"AllowOrderEntryForProduct"):[],a=_.contains(i,"IsMasterProduct")?_.pluck(u,"IsMasterProduct"):[],v=_.contains(i,"PackQuantity")?_.pluck(u,"PackQuantity"):[],y=_.contains(i,"MinOrderQty")?_.pluck(u,"MinOrderQty"):[],p=_.contains(i,"MinOrderPackQty")?_.pluck(u,"MinOrderPackQty"):[],w=_.contains(i,"ProductDetailsDefaultQuantityWhenNotIncreasePackQtyNotAddMinQty")?_.pluck(u,"ProductDetailsDefaultQuantityWhenNotIncreasePackQtyNotAddMinQty"):[],b=_.contains(i,"ProductDetailsDefaultQuantityWhenIncreasePackQtyNotAddMinQty")?_.pluck(u,"ProductDetailsDefaultQuantityWhenIncreasePackQtyNotAddMinQty"):[],k=_.contains(i,"ProductDetailsDefaultQuantityWhenNotIncreasePackQtyAddMinQty")?_.pluck(u,"ProductDetailsDefaultQuantityWhenNotIncreasePackQtyAddMinQty"):[],d=_.contains(i,"ProductDetailsDefaultQuantityWhenIncreasePackQtyAddMinQty")?_.pluck(u,"ProductDetailsDefaultQuantityWhenIncreasePackQtyAddMinQty"):[],f,e;if(h.length==0)return r;for(f=0;f<h.length;f++)e={},e.AllowOrderEntryForProduct=l.length>=f?l[f]:!1,e.IsMasterProduct=a.length>=f?a[f]:!1,s=s?s:e.AllowOrderEntryForProduct&&!e.IsMasterProduct,e.PackQuantity=v.length>=f?v[f]:1,e.MinOrderQty=y.length>=f?y[f]:0,e.MinOrderPackQty=p.length>=f?p[f]:0,e.ProductDetailsDefaultQuantityWhenNotIncreasePackQtyNotAddMinQty=w.length>=f?w[f]:0,e.ProductDetailsDefaultQuantityWhenIncreasePackQtyNotAddMinQty=b.length>=f?b[f]:0,e.ProductDetailsDefaultQuantityWhenNotIncreasePackQtyAddMinQty=k.length>=f?k[f]:0,e.ProductDetailsDefaultQuantityWhenIncreasePackQtyAddMinQty=d.length>=f?d[f]:0,e.ProductCode=h[f],c.push(e);return o.Title=n,o.Key=t,o.Data=c,o.DataArray=[],o.ShowFeature=g.options.enableAddToCart,s&&r.push(o),r},_createAvailabilityData:function(n,t,i,r,u){var o={},s=[],h=_.contains(i,"ProductCode")?_.pluck(u,"ProductCode"):[],c=_.contains(i,"AvailableQty")?_.pluck(u,"AvailableQty"):[],l=_.contains(i,"ConditionCode")?_.pluck(u,"ConditionCode"):[],a=_.contains(i,"StockType")?_.pluck(u,"StockType"):[],v=_.contains(i,"UserGroup2")?_.pluck(u,"UserGroup2"):[],y=_.contains(i,"AvailableForOne")?_.pluck(u,"AvailableForOne"):[],p=_.contains(i,"Availability")?_.pluck(u,"Availability"):[],f,e;if(h.length===0)return r;for(f=0;f<h.length;f++)e={},e.AvailableQty=c.length>=f?c[f]:0,e.ConditionCode=l.length>=f?l[f]:"",e.StockType=a.length>=f?a[f]:"",e.UserGroup2=v.length>=f?v[f]:"",e.AvailableForOne=y.length>=f?y[f]:"",e.Availability=p.length>=f?p[f]:"",s.push(e);return o.Title=n,o.Key=t,o.Data=s,o.DataArray=[],o.ShowFeature=!0,r.splice(3,0,o),r},_createFieldDataList:function(t){var r=this,i=[],f=[],u=[];return t==undefined||t.length==0?i:(u=_.keys(t[0]),t[0].ProductComparisonData.length>0&&(f=_.unique(_.map(_.filter(t[0].ProductComparisonData,function(n){return n.Data[0].ShowFeature}),function(t){return t.ShowGroup&&!n.cv.util.isNullOrWhitespace(t.GroupName)?t.GroupName:t.Data[0].Name}))),i=r._createFieldListDataImage(r.options.imagePrompt,u,i,t),_.each(r.options.compareItemsTop,function(n){i=r._createFieldListData(n.Title,n.Key,u,i,t,n.FallbackKey)}),_.each(f,function(u){var f=[],e=!1;_.each(t,function(t){var i=[];_.each(t.ProductComparisonData,function(t){_.each(t.Data,function(f){(t.ShowGroup&&t.GroupName===u||f.Name===u)&&(n.cv.util.hasValue(f.Value)||(f.Value=r.options.noFeatureValueContent),i.push(f));f.ShowFeature&&(e=!0)})});f.push(i)});i.push({ShowFeature:e,Title:u,Data:[],DataArray:f})}),r.options.enableAddToCart&&(i=r._createAddToCartData(r.options.addToCartButtonText,"AddToCart",u,i,t)),r.options.enableAvailability&&(i=r._createAvailabilityData("Stock","Availability",u,i,t)),_.filter(i,function(n){return n.ShowFeature}))},_massageData:function(t){_.all(t,function(t){return n.cv.util.isNullOrWhitespace(t.Group)})&&_.each(t,function(n){n.Group=n.Name});var i=[],r=_.unique(_.map(t,function(n){return n.Group}));return _.each(r,function(n){var t=n===null||n===undefined?"":n.toString(),r=t==="";i.push({GroupName:t,LowerCaseGroupName:t.toLowerCase(),HasGroupName:!r,ShowGroup:!0,Data:[]})}),_.each(t,function(n){var t=_.find(i,function(t){var i=n.Group===null||n.Group===undefined?"":n.Group.toString().toLowerCase();return t.LowerCaseGroupName===i});t.Data.push(n)}),_.each(i,function(n){var t=!1;_.each(n.Data,function(n){n.ShowFeature&&(t=!0)});t||(n.ShowGroup=!1)}),i},_preProcessData:function(n){function u(){return this.Value===undefined||this.Value==null||this.Value===""?t.options.noFeatureValueContent:this.Value}var t=this,r=n?n.length:0,i;r>=2&&(i=_.unique(_.map(n[0].ProductComparisonData,function(n){return n.Name.toString().toLowerCase()})),_.each(i,function(i){var r=undefined,f=[],e=!1,o=!1;_.each(n,function(n){var s=_.filter(n.ProductComparisonData,function(n){return n.Name.toString().toLowerCase()===i});_.each(s,function(n){if(n){if(n.HighlightInfo={add:!1,cssClass:t.options.highlightFeatureCssClass}
47,n.ShowFeature=!0,n.FormattedValue=u,f.push(n),r===undefined){n.Value!==undefined&&n.Value!==null&&n.Value!==""&&(r=n.Value,e=!0);return}r!==n.Value&&(o=!0)}})});!o&&t.options.enableEqualFeatureValueHighlighting&&_.each(f,function(n){n.HighlightInfo.add=!0});!e&&t.options.enableUnconfiguredFeatureRemoval&&_.each(f,function(n){n.ShowFeature=!1})}))},_getViewModel:function(){var r=this,f=_.map(r.options.products,function(n){if(n.productCode!==undefined&&n.productCode!==null&&n.productCode!=="")return n.productCode}),e=n.cv.css.productCompare.getProductComparisonInformation({productCodes:f}),u=n.Deferred();return e.done(function(f){var o=f.data,s,e;r._preProcessData(o);_.each(o,function(n){n.ProductComparisonData=r._massageData(n.ProductComparisonData)});s=r.options.createFeatureInfoArrays?r._createFieldDataList(o):[];e=kendo.observable({title:r.options.title,addToCartButtonText:r.options.addToCartButtonText,errorMessage:null,productCompareInfo:o,productCompareFieldInfo:s,enableAddToCart:r.options.enableAddToCart,enableAvailability:r.options.enableAvailability});n.each(e.get("productCompareInfo"),function(u,f){if(f.get("Title")===undefined&&f.set("Title",f.get("ProductCode")+" : "+f.get("Description")),r.options.picture1Prefix!=""&&f.set("Picture1",r.options.picture1Prefix+f.get("Picture1")),r.options.enableKendoCurrencyFormatting)f.get("FormattedPrice")===undefined&&f.set("FormattedPrice",kendo.toString(f.get("Price"),r.options.kendoNumberFormat));else if(f.get("FormattedPrice")===undefined){var o="";r.options.dollarSignPosition==="front"?(o+=r.options.dollarSign,r.options.spaceBetweenSignAndAmount&&(o+=" "),o+=f.Price):(o+=f.Price,r.options.spaceBetweenSignAndAmount&&(o+=" "),o+=r.options.dollarSign);f.set("FormattedPrice",o)}f.set("requestedQuantity",1);f.set("addProductToCart",function(){var u={productCode:f.get("ProductCode"),quantity:f.get("requestedQuantity"),price:f.get("Price"),gtmPageType:r.options.gtmPageType,error:"",message:""},o;_.extend(n.cv.css._proxyMeta,n.cv.util.getBaseProxyMeta(r));o=n.cv.css.addToCurrentOrder(u);o.always(function(f){window.DEBUG&&alert(JSON.stringify(f));f.data&&f.data.editOrderOk===!1?(r.options.enableAddProductFailedMessage&&e.set("errorMessage",f.data.message),u.error=f.data.message,r.trigger(i,{data:u}),n(r.element).trigger(i,[u])):(e.set("errorMessage",null),f.data.message.length>0&&(u.message=f.data.message),r.trigger(t,{data:u}),n(r.element).trigger(t,[u]))})})});u.resolve(e)}),u},_getDefaultViewTemplate:function(){var t=this,n=t.options;return["<section>",'    <div class="widget-row">','        <h1 data-bind="text: title"><\/h1>',"    <\/div>",'    <div class="widget-message-area" data-bind="visible: errorMessage, html: errorMessage"><\/div>','    <div class="compare-product-group">','        <div data-template="product-compare-product-info-item-template" data-bind="source: productCompareInfo">',"        <\/div>",'        <div class="clear"><\/div>',"    <\/div>","<\/section>",'<script id="product-compare-product-info-item-template" type="text/x-kendo-template">','    <div class="compare-product-item">','        <img data-bind="attr: {src: Picture1}" />','        <span class="compare-product-title" data-bind="text: Description, attr: { title: Title }"><\/span>','            <div class="product-compare-data" data-template="product-compare-product-info-compare-data" data-bind="source: ProductComparisonData">',"            <\/div>",'        <div class="compare-product-atc">','            <span class="compare-price" data-bind="text: FormattedPrice" />',n.enableAddToCart?'            <input type="number" min="1" data-bind="value: requestedQuantity" />':"",n.enableAddToCart?'            <a href="javascript:void(0);" class="button-generic" data-bind="click: addProductToCart , text: addToCartButtonText"><\/a>':"","        <\/div>","    <\/div>","<\/script>",'<script id="product-compare-product-info-compare-data" type="text/x-kendo-template">','    <div class="product-compare-data-group" data-bind="visible: ShowGroup">','        <span class="product-compare-data-group-title" data-bind="visible: HasGroupName, text: GroupName">',"        <\/span>",'        <ul data-template="product-compare-product-feature-info" data-bind="source: Data">',"        <\/ul>","    <\/div>","<\/script>",'<script id="product-compare-product-feature-info" type="text/x-kendo-template">','    <li data-bind="addClass: HighlightInfo, visible: ShowFeature">','        <div><strong data-bind="text: Name"><\/strong><\/div>','        <div data-bind="text: FormattedValue"><\/div>',"    <\/li>","<\/script>"].join(" \n")}};n.cv.ui.widget(f)}(jQuery);
48(function(n){var t={name:"payPalExpress",extend:"mvvmwidget",extendEvents:[],options:{freightPostbackButtonId:"",validateOrder:!0,triggerMessages:!0,displayButton:!0,clickAndCollectEnabled:!1,redirectUrl:"/PayPalExpress.aspx?step=checkout",checkoutButtonHtml:"<button type='button' name='checkout' class='checkout-paypal' data-bind='click: checkout'><img src='/Themes/BPDTHEME01/theme-base/img/cv-cart/payment/paypal-button.png' title='Checkout with PayPal Express' alt='PayPal Express Logo' /><\/button>
48",cartRedirectionTarget:"/cart"},initialise:function(){var t=this;n.cv.css.bind(n.cv.css.eventnames.checkoutWithPayPalExpress,n.proxy(t.viewModel.checkout,t.viewModel))},viewModelBound:function(){},buildLineValidationMessageArray:function(n){for(var t in n)if(n.hasOwnProperty(t))return n[t];return[]},processedBraintreeNonceList:[],_getViewModel:function(){var t=this;return n.extend(kendo.observable(t.options),{clearExistingMessages:!0,isProcessing:!1,isProcessingCheckout:!1,isProcessingCancel:!1,messageCount:0,checkout:function(i){var r=this,u,f;i&&i.e&&i.e.preventDefault();r.set("isProcessing",!0);r.set("isProcessingCheckout",!0);i&&i.currentTarget&&n(i.currentTarget).addClass(n.cv.css.isProcessingClass);u=n.Deferred();f=!1;r.get("validateOrder")===!0?n.cv.css.getCurrentOrder().done(function(i){var e;if(n.cv.util.isNullOrWhitespace(i)||n.cv.util.isNullOrWhitespace(i.data)||n.cv.util.isNullOrWhitespace(i.data[0])){r.setMessage("Order is invalid - your session may have timed out",n.cv.css.messageTypes.error);f=!0;u.reject();return}e=i.data[0];n.cv.css.orders.validateForCheckout({_objectKey:e._objectKey}).done(function(i){var e=i.data,o=t.buildLineValidationMessageArray(e.lineValidationErrors);r.clearMessage();(n.cv.util.isNullOrWhitespace(e)||e.sessionHasTimedOut===!0)&&(f=!0,u.reject());n.each(e.headerValidationErrors,function(t,i){i.preventsCheckOut&&(r.setMessage(i.errorMessage,n.cv.css.messageTypes.error),f=!0,u.reject())});n.each(o,function(t,i){i.preventsCheckOut&&(r.setMessage(i.errorMessage,n.cv.css.messageTypes.error),f=!0,u.reject())});u.resolve()})}):u.resolve();n.when(u).done(function(){if(n.cv.css.removeLocalStorage(n.cv.css.localStorageKeys.currentOrder),n.cv.css.removeLocalStorage(n.cv.css.localStorageKeys.currentOrderLines),r.get("freightPostbackButtonId")===""){var u=i.braintreePayload;if(n.cv.util.hasValue(u)===!1)n.cv.util.redirect(r.get("redirectUrl"),{},!1);else{if(t.processedBraintreeNonceList.indexOf(u.nonce)>=0)return;t.processedBraintreeNonceList.push(u.nonce);n.cv.css.orders.createPayPalExpressPayment({payload:u}).done(function(t){if(t.data.result.Success){var i=t.data.result.Messages[0];n.cv.util.redirect("/PayPalExpress.aspx",{step:"braintree",receiptNo:i},!1)}})}}else n("#"+r.get("freightPostbackButtonId")).click()}).fail(function(){if(u.state()==="rejected"){var t=r.get("messageCount");t===0&&n.cv.util.redirect(r.get("cartRedirectionTarget"),{},!1)}}).always(function(){var r,t,u,i;f&&(r=n(".widget-cart-checkout-button").data("orderSummary"),n.cv.util.hasValue(r)?(t=r.viewModel,n.cv.util.hasValue(t)&&t.get("isCheckoutWithPaypalExpress")&&t.set("isCheckoutWithPaypalExpress",!1)):(u=n(".widget-paypal-express-button").data("product"),i=n.cv.util.hasValue(u)?u.viewModel:null,n.cv.util.hasValue(i)&&i.get("isCheckoutWithPayPalExpress")&&i.set("isCheckoutWithPayPalExpress",!1)))})},cancelCheckout:function(){var t=this;t.set("isProcessing",!0);t.set("isProcessingCancel",!0);n.cv.css.orders.abortPendingOrder().done(function(){n.cv.util.redirect(t.get("cartRedirectionTarget"),{},!1)})},clearMessage:function(){var i=this;i.set("clearExistingMessages",!0);t.options.triggerMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"orderSummary",clearExisting:i.get("clearExistingMessages")});i.set("messageCount",0)},setMessage:function(i,r){var u=this;n.cv.util.notify(u,i,r,{triggerMessages:t.options.triggerMessages,source:t.name});u.set("messageCount",u.get("messageCount")+1)}})}};n.cv.ui.widget(t)})(jQuery);
49(function(n){var t="onBeforeNotificationAdded",i="onAfterNotificationAdded",r="onBeforeNotificationRemoved",u="onAfterNotificationRemoved",f="SN",e={name:"stockAvailabilityNotify",extend:"mvvmwidget",extendEvents:[t,i,r,u],options:{popupId:null,triggerMessages:!0,showNotificationList:!1,includeWebOrderInAvail:!1,notifyEmailAddress:"",invalidEmailAddressMessage:"Email Address is invalid",notificationRequestSavedMessage:"Notification request saved successfully",removeNotificationSuccessMessage:"Notification removed successfully",removeNotificationFailMessage:"Notification removal failed"},viewModelBound:function(){var t=this;n.cv.css.bind(n.cv.css.eventnames.stockAvailabilityNotifyShowPopup,n.proxy(t.viewModel.showPopup,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.stockAvailabilityNotifyRemove,n.proxy(t.viewModel.remove,t.viewM
49odel));n.cv.css.bind(n.cv.css.eventnames.cartItemsChanged,n.proxy(t.viewModel.cartItemsChanged,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.orderChanged,n.proxy(t.viewModel.cartItemsChanged,t.viewModel));t.options.showNotificationList===!0&&t.viewModel._loadItems()},_getViewModel:function(){var e=this;return n.extend(kendo.observable(e.options),{emailAddressErrorMsg:"",productCodes:"",visibleProductCodes:"",itemList:[],isLoadingItems:!1,hasNotifications:!0,changeCallback:null,data:null,showPopup:function(t){t?(t.productCodes&&t.productCodes.length>0?e.viewModel.set("productCodes",t.productCodes):e.viewModel.cartItemsChanged(),e.viewModel.set("changeCallback",t.onChange),e.viewModel.set("data",t.data)):(e.viewModel.cartItemsChanged(),e.viewModel.set("changeCallback",null),e.viewModel.set("data",null));e.viewModel.set("visibleProductCodes",e.viewModel.get("productCodes").replace(/\|\|/g,", "));n.fancybox.open({href:"#"+e.viewModel.get("popupId"),padding:0})},remove:function(n){e.viewModel.set("changeCallback",n.onChange);e.viewModel._removeNotify(n.productCodes)},confirmClick:function(){var u=e.viewModel._validatePopup(),r;u&&(r={productCodes:e.viewModel.get("productCodes"),notifyEmailAddress:e.viewModel.get("notifyEmailAddress")},e.trigger(t,r),n.cv.css.stockAvailabilityNotify.notifyMe(r).done(function(){e.trigger(i,r);e.viewModel._callback(!0);var t=e.viewModel.get("data"),u=e.options.includeWebOrderInAvail;t&&(t.AvailableQty<0||!u&&t.AvailableQty==0)&&(t.execCommand_destroy(),n.cv.css.trigger(n.cv.css.eventnames.removeLineFromCartAfterSelectingNotifyWhenInStock,t));n.fancybox.close();n.cv.util.notify(e.viewModel,e.options.notificationRequestSavedMessage,n.cv.css.messageTypes.success,{triggerMessages:e.options.triggerMessages,source:e.name})}))},dataChanged:function(){e.viewModel._validatePopup()},cartItemsChanged:function(){var t=n.cv.css.localGetCurrentOrderLines(),i=[];t&&n.each(t,function(n,t){t.LineType===f&&t.Product[0].AvailableForOneQty<=0&&i.push(t.StockCode)});e.viewModel.set("productCodes",i.join("||"))}
49,removeNotify:function(t){var i=n(t.target).data("productCode");e.viewModel._removeNotify(i)},_removeNotify:function(t){e.trigger(r,t);n.cv.css.stockAvailabilityNotify.removeNotify({productCodes:t}).done(function(i){var r=i.data.toLowerCase()==="true";e.trigger(u,t);n.fancybox.close();r?(e.viewModel._callback(!1),e.viewModel._loadItems(),n.cv.util.notify(e.viewModel,e.options.removeNotificationSuccessMessage,n.cv.css.messageTypes.success,{triggerMessages:e.options.triggerMessages,source:e.name})):n.cv.util.notify(e.viewModel,e.options.removeNotificationFailMessage,n.cv.css.messageTypes.error,{triggerMessages:e.options.triggerMessages,source:e.name})})},_callback:function(n){var t=e.viewModel.get("changeCallback");t!=null&&t(n)},_validatePopup:function(){var n=/\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/.test(e.viewModel.get("notifyEmailAddress"));return e.viewModel.set("emailAddressErrorMsg",n?"":e.options.invalidEmailAddressMessage),n},_loadItems:function(){e.viewModel.set("isLoadingItems",!0);n.cv.css.stockAvailabilityNotify.getNotificationsForCurrentUser().done(function(n){e.viewModel.set("itemList",n.data);e.viewModel.set("isLoadingItems",!1);e.viewModel.set("hasNotifications",n.data.length>0)})}})}};n.cv.ui.widget(e)})(jQuery);
50(function(n){var t={name:"alternatesPopup",extend:"mvvmwidget",extendEvents:[],options:{popupId:"",carouselId:"",alwaysShowButton:!1},viewModelBound:function(){var t=this;n.cv.css.bind(n.cv.css.eventnames.showAlternatesPopup,n.proxy(t.viewModel.showPopup,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.hideAlternatesPopup,n.proxy(t.viewModel.hidePopup,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.cartLinesRendered,n.proxy(t.viewModel.cartLinesRendered,t.viewModel))},_getViewModel:function(){var t=this,i=n.extend(kendo.observable(t.options),{isContentLoading:!1,destroyLineItem:!1,hidePopup:function(){t.viewModel.set("destroyLineItem",!0);n.fancybox.close()},showPopup:function(i){n.fancybox.open({href:"#"+t.options.popupId,topRatio:"0.25",padding:0,beforeClose:function(){t.viewModel.get("destroyLineItem")&&i.execCommand_destroy()},afterClose:function(){t.viewModel.set("destroyLineItem",!1);t.viewModel._destroyOwlCarousel()},beforeShow:function(){var r=n("#"+t.options.carouselId);t.viewModel._destroyOwlCarousel(r);r.html("");r.data("originalProductCode",i.StockCode);t.viewModel.set("isContentLoading",!0)},afterShow:function(){n.cv.css.owlCarousel.itemsMobile=1;n.cv.css.orders.alternatesForProduct({productCode:i.StockCode}).done(function(i){t.viewModel.set("isContentLoading",!1);n("#"+t.options.carouselId).html(i.data.result);n.fancybox.update();n.cv.css.owlCarousel.bindProductCarousel(n("#"+t.options.carouselId),i.data.productCount);n("#"+t.options.carouselId+" .form-number").each(function(){n.cv.util.kendoNumericTextBox(this)});kendo.init(n("#"+t.options.carouselId))})}})},debouncedCartLinesRendered:null,cartLinesRendered:function(t){if(n.cv.util.hasValue(t,"lines")!==!1&&t.isFromLineChangedOrJustFetched){var i=this;i.debouncedCartLinesRendered==null&&(i.debouncedCartLinesRendered=_.debounce(i._cartLinesRenderedInternal,250));i.debouncedCartLinesRendered(t)}},_destroyOwlCarousel:function(i){var u=n.cv.util.hasValue(i)?i:n("#"+t.options.carouselId),r=u.data("owlCarousel");r&&r.destroy()},_cartLinesRenderedInternal:function(i){var r=t.options.alwaysShowButton;(r===!1&&n.each(i.lines,function(n,t){return t.Product&&t.Product.length===1&&t.Product[0].AvailableForOneQty===0?(r=!0,!1):!0}),r!==!1)&&n.cv.css.orders.alternatesCountForOrderLines().done(function(i){n.each(i.data,function(i,r){var u=t.options.alwaysShowButton&&r.AlternatesCount>0||!t.options.alwaysShowButton&&r.AvailableForOneQty===0&&r.AlternatesCount>0;u&&n.cv.css.trigger(n.cv.css.eventnames.showAlternatesButton,r)})})}});return i.bind("change",function(n){n.field==="quantity"&&console.log("viewModel.quantity = "+i.get("quantity"))}),i}};n.cv.ui.widget(t)})(jQuery);
51(function(n,t){var i={name:"storeAvailabilityLocator",extend:"mvvmwidget",events:["beforeShowNearest","afterShowNearest","beforeUpdateLatLng","afterUpdateLatLng"],options:{widgetGuid:null,addressSearchId:"",searchResultsMax:3,whenNoStoreSetText:"Please select your store",setStoreButtonText:"Set Location",currentStoreButtonText:"My Store",userCurrentStoreName:"",storeLocationDetail
51sFieldDataCustomFieldGroup:"store-location-availability",errorMessageAddressNotFound:"Address not found.",errorMessageAddressLookupFailed:"Address lookup failed.",errorMessageUnableToShowMap:"Unable to show map.",checkStoreAvailabilityClickAndCollect:!0,isTopBarDisplay:!1,isOrderAllEmailDelivery:!1},initialise:function(){var t=this,i=t.viewModel;i._bindSuburbLookup();n.cv.css.bind(n.cv.css.eventnames.orderChanged,n.proxy(t.viewModel.orderUpdated,t.viewModel))},viewModelBound:function(){var n=this},_getViewModel:function(){var i=this,r=kendo.observable({storeLocations:[],currentStoreDetails:[],currentStoreName:i.options.userCurrentStoreName,selectedAddress:"",selectDone:!1,disableView:!1,isOrderAllEmailDelivery:i.options.isOrderAllEmailDelivery,isProcessing:!1,isProcessingSetStore:!1,_showError:function(n){r.set("isProcessing",!1);r._showMessage({Type:"error",Message:n})},_showMessage:function(t,r){var u="",f;n.each(n.cv.css.messageTypes,function(n,i){n==t.Type&&(u=i)});f=n.cv.css.trigger(n.cv.css.eventnames.message,{type:u,message:t.Message,source:i.name,clearExisting:r});f.handlerCount==0&&alert(t.Message)},_clearMessages:function(){n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:i.name,clearExisting:!0})},_bindSuburbLookup:function(){var r=this,u=n("input#"+i.options.addressSearchId),f=n.cv.data.dataSource({method:"storeLocator/getSuburbHelpers",params:function(){return{searchFilter:u.val(),incName:!0,useLikeName:!0,incPostcode:!0,useLikePostcode:!0,maxResults:30}}});u.kendoAutoComplete({dataSource:f,filter:"startswith",template:"<span>#= data.Name # #= data.State # #= data.Postcode #<\/span>",change:function(){},select:function(n){n.item.length>0&&(n.item[0].innerText==t?r.set("selectedAddress",n.item[0].textContent):r.set("selectedAddress",n.item[0].innerText),r.set("selectDone",!0))},close:function(){r.get("selectDone")==!0&&u.val(r.get("selectedAddress"))}})},_getDataView:function(t){var i=[];return n.each(t,function(t,r){r.index=t;var u=n.cv.util.getFieldItemData(r);i.push(u)}),i},_findStores:function(){var t=this,u=t.get("selectedAddress"),r;return t.get("selectDone")==!1?!1:(t.set("isProcessing",!0),r=new google.maps.Geocoder,r.geocode({address:u,region:"Australia"},function(r,u){if(u===google.maps.GeocoderStatus.OK){var f=r[0].geometry.location.lat(),e=r[0].geometry.location.lng(),o=n.cv.css.storeLocator.findNearestStore({latitude:f,longitude:e,maxStores:i.options.searchResultsMax,jsonFieldGroupName:i.options.storeLocationDetailsFieldDataCustomFieldGroup,checkStoreAvailabilityClickAndCollect:i.options.checkStoreAvailabilityClickAndCollect});n.when(o).done(function(i){n.each(i.data,function(n,i){i.StoreLocationDetailsFieldData&&(i.StoreLocationDetailsFieldData=t._getDataView(i.StoreLocationDetailsFieldData))});t.set("storeLocations",i.data);t.set("isProcessing",!1);t.set("selectDone",!1)})}else t.set("isProcessing",!1),t.set("selectDone",!1)}),!1)},_setStore:function(t){var i=this,r=t.data.StoreName,u;return r===i.get("currentStoreName")?!1:(i._stopIsProcessingSetStore(!0,r),u=n.cv.css.storeLocator.setUserCurrentStore({storeName:r}),n.when(u).done(function(t){if(t.data&&t.data.success){i.set("currentStoreName",r);i._setCurrentStoreNameCookie(r);t.data.reloadPage&&location.reload(!0);var u=i.get("storeLocations");n.each(u,function(n,t){t.set("IsUsersCurrentPickupStore",t.StoreName===r)})}i._stopIsProcessingSetStore(!1,"")}),!1)},_stopIsProcessingSetStore:function(n,t){var r=this,i=r.get("storeLocations");n?_.each(i,function(n){n.set("isProcessingSetStore",n.StoreName===t);n.set("disableView",n.StoreName!==t)}):_.each(i,function(n){n.set("isProcessingSetStore",!1);n.set("disableView",!0)})},_getCurrentStoreText:function(){var t=this,n=t.get("currentStoreName");return n.length>0?n:i.options.whenNoStoreSetText},isSelectedCurrentStore:function(n){var t=this,i=t.get("currentStoreName");return i==n},_getSetStoreButtonText:function(n){return n.get("IsUsersCurrentPickupStore")?i.options.currentStoreButtonText:i.options.setStoreButtonText},_setCurrentStoreNameCookie:function(t){n.cookie("User.StoreName",t,{expires:365})},showStoreList:!1,_toggleStoreLocationDisplay:function(){var u=this,t,r;u.set("showStoreList",!u.get("showStoreList"));t=n("#"+i.options.addressSearchId);t.length>0&&(r=t.data("kendoAutoComplete"),n.cv.util.hasValue(r)===!1&&t.kendoAutoComplete(),r.focus())},orderUpdated:function(){var f=this,r=n.cv.css.localGetCurrentOrder(),u=n.cv.util.hasValue(r,"IsOrderAllEmailDelivery")?r.IsOrderAllEmailDelivery:!1,t;f.set("isOrderAllEmailDelivery",u);i.options.isTopBarDisplay===!1&&(t=n(i.element[0]).parent(),t.hasClass("grey-box")&&(u?t.hide():t.show()))}});return r}};n.cv.ui.widget(i)})(jQuery);
52(function(n){var t={name:"countrySelect",extend:"mvvmwidget",extendEvents:[],options:{popupId:"",countryCode:"",countryDescription:"",subdomainRedirectionEnabled:!1,includeInBrowserHistory:!0},viewModelBound:function(){},_getViewModel:function(){var t=this;return n.extend(kendo.observable(t.options),{selectedCountryCode:t.options.countryCode,flagClass:function(){return"ico-flag flag-"+t.viewModel.get("countryCode").toLowerCase()},confirmClick:function(i){var u=t.viewModel.get("selectedCountryCode"),r;n(i.target).addClass("cv-is-processing");n(i.target.parentElement).find(":input").attr("disabled",!0);r=[];t.options.subdomainRedirectionEnabled?n.cookie("GeolocationCountryCode",u):r={countryCode:u};n.cv.util.redirect(window.location.href,r,!t.options.includeInBrowserHistory)},cancelClick:function(){n.fancybox.close();
52t.viewModel.set("selectedCountryCode",t.options.countryCode)}})}};n.cv.ui.widget(t)})(jQuery);
53(function(n){var t={name:"orderDocuments",extend:"mvvmwidget",extendEvents:[],options:{validFileTypes:"",triggerMessages:!0,widgetOrderDocumentsId:""},viewModelBound:function(){var t=this;n.cv.css.bind(n.cv.css.eventnames.validateOrderDocument,n.proxy(t.viewModel.validateInputFields,t.viewModel))},validateInputFields:function(n){var t=this;t.viewModel.validateInputFields({showErrorMessages:n})},_getViewModel:function(){var t=this;return n.extend(kendo.observable(t.options),{fileTypeList:n.grep(t.options.validFileTypes.toLowerCase().split(","),function(n){return n!==""}),orderDocumentMessage:"Document is required for this payment type.",onSelect:function(i){this.get("fileTypeList").length!==0&&n.each(i.files,function(r,u){n.inArray(u.extension.toLowerCase(),t.viewModel.get("fileTypeList"))===-1&&(i.preventDefault(),n.cv.util.notify({triggerMessages:t.options.triggerMessages,source:t.name,message:String.format("Invalid file type '{0}', please only upload files of type {1}.",u.extension,t.options.validFileTypes),type:n.cv.css.messageTypes.error}))})},validateInputFields:function(i){if(n("#"+t.options.widgetOrderDocumentsId+" .k-upload-files li.k-file").length!==0){n.cv.css.addRemovePageValidationError(!0,t.name);return}n.cv.css.addRemovePageValidationError(!1,t.name);n.cv.css.trigger(n.cv.css.eventnames.orderDocumentValidated,{isValid:!1,showErrorMessages:i.showErrorMessages})},setMessage:function(i,r){n.cv.util.notify(this,i,r,{triggerMessages:t.options.triggerMessages,source:t.name})}})}};n.cv.ui.widget(t)})(jQuery);
54(function(n){var i="",t="Delivery",r="Pickup",u={name:"thirdPartyDelivery",extend:"mvvmwidget",extendEvents:["dataBinding","dataBound"],options:{dataSource:[],clearExistingMessages:!0,getDataOnInit:!0,showMessages:!0,alwaysDisplay:!1,overrideRolePrompt:!1,overrideResourceMessages:!1,showNoThirdPartyDeliveryChargePrompt:!0,deliveryMethod:i,autoBind:!0,triggerMessages:!0,textThirdPartyDeliveryChargePrompt:"Third Party Delivery Charge",textThirdPartydeliveryNotApplicablePrompt:"No Third Party Delivery Charge Applies",viewTemplate:null},initialise:function(){var t=this;n.cv.css.bind(n.cv.css.eventnames.deliveryAddressModeChanged,n.proxy(t.viewModel.deliveryAddressModeChanged,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.addressBeingEdited,n.proxy(t.viewModel.addressBeingEdited,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.addressChanged,n.proxy(t.viewModel.addressChanged,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.addressValidationUpdated,n.proxy(t.viewModel.addressValidationUpdated,t.viewModel))},initDataSource:function(t){var i=this,r,u;i.viewModel.get("resetDatasource")&&(i.viewModel.set("resetDatasource",!1),r={deliveryMethod:i.viewModel.get("deliveryMethod")},i.options.overrideRolePrompt&&i.options.textThirdPartyDeliveryChargePrompt&&i.options.textThirdPartyDeliveryChargePrompt!==""&&(r.thirdPartyDeliveryChargePrompt=i.options.textThirdPartyDeliveryChargePrompt),u=n.cv.css.thirdPartyDelivery.getThirdPartyDelivery(r),n.when(u).done(function(r){var u=r.data;t&&u.Messages.length>0&&_.any(u.ThirdPartyDeliveryCharges,function(n){return n.ChargeAmountExTax>0&&n.ChargeType})&&(i.viewModel.clearMessage(),n.each(u.Messages,function(t,r){i.viewModel.setMessage(r,n.cv.css.messageTypes.info)}),n.each(u.ThirdPartyDeliveryCharges,function(n,t){i.viewModel.get("overrideRolePrompt")&&(t.Prompt=i.options.textThirdPartyDeliveryChargePrompt)}));i.setDataSource(u.ThirdPartyDeliveryCharges);i.viewModel.set("isInitialLoad",!1);n.cv.css.trigger(n.cv.css.eventnames.thirdPartyDeliveryStatusChanged,i.viewModel.get("itemList").length>0)}))},_getViewModel:function(){var u=this,f=u.options;return kendo.observable(n.extend({},f,{hasThirdPartyDeliveryCharges:function(){return this.get("itemList").length>0?!0:!1},isInitialLoad:!0,resetDatasource:!0,isDisabled:!1,message:"",showThirdPartyDelivery:function(){return this.get("isDisabled")?!1:this.hasThirdPartyDeliveryCharges()?!0:this.get("alwaysDisplay")&&this.get("showNoThirdPartyDeliveryChargePrompt")?!0:!1},clearMessage:function(){var t=this.get("clearExistingMessages");this.set("clearExistingMessages",!0);this.set("message","");u.options.triggerMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"thirdPartyDelivery",clearExisting:this.get("clearExistingMessages")});this.set("clearExistingMessages",t)},setMessage:function(t,i){n.cv.util.notify(this,t,i,{triggerMessages:u.options.triggerMessages,source:u.name})},updateViewModelFromDataSource:function(){this.updateItemList()},updateItemList:function(){var n=this.getDataView();this.set("itemList",n)},getDataView:function(){return this.get("dataSource")?this.get("dataSource").view():[]},itemList:[],addressChanged:function(n){n.deliveryAddressMode===t&&(this.get("deliveryMethod")===t||this.get("deliveryMethod")===i)&&(!this.get("isDisabled")||this.get("alwaysDisplay"))&&(u.viewModel.set("resetDatasource",!0),u.initDataSource(this.get("showMessages")))},deliveryAddressModeChanged:function(n){switch(n.message){case"Delivery":this.set("deliveryMethod",t);this.set("isInitialLoad",!0);this.set("isDisabled",!1);break;case"Pickup":this.set("deliveryMethod",r);this.set("isDisabled",!0)}u.viewModel.set("resetDatasource",!0);u.initDataSource(this.get("showMessages"))}}))}};n.cv.ui.widget(u)})(jQuery);
55(function(n){var t={name:"populateFavourites",extend:"mvvmwidget",options:{isVisible:!1,monthSizes:[{text:"1 Month",value:"1"},{text:"2 Months",value:"2"},{text:"3 Months",value:"3"},{text:"6 Months",value:"6"},{text:"12 Months",value:"12"}],pleaseSelectValueMessage:"Please select a sales period from which to populate favourites"},extendEvents:["widgetDataInitialised","listUpdated"],viewModel:null,view:null,_getViewModel:function(){var t=this,i=kendo.observable(n.extend(t.options,{isProcessing:!1,selectedMonthSize:"",generateFavourites:function(){var r=this,u,f;return r.set("isProcessing",!0),u=r.get("selectedMonthSize"),n.cv.util.isNullOrWhitespace(u)?(n.cv.util.notify(r,t.options.pleaseSelectValueMessage,n.cv.css.messageTypes.error,{triggerMessages:!0,clearExisting:!0,source:t.name}),i.set("isProcessing",!1)):(f=n.cv.css.userFavourites.generateFavourites({months:u}),f.done(function(){location.reload()}).fail(function(){i.set("isProcessing",!1)})),!1}}));return i}};n.cv.ui.widget(t)})(jQuery);
56(function(n){var t={name:"clearFavourites",extend:"mvvmwidget",options:{isVisible:!1},extendEvents:["widgetDataInitialised","listUpdated"],viewModel:null,view:null,_getViewModel:function(){var t=this;return kendo.observable(n.extend({}
56,t.options,{isProcessing:!1,clearFavourites:function(){var t=this,i;return t.set("isProcessing",!0),i=n.cv.css.userFavourites.clearFavourites(),i.done(function(){location.reload()}).fail(function(){t.set("isProcessing",!1)}),!1}}))}};n.cv.ui.widget(t)})(jQuery);
57(function(n){var t=-1,i="No Delivery Methods Available For Selection...",r="Please Select A Delivery Method...",u={name:"deliveryMethod",extend:"mvvmwidget",extendEvents:[],dataInitialising:undefined,options:{dataSource:[],clearExistingMessages:!0,getDataOnInit:!0,showMessages:!0,alwaysDisplay:!1,showChargeAmount:!1,deliveryGroup:{selectedSequence:t,deliveryMethods:[{sequence:t,visualText:i}]},deliveryMethodTargetID:"#delivery-method-list",defaultDisableAddressEdit:!1,autoBind:!0,triggerMessages:!0,textDeliveryMethodAppliedMessage:"A Delivery Method of type {0} has been applied to this order",textDeliveryMethodNotAppliedMessage:"There are no applicable delivery methods for this order",textErrorSettingDeliveryMethod:"There was an error attempting to set the Delivery Method on the order",textErrorClearingDeliveryMethod:"There was an error attempting to clear the Delivery Method from the order",textPleaseSelect:"Please Select A Delivery Method...",deliveryMethodNotSelected:"Please select a delivery method",defaultDeliveryMethod:0,viewTemplate:null},initialise:function(){var t=this;n.cv.css.bind(n.cv.css.eventnames.deliveryMethodLoadedCheck,n.proxy(t.viewModel.deliveryMethodLoadedCheck,t.viewModel))},viewModelBound:function(){var t=this;n.cv.util.bindKendoWidgets(n(t.element[0]))},initDataSource:function(t){var i=this,r,u;return i.dataInitialising=n.Deferred(),r={supplyDeliveryMethodCharges:i.options.showChargeAmount},n.cv.util.removeExecutionId(i.options.deliveryMethodTargetID),u=n.cv.css.deliveryMethod.getDeliveryMethods(r),n.when(u).done(function(r){var u=r.data;t&&r.data.Messages.length>0&&(i.viewModel.clearMessage(),n.each(u.Messages,function(t,r){i.viewModel.setMessage(r,n.cv.css.messageTypes.error)}));i.setDataSource([{DeliveryMethods:u.DeliveryMethods,DeliveryMethodCharges:u.DeliveryMethodCharges,OrderDeliveryMethodSequence:u.OrderDeliveryMethod,DefaultDeliveryAddress:u.DefaultDeliveryAddress}]);i.viewModel.set("isInitialLoad",!1);i.dataInitialising.resolve()}),i.dataInitialising.promise()},validateInputFields:function(n){var t=this;t.viewModel.validateInputFields(n)},dataInitializingDone:!1,_getViewModel:function(){var u=this,e=u.options,f=kendo.observable(n.extend({},e,{isInitialLoad:!0,isDisabled:!1,message:"",deliveryMethodLoadedCheck:function(i){var r=this;u.dataInitialising!==undefined&&u.dataInitializingDone!==!0&&(u.dataInitializingDone=!0,u.dataInitialising.done(function(){var f=r.get("deliveryGroup"),u=f.get("selectedSequence");u!==t?n.cv.css.trigger(n.cv.css.eventnames.deliveryMethodSetOnOrder,{sequence:u,deliveryAddressInfo:r.getDeliveryAddressInfo(),widgetName:i.widgetName,chargeMethod:n.grep(f.deliveryMethods,function(n){return n.sequence===u})[0].chargeMethod}):n.cv.css.trigger(n.cv.css.eventnames.deliveryMethodClearedFromOrder,{sequence:u,deliveryAddressInfo:r.getDeliveryAddressInfo(),widgetName:i.widgetName})}))},getDataView:function(){return this.get("dataSource")?this.get("dataSource").view():[]},clearMessage:function(){var t=this.get("clearExistingMessages");this.set("clearExistingMessages",!0);this.set("message","");u.options.triggerMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"deliveryMethod",clearExisting:this.get("clearExistingMessages")});this.set("clearExistingMessages",t)},setMessage:function(t,i){n.cv.util.notify(this,t,i,{triggerMessages:u.options.triggerMessages,source:u.name})},updateViewModelFromDataSource:function(){this.updateDeliveryGroup()},hasDeliveryMethods:function(){var t=this,n=t.get("deliveryGroup");return n&&n.get("deliveryMethods")&&n.get("deliveryMethods").length>0?n.get("deliveryMethods").length===1?n.get("deliveryMethods")[0].visualText===i||n.get("deliveryMethods")[0].visualText===r?!1:!0:!0:!1},generateVisualText:function(n){return n?u.options.showChargeAmount===!0&&n.ChargeExTax?n.Description+" ( $"+n.ChargeExTax+" )":n.Description:""},showDeliveryMethod:function(){var n=this;return n.get("isDisabled")?!1:n.get("alwaysDisplay")?!0:n.hasDeliveryMethods()?!0:!1},updateDeliveryGroup:function(){var s=this,i=s.get("deliveryGroup"),f=undefined,l=undefined,e=undefined,u=undefined,o=s.getDataView(),h,c;if(o&&o.length>0&&(f=o[0].DeliveryMethods,l=o[0].DeliveryMethodCharges,e=o[0].OrderDeliveryMethodSequence,u=o[0].DefaultDeliveryAddress,f&&f.length>0)){if(i.set("name",o[0].DeliveryGroup),h=[],f.length>0&&h.push({sequence:t,visualText:r}),n.each(f,function(n,t){h.push({sequence:t.Sequence,chargeMethod:t.ChargeMethod,description:t.Description,descriptionOrderLine:t.DescriptionOrderLine,chargeExTax:t.ChargeExTax,visualText:s.generateVisualText(t,l),isDeliveryMethodOverridingDeliveryAddress:t.IsDeliveryMethodOverridingDeliveryAddress,disableAddressEdit:t.DisableAddressEdit,deliveryAddress:{deliveryAddress1:t.DeliveryAddress1,deliveryAddress2:t.DeliveryAddress2,deliveryAddress3:t.DeliveryAddress3,deliveryAddress4:t.DeliveryAddress4,deliveryAddress5:t.DeliveryAddress5,deliveryAddress6:t.DeliveryAddress6,deliverySuburb:t.DeliverySuburb,deliveryState:t.DeliveryState,deliveryPostCode:t.DeliveryPostCode}})}),i.set("deliveryMethods",h),i.set("defaultDisableAddressEdit",s.get("defaultDisableAddressEdit")),u!==undefined&&i.set("defaultDeliveryAddress",{deliveryAddress1:u.DeliveryAddress1,deliveryAddress2:u.DeliveryAddress2,deliveryAddress3:u.DeliveryAddress3,deliveryAddress4:u.DeliveryAddress4,deliveryAddress5:u.DeliveryAddress5,deliveryAddress6:u.DeliveryAddress6,deliverySuburb:u.DeliverySuburb,deliveryState:u.DeliveryState,deliveryPostCode:u.DeliveryPostCode}),e!==t){i.set("selectedSequence",e);return}switch(s.defaultDeliveryMethod){case 1:e=_.min(_.pluck(f,"Sequence"));i.set("selectedSequence",e);break;case 2:c=_.min(f,function(n){return n.ChargeExTax});e=_.isArray(c)?_.min(_.pluck(c,"Sequence")):c.Sequence;i.set("selectedSequence",e)}if(i.get("deliveryMethods").length===1){i.set("selectedSequence",i.get("deliveryMethods")[0].get("sequence"));i.get("selectedSequence")!==t&&s.setDeliveryMethod();return}}},validateInputFields:function(){u.viewModel.clearMessage();var i=!0,t="";this.get("deliveryGroup")!=null&&this.get("deliveryGroup").get("selectedSequence")!==-1||(i=!1,t=u.options.deliveryMethodNotSelected);!this.get("isInitialLoad")&&t.length>0&&this.setMessage(t,n.cv.css.messageTypes.error);n.cv.css.addRemovePageValidationError(i,u.name);n.cv.css.trigger(n.cv.css.eventnames.deliveryMethodValidated)},getDeliveryAddressInfo:function(){var e=this,i=e.get("deliveryGroup"),u=t,f=undefined,r=undefined;return i&&i.get("selectedSequence")!==t&&(u=i.get("selectedSequence")),u!==t&&(f=i.get("deliveryMethods"),f&&n.each(f,function(n,t){return t.get("sequence")&&t.get("sequence")===u?(r=t.get("isDeliveryMethodOverridingDeliveryAddress")?{deliveryAddress:t.deliveryAddress}:{deliveryAddress:i.get("defaultDeliveryAddress")},r.disableAddressEdit=t.disableAddressEdit,!1):!0})),r===undefined&&(r={deliveryAddress:i.get("defaultDeliveryAddress"),disableAddressEdit:i.get("defaultDisableAddressEdit")}),r},toggleDeliveryMethodDropDown:function(t,i){i===void 0&&(i=-1);var r=n(u.options.deliveryMethodTargetID);return r&&r.data("kendoDropDownList")&&(t?i>0?(n.cv.util.removeExecutionId(u.options.deliveryMethodTargetID,i),n.cv.util.hasExecutionIds(u.options.deliveryMethodTargetID)||r.data("kendoDropDownList").enable(!0)):console.error("Unexpected error of execution id input"):(r.data("kendoDropDownList").enable(!1),i=n.cv.util.setExecutionId(u.options.deliveryMethodTargetID))),i},setDeliveryMethod:function(){var i=this,f=i.get("deliveryGroup"),e,r,o,s;i.clearMessage();e=i.toggleDeliveryMethodDropDown(!1);r=f.get("selectedSequence");f&&r>=0?r===t?i.clearDeliveryMethod():(o={sequence:r},s=n.cv.css.deliveryMethod.setDeliveryMethodForCurrentOrder(o),n.when(s).done(function(t){var e=t.data,o,s;if(t.sessionHasTimedOut)i.redirectToTimeoutUrl(u.options.sessionTimeOutRedirectUrl,{},u.options.includeInBrowserHistory);else if(t.errorMessage&&t.errorMessage.length!=0)i.setMessage(t.errorMessage,n.cv.css.messageTypes.error);else if(e.Success)n.cv.css.trigger(n.cv.css.eventnames.deliveryMethodSetOnOrder,{sequence:r,deliveryAddressInfo:i.getDeliveryAddressInfo(),chargeMethod:n.grep(f.deliveryMethods,function(n){return n.sequence===r})[0].chargeMethod});else if(e.Messages.length>0){for(o="",s=0;s<e.Messages.length;s++)o=o.length==0?e.Messages[s]:o+", "+e.Messages[s];i.setMessage(o,n.cv.css.messageTypes.error)}}).fail(function(){i.setMessage(u.options.textErrorSettingDeliveryMethod,n.cv.css.messageTypes.error)}).always(function(){i.toggleDeliveryMethodDropDown(!0,e)})):i.toggleDeliveryMethodDropDown(!0,e)},clearDeliveryMethod:function(){var t=this,i=t.get("deliveryGroup"),r=t.toggleDeliveryMethodDropDown(!1),f=n.cv.css.deliveryMethod.clearDeliveryMethodFromCurrentOrder({});n.when(f).done(function(r){var f=r.data,e,o;if(r.sessionHasTimedOut)t.redirectToTimeoutUrl(u.options.sessionTimeOutRedirectUrl,{},u.options.includeInBrowserHistory);else if(r.errorMessage&&r.errorMessage.length!=0)t.setMessage(r.errorMessage,n.cv.css.messageTypes.error);else if(f.Success)n.cv.css.trigger(n.cv.css.eventnames.deliveryMethodClearedFromOrder,{sequence:i.get("selectedSequence"),deliveryAddressInfo:t.getDeliveryAddressInfo()});else if(f.Messages.length>0){for(e="",o=0;o<f.Messages.length;o++)e=e.length==0?f.Messages[o]:e+", "+f.Messages[o];t.setMessage(e,n.cv.css.messageTypes.error)}}).fail(function(){t.setMessage(u.options.textErrorClearingDeliveryMethod,n.cv.css.messageTypes.error)}).always(function(){t.toggleDeliveryMethodDropDown(!0,r)})}}));return f.bind("change",function(n){n.field==="deliveryGroup.selectedSequence"&&f.setDeliveryMethod()}),f}};n.cv.ui.widget(u)})(jQuery);
58(function(n){var t={name:"accountsummary",extend:"mvvmwidget",extendEvents:[],options:{enquiryType:"",billingAccount:"",statementPeriod:"",allowStatementReprint:!1,statementReprintPopupId:"",faxNumberOrEmailAddress:"",disputeInvoicePopupId:"",disputeInvoiceStatusDisputed:1,disputeInvoiceStatusResolved:2,resendInvoicePopupId:"",resendInvoiceEmailAddress:"",isFinanceUser:!1,pleaseSelectText:"Please Select",noneAvailableText:"(none available)",notifyWhenStatementsAvailable:!1,format:"CSV",disableHyperLinkDataTypes:"",sortColumn:"InvoiceDate",sortDirection:"asc",dataSource:[],autoBind:!0,firstRow:[],lastRow:[]},viewModelBound:function(){var t=this;n.cv.util.bindKendoWidgets(n(t.element[0]));
58t.viewModel.enquiryTypeOnChange()},initialised:function(){this.reinstateViewModelFromHistoryState()&&this.viewModel.displayClick(null,!1)},_getViewModel:function(){var i=this,t=kendo.observable(n.extend({},i.options,{accountData:{Heading:"",SubTitle:"",AllPeriodsSubtotal:"",Balance:"",LastPaymentDateString:"",AcosHeadings:[],Acos:[],TransDisplay:[],InvoiceDisplay:[],DisplayBranchCode:!1,DisplayDueDate:!1},invoiceNumber:"",orderNo:"",orderSuffix:"",format:i.options.format,outstandingInvoiceReprintButton:null,showHeaderTemplate:!1,showStatementDataTemplate:!1,showOutstandingInvoicesDataTemplate:!1,showOutstandingInvoiceSummaryDataTemplate:!1,showOutstandingInvoiceReprintDataTemplate:!1,reprintStatementVisible:!1,isDisplayVisible:!1,isDisplayEnabled:!1,isCsvDownloadEnabled:!1,isPdfDownloadEnabled:!1,isPdfDownloadVisible:!1,isNotifyMeVisible:!1,isStatementPeriodVisible:!1,statementPeriods:[],statementPeriodsBillingAccount:"",showCol11:!1,showCol12:!1,showCol13:!1,updateViewModelFromDataSource:function(){},disputePopupReason:"",disputePopupNotes:"",disputePopupShowSetToResolvedCheckbox:!1,disputePopupSetToResolved:!1,disputePopupRowId:0,disputePopupReasonIsValid:!0,disputePopupNotesIsValid:!0,getTransDisplayById:function(t){var r=n.grep(i.dataSource.data(),function(n){return n.Id===t});return r.length===1?r[0]:null},disputeClick:function(t){var r=this,f=n(t.target).data("id"),u;r.set("disputePopupRowId",f);r.set("disputePopupReasonIsValid",!0);r.set("disputePopupNotesIsValid",!0);u=r.getTransDisplayById(f);r.set("disputePopupReason",u.DisputeReason);r.set("disputePopupNotes",u.DisputeNotes);r.set("disputePopupShowSetToResolvedCheckbox",u.DisputeStatus===i.options.disputeInvoiceStatusDisputed);r.set("disputePopupSetToResolved",!1);n.fancybox.open({href:"#"+i.options.disputeInvoicePopupId,afterShow:function(){n.fancybox.update()}})},disputePopupSaveClick:function(r){var u=this,h=n("#DisputeInvoicePopup-reason").data("kendoDropDownList"),o=h.value(),s=n.cv.util.hasContent(o),f,e;if(u.set("disputePopupReasonIsValid",s),f=u.get("disputePopupNotes"),e=n.cv.util.hasContent(f),u.set("disputePopupNotesIsValid",e),s===!1||e===!1){n.fancybox.update();return}t._setIsProcessing(r,!0);n.cv.css.accounts.saveInvoiceDispute({rowId:u.get("disputePopupRowId"),reason:o,notes:f,setToResolved:u.get("disputePopupSetToResolved")}).done(function(r){if(r.data.Success){var f=u.getTransDisplayById(u.get("disputePopupRowId")),e=u.get("disputePopupSetToResolved");f.set("DisputeReason",u.get("disputePopupReason"));f.set("DisputeNotes",u.get("disputePopupNotes"));f.set("DisputeStatus",e?i.options.disputeInvoiceStatusResolved:i.options.disputeInvoiceStatusDisputed);f.set("isDisputed",e===!1);f.set("isResolved",e);n.fancybox.close()}else t._notifyMessages(r.data.Success,r.data.Messages)}).always(function(){t._setIsProcessing(r,!1)})},sortByColumn:function(i,r,u){var f=t;n.cv.util.sortByColumn(f,i,r,u)},displayClick:function(r,u){u===void 0&&(u=!0);t._setIsProcessing(r,!0);t._hideEverything();var f={enquiryType:t.get("enquiryType"),billingAccount:t.get("billingAccount")};return n.cv.css.accounts.displaystatement(f).done(function(r){var e,f,o,s;if(r&&r.data){r.data.showResendInvoicePopup=t.showResendInvoicePopup;e=t.get("disableHyperLinkDataTypes");n.cv.util.isNullOrWhitespace(e)||(f=e.split(","),f.length>0&&(n.each(r.data.TransDisplay,function(t,i){n.each(f,function(t,r){i.Type.toLowerCase()===r.toLowerCase()&&(i.InvoiceNumber=n.cv.util.stripHtml(i.InvoiceNumber))})}),n.each(r.data.InvoiceDisplay,function(t,i){n.each(f,function(t,r){i.Type.toLowerCase()===r.toLowerCase()&&(i.InvoiceNumberLink=n.cv.util.stripHtml(i.InvoiceNumberLink))})})));t.set("accountData",r.data);t.set("showHeaderTemplate",!0);r.data.TransDisplay.length>0?r.data.Heading.indexOf("Statement")==0?(t.set("firstRow",r.data.TransDisplay[0]),t.set("lastRow",r.data.TransDisplay[r.data.TransDisplay.length-1]),i.setDataSource(r.data.TransDisplay.slice(1,-1))):(n.each(r.data.TransDisplay,function(n,t){t.isDisputed=t.DisputeStatus===i.options.disputeInvoiceStatusDisputed;
58t.isResolved=t.DisputeStatus===i.options.disputeInvoiceStatusResolved}),i.setDataSource(r.data.TransDisplay)):r.data.InvoiceDisplay.length>0&&(n.each(r.data.InvoiceDisplay,function(n,t){t.Id=0}),i.setDataSource(r.data.InvoiceDisplay));o=t.get("enquiryType")+"";switch(o){case"0":case"1":case"2":t.set("showStatementDataTemplate",!0);break;case"3":t.set("showOutstandingInvoicesDataTemplate",!0);break;case"4":t.set("showOutstandingInvoiceSummaryDataTemplate",!0);break;case"5":t.set("showOutstandingInvoiceReprintDataTemplate",!0)}}u&&(s=["accountData","statementPeriods","dataSource"],i.saveViewModelToCurrentHistoryState(s))}).fail(function(){n.cv.util.notify(t,"Display Statement request failed.",n.cv.css.messageTypes.error,{triggerMessages:!0,source:i.name})}).always(function(){t._setIsProcessing(r,!1)}),!1},downloadCsvClick:function(){t._downloadStatement("CSV")},downloadPdfClick:function(){t._downloadStatement("PDF")},_downloadStatement:function(i){var r=t.get("enquiryType"),u=t.get("billingAccount"),f=t.get("statementPeriod"),e="/Account.aspx?download=1&enquiryType="+r+"&billingAccount="+u+"&statementPeriod="+f+"&filetype="+i;return n.cv.util.redirect(e,null,!1),!1},reprintStatementClick:function(){return n.fancybox.open({href:"#"+t.get("statementReprintPopupId"),topRatio:"0.25",minWidth:"320",padding:"0"}),!1},reprintStatementConfirmClick:function(r){t._setIsProcessing(r,!0);var u=t.get("faxNumberOrEmailAddress");return n.cv.css.accounts.reprintstatement({faxNumberOrEmailAddress:u}).done(function(i){n.fancybox.close();i&&i.data&&t._notifyMessages(i.data.Success,i.data.Messages)}).fail(function(){n.cv.util.notify(t,"Reprint Statement request failed.",n.cv.css.messageTypes.error,{triggerMessages:!0,source:i.name})}).always(function(){t._setIsProcessing(r,!1)}),!1},_notifyMessages:function(r,u){var f=r?n.cv.css.messageTypes.success:n.cv.css.messageTypes.error;n.each(u,function(r,u){n.cv.util.notify(t,u,f,{triggerMessages:!0,source:i.name})})},showResendInvoicePopup:function(i){var r=n(i.target).data("invoiceNumber"),u=n(i.target).data("orderNo"),f=n(i.target).data("orderSuffix");return t.set("invoiceNumber",r),t.set("orderNo",u),t.set("orderSuffix",f),t.set("outstandingInvoiceReprintButton",i.target),n.fancybox.open({href:"#"+t.get("resendInvoicePopupId"),topRatio:"0.25",minWidth:"320",padding:"0"}),!1},resendInvoiceConfirmClick:function(i){t._setIsProcessing(i,!0);var r={soOrderNo:t.get("orderNo"),soBoSuffix:t.get("orderSuffix"),invoiceNumber:t.get("invoiceNumber"),emailAddress:t.get("resendInvoiceEmailAddress"),format:t.get("format")};n.cv.css.accounts.resendinvoice(r).done(function(i){n.fancybox.close();i&&i.data&&(i.data.Success&&n(t.get("outstandingInvoiceReprintButton")).replaceWith("Requested"),t._notifyMessages(i.data.Success,i.data.Messages))}).always(function(){t._setIsProcessing(i,!1)})},enquiryTypeOnChange:function(){var n=t.get("enquiryType"),f=t.get("allowStatementReprint"),i=t.get("isFinanceUser"),r=t.get("billingAccount"),u=t.get("statementPeriod");t.set("isDisplayVisible",n!=="9");t.set("isDisplayEnabled",i?r:!0);t.set("isCsvDownloadEnabled",i?r&&(n!=="9"||u):!0);t.set("isPdfDownloadEnabled",i?r&&(n!=="9"||u):!0);t.set("isPdfDownloadVisible",n==="9");t.set("reprintStatementVisible",f&&n!=="9");t.set("isNotifyMeVisible",n==="9");t.set("isStatementPeriodVisible",r&&n==="9");t.set("showCol11",i===!1);t.set("showCol12",i&&n!=="9");t.set("showCol13",i&&n==="9");t._hideEverything();n==="9"&&r&&t._getStatementPeriods()},billingAccountOnChange:function(){var n=t.get("enquiryType");if(n!=="9"){t.enquiryTypeOnChange();return}t._getStatementPeriods()},statementPeriodOnChange:function(){t.enquiryTypeOnChange()},notifyMeClick:function(){var i={isChecked:t.get("notifyWhenStatementsAvailable")};n.cv.css.accounts.notifymewhennewstatementsbecomeavailable(i).done(function(n){n&&n.data||(t._notifyMessages(n.data.Success,n.data.Messages),t.set("notifyWhenStatementsAvailable",!i.isChecked))})},_getStatementPeriods:function(){var r={billingAccount:t.get("billingAccount")};r.billingAccount!==t.get("statementPeriodsBillingAccount")&&n.cv.css.accounts.getstatementperiods(r).done(function(n){if(n&&n.data){t.set("statementPeriodsBillingAccount",t.get("billingAccount"));switch(n.data.length){case 0:t.set("statementPeriods",[{text:i.options.noneAvailableText,value:""}]);break;default:n.data.splice(0,0,{text:i.options.pleaseSelectText,value:""});t.set("statementPeriods",n.data)}}else t.set("statementPeriods",[{text:i.options.noneAvailableText,value:""}]);t.enquiryTypeOnChange()})},_setIsProcessing:function(t,i){t&&(i?n(t.target).addClass(n.cv.css.isProcessingClass):n(t.target).removeClass(n.cv.css.isProcessingClass))},_hideEverything:function(){t.set("showHeaderTemplate",!1);t.set("showStatementDataTemplate",!1);t.set("showOutstandingInvoicesDataTemplate",!1);t.set("showOutstandingInvoiceSummaryDataTemplate",!1);t.set("showOutstandingInvoiceReprintDataTemplate",!1)}}));return t}};n.cv.ui.widget(t)})(jQuery);
59(function(n){var t={name:"accountpayment",extend:"mvvmwidget",extendEvents:[],suppressOverallCalculation:!1,options:{dataSource:[],autoBind:!0,sortColumn:"InvoiceDate",sortDirection:"asc",scrollToElement:"#cv-zone-layout",invoiceDetailsCurrentChecked:!1,invoiceDetailsDays30Checked:!1,invoiceDetailsDays60Checked:!1,invoiceDetailsDays90Checked:!1,invoiceOrderFilterValue:"AllOrders",invoiceDateFrom:null,invoiceDateTo:null,invoiceDateRangeDefault:"ThisWeek",enableInvoiceDateRangeFilter:!1,searchType:"InvoiceNo",agingPeriodCurrent:0,agingPeriodDays30:0,agingPeriodDays60:0,agingPeriodDays90:0,totalOwing:0,totalDue:0,totalUnallocatedPayments:0,totalDueNoExcludedTypes:0,disallowAccountPaymentAdjustment:!1,triggerMessages:!0,enableInvoiceReprintBatching:!1,currentIncludesLastMonth:!1,isStatementSummaryVisible:!0,isUnallocatedPaymentsTopVisible:!1,isUnallocatedPaymentsListVisible:!1,useUnallocatedCashPayments:!1,enableAccountPaymentNote:!1,isUnallocatedCashAllowed:!1,isLiveSearch:!1,reprintInvoiceFileFormat:"PDF",reprintInvoiceOverlayId:"reprint-invoice",customerHasEwayToken:!1,useCustomerPaymentTokenDialog:"use-customer-payment-token-dialog",reprintInvoiceNoSelectedInvoicesError:"Zero invoices are selected for reprint. Please select some.",reprintInvoiceInvaildAddressError:"Invalid fax or email address entered.",multipleInvoiceReprintRequestSuccess:"The invoices {0} have been requested for reprint, the request was sent to {1}",errorRequestingReprint:"There was an error requesting your reprint at this time, please try again later",unusedInvoiceForUnallocatedPaymentError:"Invoice {0} cannot be paid for by the unallocated cash payment chosen, as its amount is already accounted for by the selected invoices.",selectInvoicesToUseAllUnallocatedPayment:"You have not selected invoice(s) with a total amount owing to sufficiently use the whole amount of the unallocated cash payment {0}.",noInvoicesSelectedError:"You have not selected any invoices to pay.",selectedInvoicesHaveNoAmountEntered:"The selected invoice(s) do not have a Payment Amount entered.",selectedInvoicesBelow0Total:"The selected invoice(s) have a Payment Amount that is equal to or below 0.",paymentNoteRequiredText:"A Payment Note is required to be entered when short paying an invoice.",unallocatedPaymentNotSelectedError:"You have not selected an unallocated cash payment to use.",filterAllOrders:"AllOrders",filterWebOrdersOnly:"WebOrdersOnly",filterUsersOrdersOnly:"UsersOrdersOnly",allowOnlyUnallocatedPayment:!1,payGenericAmountModalId:"pay-generic-amount-modal",creditClaimsFileUploadIsMandatory:!0,creditClaimsFileUploadAllowedFileTypes:"",creditClaimsInvalidMessage:"Some credit claims are invalid. Please correct the credit claims before continuing.",claimsReferenceRequiredMessage:"Reference is required",claimsNoteRequiredMessage:"Note is required",claimsFileRequiredMessage:"File is required",claimsAmountRequiredMessage:"Amount is required",includeClRecords:!1},initialised:function(){this.viewModel._initialiseAccountPaymentInvoices();this.scrollToTop();var n=this;n.setupSinglePageHistoryStateHandler({step:1},function(t){n.viewModel._showStep(t.step)})},closeFancyBox:function(){n.fancybox.close()},scrollToTop:function(){var t=this;n("html,body").animate({scrollTop:n(t.options.scrollToElement).offset().top},"fast")},notify:function(t){n.cv.util.notify(t.vm,t.message,t.messageType)},bindPaymentAmountKeyup:function(){var t=this,i=n("[data-row-id]",t.element);n.each(i,function(i,r){r=n(r);
59n.each(t.dataSource.data(),function(n,i){if(i.RowId.toString()===r.attr("data-row-id")){r.on("keyup blur",function(n){n.type==="keyup"&&(i.allowPaymentAmountChanged=!1);i.setCheckbox("payChecked",i.shouldCheckboxBeChecked());n.type==="keyup"&&(i.allowPaymentAmountChanged=!0);t.viewModel.calculateTotalPaymentAmount()});return!1}return!0})})},viewModelBound:function(){var t=this;n.cv.css.bind(n.cv.css.eventnames.accountPaymentSurchargeChanged,n.proxy(t.viewModel.accountPaymentSurchargeChanged,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.accountPaymentNewCustomerPayment,n.proxy(t.viewModel.newCustomerPayment,t.viewModel))},loading:function(n){this.viewModel.set("isLoading",n)},_getViewModel:function(){var i=this,t=kendo.observable(n.extend({},i.options,{debug:function(t){n.cv.util.queryStringValue("debug")==="true"&&console.debug(t)},notify:function(n,t){i.signal("notify",{vm:this,message:n,messageType:t})},isProcessing:!1,showStep1:!0,showStep2:!1,selectedInvoices:[],customerTokenPaymentAccepted:!1,unallocatedPayments:[],selectedUnallocatedPayment:null,unallocatedPaymentAmountRemaining:0,orderSelectedForSingleInvoiceReprint:null,invoicesRecordCount:0,reprintInvoiceContact:"",isLoading:!1,unallocatedReceiptAmount:"",totalPaymentAmount:0,totalPaymentAmountBeforeClaims:0,totalPaymentAmountStep2:0,paymentCharges:0,genericAmount:0,totalPositiveInvoices:0,isValidGenericAmount:function(){var n=t.get("genericAmount"),i=t.get("totalPositiveInvoices");return n>i&&t.get("isUnallocatedCashAllowed")||n<=i},totalPaymentAmountStep2PlusCharges:function(){return t.get("totalPaymentAmountStep2")+t.get("paymentCharges")-t.totalClaimAmount()},totalPaymentAmountStep2LessUnallocated:function(){return t.get("totalPaymentAmountStep2")-t._getUnallocatedReceiptAmount()},paymentNote:"",receiptNumber:null,bPayRefNum:"",customerPaymentCreated:!1,continueEnabled:!1,payAllChecked:!1,reprintAllChecked:!1,reprintSelectedEnabled:!1,sortByColumn:function(t,i,r){var u=this;n.cv.util.sortByColumn(u,t,i,r)},updateViewModelFromDataSource:function(){this.set("invoicesRecordCount",t.dataSource.data().length)},showInvoicesRecordCount:function(){return t.get("invoicesRecordCount")>0},_getInvoiceReprintOrders:function(){return _.filter(i.dataSource.data(),function(n){return n.reprintChecked})},executeWithDeferredCalculation:function(r){n.isFunction(r)&&(i.suppressOverallCalculation=!0,r(),i.suppressOverallCalculation=!1,t.calculateOverall())},calculateOverall:function(){t.calculateTotalPaymentAmount();t.set("continueEnabled",t._continueEnabled());t.setinvoiceDetailsCheckboxes()},payAllChanged:function(){t.executeWithDeferredCalculation(function(){t._selectAllPay(t.get("payAllChecked"))})},reprintAllChanged:function(){this._selectAllReprint(this.get("reprintAllChecked"))},_getAccountPaymentInvoices:function(){var t=this,r=new Date;r.setHours(0,0,0,0);i.signal("loading",!0);n.cv.css.accounts.getaccountpaymentinvoices({currentInvoiceOrderFilter:t.get("invoiceOrderFilterValue"),invoiceDateFrom:kendo.toString(t.get("invoiceDateFrom"),"dd-MMM-yyyy"),invoiceDateTo:kendo.toString(t.get("invoiceDateTo"),"dd-MMM-yyyy"),includeClRecords:i.options.includeClRecords,searchType:t.get("searchType"),invoiceOrOrderNumber:t.get("invoiceOrOrderNumber")}).done(function(u){if(u&&u.data){t.set("agingPeriodCurrent",u.data.AgingSummary.Current);t.set("agingPeriodDays30",u.data.AgingSummary.Days30);t.set("agingPeriodDays60",u.data.AgingSummary.Days60);t.set("agingPeriodDays90",u.data.AgingSummary.Days90);t.set("totalOwing",u.data.TotalOwing);t.set("totalDue",u.data.TotalDue);t.set("totalUnallocatedPayments",Math.abs(u.data.TotalUnallocatedPayments));t.set("totalDueNoExcludedTypes",u.data.TotalDueNoExcludedTypes);var f=0;n.each(u.data.Invoices,function(u,e){e.Outstanding>0&&(f=f+e.Outstanding);e.payChecked=!1;e.reprintChecked=!1;e.InvoicePaymentNote="";e.minAmountToPay=function(){var n=this.get("PayAmount");return n>0?0:n};e.maxAmountToPay=function(){var n=this.get("PayAmount");return n<0?0:n};e.payDisabled=!1;e.reprintDisabled=!e.HasReprint;e.updatePaymentAmountDisabled=!1;e.paymentAmountDisabled=function(){return this.get("updatePaymentAmountDisabled"),t.isUnallocatedPaymentMode()||this.get("payDisabled")||t.disallowAccountPaymentAdjustment};e.payAllowed=function(){return t.get("isUnallocatedPaymentsListVisible")===!1||this.get("TransType")!=="CU"};e.payClicked=function(){if(t.debug("invoice.payClicked"),this.get("payDisabled")===!1){var i=this.get("payChecked");n.cv.util.hasValue(i)||(i=!1);this.set("payChecked",!i)}};e.reprintClicked=function(){if(t.debug("invoice.reprintClicked"),this.get("reprintDisabled")===!1){var i=this.get("reprintChecked");n.cv.util.hasValue(i)||(i=!1);this.set("reprintChecked",!i)}};e.reprintSingleInvoice=function(){this.get("reprintDisabled")===!1&&(t._selectAllReprint(!1),this.reprintInvoice())};e.reprintInvoice=function(){this.get("reprintDisabled")===!1&&(this.set("reprintChecked",!0),t.set("orderSelectedForSingleInvoiceReprint",this),t.showInvoiceReprint())};e.shouldCheckboxBeChecked=function(){var n=this.getAmountToPayByDomCheck(),i=this.maxAmountToPay(),r=this.minAmountToPay(),t=n;return r>=n&&n!==0?t=r:i<=n&&n!==0&&(t=i),t!==0};e.paymentAmountChanged=function(){if(t.debug("invoice.paymentAmountChanged"),this.allowPaymentAmountChanged===!0){var f=this.get("payChecked"),n=this.getAmountToPay(),r=this.maxAmountToPay(),u=this.minAmountToPay(),i=n;f?n===0?i=this.get("PayAmount"):u>=n&&n!==0?i=u:r<=n&&n!==0&&(i=r):i=0;this.set("amountToPay",i)}};e.setCheckbox=function(n,t){this.set(n,t)};e.allowPaymentAmountChanged=!0;e.payChanged=function(){var r,e,o,u,f;if(t.debug("invoice.payChanged"),this.getAmountToPay()===0||this.get("payChecked")===!1)if(r=t._getUnallocatedPaymentValue(),t.isUnallocatedPaymentMode()&&r>0){if(e=this.get("RowId"),n.each(t.dataSource.data(),function(n,i){i.get("RowId")!==e&&i.isVisible()&&i.get("payChecked")&&(r=t._round(r-i.getAmountToPay()))}),this.get("payChecked")&&r===0){i.suppressOverallCalculation===!1&&(o=i.options.unusedInvoiceForUnallocatedPaymentError.format(this.get("InvoiceNumber")),t.notify(o,n.cv.css.messageTypes.warning));this.set("payChecked",!1);return}u=void 0;f=this.get("payChecked")?this.get("PayAmount"):0;u=f>r?r:f;this.set("amountToPay",this.get("payChecked")?u:0);r=t._round(r-u);r>
590&&n.each(i.dataSource.data(),function(n,i){if(i.isVisible()&&i.get("payChecked")&&i.getAmountToPay()<i.get("PayAmount")){var u=t._round(i.getAmountToPay()+r);u>i.get("PayAmount")&&(u=i.get("PayAmount"));r=t._round(r-(u-i.getAmountToPay()));i.set("amountToPay",u)}})}else this.paymentAmountChanged();t.setinvoiceDetailsCheckboxes()};e.isVisible=function(){var n=t.get("invoiceOrderFilterValue");switch(n){case i.options.filterAllOrders:return!0;case i.options.filterWebOrdersOnly:return this.get("IsWebOrder");case i.options.filterUsersOrdersOnly:return this.get("IsUserOrder")}return!1};e.getAmountToPay=function(){return this.amountToPay};e.getAmountToPayByDomCheck=function(){var i=n("[data-row-id='"+this.RowId+"']"),t=i.val();return t?parseFloat(t):0};e.amountToPay=0;e.hasAdditionalFields=e.AdditionalFields.length>0;e.hasDiscount=e.TransDiscount>0&&e.DueDate>=r});t.set("totalPositiveInvoices",f);i.signal("modifyInvoices",u.data.Invoices);i.setDataSource(u.data.Invoices);n.each(i.dataSource.data(),function(n,r){r.bind("change",function(n){t.debug("invoice.change event - "+n.field);n.field==="payChecked"&&r.payChanged();n.field==="reprintChecked"&&t.set("reprintSelectedEnabled",t._anyReprintChecked());i.viewModel.calculateTotalPaymentAmount();t.set("continueEnabled",t._continueEnabled())})});i.signal("bindPaymentAmountKeyup");t.set("unallocatedPayments",u.data.UnallocatedPayments);i.signal("loading",!1)}})},_initialiseAccountPaymentInvoices:function(){if(t.get("enableInvoiceDateRangeFilter")){var n=t.get("invoiceDateRangeDefault");t.set("selectedDateRange",n);t._setDateRange(n)}t._getAccountPaymentInvoices()},_setDateRange:function(i){var r=new Date,u,f;switch(i){case"ThisWeek":t.set("invoiceDateFrom",n.cv.util.getFirstDayOfWeek(r));t.set("invoiceDateTo",n.cv.util.getLastDayOfWeek(r));break;case"LastWeek":u=n.cv.util.addDays(r,-7);t.set("invoiceDateFrom",n.cv.util.getFirstDayOfWeek(u));t.set("invoiceDateTo",n.cv.util.getLastDayOfWeek(u));break;case"ThisMonth":t.set("invoiceDateFrom",n.cv.util.getFirstDayOfMonth(r));t.set("invoiceDateTo",n.cv.util.getLastDayOfMonth(r));break;case"LastMonth":f=n.cv.util.addMonths(r,-1);t.set("invoiceDateFrom",n.cv.util.getFirstDayOfMonth(f));t.set("invoiceDateTo",n.cv.util.getLastDayOfMonth(f));break;case"CustomRange":t.set("invoiceDateFrom",null);t.set("invoiceDateTo",null)}},unallocatedReceiptAmountChanged:function(){t.debug("unallocatedReceiptAmountChanged");t.calculateTotalPaymentAmount();t.set("continueEnabled",t._continueEnabled())},showAllOrdersClicked:function(){t.debug("showAllOrdersClicked");t.set("invoiceOrderFilterValue",i.options.filterAllOrders);t.invoiceOrderFilterChanged()},showWebOrdersOnlyClicked:function(){t.debug("showAllOrdersClicked");t.set("invoiceOrderFilterValue",i.options.filterWebOrdersOnly);t.invoiceOrderFilterChanged()},showUsersOrdersOnlyClicked:function(){t.debug("showAllOrdersClicked");t.set("invoiceOrderFilterValue",i.options.filterUsersOrdersOnly);t.invoiceOrderFilterChanged()},invoiceOrderFilterChanged:function(){t.debug("invoiceOrderFilterChanged");var r=t.get("invoiceOrderFilterValue"),n=[];switch(r){case i.options.filterWebOrdersOnly:n.push({field:"IsWebOrder",operator:"eq",value:!0});break;case i.options.filterUsersOrdersOnly:n.push({field:"IsUserOrder",operator:"eq",value:!0})}i.dataSource.filter(n);t.calculateTotalPaymentAmount()},isUnallocatedPaymentMode:function(){return t.get("isUnallocatedPaymentsListVisible")===!0},setReprint:function(){t.debug("setReprint");var r=t._anyPayChecked();n.each(i.dataSource.data(),function(n,t){t.setCheckbox("reprintDisabled",t.HasReprint?r:!0)})},setinvoiceDetailsCheckboxes:function(){if(!i.suppressOverallCalculation){var l=t._getInvoicePeriodStartDate(),o=0,s=0,h=0,c=0,r=0,u=0,f=0,e=0;n.each(i.dataSource.data(),function(n,i){var a=i.get("payChecked"),v=t._getInvoicePayPeriod(l,i.InvoiceDate);switch(v){case 0:r++;o+=a?1:0;break;case 30:u++;s+=a?1:0;break;case 60:f++;h+=a?1:0;break;case 90:e++;c+=a?1:0}});t.set("invoiceDetailsCurrentChecked",r>0&&o===r);t.set("invoiceDetailsDays30Checked",u>0&&s===u);t.set("invoiceDetailsDays60Checked",f>0&&h===f);t.set("invoiceDetailsDays90Checked",e>0&&c===e)}},calculateTotalPaymentAmount:function(){var f;if(!i.suppressOverallCalculation){t.debug("calculateTotalPaymentAmount");var r=this,e=0,u=r._getUnallocatedReceiptAmount();n.each(i.dataSource.data(),function(n,t){t.isVisible()&&(e++,t.get("payChecked")&&(u=r._round(u+t.getAmountToPay())))});r.set("totalPaymentAmountBeforeClaims",u);
59n.each(r.creditClaims,function(n,t){u-=t.amount});r.set("totalPaymentAmount",u);r.set("invoicesRecordCount",e);f=r._getUnallocatedPaymentValue();f>0&&r.set("unallocatedPaymentAmountRemaining",r._round(f-u));i.signal("enhance")}},_round:function(n){return parseFloat(parseFloat(n).toFixed(2))},_anyChecked:function(t){var r=!1;return i.dataSource&&n.each(i.dataSource.data(),function(n,i){i.get(t)&&(r=!0)}),r},_anyPayChecked:function(){return this._anyChecked("payChecked")},_anyReprintChecked:function(){return this._anyChecked("reprintChecked")},_continueEnabled:function(){if(i.suppressOverallCalculation)return!1;var n=this;return n._anyPayChecked()||n.allowOnlyUnallocatedPayment?n.isNegativeTotal()===!1:!1},_getInvoicePeriodStartDate:function(){var t=new Date,n=new Date(t.getFullYear(),t.getMonth(),1);return i.options.currentIncludesLastMonth&&n.setMonth(n.getMonth()-1),n},searchInvoiceOrNumber:function(){t.set("invoiceDetailsCurrentChecked",!1);t.set("invoiceDetailsDays30Checked",!1);t.set("invoiceDetailsDays60Checked",!1);t.set("invoiceDetailsDays90Checked",!1);t.set("totalPaymentAmount",0);t.set("payAllChecked",!1);t._getAccountPaymentInvoices()},invoiceDetailsChanged:function(){t.executeWithDeferredCalculation(function(){t.debug("invoiceDetailsChanged");var r=t._getInvoicePeriodStartDate(),i=[];t.get("invoiceDetailsCurrentChecked")&&i.push(0);t.get("invoiceDetailsDays30Checked")&&i.push(30);t.get("invoiceDetailsDays60Checked")&&i.push(60);t.get("invoiceDetailsDays90Checked")&&i.push(90);n.each(t.dataSource.data(),function(u,f){var e=t._getInvoicePayPeriod(r,f.InvoiceDate),o=n.inArray(e,i)!==-1;f.setCheckbox("payChecked",o)})})},dateRangeSelectorChanged:function(){i.setDataSource(null);var n=t.get("selectedDateRange").value;t._setDateRange(n);n!=="CustomRange"&&t._getAccountPaymentInvoices()},dateRangeFromChanged:function(){this._dateRangeChanged("invoiceDateFrom")},dateRangeToChanged:function(){this._dateRangeChanged("invoiceDateTo")},_dateRangeChanged:function(n){i.setDataSource(null);var f=t.get("selectedDateRange").value,r=t.get("invoiceDateFrom"),u=t.get("invoiceDateTo");f!=="CustomRange"&&t.set("selectedDateRange","CustomRange");u!=null&&r!=null&&(u>=r?t._getAccountPaymentInvoices():n==="invoiceDateFrom"?t.set("invoiceDateTo",r):n==="invoiceDateTo"&&t.set("invoiceDateFrom",u))},_getInvoicePayPeriod:function(n,t){if(t>=n)return 0;var i=new Date(n.valueOf());return(i.setMonth(i.getMonth()-1),t>=i)?30:(i.setMonth(i.getMonth()-1),t>=i)?60:90},_selectAllPay:function(i){var r=t.dataSource,u=r.data(),f=r.sort()||u,e=new kendo.data.Query(u),o=e.sort(f).data;n.each(o,function(n,t){t.payAllowed()&&t.setCheckbox("payChecked",i)})},_selectAllReprint:function(i){n.each(t.dataSource.data(),function(n,t){t.setCheckbox("reprintChecked",t.HasReprint?i:!1)})},showInvoiceReprint:function(){if(n.cv.util.clearNotifications(t),t._anyReprintChecked()){t.set("showingInvoiceReprint",!0);var r=t.get("reprintInvoiceOverlayId");n.cv.util.isNullOrWhitespace(r)?t.set("showingInvoiceReprint",!1):n.fancybox.open({href:"#"+r,afterShow:function(){n.fancybox.update()}})}else i.viewModel.notify(i.options.reprintInvoiceNoSelectedInvoicesError,n.cv.css.messageTypes.error);return!1},hideInvoiceReprint:function(){i.signal("closeFancyBox");t.set("showingInvoiceReprint",!1);n.cv.util.hasValue(t.get("orderSelectedForSingleInvoiceReprint"))&&(t.get("orderSelectedForSingleInvoiceReprint").set("reprintChecked",!1),t.set("orderSelectedForSingleInvoiceReprint",null))},processInvoiceReprint:function(){i.signal("closeFancyBox");t.set("showingInvoiceReprint",!1);t.set("orderSelectedForSingleInvoiceReprint",null);t.reprintSelectedInvoices()},reprintSelectedInvoices:function(){var r=n.Deferred(),u,f,e,o;return(n.cv.util.clearNotifications(t),!t._isReprintFaxOrEmailValid())?(i.viewModel.notify(i.options.reprintInvoiceInvaildAddressError,n.cv.css.messageTypes.error),r.reject().promise()):(u=t._getInvoiceReprintOrders(),!n.cv.util.hasValue(u)||u.length===0)?(i.viewModel.notify(i.options.reprintInvoiceNoSelectedInvoicesError,n.cv.css.messageTypes.error),r.reject().promise()):(f=i.options.enableInvoiceReprintBatching===!0?kendo.guid():"",e=[],n.each(u,function(r,u){e.push({orderNo:u.OrderNo,suffix:u.OrderSuffix,reprintTo:t.get("reprintInvoiceContact"),outputFormat:t.get("reprintInvoiceFileFormat"),batchGroupID:f,invoiceNumber:n.trim(u.InvoiceNumber),ignoreCustomerChecks:!0,expectedInvoiceNo:"",errMsg:"",forceOrderCreation:i.options.isLiveSearch})}),o={batchData:e},n.cv.css.orders.setInvoiceReprintBulk(o).done(function(u){var o,s,h,e,c;if(!n.cv.util.hasValue(u,"data[0]")){n.cv.util.notify(i.viewModel,i.options.errorRequestingReprint,n.cv.css.messageTypes.error);return}o=u.data;i.options.enableInvoiceReprintBatching===!0&&n.cv.css.orders.sendInvoiceReprintBatchGroup({batchGroupID:f,errMsg:""});t._selectAllReprint(!1);
59s=_.filter(o,function(t){var i=!1;return n.cv.util.hasValue(t)&&(i=t.result.Success),i});h=_.filter(o,function(t){var i=!1;return n.cv.util.hasValue(t)&&(i=!t.result.Success),i});s.length>0&&(e="",n.each(s,function(n,t){e+=e.length>0?", ":"";e+=t.invoiceNumber}),c=i.viewModel.get("multipleInvoiceReprintRequestSuccess").format(e,i.viewModel.get("reprintInvoiceContact")),i.viewModel.notify(c,n.cv.css.messageTypes.success),r.resolve());h.length>0&&(n.each(h,function(t,r){var u="Invoice "+r.invoiceNumber+": "+r.result.Messages;i.viewModel.notify(u,n.cv.css.messageTypes.error)}),r.reject())}).fail(function(){i.viewModel.notify(i.options.errorRequestingReprint,n.cv.css.messageTypes.error);r.reject()}),r.promise())},_isReprintFaxOrEmailValid:function(){return t._isReprintValidFax()||t._isReprintValidEmail()},_isReprintValidFax:function(){var n=t.get("reprintInvoiceContact");return n=n.replace(/\(/g,"").replace(/\)/g,"").replace(/\s/g,""),t.set("reprintInvoiceContact",n),t._testRegEx(/^\+?[0-9]{9,}$/)},_isReprintValidEmail:function(){return t._testRegEx(/\S+@\S+/)},_testRegEx:function(i){var r=t.get("reprintInvoiceContact");return n.cv.util.testRegEx(i,r,!1)},unallocatedCashPaymentNoClick:function(){t.set("isUnallocatedPaymentsTopVisible",!1);t.set("isStatementSummaryVisible",!0);t.set("selectedUnallocatedPayment",null);t.showUnallocatedPaymentList(!1)},unallocatedCashPaymentYesClick:function(){t.set("isUnallocatedPaymentsTopVisible",!1);t.set("isStatementSummaryVisible",!1);t.showUnallocatedPaymentList(!0)},unallocatedCashPaymentCancelClick:function(){t.unallocatedCashPaymentNoClick()},showUnallocatedPaymentList:function(r){t.set("isUnallocatedPaymentsListVisible",r);t.setReprint();t.set("payAllChecked",!1);n.each(i.dataSource.data(),function(n,i){i.set("updatePaymentAmountDisabled",!i.get("updatePaymentAmountDisabled"));var u=i.payAllowed()&&(r===!1||t._getUnallocatedPaymentValue()!==0);i.set("payDisabled",u===!1);i.set("payChecked",!1)})},disablePayAll:function(){return t.isUnallocatedPaymentMode()&&t._getUnallocatedPaymentValue()===0},selectAndApplyClicked:function(r){t.debug("selectAndApplyClicked - "+r.data);t.set("isStatementSummaryVisible",!0);t.set("selectedUnallocatedPayment",r.data);n.each(t.get("unallocatedPayments"),function(n,t){t.set("unallocatedPaymentValue",Math.abs(r.data.AmountAvailable))});t.set("unallocatedPaymentAmountRemaining",Math.abs(r.data.AmountAvailable));t.executeWithDeferredCalculation(function(){t._selectAllPay(!1);t.set("payAllChecked",!1);n.each(i.dataSource.data(),function(n,t){t.set("amountToPay",0)})});var u=t._getUnallocatedPaymentValue();n.each(i.dataSource.data(),function(n,t){t.set("payDisabled",t.payAllowed()===!1||u===0)})},showCustomerPaymentTokenPaymentDialog:function(){n.fancybox.open({modal:!0,topRatio:"0.25",minWidth:"250",padding:"0",href:"#"+i.options.useCustomerPaymentTokenDialog})},userAcceptedCustomerPaymentTokenPayment:function(){i.signal("closeFancyBox");t.set("customerTokenPaymentAccepted",!0);t.continuePayment()},userRejectedCustomerPaymentTokenPayment:function(){i.signal("closeFancyBox");t.set("customerTokenPaymentAccepted",!1);t.continuePayment()},_showStep:function(r){t.set("showStep1",r===1);t.set("showStep2",r===2);i.signal("scrollToTop");n.cv.css.trigger(n.cv.css.eventnames.showingAccountPaymentSummary,{IsAccountPaymentPage:!0,IsPaymentOptionsVisible:r===2,UnallocatedPaymentAmount:t._getUnallocatedPaymentValue(),ReceiptNumber:t.get("receiptNumber"),BPayRefNum:t.get("bPayRefNum"),IsUnallocatedPayment:t.isUnallocatedPaymentMode(),TotalPaymentAmount:t.get("totalPaymentAmount"),CreditClaims:t.get("creditClaims"),customerTokenPaymentAccepted:i.options.customerHasEwayToken?t.get("customerTokenPaymentAccepted"):null})},_getUnallocatedPaymentValue:function(){var n=t.get("selectedUnallocatedPayment")?parseFloat(t.get("selectedUnallocatedPayment").AmountAvailable):0;return Math.abs(n)},accountPaymentSurchargeChanged:function(n){t.debug("accountPaymentSurchargeChanged - ChargeAmount "+n.ChargeAmount);t.debug("accountPaymentSurchargeChanged - ChargeAmountExTax "+n.ChargeAmountExTax);t.debug("accountPaymentSurchargeChanged - ChargePercent "+n.ChargePercent);t.set("paymentCharges",n.ChargeAmount)},_getUnallocatedReceiptAmount:function(){var i=parseFloat(t.get("unallocatedReceiptAmount"));return n.isNumeric(i)?i:0},isNegativeTotal:function(){var i=t.get("creditClaims"),n=t.get("totalPaymentAmount");return i.length===0?n<=0:n<0},claimsAmountExceedsPaymentAmount:function(){var n=t.get("creditClaims"),i=t.get("totalPaymentAmount");return i<0&&n.length>0},backToInvoiceSelectionClick:function(){this._showStep(1)},continueClick:function(){var r=this,t,u;if(r.continueEnabled){if(r._anyPayChecked()&&r.validatePayment()===!1)return;if(t=!0,u=r.get("creditClaims"),n.each(u,function(u,f){var e=n("[claimRowId="+f.id+"]");t=r._validateClaimInput(e,"reference",function(){return f.isReferenceValid()})&&t;t=r._validateClaimInput(e,"note",function(){return f.isNoteValid()})&&t;t=r._validateClaimInput(e,"amount",function(){return f.isAmountValid()})&&t;i.options.creditClaimsFileUploadIsMandatory&&(t=r._validateClaimInput(e,"claimFiles",function(){return f.isFileValid()})&&t)}),!t){i.viewModel.notify(i.options.creditClaimsInvalidMessage,n.cv.css.messageTypes.error);return}r.checkAndContinuePayment()}},_validateClaimInput:function(n,t,i){var u="no-tooltip",f="validation error",r=n.find("[name="+t+"]").parent();return i()?(r.addClass(u),r.removeClass(f),!0):(r.addClass(f),r.removeClass(u),
59!1)},validatePayment:function(){var r,u;if(n.cv.util.clearNotifications(t),t.isNegativeTotal())return i.viewModel.notify(i.options.selectedInvoicesBelow0Total,n.cv.css.messageTypes.error),!1;if(t.isUnallocatedPaymentMode()){if(r=t._getUnallocatedPaymentValue(),r===0)return i.viewModel.notify(i.options.unallocatedPaymentNotSelectedError,n.cv.css.messageTypes.error),!1;if(t.get("totalPaymentAmount")<r)return u=i.options.selectInvoicesToUseAllUnallocatedPayment.format(kendo.toString(r,"c")),i.viewModel.notify(u,n.cv.css.messageTypes.error),!1}var f=t._getUnallocatedReceiptAmount(),e=!1,o=!1,s=!1,h=[];return(n.each(i.dataSource.data(),function(n,i){i.get("payChecked")&&(e=!0,i.getAmountToPay()!==0&&(o=!0,h.push(i)),!t.isUnallocatedPaymentMode()&&i.getAmountToPay()<i.get("PayAmount")&&(s=!0))}),!e&&(!i.options.isUnallocatedCashAllowed||i.options.isUnallocatedCashAllowed&&f===0))?(i.viewModel.notify(i.options.noInvoicesSelectedError,n.cv.css.messageTypes.error),!1):!o&&(!i.options.isUnallocatedCashAllowed||i.options.isUnallocatedCashAllowed&&f===0)?(i.viewModel.notify(i.options.selectedInvoicesHaveNoAmountEntered,n.cv.css.messageTypes.error),!1):s&&t.get("enableAccountPaymentNote")&&!t.get("paymentNote")?(i.viewModel.notify(i.options.paymentNoteRequiredText,n.cv.css.messageTypes.error),!1):!0},checkAndContinuePayment:function(){i.options.customerHasEwayToken?t.showCustomerPaymentTokenPaymentDialog():t.continuePayment()},continuePayment:function(){var r,f,u,o,e,s;return i.addNewUiHistoryState({step:2}),r=[],n.each(i.dataSource.data(),function(n,t){t.get("payChecked")&&t.getAmountToPay()!==0&&r.push(t)}),f=t._getUnallocatedReceiptAmount(),n.each(i.dataSource.data(),function(n,t){!t.isVisible()&&t.get("payChecked")&&t.setCheckbox("payChecked",!1)}),u=0,n.each(r,function(n,i){u=t._round(u+i.getAmountToPay())}),i.options.isUnallocatedCashAllowed&&f>0&&(o=kendo.observable({InvoiceDate:null,InvoiceNumber:"UNALLOC",amountToPay:f,Details:"",DueDate:null}),r.push(o),u=t._round(u+f)),t.set("totalPaymentAmountStep2",u),e=t.get("selectedUnallocatedPayment"),s={invoices:r,useUnallocatedCashPayments:e!==null,selectedInvoiceNumberUnallocatedCashPaymentToUse:e?e.InvoiceNumber:0,paymentNote:t.get("paymentNote")},t.set("accountPaymentInvoicesStep2Options",s),t.set("selectedInvoices",r),t._showStep(2),!1},newCustomerPayment:function(n){t.doAccountPaymentInvoicesStep2().done(function(){if(n){var i={receiptNumber:t.get("receiptNumber"),bPayRefNum:t.get("bPayRefNum"),invoicesTotalAmountToPay:t.totalPaymentAmountStep2PlusCharges(),customerPaymentCreated:t.get("customerPaymentCreated")};n(i)}})},doAccountPaymentInvoicesStep2:function(){var r=t.get("accountPaymentInvoicesStep2Options");return t.set("isProcessing",!0),n.cv.css.accounts.accountpaymentinvoicesstep2(r).done(function(u){u&&u.data&&(u.data.Result.Success?(t.set("selectedInvoices",r.invoices),t.set("receiptNumber",u.data.ReceiptNumber),t.set("bPayRefNum",u.data.BPayRefNum),t.set("customerPaymentCreated",u.data.CustomerPaymentCreated)):n.each(u.data.Result.Messages,function(t,r){i.viewModel.notify(r,n.cv.css.messageTypes.error)}))}).always(function(){t.set("isProcessing",!1)})},accountPaymentInvoicesStep2Options:{},payGenericAmountClick:function(){var i=t.get("payGenericAmountModalId");n.cv.util.isNullOrWhitespace(i)||n.fancybox.open({href:"#"+i,afterShow:function(){n.fancybox.update()}})},hidePayGenericAmountModal:function(){i.signal("closeFancyBox")},processPayGenericAmount:function(){var u;t._selectAllPay(!1);t.set("unallocatedReceiptAmount",0);var r=t.get("genericAmount"),f=t.dataSource,e=f.data().toJSON(),o=_.sortBy(e,"InvoiceDate");n.each(o,function(n,t){var u,f;t.Outstanding>0&&r>0&&(u=0,u=r>=t.Outstanding?t.Outstanding:r,f=_.find(i.dataSource.data(),function(n){return t.OrderNo===n.OrderNo}),f.set("amountToPay",u),f.setCheckbox("payChecked",!0),r=r-u)}
59);r>0&&(u=t.get("unallocatedReceiptAmount")+r,t.set("unallocatedReceiptAmount",u),t.calculateTotalPaymentAmount());i.signal("closeFancyBox")},genericAmountChanged:function(){t.isValidGenericAmount()},creditClaims:[],creditClaimNextId:0,creditClaimFileIdPrefix:"claimFile-",newClaimReference:"",newClaimNote:"",newClaimFilename:"",newClaimAmount:0,hasCreditClaims:function(){return this.get("creditClaims").length>0},totalClaimAmount:function(){var r=i.viewModel,u=r.get("creditClaims"),t=0;return n.each(u,function(n,i){t+=i.amount}),t},totalClaimAmountNegative:function(){var n=i.viewModel,t=n.get("totalClaimAmount")();return-t},addClaim:function(){var r=i.viewModel,e=new CV.CreditClaim(r.get("creditClaimNextId"),r.creditClaimFileIdPrefix+r.get("creditClaimNextId"),r.get("newClaimReference"),r.get("newClaimNote"),r.get("newClaimFilename"),r.get("newClaimAmount")),f,u,o;r.set("creditClaimNextId",r.get("creditClaimNextId")+1);f=r._validateClaim(e);f.length===0?(u=n("#addClaimUpload").data("kendoUpload"),r.creditClaims.push(e),o=n(n("[name='claimFiles']")[r.creditClaims.length-1]),o.kendoUpload({"async":u.options.async,files:u.getFiles(),validation:u.options.validation,multiple:!1,template:u.options.template,success:r.onClaimUploadSuccess,error:r.onClaimUploadError,upload:r.onClaimUploadUpload,select:r.onClaimUploadSelect}),r.calculateTotalPaymentAmount(),t.set("continueEnabled",t._continueEnabled()),r.set("newClaimReference",""),r.set("newClaimNote",""),r.set("newClaimFilename",""),r.set("newClaimAmount",0),u.clearAllFiles()):r.notify("Cannot add claim:<br>"+f.join("<br>"),n.cv.css.messageTypes.error)},removeClaim:function(n){var r=i.viewModel,u=r.get("creditClaims"),f=u.indexOf(n.data);f!==-1&&u.splice(f,1);r.calculateTotalPaymentAmount();t.set("continueEnabled",t._continueEnabled())},claimAmountChanged:function(){var n=i.viewModel;n.calculateTotalPaymentAmount();t.set("continueEnabled",t._continueEnabled())},_validateClaim:function(t){var r=[];return n.cv.util.hasContent(t.reference)===!1&&r.push("- Reference is empty"),n.cv.util.hasContent(t.note)===!1&&r.push("- Note is empty"),i.options.creditClaimsFileUploadIsMandatory&&n.cv.util.hasContent(t.filename)===!1&&r.push("- No file selected"),(t.amount<=0||t.amount>=99999999)&&r.push("- Amount is invalid"),r},onClaimUploadError:function(){var t=i.viewModel;t.notify("Error uploading claim file",n.cv.css.messageTypes.error)},onClaimUploadSelect:function(t){n.each(t.files,function(n,t){t.name="CreditClaim-"+t.uid+"-"+t.name})},onClaimUploadUpload:function(n){var t=n.files;t.length!==0&&(n.data={uid:t[0].uid})},onClaimUploadSuccess:function(t){var f=t.files;if(f.length!==0){var r=i.viewModel,o=f[0],u=t.sender.element.attr("id"),e=u==="addClaimUpload";switch(t.operation){case"upload":if(n.cv.util.hasContent(t.response.fileName)===!1){t.preventDefault();return}o.name=t.response.fileName;e?r.set("newClaimFilename",t.response.fileName):n.each(r.creditClaims,function(n,i){i.fileId===u&&(i.filename=t.response.fileName)});break;case"remove":e?r.set("newClaimFilename",""):n.each(r.creditClaims,function(n,t){t.fileId===u&&(t.filename="")})}}}}));return t}};n.cv.ui.widget(t)})(jQuery);
60(function(n){var t="widgetDataInitialised",i={name:"postCodeValidation",extend:"mvvmwidget",options:{postCodeRegex:"",modalElement:"",autoBind:!0,hasPostCode:!1,isOrdersPage:!1,productsRemovedMessage:"The following products have been removed from your order: {0}",pleaseEnterAPostCode:"Please enter a post code",postCodeNotValid:"The post code you have entered is invalid",updatePostCo
60deFail:"There was an error updating your post code",viewTemplate:null},extendEvents:[t],viewTemplateParsing:function(){var n=this},viewTemplateParsed:function(){var n=this},viewAppending:function(){var n=this},viewAppended:function(){var n=this},viewModelBinding:function(){var n=this},viewModelBound:function(){var n=this,i=n.viewModel;n.trigger(t);n.options.isOrdersPage&&!n.options.hasPostCode&&i.openModal()},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this,i=kendo.observable(n.extend(t.options,{isProcessing:!1,postCode:"",isPostCodeValid:!0,errorWithPostCode:"",updatePostCodeFailed:"",hideCancelButton:t.options.isOrdersPage&&!t.options.hasPostCode,openModal:function(){var i=this;i._clearPostCodeValidationSettings();n.fancybox.open({href:t.options.modalElement,closeBtn:t.options.hasPostCode,modal:"modal",topRatio:"0.25",minWidth:"320",padding:"0"})},_clearPostCodeValidationSettings:function(){var n=this;n._setPostCodeValidationSettings("",!0)},_setPostCodeValidationSettings:function(n,t){var i=this;i.set("errorWithPostCode",n);i.set("isPostCodeValid",t)},validPostCode:function(){var r=this,u=r.get("postCode"),i="";return(r._setPostCodeValidationSettings("",!0),n.cv.util.isNullOrWhitespace(u)&&(i=t.options.pleaseEnterAPostCode),n.cv.util.isNullOrWhitespace(t.options.postCodeRegex)||n.cv.util.testRegEx(eval(t.options.postCodeRegex),u,!1)||(i=t.options.postCodeNotValid),!n.cv.util.isNullOrWhitespace(i))?(r._setPostCodeValidationSettings(i,!1),!1):!0},changePostCode:function(){var i=this;(i.set("isProcessing",!1),i.validPostCode())&&(i.set("isProcessing",!0),n.cv.css.orders.updateOrderValidationPostCode({postCode:i.get("postCode")}).done(function(r){if(n.cv.util.hasValue(r)&&n.cv.util.hasValue(r.data))if(r.data.Success){var u={};n.cv.util.hasValue(r.data.DebugInfo)&&r.data.DebugInfo.length>0&&(u={message:t.options.productsRemovedMessage.format(r.data.DebugInfo.join().replace(/,/g,", "))});n.cv.util.redirect(n(location).attr("href"),u,!1)}
60else i.set("updatePostCodeFailed",t.options.updatePostCodeFail),i.set("isProcessing",!1);else i.set("updatePostCodeFailed",t.options.updatePostCodeFail),i.set("isProcessing",!1)}))}}));return i.bind("change",function(){}),i}};n.cv.ui.widget(i)})(jQuery);
61(function(n){var t="isSearching",i="isQuickSearching",r="isSearchingDate",u="isSearchingInvoiceNumber",f="isSearchingOrderNumber",e={name:"invoiceReprint",extend:"mvvmwidget",options:{dataSource:[],recordsPerPage:5,maxSelectedInvoice:20,reprintInvoiceContact:"",selectCustomerCodeTemplate:kendo.template("#= Code # - #= Name #"),selectCustomerCodeForFilterTemplate:kendo.template("#= Code #"),searchNoCustomerSelectError:"You must select a customer to search.",searchZeroResults:"0 Results found.",searchGenericError:"You must fill in invoice date section or order number section or the quick search section to search.",searchDateErrorMessage:"You must select both Invoice Dates to search by Invoice Date Range.",searchNumberErrorMessage:"You must fill in both Invoice Number fields to search by Invoice Number Range.",quickSearchErrorMessage:"You must enter invoice number(s) separated with a comma or enter each invoice number on a new line to search by Quick Search.",filterAppliedNoResults:"You have 0 results with the current filters applied",reprintInvoiceNoSelectedInvoicesError:"Zero invoices are selected for reprint. Please select some.",reprintInvoiceOverLimitAmountError:"<b>You may only select {0} invoices for reprint at one time.<\/b>",reprintInvoiceOverLimitAmountWarning:"Please Note: A maximum of {0} invoices may be selected with each reprint request.",reprintInvoiceInvaildAddressError:"Invalid fax or email address entered.",reprintInvoiceSent:"Invoices reprint request sent.",reprintInvoiceGenericError:"An error has occurred whilst Invoices reprint {0} request was sent.",pleaseSelectText:"Please Select...",searchInvoiceOrOrderNumber:"Order",autoBind:!0,triggerMessages:!0,clearWidgetMessages:!0,isLiveSearch:!1,showOnlyUserOrders:!0,refreshOnItemChange:!1,searchOnLoad:!1,showingInvoiceReprint:!1,enableInvoiceReprintBatching:!1},extendEvents:[],_getViewModel:function(){var e=this,o=kendo.observable(n.extend({},e.options,{invoiceList:[],selectedInvoices:[],requestedInvoices:[],isSearching:!1,isQuickSearching:!1,hasSearched:!1,hasResults:!1,isSelectingPage:!1,filterSearchInUse:!1,invoiceCount:0,branchFilter:"",invoiceAmountFilter:"",invoiceAmountFilterType:">",amountOwingFilter:"0",amountOwingFilterType:"",isSearchDate:!1,isSearchInvoiceNumber:!1,isSearchOrderNumber:!1,isQuickSearch:!1,currentSelectInvoiceCount:function(){var n=this;return n.get("selectedInvoices").length},customerList:[],customerListForFilter:[],infoMessageForRequestsCountLimit:function(){var n=this;return e.options.reprintInvoiceOverLimitAmountWarning.replace("{0}",n.get("maxSelectedInvoice"))},invoiceDateFromChange:function(){var n=this;n.get("invoiceDateTo")||n.set("invoiceDateTo",n.get("invoiceDateFrom"));n.setSearchTypeAsSearchingDate()},orderNoFromChange:function(){var n=this;n.get("orderNumberTo")||n.set("orderNumberTo",n.get("orderNumberFrom"));n.setSearchTypeAsSearchingNumber()},invoiceNoFromChange:function(){var n=this;n.get("invoiceNumberTo")||n.set("invoiceNumberTo",n.get("invoiceNumberFrom"))},triggerFilterAppliedMessage:function(){var t=this;t.dataSource.view().length>0?t.dataSource.view().length>e.options.maxSelectedInvoice&&n.cv.util.notify(t,t.infoMessageForRequestsCountLimit(),n.cv.css.messageTypes.warning):n.cv.util.notify(e.viewModel,e.options.filterAppliedNoResults,n.cv.css.messageTypes.warning)},filterSearch:function(){var t=this,i=[],f=t.branchFilterSearch(),e=t.invoiceAmountFilterSearch(),o=t.amountOwingFilterSearch(),s=1,u,r;for(f!=null&&i.push(f),e!=null&&i.push(e),o!=null&&i.push(o),n.cv.util.clearNotifications(t),t.dataSource.filter(i),t.triggerFilterAppliedMessage(),u=t.get("invoiceList"),r=0;r<u.length;r++)u[r].set("rowIndexForCSS",s),s++},branchFilterSearch:function(){var i=this,t=null,n=i.get("branchFilter"),r=n!==undefined&&n!=""&&n!=null;return r&&(t={field:"BranchAccount",operator:"eq",value:n}),t},invoiceAmountFilterSearch:function(){var i=this,r=null,n=i.get("invoiceAmountFilter"),t=i.get("invoiceAmountFilterType"),u=n!==undefined&&t!==undefined&&n!=""&&t!=""&&n!=null&&t!=null&&!isNaN(n),f=t=="<"?"lt":"gt";return u&&(r={field:"TransAmount",operator:f,value:parseFloat(n)}),r},amountOwingFilterSearch:function(){var n=this.get("amountOwingFilterType");n=="<>"?n="neq":n=="<"?n="lt":n==">"&&(n="gt");var r=this,u=null,t=r.get("amountOwingFilter"),i=r.get("amountOwingFilterType"),f=t!==undefined&&i!==undefined&&t!=""&&i!=""&&t!=null&&i!=null&&!isNaN(t),e=n;return f&&(u={field:"OwingTotal",operator:e,value:parseFloat(t)}),u},setFieldFocus:function(t,i){var r=n(t.target.parentElement),u=i=="input"?r.find("input:first"):r.find("textarea:first");setTimeout(function(){u.focus()},0)},setSearchTypeAsSearchingDateWithFocus:function(n){var t=this;t.setSearchTypeAsSearchingDate();t.setFieldFocus(n,"input")},setSearchTypeAsSearchingDate:function(){var n=this;n.set("isSearchDate",!0);n.set("isSearchInvoiceNumber",!1);n.set("isSearchOrderNumber",!1);n.set("isQuickSearch",!1)},setSearchTypeAsSearchingInvoiceNumberWithFocus:function(n){var t=this;t.setSearchTypeAsSearchingInvoiceNumber();t.setFieldFocus(n,"input")},setSearchTypeAsSearchingInvoiceNumber:function(){var n=this;n.set("isSearchDate",!1);n.set("isSearchInvoiceNumber",!0);n.set("isSearchOrderNumber",!1);n.set("isQuickSearch",!1)},setSearchTypeAsSearchingOrderNumberWithFocus:function(n){var t=this;t.setSearchTypeAsSearchingOrderNumber();t.setFieldFocus(n,"input")},setSearchTypeAsSearchingOrderNumber:function(){var n=this;n.set("isSearchDate",!1);n.set("isSearchInvoiceNumber",!1);n.set("isSearchOrderNumber",!0);n.set("isQuickSearch",!1)},setSearchTypeAsQuickSearchingWithFocus:function(n){var t=this;t.setSearchTypeAsQuickSearching();t.setFieldFocus(n,"textarea")},setSearchTypeAsQuickSearching:function(){var n=this;n.set("isSearchDate",!1);n.set("isSearchInvoiceNumber",!1);n.set("isSearchOrderNumber",!1);n.set("isQuickSearch",!0)},search:function(){var n=this;n.get("isSearchDate")?n._search(undefined,r):n.get("isSearchInvoiceNumber")?
61n._search(undefined,u):n.get("isSearchOrderNumber")?n._search(undefined,f):n.get("isQuickSearch")?n._search(undefined,i):n._search(undefined,t)},_search:function(i,r){var u=this,f;(i=typeof i!="undefined"?i:!0,r=n.cv.util.hasValue(r)?r:t,u.set("branchFilter",""),u.set("invoiceAmountFilter",""),u.set("invoiceAmountFilterType",">"),u.set("amountOwingFilter","0"),u.set("amountOwingFilterType",""),u.set("hasResults",!1),u.set("isFilterResultsExpanded",!1),n.cv.util.clearNotifications(u),e.setDataSource([]),f=u.setupSearch(r),f)&&(u.set("isQuickSearching",!0),u.clearSearchResults(),n.cv.ajax.call("user/getCustomersTransactionsWithFilter",{parameters:f,success:n.noop}).done(function(){var t=arguments[0].data.message,r,h,s,f;if(t!=undefined&&t!==""&&n.cv.util.notify(e.viewModel,t,n.cv.css.messageTypes.error),r=n.cv.data.dataSource({pageSize:e.options.recordsPerPage,dataType:"",data:arguments[0].data.result,transport:null}),u.set("hasSearched",!0),u.set("hasResults",arguments[0].data.result.length>0),i){for(h=[{id:"",name:e.options.pleaseSelectText}],s=arguments[0].data.branchCustomer,f=0;f<s.length;f++)h.push({id:s[f],name:s[f]});o.set("customerListForFilter",h)}e.setDataSource(r);r._data&&r._data.length>0&&!(t!=undefined&&t!="")?r._data.length>e.options.maxSelectedInvoice&&n.cv.util.notify(u,u.infoMessageForRequestsCountLimit(),n.cv.css.messageTypes.warning):r._data.length===0&&t===""&&n.cv.util.notify(e.viewModel,e.options.searchZeroResults,n.cv.css.messageTypes.error);u.resetSearchProcessingState()}))},isFilterResultsExpanded:!1,isAlreadySearching:function(){return this.get(t)===!0||this.get(i)===!0||this.get(r)===!0||this.get(u)===!0||this.get(f)===!0},resetSearchProcessingState:function(){this.set(t,!1);this.set(i,!1);this.set(r,!1);this.set(u,!1);this.set(f,!1)},toggleFilterSearch:function(){var n=this;n.set("isFilterResultsExpanded",!n.get("isFilterResultsExpanded"))},setupLines:function(t){for(var i,r=this,o=r.get("selectedInvoices"),s=r.get("requestedInvoices"),f=1,e=t.data(),u=0;u<e.length;u++)i=e[u],i.rowIndexForCSS=f,f++,i.isEnabled=s.indexOf(i.rowid)!=-1?!1:!0,i.isSelected=o.indexOf(i.rowid)!=-1?!0:!1,i.isAltRow=function(){var t=this,n=t.get("rowIndexForCSS");return n!=undefined&&n%2==0},i.bind("change",function(){var n=this,t=r.get("selectedInvoices"),i=t.indexOf(n.rowid);n.get("isSelected")==!0&&i==-1?t.push(n.rowid):n.get("isSelected")==!1&&i!=-1&&t.splice(i,1);r.get("isSelectingPage")==!1&&t.length>=r.get("maxSelectedInvoice")&&r.showInvoiceReprint()}),i.toggleReprint=function(t){if(t.target.type!=="checkbox"){var i=this.get("isSelected");n.cv.util.hasValue(i)||(i=!1);this.set("isSelected",!i)}}},setupSearch:function(o){var s=this,l,a,v,y,p,w,b,k,c;if(s.isAlreadySearching())return!1;l=n.type(s.get("selectedCustomer"))==="object"?s.get("selectedCustomer").id:s.get("selectedCustomer");o===i?(k=s.get("quickSearchValue"),s.set(i,!0)):o===r?(y=s.get("invoiceDateFrom"),p=s.get("invoiceDateTo"),s.set(r,!0)):o===u?(a=s.get("invoiceNumberFrom"),v=s.get("invoiceNumberTo"),s.set(u,!0)):o===f?(w=s.get("orderNumberFrom"),b=s.get("orderNumberTo"),s.set(f,!0)):s.set(t,!0);var ht=l!==undefined&&l!=null&&l!=="",rt=y!==undefined&&y!=null&&y!==""&&p!==undefined&&p!=null&&p!=="",et=w!==undefined&&w!=null&&w!==""&&b!==undefined&&b!=null&&b!=="",ut=a!==undefined&&a!=null&&a!==""&&v!==undefined&&v!=null&&v!=="",ft=k!==undefined&&k!=null&&n.trim(k)!=="",d=s.get("branchFilter"),g=s.get("invoiceAmountFilter"),nt=s.get("invoiceAmountFilterType"),tt=s.get("amountOwingFilter"),it=s.get("amountOwingFilterType"),ot=g!==undefined&&nt!==undefined&&g!=""&&nt!=""&&g!=null&&nt!=null,st=tt!==undefined&&it!==undefined&&tt!=""&&it!=""&&tt!=null&&it!=null,ct=d!==undefined&&d!=""&&d!=null,h={};if(!ht)return s.resetSearchProcessingState(s),n.cv.util.notify(e.viewModel,e.options.searchNoCustomerSelectError,n.cv.css.messageTypes.error),!1;if(c="",o!==t||rt||ut||ft)if(o!==r||rt)if(o!==u||ut)if(o!==f||et){if(o!==i||ft)return h.selectedCustomer=l,h.invoiceDate=rt?[y,p]:null,h.orderNumber=et?[w,b]:null,h.invoiceNumber=ut?[a,v]:null,h.quickSearch=ft?k.replace(/(\r\n|\n|\r)/gm,","):"",h.branchFilter=d,h.invoiceAmountFilter=ot?[nt,g]:null,h.amountOwingFilter=st?[it,tt]:null,st||ot||ct?s.set("filterSearchInUse",!0):s.set("filterSearchInUse",!1),h;c=e.options.quickSearchErrorMessage}else c=e.options.searchNumberErrorMessage;else c=e.options.searchNumberErrorMessage;else c=e.options.searchDateErrorMessage;else c=e.options.searchGenericError;
61return s.resetSearchProcessingState(),n.cv.util.notify(e.viewModel,c,n.cv.css.messageTypes.error),!1},clearSearchResults:function(){var n=this;n.set("selectedInvoices",[])},updateViewModelFromDataSource:function(){var i=e.dataSource.view(),t=this;t.setupLines(e.dataSource);t.set("invoiceList",i);t.set("invoiceCount",e.dataSource.data().length);t.get("invoiceCount")>0?t.set("showingResults",!0):t.get("filterSearchInUse")==!1?(t.set("showingResults",!1),t.get("hasSearched")==!0):n.cv.util.notify(e.viewModel,e.options.filterAppliedNoResults,n.cv.css.messageTypes.warning)},showingResults:!1,selectAllOnPage:function(){var n=this,r=n.get("invoiceList"),t,i;for(n.set("isSelectingPage",!0),t=0;t<r.length;t++)i=r[t],i.get("isEnabled")==!0&&i.set("isSelected",!0);n.set("isSelectingPage",!1);n.get("selectedInvoices").length>=n.get("maxSelectedInvoice")&&n.showInvoiceReprint()},clearAll:function(){var t=this,i=t.get("invoiceList"),n,r;for(t.set("selectedInvoices",[]),n=0;n<i.length;n++)r=i[n],r.set("isSelected",!1)},showInvoiceReprint:function(){var t=this;if(n.cv.util.clearNotifications(t),!t.hasSelectedInvoices()){n.cv.util.notify(e.viewModel,e.options.reprintInvoiceNoSelectedInvoicesError,n.cv.css.messageTypes.error);return}
61if(!t.invoicesAmountWithinLimit()){n.cv.util.notify(e.viewModel,e.options.reprintInvoiceOverLimitAmountError.replace("{0}",t.get("maxSelectedInvoice")),n.cv.css.messageTypes.error);return}t.set("showingInvoiceReprint",!0);n.fancybox({href:"#reprint-invoice"})},hideInvoiceReprint:function(){this.set("showingInvoiceReprint",!1);n.fancybox.close()},testRegEx:function(t){var i=this.get("reprintInvoiceContact");return n.cv.util.testRegEx(t,i,!1)},isReprintValidFax:function(){var n=this.get("reprintInvoiceContact");return n=n.replace(/\(/g,"").replace(/\)/g,"").replace(/\s/g,""),this.set("reprintInvoiceContact",n),this.testRegEx(/^\+?[0-9]{9,}$/)},isReprintValidEmail:function(){return this.testRegEx(/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i)},isReprintFaxOrEmailValid:function(){return this.isReprintValidFax()||this.isReprintValidEmail()},hasSelectedInvoices:function(){var n=this;return n.get("selectedInvoices").length!=0}
61,invoicesAmountWithinLimit:function(){var n=this;return n.get("maxSelectedInvoice")>=n.currentSelectInvoiceCount()},reprintInvoice:function(){var t=this,i,r;if(n.cv.util.clearNotifications(t),!t.hasSelectedInvoices()){n.cv.util.notify(e.viewModel,e.options.reprintInvoiceNoSelectedInvoicesError,n.cv.css.messageTypes.error);return}if(!t.invoicesAmountWithinLimit()){n.cv.util.notify(e.viewModel,e.options.reprintInvoiceOverLimitAmountError.replace("{0}",t.get("maxSelectedInvoice")),n.cv.css.messageTypes.error);return}if(!t.isReprintFaxOrEmailValid()){n.cv.util.notify(e.viewModel,e.options.reprintInvoiceInvaildAddressError,n.cv.css.messageTypes.error);return}var f=e.options.enableInvoiceReprintBatching===!0?kendo.guid():"",u=e.dataSource.data(),o=t.get("selectedInvoices"),s=[];for(_.each(o,function(i){var r=_.find(u,function(n){return n.rowid==i.toString()});n.cv.util.hasValue(r)&&s.push({orderNo:r.OrderNo,suffix:r.OrderSuffix,reprintTo:t.get("reprintInvoiceContact"),forceOrderCreation:!0,ignoreCustomerChecks:!0,expectedInvoiceNo:"",batchGroupID:f,errMsg:"",customerCode:r.CustomerCode,invoiceNo:r.InvoiceNumber})}),n.cv.css.orders.setInvoiceReprintBulk({batchData:s}).done(function(t){var i=t.data,u=_.filter(i,function(n){return n.result}),r=_.filter(i,function(n){return!n.result});n.fancybox.close();e.options.enableInvoiceReprintBatching===!0&&n.cv.css.orders.sendInvoiceReprintBatchGroup({batchGroupID:f,errMsg:""});u.length>0&&n.cv.util.notify(e.viewModel,e.options.reprintInvoiceSent,n.cv.css.messageTypes.success);r.length>0&&_.each(r,function(t){if(n.cv.util.isNullOrWhitespace(t.errMsg)){var i=n.cv.util.string.format(e.options.reprintInvoiceGenericError,"");n.cv.util.notify(e.viewModel,i,n.cv.css.messageTypes.error,{clearExisting:!1})}else n.cv.util.notify(e.viewModel,t.errMsg,n.cv.css.messageTypes.error,{clearExisting:!1})})}),i=0;i<u.length;i++)r=u[i],o.indexOf(r.rowid)!=-1&&(r.set("isSelected",!1),r.set("isEnabled",!1));t.set("selectedInvoices",[])}}));return n.cv.css.user.getCurrentUsersCustomersWithFinanceFilter().done(function(){for(var i=[{id:"",name:e.options.pleaseSelectText}],t=arguments[0].data,n=0;n<t.length;n++)i.push({id:t[n].Code,name:e.options.selectCustomerCodeTemplate(t[n])});o.set("customerList",i)}),o}};n.cv.ui.widget(e)})(jQuery);
62(function(n){var t="orders",i="lines",h="save-changes",c="save-changes-approve",u="reject-order",f="reject-orderline",e="edit-orderline-note",b="approvalOrdersUpdated",l="beforeViewLines",a="afterViewLines",v="beforeBack",r="afterBack",y="beforePrintOpened",o="beforeApproveOrder",s="afterApproveOrder",p="beforeUpdateOrder",w="afterUpdateOrder",k={name:"ordersApproval",extend:"mvvmwidget",options:{dataSource:[],autoBind:!0,popupWindowId:"",triggerMessages:!0,recordsPerPage:10,topCount:0,clearWidgetMessages:!0,canEditCurrentOrder:!1,usePleaseSelectForTemplateNames:!1,costCentres:[],showCostCentreSelectList:!1,defaultAddProductQuantity:1,ordersAwaitingPaymentPageUrl:"",ordersApprovalPageUrl:"",overrideOrderBy:"SoOrderNo",sortColumn:"SoOrderNo",sortDirection:"ASC",approveOrderSuccessMessage:"Order {0} was successfully approved",approveOrderFailureMessage:"Unable to approve Order {0}",rejectOrderSuccessMessage:"Order {0} was successfully rejected",rejectOrderFailureMessage:"Unable to reject Order {0}",rejectOrderNoteMandatoryMessage:"Error. You must enter a Rejection Note when rejecting an Order.",updateOrderSuccessMessage:"Successfully updated Order {0}",updateOrderFailureMessage:"An error occured while attempting to update Order {0}",viewOrderLoadErrorMessage:"Unable to load Order. Order #: {0}",confirmRejectOrderHeader:"Reject This Order",confirmRejectOrderLabel:"Reason for rejecting order:",confirmRejectOrderConfirmButtonText:"Reject this Order",backToOrdersDoYouWantToSaveYourOrderMessage:"Your order contains unsaved changes. Do you want to save your changes?",rejectOrderLineNoteMandatoryMessage:"Error. You must enter a Line Reject Note when rejecting a Line.",rejectAllOrderLinesSuccessMessage:"All lines for the order (#{0} - {1} ({2})) requiring your approval have been rejected.",confirmRejectOrderLineHeader:"Reject This Product",confirmRejectOrderLineLabel:"Reason for rejecting product:",confirmRejectOrderLineConfirmButtonText:"Confirm & Reject Product",confirmSaveUnsavedChangesHeader:"Save unsaved changes",confirmSaveUnsavedChangesConfirmButtonText:"Save unsaved changes",confirmDiscardUnsavedChangesConfirmButtonText:"Discard unsaved changes",redirectingForPaymentMessage:"Redirecting to pay Order {0}",fastOrderApproveGenericError:"",forwardOrderOptionsPrompt:"Preferred Delivery Option",confirmationHeader:"",confirmationHeaderDisplayIcon:!0,confirmationLabel:"",confirmationButtonText:"",discardConfirmationButtonText:"",isSaveUnsavedChanges:!1,confirmationRejectionNotes:"",confirmationErrorMessage:"",confirmationHasError:!1,confirmationIsMandatory:!1,confirmationAllowEnterText:!1,confirmationType:"",confirmationData:null,confirmationHandler:function(){var t=this.popupWindowId,i=n.Deferred();return n.fancybox.open({href:t,closeBtn:!0,modal:!0,topRatio:"0.25",padding:"0"}),i.promise()},stampsWidgetContainer:".orders-approval-line-product-info-sub",confirmationOKClick:function(){var o=this,l=o.get("confirmationRejectionNotes").trim(),y=o.get("confirmationIsMandatory"),a=o.get("confirmationType"),v,s;if(a===u)if(l.length>0)v=o.get("confirmationData"),n.fancybox.close(),n.cv.css.ordersApproval.fastRejectOrder({orderNo:v,rejectionReason:l}).done(function(t){var i;if(t.data&&!t.data.Success){i=n.cv.util.string.format(o.rejectOrderFailureMessage,v)+"<\/br>"+t.data.Messages[0];n.cv.util.notify(o,i,n.cv.css.messageTypes.error);return}i=n.cv.util.string.format(o.rejectOrderSuccessMessage,v);o.goBackToOrders();n.cv.util.notify(o,i,n.cv.css.messageTypes.success);o.dataSource.fetch()}).fail(function(){var t=n.cv.util.string.format(o.rejectOrderFailureMessage,v);n.cv.util.notify(o,t,n.cv.css.messageTypes.error)}).always(function(){o.set("isRejectingOrder",!1)});else{o.set("confirmationHasError",!0);return}else if(a===f)if(s=o.get("confirmationData"),l.length>0)s.set("RejectionNote",l),s.set("displayRejectionNoteEditor",!0),s.set("isRejectChecked",!0),n.fancybox.close();else{if(y){o.set("confirmationHasError",!0);return}s.set("RejectionNote","");s.set("displayRejectionNoteEditor",s.RejectionNote.length>0||s.isRejectChecked);n.fancybox.close()}else if(a===e)if(s=o.get("confirmationData"),l.length>0)s.set("RejectionNote",l),s.set("displayRejectionNoteEditor",s.RejectionNote.length>0||s.isRejectChecked),n.fancybox.close();else{if(y){o.set("confirmationHasError",!0);return}s.set("RejectionNote","");s.set("displayRejectionNoteEditor",s.RejectionNote.length>0||s.isRejectChecked);n.fancybox.close()}else a===h?(o._saveOrderLineChanges_Internal(!1).always(function(){o.set("mode",t);o.clearMessage();var i=n.cv.util.string.format(o.updateOrderSuccessMessage,o.currentOrder.SoOrderNo);n.cv.util.notify(o,i,n.cv.css.messageTypes.success);o.dataSource.fetch();o.trigger(r)}),n.fancybox.close()):a===c&&(o._saveOrderLineChanges_Internal(!1).always(function(){o.set("mode",i);o.clearMessage();var t=n.cv.util.string.format(o.updateOrderSuccessMessage,o.currentOrder.SoOrderNo);n.cv.util.notify(o,t,n.cv.css.messageTypes.success);o.dataSource.fetch()}),n.fancybox.close())},discardConfirmationClick:function(){var i=this;i.set("mode",t);i.clearMessage();i.dataSource.fetch();i.trigger(r);n.fancybox.close()},confirmationCancelClick:function(){var i=this,r=i.get("confirmationType"),t;r===f?(t=i.get("confirmationData"),t.set("isRejectChecked",!1),t.set("displayRejectionNoteEditor",t.RejectionNote.length>0)):r===e&&(t=i.get("confirmationData"),t.set("displayRejectionNoteEditor",t.RejectionNote.length>0||t.isRejectChecked));n.fancybox.close()},openPrintOrderPage:function(n,t){n&&window.open("/"+t+"&popup=1")},modalPopupEditStandingOrderTitle:"Edit Standing Order Schedule",increaseQuantitiesInPackQty:!1,addMinimumQuantityToCart:!1},extendEvents:["loading","loadingComplete",l,a,v,r,o,s,"beforeRejectOrder","afterRe
62jectOrder",y,p,w],_mode:t,initialised:function(){var n=this;n.setupSinglePageHistoryStateHandler({displayResultList:!0},function(t){t.displayResultList&&n.viewModel.goBackToOrders()})},initDataSource:function(){var t=this,i=n.cv.data.dataSource({method:"ordersApproval/GetOrdersForApproval",params:t._constructOrderParamsFunction(),pageSize:t.options.recordsPerPage});i.bind("requestStart",t.viewModel.dataSourceBinding);i.bind("requestEnd",t.viewModel.dataSourceBound);t.setDataSource(i);n.cv.css.bind(n.cv.css.eventnames.approvalOrderUpdated,function(n){n&&n===t.viewModel.currentOrder.SoOrderNo&&t.viewModel._viewOrder_Internal(n,t.viewModel.currentOrder.IsProxy)});n.cv.css.bind(n.cv.css.eventnames.forwardOrderChanged,function(n){var i=t.viewModel;i.currentOrder.get("ForwardOrderMode")!==n.forwardOrderSelectedOption&&i.onChange();i.currentOrder.get("ForwardOrderExpectedDelDate")!==n.forwardOrderDate&&i.onChange();i.currentOrder.set("ForwardOrderMode",n.forwardOrderSelectedOption);i.currentOrder.set("ForwardOrderExpectedDelDate",n.forwardOrderDate);i.set("needsValidation",n.needsValidation);i.set("validationCallBack",n.validationCallBack)});n.cv.css.bind(n.cv.css.eventnames.forwardOrderValidationStatusChanged,function(n){var i=t.viewModel;i.set("forwardOrderValidatedOK",n.status);i.set("forwardOrderValidationMessage",n.message)})},_constructOrderParamsFunction:function(){var i=this,t=i.viewModel,r=n.cv.util.queryStringValue("order");return r&&r.length>0&&t._viewOrder_Internal(r),function(){var u=t.get("orderFilter"),e=t.get("sortColumn"),o=t.get("sortDirection"),r={filter:{filters:[]},sort:[{field:e,dir:o}],bAllAccounts:!1,topCount:i.options.topCount,overrideOrderBy:i.options.overrideOrderBy},f;return t.set("currentSort",e+" "+o),u.trim().length>0&&(r.filter.filters.push({field:"SoCustReference",operator:"contains",value:u}),r.filter.filters.push({field:"SoOrderNo",operator:"contains",value:u}),r.filter.filters.push({field:"SoUserIDCode",operator:"contains",value:u})),r.filter.filters.length>1&&(r.filter.logic="or"),f=n.cv.util.queryStringValue("all"),f&&f.length>0&&(r.bAllAccounts=f),r}},_preBindingLineModification:function(t,i){var r=_.filter(i,function(n){return n.LineType&&n.LineType==="DN"&&n.LineSeq%1!=0&&n.Description&&n.Description.length>0});return r=_.map(r,function(n){return{LineSeq:parseInt(n.LineSeq,10),Description:n.Description}}),r=_.groupBy(r,"LineSeq"),r=_.map(r,function(n){return _.reduce(n,function(n,t){return n.LineSeq=t.LineSeq,n.Description==null&&(n.Description=""),n.Description+=" "+t.Description,n},{})}),i=_.filter(i,function(t){return t.LineType&&t.LineType==="DN"&&t.LineSeq%1==0||t.LineType==="SN"&&t.Product&&n.type(t.Product)==="array"&&t.Product.length===1}),_.each(i,function(i,u){var e,f;i.index=u;e=_.find(r,function(n){return n.LineSeq===i.LineSeq});e!=null&&(i.ExtendedLineDescription=n.trim(e.Description));i.isRejectChecked=!1;i.displayRejectionNoteEditor=!1;i.toggleReject=function(t){n.cv.util.toggleCvCheckboxValue(t,this,"isRejectChecked")};i.packQuantityTarget="Product[0].PackQty";i.quantityTarget="OrderedQty";i.increaseQty=function(){n.cv.util.kendoNumericTextBoxIncrease(this)};i.decreaseQty=function(){n.cv.util.kendoNumericTextBoxDecrease(this,this.MinimumQuantity)};i.addNoteClicked=function(){this.set("showLineDescription",!0)};i.ErrorMessages=null;f="0";i.Product&&i.Product.length>0&&(f=n.cv.util.getProductDetailsDefaultQuantity(t.increaseQuantitiesInPackQty,t.addMinimumQuantityToCart,{ProductDetailsDefaultQuantityWhenNotIncreasePackQtyNotAddMinQty:i.Product[0].ProductDetailsDefaultQuantityWhenNotIncreasePackQtyNotAddMinQty,ProductDetailsDefaultQuantityWhenIncreasePackQtyNotAddMinQty:i.Product[0].ProductDetailsDefaultQuantityWhenIncreasePackQtyNotAddMinQty,ProductDetailsDefaultQuantityWhenNotIncreasePackQtyAddMinQty:i.Product[0].ProductDetailsDefaultQuantityWhenNotIncreasePackQtyAddMinQty,ProductDetailsDefaultQuantityWhenIncreasePackQtyAddMinQty:i.Product[0].ProductDetailsDefaultQuantityWhenIncreasePackQtyAddMinQty}));i.minimumQuantity=f;i.minQuantity=f;i.increaseQtyStepFromZero=f;i.addToCartQtyStepFromZero=f}),i},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var k=this,g=function(){if(!k.dataSource)return[];var t=k.dataSource.data();return n.each(t,function(n,t){t.index=n;t._isLastRow=!1;t.isLoadingOrderLine=!1;t.disableView=!1;t.viewOrder=function(){d.viewOrder(t)};t.fastOrderApprove=function(){d.fastOrderApprove(t)}}),t.length>0&&t[t.length-1]!=null&&t[t.length-1].set("_isLastRow",!0),t},d=kendo.observable(n.extend({}
62,k.options,{mode:t,isOrdersMode:function(){return this.get("mode")===t},isLinesMode:function(){return this.get("mode")===i},isProcessingOrderApprovals:function(){return this.get("isFilteringOrders")===!0||this.get("isClearingFilter")===!0||this.get("isLoadingOrderLines")===!0||this.get("isApprovingOrder")===!0||this.get("isRejectingOrder")===!0||this.get("isSavingOrder")===!0||this.get("isDataSourceBinding")===!0||this.get("isApproveAndPay")===!0||this.get("isEditingStandingOrder")===!0},dataSourceBinding:function(){d.set("isDataSourceBinding",!0)},dataSourceBound:function(){d.set("isDataSourceBinding",!1);d.set("isSortingOrders",!1)},updateViewModelFromDataSource:function(){var n=g();this.set("orderData",n);this.set("isFilteringOrders",!1);this.set("isClearingFilter",!1);k.trigger(b,{data:n})},isFilteringOrders:!1,isClearingFilter:!1,isLoadingOrderLines:!1,isApprovingOrder:!1,isRejectingOrder:!1,isSavingOrder:!1,isDataSourceBinding:!1,isEditingStandingOrder:!1,allLinesRejected:!1,today:new Date,needsValidation:!1,validationCallBack:n.noop,orderFilter:"",orderData:[],ordersCount:0,isSortingOrders:!1,sortColumn:k.options.sortColumn,sortDirection:k.options.sortDirection,canApproveOnAccount:!1,canApproveAndPay:!1,canQuickApprove:!1,clearMessage:function(){this.set("message","");k.options.triggerMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"ordersApproval",clearExisting:!0,clearAllExisting:!0})},orders:function(){var t=this,n=t.get("orderData");return n==null&&(n=[]),t.set("ordersCount",n.length),n},filterOrders:function(){var n=this.get("dataSource");this.get("orderFilter").length>0?this.set("isFilteringOrders",!0):this.set("isClearingFilter",!0);n.page(1)},clearOrderFilter:function(){this.set("orderFilter","");this.filterOrders()},setDisableView:function(t){var i=this;i.dataSource&&n.each(i.dataSource.view(),function(n,i){i.set("disableView",t)})},sortByColumn:function(t,i,r){n.cv.util.sortByColumn(this,t,i,r)},viewOrder:function(n){var t=this;k.addNewUiHistoryState({displayResultList:!1});t.setDisableView(!0);n.set("isLoadingOrderLine",!0);t._viewOrder_Internal(n.SoOrderNo,n.IsProxy)},redirectUrl:"",_viewOrder_Internal:function(t,r){var u=this;return u.set("orderNo",t),u.set("redirectUrl",k.options.ordersAwaitingPaymentPageUrl+"&order="+t),u.set("isProxy",r),u.set("isLoadingOrderLines",!0),k.trigger(l),n.cv.css.ordersApproval.GetOrderRequiringApproval({soOrderNo:t}).done(function(r){if(n.cv.util.hasValue(r,"meta.error")&&n.cv.util.hasContent(r.meta.error)){n.cv.util.notify(u,r.meta.error,n.cv.css.messageTypes.error);return}var f=r.data[0];f.IsProxy=u.get("isProxy");u.set("currentOrder",f);u.set("allowApproverPay",r.meta.allowApproverPay);u._canApproveOnAccount(f);u._canApproveAndPay(f);u._canQuickApprove(f);n.cv.css.localSetSelectedOrder(f);n.cv.css.trigger(n.cv.css.eventnames.viewApprovalOrder,f);n.cv.css.ordersApproval.loadOrderLines({soOrderNo:t}).done(function(t){var r,e;if(t.data&&t.data.length>0){for(u.set("mode",i),u._linesDataSource=t.data,r=t.data,n.cv.css.localSetSelectedOrderLines(r),r=k._preBindingLineModification(u,r),r=new kendo.data.ObservableArray(r),n.each(r,function(){n.cv.util.isNullOrWhitespace(this.ExtendedLineDescription)||this.set("showLineDescription",!0);this.CostCentreCode!=undefined&&(this.costCentreCode=this.CostCentreCode,this.CostCentreCodeControl!=undefined&&n(this.CostCentreCodeControl).attr("value")!=undefined&&(this.CostCentreCodeControl=n(this.CostCentreCodeControl).is("select")?n(this.CostCentreCodeControl).attr("value",this.CostCentreCode).wrap("<div />").parent().html():n(this.CostCentreCodeControl).attr("value",this.CostCentreCode).attr("data-bind","value: costCentreCode").wrap("<div />").parent().html()),this.set("costCentreCode",this.CostCentreCode))}),u.set("lines",r),u.set("isLineDataDirty",!1),r.bind("change",function(n){n.field!=="ErrorMessages"&&u.set("isLineDataDirty",!0);n.field==="isRejectChecked"&&u.orderLineCheckboxClicked(n.items[0])}),e=0;e<k.dataSource._data.length;e++)k.dataSource._data[e].set("isLoadingOrderLine",!1);n.cv.util.bindKendoWidgets(n(k.element[0]));n.cv.css.trigger(n.cv.css.eventnames.viewLinesMode);k.trigger(a);n.cv.css.trigger(n.cv.css.eventnames.ordersApprovalLinesRendered,{stampsWidgetContainer:k.options.stampsWidgetContainer,order:f,lines:r,InsertToLines:!0});n.cv.util.scroll(0)}}).fail(function(){var i=n.cv.util.string.format(k.options.viewOrderLoadErrorMessage,t);n.cv.util.notify(k.viewModel,i,n.cv.css.messageTypes.error)}).always(function(){u.set("isLoadingOrderLines",!1)})}).fail(function(){var i=n.cv.util.string.format(k.options.viewOrderLoadErrorMessage,t);n.cv.util.notify(k.viewModel,i,n.cv.css.messageTypes.error)}).always(function(){u.set("isLoadingOrderLines",!1)})},onChange:function(){this.set("isLineDataDirty",!0)},fastOrderApprove:function(t){var i=this,r=!1;return i.setDisableView(!0),i.set("isApprovingOrder",!0),t.set("isApprovingSingleOrder",!0),k.trigger(o,t),n.cv.css.orderApproval.fastApproveOrder({orderNo:t.SoOrderNo}).done(function(r){if(r.data&&r.data.Success===!1){n.cv.util.isNullOrWhitespace(k.options.fastOrderApproveGenericError)?n.each(r.data.Messages,function(){n.cv.util.notify(i,this.toString(),n.cv.css.messageTypes.error)}
62):n.cv.util.notify(i,k.options.fastOrderApproveGenericError,n.cv.css.messageTypes.error);return}var u=n.cv.util.string.format(k.options.approveOrderSuccessMessage,t.SoOrderNo);n.cv.util.notify(i,u,n.cv.css.messageTypes.success);k.dataSource.fetch()}).fail(function(){var r=n.cv.util.string.format(k.options.approveOrderFailureMessage,t.SoOrderNo);n.cv.util.notify(i,r,n.cv.css.messageTypes.error)}).always(function(){i.set("isApprovingOrder",!1);i.setDisableView(!1);t.set("isApprovingSingleOrder",!1);k.trigger(s,{Order:t,wasApproved:r})}),!1},fastRejectOrder:function(n){var t=this,i;return n.preventDefault(),n.stopPropagation(),i=n.data,t.set("confirmationHeader",k.options.confirmRejectOrderHeader),t.set("confirmationHeaderDisplayIcon",!0),t.set("confirmationLabel",k.options.confirmRejectOrderLabel),t.set("confirmationButtonText",k.options.confirmRejectOrderConfirmButtonText),t.set("confirmationRejectionNotes",""),t.set("confirmationErrorMessage",k.options.rejectOrderNoteMandatoryMessage),t.set("confirmationHasError",!1),t.set("confirmationIsMandatory",!0),t.set("confirmationAllowEnterText",!0),t.set("confirmationType",u),t.set("isSaveUnsavedChanges",!1),t.set("confirmationData",i.SoOrderNo),k.options.confirmationHandler({widget:k,viewModel:t}),!1},approveOrder:function(t,i){var r=this,u,f;t.preventDefault();t.stopPropagation();u=t.data;f=!1;n.cv.util.hasValue(r.get("forwardOrderValidatedOK"))&&r.get("forwardOrderValidatedOK")===!1?n.cv.util.notify(r,r.get("forwardOrderValidationMessage"),n.cv.css.messageTypes.error,{clearExisting:!1}):r._checkUpdateRequired(c).done(function(){if(i){r.set("isApproveAndPay",!0);var e=r.get("redirectUrl");n.cv.util.isNullOrWhitespace(e)||(n.cv.util.redirect(e,null,!1),n.cv.util.notify(r,n.cv.util.string.format(k.options.redirectingForPaymentMessage,u.orderNo),n.cv.css.messageTypes.info,{clearExisting:!1}))}else r.set("isApprovingOrder",!0),r.set("isApprovingSingleOrder",!0),k.trigger(o,u),n.cv.css.orderApproval.fastApproveOrder({orderNo:u.orderNo,isProxy:u.isProxy}).done(function(t){var f,i;if(n.cv.util.clearNotifications(r),f=t.data,f&&f.Success===!1){i=f.AdditionalData;i&&(n.cv.util.hasValue(i.H)||n.cv.util.hasValue(i.L))?(n.each(i.H,function(){n.cv.util.notify(r,this.errorMessage,n.cv.css.messageTypes.error,{clearExisting:!1})}),n.cv.util.hasValue(i.L,"[0]")&&(n.cv.util.notify(r,k.options.fastOrderApproveGenericError,n.cv.css.messageTypes.error,{clearExisting:!1}),n.each(r.get("lines"),function(t,r){var u=n.grep(i.L,function(n){return n.lineSeq===r.SolLineSeq});r.set("ErrorMessages",n.map(u,function(n){return n.errorMessage}).join("<br>"))}))):n.each(f.Messages,function(){n.cv.util.notify(r,this.toString(),n.cv.css.messageTypes.error,{clearExisting:!1})});return}u.goBackToOrders();n.cv.util.notify(r,n.cv.util.string.format(k.options.approveOrderSuccessMessage,u.orderNo),n.cv.css.messageTypes.success)}).fail(function(){var i=n.cv.util.string.format(k.options.approveOrderFailureMessage,t.data.orderNo);n.cv.util.notify(r,i,n.cv.css.messageTypes.error);r.set("isApproveAndPay",!1)}).always(function(){r.set("isApprovingOrder",!1);r.set("isApprovingSingleOrder",!1);k.trigger(s,{Order:u,wasApproved:f})});return!1})},rejectOrder:function(n){var t=this,i;return n.preventDefault(),n.stopPropagation(),i=n.data,t.set("confirmationHeader",k.options.confirmRejectOrderHeader),t.set("confirmationHeaderDisplayIcon",!0),t.set("confirmationLabel",k.options.confirmRejectOrderLabel),t.set("confirmationButtonText",k.options.confirmRejectOrderConfirmButtonText),t.set("confirmationRejectionNotes",""),t.set("confirmationErrorMessage",k.options.rejectOrderNoteMandatoryMessage),t.set("confirmationHasError",!1),t.set("confirmationIsMandatory",!0),t.set("confirmationAllowEnterText",!0),t.set("confirmationType",u),t.set("isSaveUnsavedChanges",!1),t.set("confirmationData",i.orderNo),k.options.confirmationHandler({widget:k,viewModel:t}),!1},approveOrderAndPay:function(n){var t=this;t.approveOrder(n,!0)},orderLineCheckboxClicked:function(n){var t=this;return n.isRejectChecked?(t.set("confirmationHeader",k.options.confirmRejectOrderLineHeader),t.set("confirmationHeaderDisplayIcon",!0),t.set("confirmationLabel",k.options.confirmRejectOrderLineLabel),t.set("confirmationButtonText",k.options.confirmRejectOrderLineConfirmButtonText),t.set("confirmationRejectionNotes",n.RejectionNote),t.set("confirmationErrorMessage",k.options.rejectOrderLineNoteMandatoryMessage),t.set("confirmationHasError",!1),t.set("confirmationIsMandatory",!0),t.set("confirmationAllowEnterText",!0),t.set("confirmationType",f),t.set("isSaveUnsavedChanges",!1),t.set("confirmationData",n),k.options.confirmationHandler({widget:k,viewModel:t})):n.set("displayRejectionNoteEditor",n.RejectionNote.length>0),!1},editOrderLineRejectionNote:function(n){var t=this,i;return n.preventDefault(),n.stopPropagation(),i=n.data,t.set("confirmationHeader",k.options.confirmRejectOrderLineHeader),t.set("confirmationHeaderDisplayIcon",!0),t.set("confirmationLabel",k.options.confirmRejectOrderLineLabel),t.set("confirmationButtonText",k.options.confirmRejectOrderLineConfirmButtonText),t.set("confirmationRejectionNotes",i.RejectionNote),t.set("confirmationErrorMessage",k.options.rejectOrderLineNoteMandatoryMessage),t.set("confirmationHasError",!1),t.set("confirmationIsMandatory",i.isRejectChecked),t.set("confirmationAllowEnterText",!0),t.set("confirmationType",e),t.set("confirmationData",i),t.set("isSaveUnsavedChanges",!1),k.options.confirmationHandler({widget:k,viewModel:t}),!1},orderNo:0,currentOrder:null,allowApproverPay:!1,lines:[],isLineDataDirty:!1,productSearchTerm:"",addProductQuantity:k.options.defaultAddProductQuantity,_getLineChanges:function(){for(var r=this.get("lines"),f=r.length,u=[],t,i=0;i<f;i++)t=r[i],u.push({LineSeq:t.LineSeq,Description:t.Description,StockCode:t.ProductCode,ExtendedLineDescription:t.ExtendedLineDescription,Qty:t.OrderedQty,CostCentreCode:n.cv.util.hasValue(t.costCentreCode)?t.costCentreCode:t.CostCentreCode,RejectionNote:t.RejectionNote,Reject:t.isRejectChecked===!0});return u},_areAllLinesRejected:function(){for(var t=this.get("lines"),n=0;n<t.length;n+=1)if(t[n].isRejectChecked===!1)return!1;return!0},isAllowedToChangeAndIsDirty:function(){return this.get("isLineDataDirty")},_getLineQuantities:function(){for(var i=this.get("lines"),e=i.length,r=[],u,n,f,t=0;t<e;t++)n=i[t],u=n.LineSeq,f=n.OrderedQty,r.push({LineSeq:u,Qty:f});return r},_checkUpdateRequired:function(t){var r=n.Deferred(),i=this;return i.isAllowedToChangeAndIsDirty()?(i.set("confirmationHeader",k.options.confirmSaveUnsavedChangesHeader),i.set("confirmationHeaderDisplayIcon",!1),i.set("confirmationLabel",k.options.backToOrdersDoYouWantToSaveYourOrderMessage),i.set("confirmationButtonText",k.options.confirmSaveUnsavedChangesConfirmButtonText),i.set("discardConfirmationButtonText",k.options.confirmDiscardUnsavedChangesConfirmButtonText),i.set("confirmationRejectionNotes",""),i.set("confirmationErrorMessage",""),i.set("confirmationHasError",!1),i.set("confirmationIsMandatory",!1),i.set("confirmationAllowEnterText",!1),i.set("confirmationType",t),i.set("isSaveUnsavedChanges",!0),k.options.confirmationHandler({widget:k,viewModel:i})):r.resolve(),r.promise()},backToOrders:function(){history.back()},goBackToOrders:function(){var i=this;return i._checkUpdateRequired(h).done(function(){k.trigger(v);n.cv.css.trigger(n.cv.css.eventnames.viewOrdersMode);i.setDisableView(!1);i.set("mode",t);n.cv.util.clearNotifications(i);k.dataSource.fetch();k.trigger(r)}),!1},saveOrderLineChanges:function(n){return n.preventDefault(),n.stopPropagation(),this._saveOrderLineChanges_Internal(),!1},_saveOrderLineChanges_Internal:function(t){var i=this,r=i.currentOrder,f=i._getLineChanges(),u=i._areAllLinesRejected();return(t==null&&(t=!u),i.set("isSavingOrder",!0),i.set("allLinesRejected",u),k.trigger(p,r),i.get("needsValidation")&&!i.validationCallBack(!0))?(i.set("isSavingOrder",!1),!1):n.cv.css.ordersApproval.saveChanges({soOrderNo:r.get("SoOrderNo"),soBoSuffix:r.get("SoBoSuffix"),changes:f,soCustReference:r.get("SoCustReference"),soDeliveryDate:r.get("SoDeliveryDate"),soComments:r.get("SoComments"),rejectOrder:u,forwardOrderMode:r.get("ForwardOrderMode"),forwardOrderDate:r.get("ForwardOrderExpectedDelDate")}).done(function(t){var u;if(i.clearMessage(),n.cv.util.hasValue(t,"meta.error")&&n.cv.util.hasContent(t.meta.error)){n.cv.util.notify(i,t.meta.error,n.cv.css.messageTypes.error);return}i.set("isLineDataDirty",!1);i.get("allLinesRejected")===!0?(u=n.cv.util.string.format(k.options.rejectAllOrderLinesSuccessMessage,r.SoOrderNo,r.CustomerName,r.SoCustCode),i.goBackToOrders(),n.cv.util.notify(i,u,n.cv.css.messageTypes.success)):(u=n.cv.util.string.format(k.options.updateOrderSuccessMessage,r.SoOrderNo),n.cv.util.notify(i,u,n.cv.css.messageTypes.success));n.cv.css.trigger(n.cv.css.eventnames.viewApprovalOrder,i.currentOrder)}).fail(function(){var t=n.cv.util.string.format(k.options.updateOrderFailureMessage,r.SoOrderNo);n.cv.util.notify(i,t,n.cv.css.messageTypes.error)}).always(function(){i.set("isSavingOrder",!1);k.trigger(w,r);t===!0&&i._viewOrder_Internal(r.SoOrderNo,r.IsProxy)})},printOrder:function(n){var t=this;return n.preventDefault(),n.stopPropagation(),k.trigger(y),k.options.openPrintOrderPage&&k.options.openPrintOrderPage(t.get("currentOrder.SoOrderNo"),t.get("currentOrder.PrintOrderUrl")),!1},_canApproveOnAccount:function(n){var t=this;n==null?t.set("canApproveOnAccount",!1):n.IsLastApproverForPronotSalesOrder&&n.IsBillToCustomerForcedToPayWhenApproving||!n.IsWithinAvailableCustomerBudget?t.set("canApproveOnAccount",!1):n.IsPaymentRequired?t.set("canApproveOnAccount",!1):t.set("canApproveOnAccount",!0)},_canApproveAndPay:function(t){var i=this;t==null?i.set("canApproveAndPay",!1):t.IsLastApproverForPronotSalesOrder&&t.IsWithinAvailableCustomerBudget&&n.cv.util.isNullOrWhitespace(t.OrderAggregationConsolidator)?i.set("canApproveAndPay",!0):i.set("canApproveAndPay",!1)},_canQuickApprove:function(n){var t=this;n==null?t.set("canQuickApprove",!1):n.IsLastApproverForPronotSalesOrder&&n.IsBillToCustomerForcedToPayWhenApproving?t.set("canQuickApprove",!1):n.IsWithinAvailableCustomerBudget?n.IsPaymentRequired?t.set("canQuickApprove",!1):t.set("canQuickApprove",!0):t.set("canQuickApprove",!1)},onEditStandingOrder:function(t){var r=this,u=t.data._objectKey;r.get("mode")===i&&(u=r.get("currentOrder")._objectKey);r.set("isEditingStandingOrder",!0);n.cv.css.orders.getStandingOrderScheduleEditHtml({_objectKey:u}).done(function(u){var e='<header class="modal-header standing-order">
62\n                                <span class="ico-heading">'.concat(k.options.modalPopupEditStandingOrderTitle,'<\/span>\n                             <\/header>\n                             <section class="modal-content standing-order">').concat(u.data,"<\/section>"),o=n.cv.util.createContainer({html:e}),f="#"+o.attr("id");n.fancybox({href:f,beforeClose:function(){var o=n(f),e=o.find("[data-role=schedulestandingorder]").data("scheduleStandingOrder").viewModel,u=e.get("responseOrder"),s=e.get("responseSchedule");u&&s&&(r.get("mode")===i?r.get("currentOrder").set("SoCustReference",u[0].SoCustReference):t.data.set("SoCustReference",u[0].SoCustReference))}})}).always(function(){r.set("isEditingStandingOrder",!1)})}}));return d}};n.cv.ui.widget(k)})(jQuery);
63(function(n){var t={name:"ordersawaitingpayment",extend:"mvvmwidget",extendEvents:[],options:{dataSource:[],autoBind:!0,step1Container:"#cv-zone-checkout-step1-container",step2Container:"#cv-zone-checkout-step2-container",scrollToElement:"#cv-zone-layout",errorRequestingAwaitingOrders:"Failed to retrieve orders awaiting payment.",errorPayingOrder:"Failed to set order for payment.",orderSearchPageUrl:"",ordersAwaitingPaymentPageUrl:"",orderCannotBeFound:"The requested order cannot be found.",isForApproveAndPayNow:!1,isForPayBalance:!1,enableDepositPaymentsForOrders:!1},initialised:function(){var n=this;n.setupSinglePageHistoryStateHandler({displayResultList:!0},function(t){t.displayResultList&&n.viewModel.displayStep1()})},viewModelBound:function(){var n=this;n.viewModel._getOrdersAwaitingPayment()},_getViewModel:function(){var t=this,i=kendo.observable(n.extend({},t.options,{ordersAwaitingPayment:[],updateViewModelFromDataSource:function(){n.each(t.dataSource.view(),function(n,r){r.index=n;r.disableView=!1;r.isShowingOrder=!1;r.isProcessing=!1;r.showOrder=function(){i.showOrder(r)};r.payClick=function(n){i.payClick(n.data)};var u=t.options.orderSearchPageUrl+"?R="+t.options.ordersAwaitingPaymentPageUrl+"&order="+r.SoOrderNo+"&ordersuffix="+r.SoBoSuffix+"&islivesearch=false";r.href=u});i.set("ordersAwaitingPayment",t.dataSource.view())},setDisableView:function(t){var i=this;i.dataSource&&n.each(i.dataSource.view(),function(n,i){i.set("disableView",t)})},showOrder:function(t){var i=this;i.setDisableView(!0);t.set("isShowingOrder",!0);n.cv.util.redirect(t.href,null,!1)},payOrder:function(r){var u=this;i.set("isProcessing",!0);r!=null&&r.length>0&&n.cv.css.getOrder({orderNo:r,checkCustomerCode:!0,checkAdditionalCustomerCodes:!1,liveOrder:!1}).done(function(i){i.data&&i.data.length>0?u.payClick(i.data[0]):n.cv.util.notify(t.viewModel,u.get("orderCannotBeFound"),n.cv.css.messageTypes.error)}).fail(function(){n.cv.util.notify(t.viewModel,u.get("orderCannotBeFound"),n.cv.css.messageTypes.error)})},getOrderLinesAndTransactionsLogLines:function(i,r){var f=n.cv.css.getOrderLines({orderNo:i.SoOrderNo,isLocalSetSelectedOrderLines:!0}),u=n.Deferred();t.options.isForPayBalance||r?u=n.cv.css.orders.getTransactionsLogLines({_objectKey:i._objectKey}):u.resolve();n.when(f,u).done(function(u,f){var o=i.OrderTotal!=undefined?i.OrderTotal:i.OrderTotalAmount,e=0,s;(t.options.isForPayBalance||r)&&(e=o,n.each(f[0].data,function(n,t){e=e-t.TransAmount}));s=t.options.isForPayBalance||r?f[0].data!=undefined?f[0].data:null:null;n.cv.css.trigger(n.cv.css.eventnames.viewOrderAwaitingPayment,{orderNoOverride:i.SoOrderNo,overrideOrderKey:i._objectKey,isForApproveAndPayNow:t.options.isForApproveAndPayNow,orderTotal:o,balanceAmountOwing:e,transactionsLogLines:s,isForPayBalance:r,nonCurrentOrderKey:r?i._objectKey:null})});n(t.options.step1Container).fadeOut("fast");n(".order-summary-quickview-area").show();n(t.options.step2Container).fadeIn("fast");n("html,body").animate({scrollTop:n(t.options.scrollToElement).offset().top},"fast")},payClick:function(r){var u=this,f;t.addNewUiHistoryState({displayResultList:!1});u.setDisableView(!0);i.set("isProcessing",!0);f=t.options.enableDepositPaymentsForOrders&&r.IsPaymentRequired===!1&&r.BalanceAmountOwing>0;f?(u.getOrderLinesAndTransactionsLogLines(r,!0),i.set("isProcessing",!1),i.setDisableView(!1)):n.cv.css.orders.switchOrderToPayOrderAwaitingPayment({soOrderNo:r.SoOrderNo}).done(function(i){i&&i.data&&(i.data.Success?(n.each(i.data.Messages,function(i,r){n.cv.util.notify(t.viewModel,r,n.cv.css.messageTypes.warning)}),u.getOrderLinesAndTransactionsLogLines(r,f)):n.each(i.data.Messages,function(i,r){n.cv.util.notify(t.viewModel,r,n.cv.css.messageTypes.error)}))}).fail(function(){n.cv.util.notify(t.viewModel,t.options.errorPayingOrder,n.cv.css.messageTypes.error)}).always(function(){i.set("isProcessing",!1);i.setDisableView(!1)})},backToResults:function(){var t=this,i;if(t.set("isProcessing",!0),i=n.cv.util.queryStringValue("R"),i){n.cv.util.redirect(i,{},!1);return}t.displayStep1();t.set("isProcessing",!1)},displayStep1:function(){n(t.options.step1Container).fadeIn("fast");n(".order-summary-quickview-area").hide();n(t.options.step2Container).fadeOut("fast");
63t.viewModel.setDisableView(!1)},_getOrdersAwaitingPayment:function(){var i=this,r=n.cv.util.queryStringValue("Order"),u;(t.options.isForApproveAndPayNow||t.options.isForPayBalance)&&n.cv.util.hasContent(r)?(i.set("showingSearch",!1),u=n.cv.util.queryStringValue("OrderSuffix")!=null?n.cv.util.queryStringValue("OrderSuffix"):"",i.payOrder(r+u)):n.cv.css.orders.getOrdersAwaitingPayment().done(function(i){if(i&&i.data){var r=n.cv.data.dataSource({dataType:"",data:i.data,transport:null});t.setDataSource(r)}}).fail(function(){n.cv.util.notify(t.viewModel,t.options.errorRequestingAwaitingOrders,n.cv.css.messageTypes.error)})}}));return i}};n.cv.ui.widget(t)})(jQuery);
64(function(n){var t="widgetDataInitialised",i={name:"taxtoggle",extend:"mvvmwidget",options:{isIncTax:!0,cssClassIncTax:"show-inc-tax-prices",cssClassExTax:"show-ex-tax-prices",errorSettingIncTax:"Error setting 'show prices inc/ex tax'.",autoBind:!0,viewTemplate:null},extendEvents:[t,"listUpdated"],viewTemplateParsing:function(){var n=this},viewTemplateParsed:function(){var n=this},viewAppending:function(){var n=this},viewAppended:function(){var n=this},viewModelBinding:function(){var n=this},viewModelBound:function(){var i=this;n.cv.css.bind(n.cv.css.eventnames.setTaxToggle,n.proxy(i.viewModel._taxDisplayToggled,i.viewModel));i.viewModel._setBodyTag(i.options.isIncTax);i.trigger(t)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var i=this,t=kendo.observable(n.extend(i.options,{isProcessing:!1,setExTax:function(){this._setTaxToggleOnServer(!1)},setIncTax:function(){this._setTaxToggleOnServer(!0)},toggleClick:function(){this._setTaxToggleOnServer(!t.get("isIncTax"))},_taxDisplayToggled:function(i){if(n.cv.util.hasValue(i)){var r=this;i.uid!==r.uid&&t.set("isIncTax",i.isIncTax)}},_setTaxToggleOnServer:function(r){t.set("isProcessing",!0);t.set("isIncTax",r);t._setBodyTag(r);var u={isIncTax:r};n.cv.css.user.setIncTax(u).done(function(r){if(r&&r.data){var u=r.data.Success?n.cv.css.messageTypes.success:n.cv.css.messageTypes.error;n.each(r.data.Messages,function(t,r){n.cv.util.notify(i.viewModel,r,u)});n.cv.css.trigger(n.cv.css.eventnames.setTaxToggle,{isIncTax:t.get("isIncTax"),uid:t.uid})}}).fail(function(){n.cv.util.notify(i.viewModel,i.options.errorSettingIncTax,n.cv.css.messageTypes.error)}).always(function(){t.set("isProcessing",!1)})},_setBodyTag:function(t){t?(n("body").addClass(i.options.cssClassIncTax),n("body").removeClass(i.options.cssClassExTax)):(n("body").addClass(i.options.cssClassExTax),n("body").removeClass(i.options.cssClassIncTax))}}));return t.bind("change",function(){}),t}};n.cv.ui.widget(i)})(jQuery);
65(function(n){var t={name:"mostpopularproducts",extend:"mvvmwidget",extendEvents:[],options:{carouselId:"",arguments:"",numberOfProducts:4,setupCarousel:!0},initialise:function(){var n=this;n.beforeShow();n.afterShow()},beforeShow:function(){var t=this,i=n("#"+t.options.carouselId).data("owlCarousel");i&&i.destroy();n("#"+t.options.carouselId).html("");t.viewModel.set("isContentLoading",!0)},afterShow:function(){var t=this,i=n.cv.css.mostPopularProducts.getMostPopularProducts({arguments:t.options.arguments,maxNumberOfProducts:t.options.numberOfProducts});i.done(function(i){var r,u;t.viewModel.set("isContentLoading",!1);n.cv.util.hasValue(i.data)&&(r=i.data.result,n.cv.util.hasContent(r)&&(n("#"+t.options.carouselId).html(r),t.options.setupCarousel&&n.cv.css.owlCarousel.bindProductCarousel(n("#"+t.options.carouselId),i.data.productCount),n("#"+t.options.carouselId+" .form-number").each(function(){n.cv.util.kendoNumericTextBox(this)}),kendo.init(n("#"+t.options.carouselId)),u=i.data.trackingDataScriptBlock,n.cv.util.hasContent(u)&&n("#"+t.options.carouselId).append(u),n.cv.css.trigger(n.cv.css.eventnames.initialiseProductImageLazyLoad)),i.data.productImpressions.length>0&&n.cv.css.trigger(n.cv.css.eventnames.mostPopularProductsSet,{productImpressions:i.data.productImpressions,isJson:!0}));t.viewModel.set("hasData",n.cv.util.hasValue(i.data)&&i.data.result.length>0)})},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this;return n.extend(kendo.observable(t.options),{isContentLoading:!1,hasData:!0})}};n.cv.ui.widget(t)})(jQuery);
66(function(n){var t={name:"guestCheckoutExpandButton",extend:"mvvmwidget",options:{expandableContent:".guest-checkout.expandable-content",autoBind:!0,viewTemplate:null},extendEvents:[],viewModelBound:function(){var t=this,i=n.cv.css.localGetUsingGuestCheckout();n.cv.util.hasValue(i)&&i&&n.cv.css.bind(n.cv.css.eventnames.paymentOptionsRendered,function(){n(t.options.expandableContent).css("display")==="none"&&t.viewModel.toggleExpandCollapse()})},_getViewModel:function(){var t=this;return kendo.observable(n.extend(t.options,{toggleUsingGuestCheckout:function(){var t=n.cv.css.localGetUsingGuestCheckout();n.cv.css.localSetUsingGuestCheckout(n.cv.util.hasValue(t)?!t:!0);this.toggleExpandCollapse()},toggleExpandCollapse:function(){n(t.options.expandableContent).slideToggle(function(){var i=n(t.options.expandableContent);i.css("display")!=="none"&&n(window).scrollTop(i.offset().top);i.find("input:first").focus()})}}))}};n.cv.ui.widget(t)})(jQuery);
67(function(n){var r="loyaltyRewardsRendered",i="loyaltyRewardApplied",u="loyaltyRewardRemoved",t=n.Deferred(),f={name:"loyaltyReward",extend:"mvvmwidget",options:{dataSource:[],sessionTimeOutRedirectUrl:"login.aspx",formatFieldsAsCurrency:["RewardsValueAvailable","RewardsValueRedeemed"],dateFormat:"dd-MMM-yy",autoBind:!0,includeInBrowserHistory:!1,prontoLoyaltyRewards:!1,listUpdated:null,allUnconfirmed:null,allConfirmed:null,widgetDataInitialised:null,triggerMessages:!1,clearExistingMessages:!0,textErrorGettingLoyaltyRewards:"There was an error retrieving the loyalty reward data",textSuccessfullyAppliedLoyaltyRewards:"Loyalty rewards successfully applied",textSuccessfullyRemovedLoyaltyRewards:"Loyalty rewards successfully removed",isOrderComplete:!1,isOrderApprove:!1,useLoyaltyRewards:!0,enableAmountRedemptionOnMultipleRewards:!1,multipleRedemptionRewardsTotal:0,rewardAmount:0,viewTemplate:null},extendEvents:[r,i,u],multipleRedemptionRewardTypes:["Multiple","MultipleNominate"],singleRedemptionRewardTypes:["Single","SingleNominate"],viewModelBound:function(){var t=this;n.cv.css.bind(n.cv.css.eventnames.orderChanged,n.proxy(t.viewModel.cartUpdated,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.confirmRewardRemoval,n.proxy(t.viewModel.loyaltyRewardRemoved,t.viewModel))},initDataSource:function(){var i=this,r=n.Deferred(),u=[];i.options.useLoyaltyRewards?(i.viewModel.set("isProcessing",!0),i.options.isOrderApprove||i.options.isOrderComplete?(r=i.options.isOrderApprove?n.cv.css.loyaltyReward.getOrderBeingApproved():n.cv.css.loyaltyReward.getCurrentOrderForUser(),n.when(r).done(function(t){t.errorMessage&&t.errorMessage.length!=0?i.viewModel.setMessage(t.errorMessage,n.cv.css.messageTypes.error):i.processLoyaltyData(t.data)}).fail(function(){i.viewModel.setMessage(i.options.textErrorGettingLoyaltyRewards,n.cv.css.messageTypes.error)})):(i.setDataSource(u),t.resolve())):(i.setDataSource(u),t.resolve());n.when(t).done(function(){i.viewModel.set("isProcessing",!1)})},processLoyaltyData:function(n){var t=this,i;n.sessionHasTimedOut?t.viewModel.redirectToTimeoutUrl(t.options.sessionTimeOutRedirectUrl,null,!t.options.includeInBrowserHistory):n&&n[0]&&(i=n[0],t.getRewardsForUser(i),t.viewModel.set("hasLoyaltyRewardChargeLine",i.HasLoyaltyRewardChargeLine),i.HasLoyaltyRewardChargeLine&&t.setLoyaltyRewardsCharge(i),t.viewModel.set("orderTotalAmount",i.OrderTotalAmount),t.options.isOrderApprove&&t.viewModel.set("soOrderNo",
67i.SoOrderNo))},getRewardsTotal:function(t,i){var r=this,f=i?r.multipleRedemptionRewardTypes:r.singleRedemptionRewardTypes,u=0;return n.each(t,function(t,i){n.inArray(i.RedemptionMethod,f)>=0&&(u+=i.RewardsValueAvailable)}),u},getRewardsForUser:function(i){var r=this,u="",f;r.options.isOrderApprove&&i&&i.SoCustCode&&(u=i.SoCustCode);f=n.cv.css.loyaltyReward.getRewardsForUser({custCode:u});n.when(f).done(function(u){var f=u.data,e,o;f.sessionHasTimedOut?r.viewModel.redirectToTimeoutUrl(r.options.sessionTimeOutRedirectUrl,null,!r.options.includeInBrowserHistory):(r.options.isOrderApprove||!i.WillRequireApprovalIfSubmitted)&&(e=r.options.enableAmountRedemptionOnMultipleRewards?n.grep(f,function(t){return n.inArray(t.RedemptionMethod,r.singleRedemptionRewardTypes)>=0}):f,o=r.getRewardsTotal(f,!0),r.viewModel.set("multipleRedemptionRewardsTotal",o),r.viewModel.set("multipleRedemptionRewardsTotalDisplay",kendo.toString(o,"c")),r.options.dataSource=e,r.setDataSource(e),t.resolve())}).fail(function(){r.viewModel.setMessage(r.options.textErrorGettingLoyaltyRewards,n.cv.css.messageTypes.error)})},setLoyaltyRewardsCharge:function(t){var i=this,r=0,u;i.options.isOrderApprove&&t&&t.SoOrderNo&&(r=t.SoOrderNo);u=n.cv.css.loyaltyReward.getLoyaltyRewardCharge({soOrderNo:r});n.when(u).done(function(n){var t=n.data;t.sessionHasTimedOut?i.viewModel.redirectToTimeoutUrl(i.options.sessionTimeOutRedirectUrl,null,!i.options.includeInBrowserHistory):t[0]&&t[0].SolLineAmount&&(i.viewModel.set("loyaltyRewardChargeLineAmount",t[0].SolLineAmount),i.getRewardsForUser(t[0]))}).fail(function(){i.viewModel.setMessage(i.options.textErrorGettingLoyaltyRewards,n.cv.css.messageTypes.error)})},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var f=this,o=function(){if(!f.dataSource)return[];var t=[];return n.each(f.dataSource.view(),function(r,u){u.Index=r;u.isApplyingReward=!1;u.formattedExpiryDate=f.options.dateFormat.length>0?kendo.toString(u.ExpiryDate,f.options.dateFormat):u.ExpiryDate;u.remainingRewardsValue=h(u);u.formattedRemainingRewardsValue=kendo.toString(u.remainingRewardsValue,"c");u.totalAfterAddRemoval=s(u);u.formattedTotalAfterAddRemoval=kendo.toString(u.totalAfterAddRemoval,"c");c(u);u.execCommand_apply=function(){u.set("isApplyingReward",!0);var t=n.cv.css.loyaltyReward.applyLoyaltyReward({schemeName:u.SchemeName,soOrderNo:e.get("soOrderNo"),makeProntoCheck:f.options.prontoLoyaltyRewards});n.when(t).done(function(t){u.set("isApplyingReward",!1);t.sessionHasTimedOut?e.redirectToTimeoutUrl(f.options.sessionTimeOutRedirectUrl,null,!f.options.includeInBrowserHistory):(f.trigger(i),e.setMessage(f.options.textSuccessfullyAppliedLoyaltyRewards,n.cv.css.messageTypes.success))})};u.execCommand_remove=function(){u.set("isApplyingReward",!0);f.viewModel.loyaltyRewardRemoved().done(function(){u.set("isApplyingReward",!1)})};t.push(u)}),t},s=function(n){var t=e.get("orderTotalAmount");return e.get("hasLoyaltyRewardChargeLine")?Math.abs(e.get("loyaltyRewardChargeLineAmount"))>0?t+Math.abs(e.get("loyaltyRewardChargeLineAmount")):t+n.remainingRewardsValue:t-n.RewardsValueAvailable>=0?t-n.RewardsValueAvailable:0},h=function(n){var t=e.get("orderTotalAmount");return e.get("hasLoyaltyRewardChargeLine")?n.RewardsValueAvailable:n.RewardsValueAvailable-t>=0?n.RewardsValueAvailable-t:0},c=function(n){return f.options.formatFieldsAsCurrency.length>0&&n!=null&&_.each(f.options.formatFieldsAsCurrency,function(t){_.has(n,t)&&(n[t]=kendo.toString(n[t],"c"))}),n},e=kendo.observable(n.extend(f.options,{useLoyaltyRewards:f.options.useLoyaltyRewards,isOrderApprove:f.options.isOrderApprove,isOrderComplete:f.options.isOrderComplete,clearExistingMessages:f.options.clearExistingMessages,loyaltyRewardChargeLineAmount:0,hasLoyaltyRewardChargeLine:!1,orderTotalAmount:0,soOrderNo:0,hasLoyaltyRewardData:!1,itemList:o(),redirectToTimeoutUrl:function(t,i,r){n.cv.ajax.settings.timeoutRedirectUrl==""?n.cv.util.redirect(t,i,!r):n.cv.util.redirect(n.cv.ajax.settings.timeoutRedirectUrl,i,!r)},clearMessage:function(){var t=this.get("clearExistingMessages");this.set("clearExistingMessages",!0);this.set("message","");f.options.triggerMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"loyaltyReward",clearExisting:this.get("clearExistingMessages")});this.set("clearExistingMessages",t)},setMessage:function(t,i){n.cv.util.notify(this,t,i,{triggerMessages:f.options.triggerMessages,source:f.name})},updateViewModelFromDataSource:function(){this.set("itemList",o());this.set("hasLoyaltyRewardData",this.get("itemList").length>0||this.isAmountRedemptionOnMultipleRewardsVisible());f.trigger(r)},isAmountRedemptionOnMultipleRewardsVisible:function(){return f.options.enableAmountRedemptionOnMultipleRewards&&this.get("multipleRedemptionRewardsTotal")>0},multipleRedemptionRewardsTotalDisplay:"",cartUpdated:function(){t=n.Deferred();f.initDataSource()},loyaltyRewardRemoved:function(){var t=n.cv.css.loyaltyReward.deleteLoyaltyRewardCharge({soOrderNo:e.get("soOrderNo")});return n.when(t).done(function(t){t.sessionHasTimedOut?e.redirectToTimeoutUrl(f.options.sessionTimeOutRedirectUrl,undefined,
67!f.options.includeInBrowserHistory):(f.trigger(u),e.setMessage(f.options.textSuccessfullyRemovedLoyaltyRewards,n.cv.css.messageTypes.success),n.cv.css.trigger(n.cv.css.eventnames.loyaltyRewardsChanged))}),t},redeemReward:function(){var t=n.cv.css.loyaltyReward.applyLoyaltyRewardAmount({rewardAmount:e.get("rewardAmount")});n.when(t).done(function(t){if(n.cv.util.hasContent(t.data)){e.setMessage(t.data,n.cv.css.messageTypes.error);return}f.trigger(i);e.setMessage(f.options.textSuccessfullyAppliedLoyaltyRewards,n.cv.css.messageTypes.success);n.cv.css.trigger(n.cv.css.eventnames.loyaltyRewardsChanged)})},cancelRedemption:function(){e.loyaltyRewardRemoved()}}));return e.bind("change",function(){}),e},_buildViewTemplate:function(){var n=this;n._buildDefaultViewTemplate()},_buildDefaultViewTemplate:function(){var n=this;n._buildDefaultContentTemplate()},_buildDefaultContentTemplate:function(){var n=this;n.viewTemplate+=""}};n.cv.ui.widget(f)})(jQuery);
68(function(n){var t={name:"checkOutSteps",extend:"mvvmwidget",extendEvents:[],options:{totalSteps:4,currentStepNo:1,stepClass:"step-{0}-active",totalStepsClass:"total-steps-four",autoBind:!0,viewTemplate:null},initialise:function(){var t=this;n.cv.css.bind(n.cv.css.eventnames.backToAddress,n.proxy(t.viewModel.moveBackward,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.continueToPayment,n.proxy(t.viewModel.moveForward,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.previousStep,n.proxy(t.viewModel.moveBackward,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.nextStep,n.proxy(t.viewModel.moveForward,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.goToStep,n.proxy(t.viewModel.goToStep,t.viewModel))},_getViewModel:function(){var t=this;return kendo.observable(n.extend(t.options,{activeStepClass:function(){return this.get("totalStepsClass")+" "+this.get("stepClass").format(this.get("currentStepNo"))},moveForward:function(){this.get("currentStepNo")<t.options.totalSteps&&this.set("currentStepNo",this.get("currentStepNo")+1)},moveBackward:function(){this.get("currentStepNo")>1&&this.set("currentStepNo",this.get("currentStepNo")-1)},onStepClicked:function(t){var i=t.target||t.srcElement,r=n(i).data("step");n.cv.css.trigger(n.cv.css.eventnames.stepClicked,r)},goToStep:function(n){this.get("currentStepNo")>n&&this.set("currentStepNo",n)}}))}};n.cv.ui.widget(t)})(jQuery);
69(function(n){var t={name:"addProductToOrderTemplate",extend:"mvvmwidget",options:{autoBind:!0,triggerMessages:!0,clearWidgetMessages:!0,productCode:"",selectedUom:"",usePleaseSelectForTemplateNames:!0,lastTemplateId:"",rememberMyTemp:!0,templateSavedOk:!1,templateNameInvalidMessage:"Template name is missing or invalid",templateNameExistsMessage:"A template with that name already exists. Please type another name.",selectedTemplateInvalidMessage:"Selected template is missing or invalid",addProductSuccessMessage:'Product "{0}" was successfully added to the Template Order',addProductErrorMessage:'There was an error while attempting to add product "{0}" to the Template Order',loadUserTemplatesFailureMessage:"Failed to load templates",dialogId:"",packQuantity:1,packQuantityTarget:"packQuantity",quantityTarget:"quantity"},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this,i=kendo.observable(n.extend(t.options,{isProcessing:function(){return this.get("isSavingTemplate")===!0},saveTypeValue:"create",saveTypeIsCreate:function(){return this.get("saveTypeValue")==="create"},saveTypeIsAppend:function(){return this.get("saveTypeValue")==="append"},saveTemplateName:"",saveIsCompanyTemplate:!1,saveIsRoleTemplate:!1,isAllCustomers:!1,saveTemplateList:[],saveTemplateListValue:"",saveTemplateType:"",isSavingTemplate:!1,isLoadingOrderTemplates:!1,allowOrderEntryForProduct:!0,quantity:0,addToTemplate:function(t,i,r){var u=this;n.cv.css.orderTemplate.addItemToTemplateOrder({productCode:t,quantity:r,orderNo:i,uom:u.get("selectedUom")}).done(function(n){n.data!=null&&n.data.length===0&&u.set("templateSavedOk",!0)}).always(function(){u.setStatusInProcess(!1);u.showStatusMessage()})},saveTemplate:function(){var t=this;if(t.set("templateSavedOk",!1),t.validateInputs()){t.setStatusInProcess(!0);
69var i=t.get("productCode"),r=t.get("quantity"),f=t.getTemplateName(),e=t.get("saveTemplateListValue"),o=t.get("saveTemplateList"),s=t.get("saveIsCompanyTemplate"),h=t.get("saveIsRoleTemplate"),c=t.get("isAllCustomers"),u="";return t.saveTypeIsCreate()?n.cv.css.orderTemplate.createTemplateFromCurrentOrder({templateName:f,custTemplate:s,roleTemplate:h,allCustomers:c}).done(function(n){if(n.data&&n.data[0]){var u=n.data[0];u.SoOrderNo&&u.SoOrderNo>0&&(t.addToTemplate(i,u.SoOrderNo,r),t.loadOrderTemplateList())}}).fail(function(){t.setStatusInProcess(!1);t.showStatusMessage()}):t.saveTypeIsAppend()&&(n.each(o,function(n,t){return t.TemplateName===e?(u=t.SoOrderNo,!1):!0}),t.addToTemplate(i,u,r)),!0}return!1},showStatusMessage:function(){var r=this.get("productCode"),u=n.cv.util.string.format(t.options.addProductSuccessMessage,r),f=n.cv.util.string.format(t.options.addProductErrorMessage,r);this.get("templateSavedOk")?n.cv.util.notify(i,u,n.cv.css.messageTypes.success):n.cv.util.notify(i,f,n.cv.css.messageTypes.error)},saveTemplateAndClose:function(){this.saveTemplate()&&n.fancybox.close()},setStatusInProcess:function(n){this.set("isSavingTemplate",n)},getTemplateName:function(){return n.trim(this.get("saveTemplateName"))},popupDialog:function(){var t=this;t.loadOrderTemplateList(!0).done(function(){n.fancybox.open({href:"#"+t.dialogId,afterShow:function(){n.fancybox.update();kendo.init(n("#"+t.dialogId))}})})},validateInputs:function(){var r=this;
69return r.saveTypeIsCreate()===!0&&r.getTemplateName()===""?(n.cv.util.notify(i,t.options.templateNameInvalidMessage,n.cv.css.messageTypes.error),!1):r.saveTypeIsCreate()===!0&&n.grep(r.get("saveTemplateList"),function(n){return n.TemplateName.toUpperCase()===r.getTemplateName().toUpperCase()}).length>0?(n.cv.util.notify(i,t.options.templateNameExistsMessage,n.cv.css.messageTypes.error),!1):r.saveTypeIsAppend()&&r.get("saveTemplateListValue")===""?(n.cv.util.notify(i,t.options.selectedTemplateInvalidMessage,n.cv.css.messageTypes.error),!1):!0},loadOrderTemplateList:function(r){var u=this;return u.set("isLoadingOrderTemplates",!0),n.cv.css.orderTemplate.getOrderTemplatesForUser({take:9999}).done(function(f){var e=[],s,o;t.options.usePleaseSelectForTemplateNames?e.push({TemplateID:"",TemplateName:"Please Select..."}):e.push({TemplateName:""});s=f.data;n.each(s,function(n,t){t.IsTemplateOrderThisUserCanModify&&(t.TemplateID=t.TemplateName,e.push(t))});u.set("saveTemplateList",e);r&&t.options.rememberMyTemp&&(o=u.get("lastTemplateId"),o>0&&(i.set("saveTypeValue","append"),n.each(e,function(n,t){return t.SoOrderNo==o?(u.set("saveTemplateListValue",t.TemplateName),!1):!0})))}).fail(function(){n.cv.util.notify(u,t.options.loadUserTemplatesFailureMessage,n.cv.css.messageTypes.error)}).always(function(){u.set("isLoadingOrderTemplates",!1)})},increaseQty:function(){n.cv.util.kendoNumericTextBoxIncrease(this)},decreaseQty:function(){n.cv.util.kendoNumericTextBoxDecrease(this,0)}}));return i}};n.cv.ui.widget(t)})(jQuery);
70(function(n){var t="widgetDataInitialised",i={name:"browserLocalStorageAccess",extend:"mvvmwidget",options:{canAccess:"NotSet",autoBind:!0,viewTemplate:null},extendEvents:[t,"listUpdated"],viewTemplateParsing:function(){var n=this},viewTemplateParsed:function(){var n=this},viewAppending:function(){var n=this},viewAppended:function(){var n=this},viewModelBinding:function(){var n=this},viewModelBound:function(){var n=this;n.trigger(t);n.options.canAccess===n._canAccessBrowserLocalStorage.NotSet?n.viewModel.checkAccess():n.options.canAccess===n._canAccessBrowserLocalStorage.No&&n.viewModel.showMessage()},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_canAccessBrowserLocalStorage:{NotSet:"NotSet",Yes:"Yes",No:"No"},_getDefaultViewModel:function(){var i=this,t=kendo.observable(n.extend(i.options,{displayMessage:!1,checkAccess:function(){var i=this,t=n.cv.css.browserSupportsStorage();t||i.showMessage();n.cv.css.user.setBrowserLocalStorageAccess({canAccessBrowserLocalStorage:t})},hideMessage:function(){var n=this;n.set("displayMessage",!1)},showMessage:function(){var n=this;n.set("displayMessage",!0)}}));return t.bind("change",function(){}),t}};n.cv.ui.widget(i)})(jQuery);
71(function(n,t){var i=window.kendo,r=".kendoComboBox",u=i.support,f=u.placeholder,e="focus",o={name:"selectCode2",extend:"ComboBox",options:{showValue:!1,preventDefaultSelection:!1},initialise:function(){var n=this;n.ns=r;n.input.on("focus"+r,function(){n.trigger(e)})},_keydown:function(t){var r=this,u=t.keyCode;if(r._last=u,clearTimeout(r._typingTimeout),r._typingTimeout=null,u===i.keys.UP||u===i.keys.DOWN){if(!r.popup.visible()){t.preventDefault();return}}else if(r.popup.visible()||u!==i.keys.ENTER&&u!==i.keys.TAB)r.popup.visible()&&r.popup.close();else{this.value(n(this.input[0]).val());this.trigger("change");u===i.keys.ENTER&&n.cv.css.trigger(n.cv.css.eventnames.addProductToOrderByEnterKey);return}this.options.preventDefaultSelection||u===i.keys.TAB||r._move(t)||(r.dataSource&&r.dataSource._data&&(r.dataSource._data.isSearching=!0),r._search())},_selectValue:function(i){var r=this.listView.select(),u="",f="";r=r[r.length-1];r===t&&(r=-1);this.selectedIndex=r;r===-1?(u=f=this.input[0].value,this.listView.focus(-1)):(i&&(u=this._dataValue(i),f=this._text(i)),u===null&&(u=""),n.cv.css.trigger(n.cv.css.eventnames.selectCodeOptionSelected,{selectedDataItem:i,itemIndex:r}));this._prev=this.options.showValue?this.input[0].value=u:this.input[0].value=f;this._accessor(u!==t?u:f,r);this._placeholder();this._triggerCascade()},_adjustListWidth:function(){var t=this.list,i="width",n=t[0].style.width,r=this.wrapper;return!t.data(i)&&n?!1:(n=300,t.css({fontFamily:r.css("font-family"),width:n}).data(i,n),!0)},_aria:function(){}
71,_input:function(){var t=this,i=t.element.removeClass("k-input")[0],c=i.tabIndex,s=i.accessKey,u=t.wrapper,h="input.k-input",r,e,o=i.name||"";o&&(o='name="'+o+'_input" ');r=u.find(h);r[0]||(u.append('<span tabindex="-1" unselectable="on" class="k-state-default" style="background-color: transparent"><input '+o+'class="k-input" type="text" autocomplete="off"/><\/span>').append(t.element),r=u.find(h));e=r[0];e.tabIndex=c;e.style.cssText=i.style.cssText;i.maxLength>-1&&(e.maxLength=i.maxLength);r.addClass(i.className).val(i.value).css({width:"100%",height:i.style.height}).show();f&&r.attr("placeholder",t.options.placeholder);s&&(i.accessKey="",r[0].accessKey=s);t._focused=t.input=r;t._inputWrapper=n(u[0].firstChild);t._arrow=u.find(".k-icon").attr({role:"button",tabIndex:-1});t._arrowIcon=t._arrow;i.id&&t._arrow.attr("aria-controls",t.ul[0].id)}};n.cv.ui.widget(o)})(jQuery);
72(function(n){var t="ForwardOrder",r="ASAP",u="BTS",i,f={name:"forwardOrder",options:{autoBind:!0,triggerMessages:!1,sessionTimeOutRedirectUrl:"login.aspx",includeInBrowserHistory:!1,returnParsedTemplates:!0,textForwardOrderOptionsPrompt:"Preferred Delivery Option",textErrorGettingForwardOrderOptions:"There was an error retrieving preferred delivery options",textErrorSettingForwardOrderOption:"There was an error setting the selected preferred delivery option",textErrorSettingForwardOrderDate:"There was an error setting the selected delivery date",textErrorEnteredDateInWrongFormat:"The entered date is in the wrong format",textErrorEnteredDateBeforeToday:"Please choose a future date",textErrorEnteredDateBeforeTodayReset:"Please choose a future date, the delivery date has been reset",textErrorEnteredDateOutsideDateRange:"Please enter a date between {0} and {1}",textForwardOrderContactPrompt:"Contact Name",textForwardOrderContactPhonePrompt:"Phone Number",useForwardOrderProgram:!0,forwardOrderAllowUserEnteredDate:!1,viewTemplate:"",order:null},events:["dataBinding","dataBound"],viewModel:null,view:null,_viewAppended:!1,initialise:function(t){var i=this,r=n(t).children(":first"),u,f;r.data("view")?i.view=r.html():(i.options.viewTemplate||(i.options.viewTemplate=i._getDefaultViewTemplate()),u=kendo.template(i.options.viewTemplate),i.view=u(i.options),n(t).append(i.view),i._viewAppended=!0);i.viewModel=i._getViewModel();f=n(i.element).children(":first");kendo.bind(f,i.viewModel)},destroy:function(){var t=this;t.element.removeData(t.name);t._viewAppended&&(n.cv.util.destroyKendoWidgets(t.element),t.element.empty())},validateInputFields:function(i){var r=this;r.viewModel.forwardOrderSelectedOption===t?n.cv.css.addRemovePageValidationError(r.viewModel.validUserEnteredDate(i),r.name):n.cv.css.addRemovePageValidationError(!0,r.name)},_getViewModel:function(){var e=this,o=function(){if(e.options.useForwardOrderProgram){f.set("isInitialising",!0);var t=n.cv.util.hasValue(e.options.order)?n.cv.css.ordersApproval.getForwardOrderOptions({_objectKey:e.options.order._objectKey}):n.cv.css.forwardOrder.getForwardOrderOptions({returnParsedTemplates:e.options.returnParsedTemplates});t.done(function(t){var r=t.data,o;r.sessionHasTimedOut?f.redirectToTimeoutUrl(e.options.sessionTimeOutRedirectUrl,i,!e.options.includeInBrowserHistory):(r.OrderSelectedDate!=null&&(r.OrderSelectedDate=f.reverseDateString(f.buildDateString(n.cv.util.toDate(r.OrderSelectedDate)))),s(r),f.set("forwardOptionData",r),f.set("forwardOrderPrompt",r.DefaultMode==u?r.Prompt:e.options.textForwardOrderOptionsPrompt),h(r),f.set("forwardOrderSelectedDate",r.OrderSelectedDate!=null?r.OrderSelectedDate:""),f.set("forwardOrderOldSelectedDate",r.OrderSelectedDate!=null?r.OrderSelectedDate:""),c(r),l(r),a(r),v(r),f.set("forwardOrderContact",r.OrderContact),f.set("forwardOrderContactPhone",r.OrderContactPhone),y(r),o=f.get("forwardOrderSelectedOption"),f.setForwardOrderOption(o,!0),e.validateInputFields(!1))}).fail(function(){f.setMessage(e.options.textErrorGettingForwardOrderOptions,n.cv.css.messageTypes.error)}).always(function(){f.set("isInitialising",!1)})}},s=function(i){var e=[],u,o,s;i!=undefined&&i!=null&&i.Options!=undefined&&(i.Options.length>1?(u=i.OrderModeValue!=null?i.OrderModeValue:i.DefaultMode,(u!=t||u!=r)&&(u=i.DefaultMode),o=n.grep(e,function(n){return n.value==u}),o.length>0&&f.set("forwardOrderSelectedOption",u),n.each(i.Options,function(n,t){e.push({label:t.Label,value:t.TypeAsString})})):(s=i.DefaultMode,f.set("forwardOrderSelectedOption",s)));f.set("forwardOrderOptionsDataSource",e)},h=function(t){if(t!=undefined&&t!=null){var i=t.OrderModeValue!=null?t.OrderModeValue:t.DefaultMode;t.Options!=undefined&&n.grep(t.Options,function(n){return n.TypeAsString==i}).length==0&&(i=t.DefaultMode);f.set("forwardOrderSelectedOption",i)}},c=function(i){var e=[],r,o;i!=undefined&&i!=null&&i.Options!=undefined&&(r=void 0,r=i.Options.length>1?n.grep(i.Options,function(n){return n.TypeAsString==t}):i.Options,r.length>0&&(f.get("forwardOrderSelectedOption")==u||!f.forwardOrderFOAllowUserEnteredDate())&&
72(o=f.buildForwardOrderDatesArray(r[0].Dates,f.get("forwardOrderOldSelectedDate")),o.length>0&&(e.push({label:"Please Select",value:"",className:""}),n.each(o,function(n,t){e.push({label:t.label,value:t.value,className:t.className})}))));f.set("forwardOrderDatesDataSource",e)},l=function(i){if(i!=undefined&&i!=null&&i.Options!=undefined)if(i.Options.length>1){var r=n.grep(i.Options,function(n){return n.TypeAsString==t});r.length>0?f.set("forwardOrderFoPrompt",i.Prompt):f.set("forwardOrderFoPrompt","")}else f.set("forwardOrderFoPrompt","")},a=function(i){if(i!=undefined&&i!=null&&i.Options!=undefined)if(i.Options.length>1){var r=n.grep(i.Options,function(n){return n.TypeAsString==t});r.length>0?f.set("forwardOrderUserEnteredStartDate",r[0].ForwardOrderUserEnteredStartDate):f.set("forwardOrderUserEnteredStartDate","")}else f.set("forwardOrderUserEnteredStartDate","")},v=function(i){if(i!=undefined&&i!=null&&i.Options!=undefined)if(i.Options.length>1){var r=n.grep(i.Options,function(n){return n.TypeAsString==t});r.length>0?f.set("forwardOrderUserEnteredEndDate",r[0].ForwardOrderUserEnteredEndDate):f.set("forwardOrderUserEnteredEndDate","")}else f.set("forwardOrderUserEnteredEndDate","")},y=function(t){var i,r;t!=undefined&&t!=null&&(e.options.returnParsedTemplates?(f.set("topTemplateHtml",t.TopTemplateParsed),f.set("bottomTemplateHtml",t.BottomTemplateParsed)):(t.TopTemplateName!=""&&(i=n.cv.css.getParsedTemplate({templateName:t.TopTemplateName}),n.when(i).done(function(n){var t=n.data;f.set("topTemplateHtml",t)}).fail(function(){})),t.BottomTemplateName!=""&&(r=n.cv.css.getParsedTemplate({templateName:t.BottomTemplateName}),n.when(r).done(function(n){var t=n.data;f.set("bottomTemplateHtml",t)}).fail(function(){}))))},f=kendo.observable({message:"",clearExistingMessages:!0,useForwardOrderProgram:e.options.useForwardOrderProgram,forwardOptionData:null,topTemplateName:"",topTemplateHtml:"",bottomTemplateName:"",bottomTemplateHtml:"",forwardOrderPrompt:"",forwardOrderFoPrompt:"",forwardOrderSelectedOption:"",forwardOrderSelectedDate:"",forwardOrderOldSelectedDate:"",forwardOrderUserEnteredEndDate:"",forwardOrderUserEnteredStartDate:"",forwardOrderContact:"",forwardOrderContactPrompt:e.options.textForwardOrderContactPrompt,forwardOrderContactPhone:"",forwardOrderContactPhonePrompt:e.options.textForwardOrderContactPhonePrompt,forwardOrderOptionsDataSource:[],forwardOrderDatesDataSource:[],errorMessage:"",isInitialising:!1,forwarOrderOptionsAvailable:function(){return this.get("forwardOrderOptionsDataSource").length>1},forwarOrderDatesAvailable:function(){return this.get("forwardOrderDatesDataSource").length>1&&(this.forwardOrderFoSelected()||this.forwardOrderBtsSelected())},forwardOrderFoSelected:function(){return this.get("forwardOrderSelectedOption")==t},forwardOrderFOAllowUserEnteredDate:function(){var r=this,i=r.get("forwardOptionData"),u;if(i!=undefined&&i!=null&&i.Options!=undefined)return i.Options.length>1?(u=n.grep(i.Options,function(n){return n.TypeAsString==t}),u[0].ForwardOrderAllowUserEnteredDate&&r.forwardOrderFoSelected()):!1},forwardOrderAsapSelected:function(){return this.get("forwardOrderSelectedOption")==r},forwardOrderBtsSelected:function(){return this.get("forwardOrderSelectedOption")==u},buildDateString:function(n){var t=n.getFullYear(),i=n.getMonth()+1<10?"0"+(n.getMonth()+1).toString():(n.getMonth()+1).toString(),r=n.getDate()<10?"0"+n.getDate().toString():n.getDate().toString();return t+"/"+i+"/"+r},reverseDateString:function(n){return n.split("/").reverse().join("/")},buildForwardOrderDatesArray:function(n,t){var u=[],i,r;for(i in n)n.hasOwnProperty(i)&&(r={},r.label=n[i],r.value=i,r.className=i===t?"original-value":"",u.push(r));return u},setForwardOrderOption:function(t,r){var u=this,o=u.get("forwardOptionData"),h,s,c;o!=undefined&&o!=null&&(h=o.OrderModeValue,(t!==h||r)&&(this.clearMessage(),s={setModeOnOrder:t},t==="ForwardOrder"&&f.get("forwardOrderSelectedDate")&&(s.setForwardOrderDate=f.get("forwardOrderSelectedDate")),c=n.cv.css.forwardOrder.getForwardOrderOptions(s),n.when(c).done(function(t){var r=t.data;r.sessionHasTimedOut?u.redirectToTimeoutUrl(e.options.sessionTimeOutRedirectUrl,i,!e.options.includeInBrowserHistory):(r.OrderSelectedDate!=null&&(r.OrderSelectedDate=u.reverseDateString(u.buildDateString(n.cv.util.toDate(r.OrderSelectedDate)))),u.set("forwardOptionData",r))}).fail(function(){u.setMessage(e.options.textErrorSettingForwardOrderOption,n.cv.css.messageTypes.error)})))},clearForwardOrderDeliveryDate:function(){var t=this,r=n.cv.css.forwardOrder.getForwardOrderOptions({clearForwardOrderDate:!0});n.when(r).done(function(r){var u=r.data;u.sessionHasTimedOut?t.redirectToTimeoutUrl(e.options.sessionTimeOutRedirectUrl,i,!e.options.includeInBrowserHistory):(u.OrderSelectedDate!=null&&(u.OrderSelectedDate=t.reverseDateString(t.buildDateString(n.cv.util.toDate(u.OrderSelectedDate)))),t.set("forwardOptionData",u))}).fail(function(){t.setMessage(e.options.textErrorSettingForwardOrderDate,n.cv.css.messageTypes.error)})},setForwardOrderDeliveryDate:function(t,r){var u=this,f=u.get("forwardOptionData"),o,s;f!=undefined&&f!=null&&(o=f.OrderSelectedDate,u.validUserEnteredDate(r)&&(this.clearMessage(),t==""?u.clearForwardOrderDeliveryDate():t!=o&&(s=n.cv.css.forwardOrder.getForwardOrderOptions({setForwardOrderDate:t}),n.when(s).done(function(t){var r=t.data;r.sessionHasTimedOut?u.redirectToTimeoutUrl(e.options.sessionTimeOutRedirectUrl,i,!e.options.includeInBrowserHistory):(r.OrderSelectedDate!=null&&(r.OrderSelectedDate=u.reverseDateString(u.buildDateString(n.cv.util.toDate(r.OrderSelectedDate)))),u.set("forwardOptionData",r))}).fail(function(){u.setMessage(e.options.textErrorSettingForwardOrderDate,n.cv.css.messageTypes.error)}))))},setForwardOrderContact:function(){var t=this,u=t.get("forwardOrderContact"),r;t.forwardOrderFoSelected()&&(r=n.cv.css.forwardOrder.getForwardOrderOptions({setForwardOrderContact:u}),n.when(r).done(function(r){var u=r.data;u.sessionHasTimedOut?t.redirectToTimeoutUrl(e.options.sessionTimeOutRedirectUrl,i,!e.options.includeInBrowserHistory):(u.OrderSelectedDate!=null&&(u.OrderSelectedDate=t.reverseDateString(t.buildDateString(n.cv.util.toDate(u.OrderSelectedDate)))),t.set("forwardOptionData",u))}).fail(function(){t.setMessage(e.options.textErrorSettingForwardOrderDate,n.cv.css.messageTypes.error)}))},setForwardOrderContactPhone:function(){var t=this,u=t.get("forwardOrderContactPhone"),r;t.forwardOrderFoSelected()&&(r=n.cv.css.forwardOrder.getForwardOrderOptions({setForwardOrderContactPhone:u}),n.when(r).done(function(r){var u=r.data;u.sessionHasTimedOut?t.redirectToTimeoutUrl(e.options.sessionTimeOutRedirectUrl,i,!e.options.includeInBrowserHistory):(u.OrderSelectedDate!=null&&(u.OrderSelectedDate=t.reverseDateString(t.buildDateString(n.cv.util.toDate(u.OrderSelectedDate)))),t.set("forwardOptionData",u))}).fail(function(){t.setMessage(e.options.textErrorSettingForwardOrderDate,n.cv.css.messageTypes.error)}))},validUserEnteredDate:function(t){var r=!0,i=this.get("forwardOrderSelectedDate"),a=new RegExp(/^\d{1,2}-\d{1,2}-\d{4}$/),v=new RegExp(/^\d{1,2}\/\d{1,2}\/\d{4}$/),f="",u,c,l;if(this.set("errorMessage",""),this.clearMessage(t),this.forwardOrderFOAllowUserEnteredDate())if(i instanceof Date||a.test(i)||v.test(i)||i==""){u=void 0;i instanceof Date?u=i:(u=new Date,i.indexOf("-")>0&&u.setFullYear(i.split("-")[2],i.split("-")[1]-1,i.split("-")[0]),i.indexOf("/")>0&&u.setFullYear(i.split("/")[2],i.split("/")[1]-1,i.split("/")[0]));var s=new Date,o=this.get("forwardOrderUserEnteredStartDate"),h=this.get("forwardOrderUserEnteredEndDate");u<=s?(r=!1,c=this.get("forwardOptionData").OrderSelectedDate!=null&&this.get("forwardOptionData").OrderSelectedDate!="",this.clearForwardOrderDeliveryDate(),f=c?e.options.textErrorEnteredDateBeforeTodayReset:e.options.textErrorEnteredDateBeforeToday):(o!=""&&n.cv.util.toDate(o)>u&&(r=!1),h!=""&&n.cv.util.toDate(h)<u&&(r=!1),r||(this.clearForwardOrderDeliveryDate(),l=o<=s?s:o,f=e.options.textErrorEnteredDateOutsideDateRange.format(this.reverseDateString(this.buildDateString(n.cv.util.toDate(l))),this.reverseDateString(this.buildDateString(n.cv.util.toDate(h))))))}else f=e.options.textErrorEnteredDateInWrongFormat,r=!1;else i===""&&(f=e.options.textErrorEnteredDateBeforeToday,r=!1);return r||this.setMessage(f,n.cv.css.messageTypes.error,t),n.cv.css.trigger(n.cv.css.eventnames.forwardOrderValidationStatusChanged,{status:r,message:f}),r},redirectToTimeoutUrl:function(t,i,r){n.cv.ajax.settings.timeoutRedirectUrl==""?n.cv.util.redirect(t,i,!r):n.cv.util.redirect(n.cv.ajax.settings.timeoutRedirectUrl,i,!r)},clearMessage:function(t){var i=this,u=i.get("clearExistingMessages"),r;i.set("clearExistingMessages",!0);i.set("message","");r=n.cv.util.hasValue(t)?t:e.options.triggerMessages;r&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:e.name,clearExisting:i.get("clearExistingMessages")});i.set("clearExistingMessages",u)},setMessage:function(t,i,r){var u=this,f;i===n.cv.css.messageTypes.error&&u.set("errorMessage",t);f=n.cv.util.hasValue(r)?r:e.options.triggerMessages;n.cv.util.notify(u,t,i,{triggerMessages:f,source:e.name})}});return f.bind("change",function(t){if(n.cv.util.hasValue(e.options.order))f.get("isInitialising")||t.field!=="forwardOrderSelectedOption"&&t.field!=="forwardOrderSelectedDate"||(n.cv.css.trigger(n.cv.css.eventnames.forwardOrderChanged,{forwardOrderSelectedOption:f.get("forwardOrderSelectedOption"),forwardOrderDate:f.get("forwardOrderSelectedDate"),needsValidation:f.get("forwardOrderSelectedOption")!==r,validationCallBack:n.proxy(f.validUserEnteredDate,f)}),e.validateInputFields(!1));else{if(t.field=="forwardOrderSelectedOption"){var i=f.get("forwardOrderSelectedOption");f.setForwardOrderOption(i,!1);i=="ForwardOrder"&&f.setForwardOrderDeliveryDate(f.get("forwardOrderSelectedDate"),!1)}t.field=="forwardOrderSelectedDate"&&(f.setForwardOrderDeliveryDate(f.get("forwardOrderSelectedDate")),f.setForwardOrderOption(f.get("forwardOrderSelectedOption",!1)));t.field=="forwardOrderContact"&&f.setForwardOrderContact();t.field=="forwardOrderContactPhone"&&f.setForwardOrderContactPhone()}}),o(),f},_getDefaultViewTemplate:function(){return""}};n.cv.ui.widget(f)})(jQuery);
73(function(n){var y="Created",p="Uploading",w="Uploaded",e="Uploaded With Errors",o="Parsing",s="Parsed",r="Parsed With Errors",h="Validating",c="Validated",u="Validated With Errors",l="Importing",a="Imported",v="Imported With Errors",t="Complete",i="Completed With Errors",f="Failed",b={name:"orderImport",extend:"mvvmwidget",extendEvents:[],options:{clearExistingMessages:!0,showMessages:!0,fileUploadSaveRoute:"order-import",fileUploadRemoveRoute:"order-import",autoUpload:!0,useAsynchronousFileUpload:!0,statusUpdateFrequency:5,delayBeforeClosingStatusOverlay:3,allowMultipleFiles:!0,allowedExtensions:"",batchUniqueIdentifier:"",importFiles:[],importData:"",createOrderMode:!1,enforceColumnCountMaxWhenNotCreateOrderMode:!0,waitForResponse:!0,overlayId:"modal-import-processing",f
73ileUploadID:"files",fileUploadClass:"order-import-file-upload",clearProcessMessages:!1,allowContinueOnUploadErrors:!1,allowContinueOnParseErrors:!1,allowContinueOnValidationErrors:!1,loggingLevel:"",autoBind:!0,triggerMessages:!0,successMessageText:"Order import process complete. Successfully imported {0} of {1} products.",failedMessageText:"Order Import Process Failed. Failed to import {0} of {1} products.",parsingPhaseMessageText:"Checking row {0}. {1} row{2} failed to parse.",validationPhaseMessageText:"Validating {0} of {1} products. {2} product{3} failed validation.",importPhaseMessageText:"Importing {0} of {1} products. {2} of {3} products imported.",importSuccessfulMessageText:"Products have been Imported.",viewTemplate:null},initialise:function(){var t=this;n(function(){var n=t.viewModel,i={cancel:n.onCancel,complete:n.onComplete,error:n.onError,progress:n.onProgress,remove:n.onRemove,select:n.onSelect,success:n.onSuccess,upload:n.onUpload,multiple:t.options.allowMultipleFiles,files:t.options.importFiles,isEnabled:!0,validation:{}};t.options.useAsynchronousFileUpload&&(i.async={saveUrl:t.options.fileUploadSaveRoute,removeUrl:t.options.fileUploadRemoveRoute,autoUpload:t.options.autoUpload});t.options.allowedExtensions&&(i.validation.allowedExtensions=t.options.allowedExtensions.split(","));t.element.find("."+t.options.fileUploadClass).kendoUpload(i)})},_getViewModel:function(){var k=this,d=k.options,b=kendo.observable(n.extend({},d,{isInitialLoad:!0,isDisabled:!1,message:"",isProcessingData:!1,isProcessingFiles:!1,isUploadingFiles:!1,statusOverlayActive:!1,eventType:"",processStatus:{progressbarEnabled:!0,progressbarVisible:!0,progressbarValue:0,status:"Created",statusMessage:"",processMessages:[],totalRowCount:0,parsedRowCount:0,unparseableRowCount:0,totalProductCount:0,validProductCount:0,invalidProductCount:0,importedProductCount:0,unimportedProductCount:0},processData:function(){var r,u;if(b.get("isProcessingData")===!0){n.cv.util.notify(k.viewModel,"Data is being processed. Please wait until complete to process files",n.cv.css.messageTypes.error,{clearExisting:!0});return}if(b.get("isProcessingData")===!0){n.cv.util.notify(k.viewModel,"Files are being processed. Please wait until complete to process more files",n.cv.css.messageTypes.error,{clearExisting:!0});return}if(b.get("eventType")==="Save"){n.cv.util.notify(k.viewModel,"Files are being uploaded. Please wait until complete to process the files",n.cv.css.messageTypes.error,{clearExisting:!0});return}if(b.get("eventType")==="Remove"){n.cv.util.notify(k.viewModel,"Files are being removed. Please wait until complete to process the remaining files",n.cv.css.messageTypes.error,{clearExisting:!0});return}if(b.get("processStatus.status")===t||b.get("processStatus.status")===i){n.cv.util.notify(k.viewModel,"Data Has Already Been Imported. Refresh the page to load more data",n.cv.css.messageTypes.error,{clearExisting:!0});return}if(r=b.get("importData"),n.cv.util.hasValue(r)===!1||r===""){n.cv.util.notify(k.viewModel,"No Data has been pasted. Please paste some data or upload some files",n.cv.css.messageTypes.error,{clearExisting:!0});return}b.set("isProcessingData",!0);u={batchUID:b.get("batchUniqueIdentifier"),importData:r,createOrderMode:b.get("createOrderMode"),clearProcessMessages:b.get("clearProcessMessages"),enforceColumnCountMaxWhenNotCreateOrderMode:b.get("enforceColumnCountMaxWhenNotCreateOrderMode"),waitForResponse:b.get("waitForResponse"),allowContinueOnParseErrors:b.get("allowContinueOnParseErrors"),allowContinueOnValidationErrors:b.get("allowContinueOnValidationErrors")};n.cv.css.orderImport.runOrderImportProcess(u).done(function(t){var i,r;t&&t.data&&(i=t.data,i.Success?(b.get("clearProcessMessages")===!0&&b.set("processStatus.processMessages",[]),_.each(i.Messages,function(t){n.cv.util.hasValue(t)&&n.cv.util.notify(k.viewModel,t,n.cv.css.messageTypes.info,{clearExisting:!0})}),r=b.getStatusUpdate(),r.always(function(){b.set("isProcessingData",!1);setTimeout(function(){b.hideOverlay();n.cv.util.notify(k.viewModel,k.options.importSuccessfulMessageText,n.cv.css.messageTypes.info,{clearExisting:!1})},b.get("delayBeforeClosingStatusOverlay")*1e3);n.cv.css.getCurrentOrder().done(function(){n.cv.css.trigger(n.cv.css.eventnames.orderChanged)})})):(b.set("isProcessingData",!1),_.each(i.Messages,function(t){n.cv.util.hasValue(t)&&n.cv.util.notify(k.viewModel,t,n.cv.css.messageTypes.error,{clearExisting:!0})}
73)))}).fail(function(){b.set("isProcessingData",!1)})},processFiles:function(){if(b.get("isProcessingData")===!0){n.cv.util.notify(k.viewModel,"Data is being processed. Please wait until complete to process files",n.cv.css.messageTypes.error,{clearExisting:!0});return}if(b.get("isProcessingData")===!0){n.cv.util.notify(k.viewModel,"Files are being processed. Please wait until complete to process more files",n.cv.css.messageTypes.error,{clearExisting:!0});return}if(b.get("eventType")==="Save"){n.cv.util.notify(k.viewModel,"Files are being uploaded. Please wait until complete to process the files",n.cv.css.messageTypes.error,{clearExisting:!0});return}if(b.get("eventType")==="Remove"){n.cv.util.notify(k.viewModel,"Files are being removed. Please wait until complete to process the remaining files",n.cv.css.messageTypes.error,{clearExisting:!0});return}if(b.get("processStatus.status")===t||b.get("processStatus.status")===i){n.cv.util.notify(k.viewModel,"Data Has Already Been Imported. Refresh the page to load more data",n.cv.css.messageTypes.error,{clearExisting:!0});return}if(b.get("importFiles").length===0){n.cv.util.notify(k.viewModel,"No Files Have Been Uploaded. Please upload some files or paste some data",n.cv.css.messageTypes.error,{clearExisting:!0});return}b.set("isProcessingFiles",!0);var r={batchUID:b.get("batchUniqueIdentifier"),createOrderMode:b.get("createOrderMode"),clearProcessMessages:b.get("clearProcessMessages"),enforceColumnCountMaxWhenNotCreateOrderMode:b.get("enforceColumnCountMaxWhenNotCreateOrderMode"),waitForResponse:b.get("waitForResponse"),allowContinueOnParseErrors:b.get("allowContinueOnParseErrors"),allowContinueOnValidationErrors:b.get("allowContinueOnValidationErrors")};n.cv.css.orderImport.runOrderImportProcess(r).done(function(t){var i,r;t&&t.data&&(i=t.data,i.Success?(b.get("clearProcessMessages")===!0&&b.set("processStatus.processMessages",[]),_.each(i.Messages,function(t){n.cv.util.hasValue(t)&&n.cv.util.notify(k.viewModel,t,n.cv.css.messageTypes.info,{clearExisting:!0})}),r=b.getStatusUpdate(),r.always(function(){b.set("isProcessingFiles",!1);b.hideOverlay()}).done(function(){n.cv.util.notify(k.viewModel,k.options.importSuccessfulMessageText,n.cv.css.messageTypes.info,{clearExisting:!1});n.cv.css.refreshCurrentOrder().done(function(t){n.cv.util.hasValue(t.data)&&t.data.length>0&&n.cv.css.trigger(n.cv.css.eventnames.orderChanged,t.data[0])})})):(b.set("isProcessingFiles",!1),_.each(i.Messages,function(t){n.cv.util.hasValue(t)&&n.cv.util.notify(k.viewModel,t,n.cv.css.messageTypes.error,{clearExisting:!0})})))}).fail(function(){b.set("isProcessingFiles",!1)})},getStatusUpdate:function(){var o=this,s=n.Deferred(),h;return o.get("isProcessingData")===!0||o.get("isProcessingFiles")===!0?(h={batchUID:o.get("batchUniqueIdentifier"),skipMessages:o.get("processStatus.processMessages").length,takeMessages:0,loggingLevel:o.get("loggingLevel")},n.cv.css.orderImport.getOrderImportStatus(h).done(function(h){var l,c,a;n.cv.util.hasValue(h)&&n.cv.util.hasValue(h.data)?(l=h.data,l.Success===!0?(c=l.OrderImportProcessStatus,n.cv.util.hasValue(c)?(o.set("processStatus.status",c.Status),o.set("processStatus.totalRowCount",c.TotalRowCount),o.set("processStatus.parsedRowCount",c.ParsedRowCount),o.set("processStatus.unparseableRowCount",c.UnparseableRowCount),o.set("processStatus.totalProductCount",c.TotalProductCount),o.set("processStatus.validProductCount",c.ValidProductCount),o.set("processStatus.invalidProductCount",c.InvalidProductCount),o.set("processStatus.importedProductCount",c.ImportedProductCount),o.set("processStatus.unimportedProductCount",c.UnimportedProductCount),a=o.get("processStatus.processMessages"),_.each(c.ProcessMessages,function(n){a.push({sequence:n.Sequence,messageLevel:n.MessageLevel,messageText:n.MessageText})}),o.updateProcessStatusMessage(),o.updateProgressBarValue(),(c.Status!==e||o.get("allowContinueOnUploadErrors"))&&(c.Status!==r||o.get("allowContinueOnParseErrors"))&&(c.Status!==u||o.get("allowContinueOnValidationErrors"))&&c.Status!==t&&c.Status!==i&&c.Status!==f?(o.showOverlay(),setTimeout(function(){o.getStatusUpdate().done(function(){s.resolve()}).fail(function(){s.reject()})},o.get("statusUpdateFrequency")*1e3)):s.resolve()):s.reject(),_.each(l.Messages,function(t){n.cv.util.hasValue(t)&&n.cv.util.notify(k.viewModel,t,n.cv.css.messageTypes.info,{clearExisting:!0})}
73)):(_.each(l.Messages,function(t){n.cv.util.hasValue(t)&&n.cv.util.notify(k.viewModel,t,n.cv.css.messageTypes.error,{clearExisting:!0})}),s.reject())):s.reject()}).fail(function(){s.reject()})):s.resolve(),s.promise()},updateProcessStatusMessage:function(){var n=b.get("processStatus"),e="",y="";switch(n.status){case o:case s:case r:y=n.unparseableRowCount===1?"":"s";e=b.get("parsingPhaseMessageText").format(n.parsedRowCount+n.unparseableRowCount,n.unparseableRowCount,y);break;case h:case c:case u:y=n.invalidProductCount===1?"":"s";e=b.get("validationPhaseMessageText").format(n.validProductCount+n.invalidProductCount,n.totalProductCount,n.invalidProductCount,y);break;case l:case a:case v:y=n.unimportedProductCount===1?"":"s";e=b.get("importPhaseMessageText").format(n.importedProductCount+n.unimportedProductCount,n.totalProductCount,n.unimportedProductCount,y);break;case t:case i:e=b.get("successMessageText").format(n.importedProductCount,n.totalProductCount);break;case f:e=b.get("failedMessageText").format(n.totalProductCount-n.importedProductCount,n.totalProductCount)}b.set("processStatus.statusMessage",e)},updateProgressBarValue:function(){var k=b.get("processStatus"),n=0;switch(k.status){case y:n=0;break;case p:n=10;break;case w:n=20;break;case e:n=b.get("allowContinueOnUploadErrors")?20:100;break;case o:n=30;break;case s:n=40;break;case r:n=b.get("allowContinueOnParseErrors")?40:100;break;case h:n=50;break;case c:n=60;break;case u:n=b.get("allowContinueOnValidationErrors")?60:100;break;case l:n=70;break;case a:n=80;break;case v:n=90;case i:case t:case f:n=100}b.set("processStatus.progressbarValue",n)},showOverlay:function(){b.get("statusOverlayActive")===!1&&(n.fancybox.open({href:"#"+k.options.overlayId,modal:!0,afterShow:function(){kendo.init(n("#"+k.options.overlayId));n.fancybox.update()}}),b.set("statusOverlayActive",!0))},hideOverlay:function(){n.fancybox.close(!0);b.set("statusOverlayActive",!1)},onCancel:function(){var t=n.Deferred();return t.resolve(),t.promise()},onComplete:function(){var t=n.Deferred();return b.set("eventType",""),t.resolve(),t.promise()},onError:function(){var t=n.Deferred();return t.resolve(),t.promise()},onProgress:function(){var t=n.Deferred();return t.resolve(),t.promise()},onRemove:function(t){var i=n.Deferred();return b.set("eventType","Remove"),t.preventDefault(),b.onProgress(n.extend({percentComplete:100},t)).done(function(){var i={batchUID:b.get("batchUniqueIdentifier"),fileName:t.files[0].name};n.cv.css.orderImport.removeFileFromOrderImportBatch(i).done(function(i){b.onProgress(n.extend({percentComplete:100},t)).done(function(){if(n.cv.util.hasValue(i)&&n.cv.util.hasValue(i.data)){var r=n.extend({response:i.data},t);r.response.Success===!0?(n(".k-file").each(function(t,i){return(i=n(i),i.data("uid")===r.files[0].uid)?(i.remove(),!1):!0}),n(".k-file").length===0&&(n(".k-upload-status").remove(),n(".k-upload-files").remove()),b.onSuccess(r).done(b.onComplete(r))):b.onError(r).done(b.onComplete(r))}}).fail(function(i){if(n.cv.util.hasValue(i)&&n.cv.util.hasValue(i.data)){var r=n.extend({response:i.data},t);b.onError(r).done(b.onComplete(r))}})})}),i.resolve(),i.promise()},onSelect:function(){var t=n.Deferred();return t.resolve(),t.promise()},onSuccess:function(t){var r=n.Deferred(),u=b.get("eventType"),i=b.get("importFiles");return u==="Save"?n.merge(i,t.files):u==="Remove"&&n.each(t.files,function(t,r){n.each(i,function(n,t){return r.name===t.name?(i.splice(n,1),!1):!0})}),r.resolve(),r.promise()},onUpload:function(t){var i=n.Deferred();return b.set("eventType","Save"),b.set("isUploadingFiles",!0),t.data={batchUniqueIdentifier:k.viewModel.get("batchUniqueIdentifier"),importDataUniqueIdentifier:t.files[0].uid},i.resolve(),i.promise()}}));return b}};n.cv.ui.widget(b)})(jQuery);
74var CV;(function(n){var t;(function(n){var t=function(){function n(n){this.viewModel=n}return n.prototype.address=function(){return this.viewModel.get("address").trim()},n.prototype.isAddressSet=function(){return $.cv.util.hasContent(this.address())},n}();n.AddressLookupViewModelInfo=t})(t=n.AddressLookupWidget||(n.AddressLookupWidget={}))})(CV||(CV={}));typeof module=="object"&&typeof module.exports=="object"&&($.cv=$.cv||{},$.cv.util=$.cv.util||{},$.cv.util=require("../cv.util.ts"),$.cv.ui=$.cv.ui||{widget:function(){}}),function(n){var u=CV.AddressLookupWidget.AddressLookupViewModelInfo,t="widgetDataInitialised",i="beforeGetAddress",r="getAddressFinished",f={SoBillAddr1:30,SoBillAddr2:30,SoBillAddr3:30,SoBillAddr4:15,SoBillAddr5:30,SoBillAddr6:40,SoBillAddr7:40,SoBillCountry:30,SoBillPostcode:5,SoBillState:4,SoBillSuburb:26,SoDelAddr1:30,SoDelAddr2:30,SoDelAddr3:30,SoDelAddr4:30,SoDelAddr5:30,SoDelAddr6:30,SoDelAddr7:30,SoDelCountry:30,SoDelPhone:15,SoDelPostcode:5,SoDelState:4,SoDelSuburb:26,AddressId:255},e={name:"addressLookup",extend:"mvvmwidget",options:{dataSource:[],addressLookupProvider:"CourierPost",addressObjectMapping:"",displayValuesFromSeq:"1,2",manualMappingSeq:"1,2",minimumLookupLength:4,delay:400,takeCount:10,defaultAddress:"",defaultAddressId:"",replaceRegex:"[^a-zA-Z0-9-_]",defaultAddressType:"Delivery",autoBind:!1,isValueMandatory:!0,triggerMessages:!1,clearExistingMessages:!0,psoFieldLengthsMappingOverride:{},mandatoryMessage:"The address field is mandatory",viewTemplate:null},extendEvents:[t,i,r],viewModelBound:function(){var i=this;i._bindDataSource();i._autoCompleteBinding();i._setAddressMap();i.trigger(t);n.cv.css.bind(n.cv.css.eventnames.validateAddressLookup,n.proxy(i.viewModel.validateAddressLookup,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.setAddressLookupDisplayValue,n.proxy(i.viewModel.setDisplayValueFromExternalWidget,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.toggleAddressLookupDisplayValue,n.proxy(i.viewModel.toggleDisplayValue,i.viewModel))},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_bindDataSource:function(){var t=this;t.setDataSource(n.cv.data.dataSource({controller:"api/QuickAddressSearch/SearchForAddress",params:function(i){return{queryStringParam:"endpoint=StreetLookup&addressLookupInput="+t._cleanAddressLookupInput(n.cv.util.hasValue(i.filter.filters,"[0]")?i.filter.filters[0].value:"")+"&takeCount="+t.options.takeCount+"&minimumLookupLength="+t.options.minimumLookupLength}},type:"GET",requestStart:function(){},requestEnd:function(){}}))},_cleanAddressLookupInput:function(n){var t=this,i=new RegExp(t.options.replaceRegex,"g");return n.replace(i," ")},_autoCompleteBinding:function(){var t=this;t.autoCompleteInput=n(t.element).find("input[data-role='autocomplete']");t.kendoAutoComplete=t.autoCompleteInput.data("kendoAutoComplete");t.kendoAutoComplete.options.minLength=t.options.minimumLookupLength;t.kendoAutoComplete.options.delay=t.options.delay;
74t.kendoAutoComplete.bind("select",t.viewModel._autoCompleteSelected);t.autoCompleteInput.keyup(function(){var i=t.viewModel,r=n(this).val(),u,f;r!==i.get("address")&&(n.cv.css.trigger(n.cv.css.eventnames.addressLookupValueEdited,{IsEmpty:n.cv.util.isNullOrWhitespace(r),Type:i.get("defaultAddressType"),Address:i.get("addressMap")}),i.set("addressId",""),u=i.mapManualAddress(r),f=t.viewModel._convertAddress(u),n.cv.css.trigger(n.cv.css.eventnames.addressLookupSelected,{Address:f,Type:t.options.defaultAddressType,IsEmpty:n.cv.util.isNullOrWhitespace(r),AddressLookupProvider:t.options.addressLookupProvider.toString(),IsRural:!1}))})},_setAddressMap:function(){var n=this.viewModel;n.set("addressMap",n._getAddressMap())},_getDefaultViewModel:function(){var t=this,s=function(t,i){var u=_.reduce(t,function(n,t,i){return n.replace("["+i+"]",t)},i),r;return n.cv.util.hasValue(u)?(r=eval(u),n.cv.util.hasValue(r)?r:!1):!1},h=function(i){var r=t.viewModel.get("addressMap"),u={};return n.cv.util.isNullOrWhitespace(r)||_.each(r,function(r){var h=_.sortBy(r.Value,"Seq"),o="";_.each(h,function(t){if(n.cv.util.hasValue(i[t.Field])&&!n.cv.util.isNullOrWhitespace(i[t.Field])&&(!n.cv.util.hasValue(t.Condition)||s(i,t.Condition))){var r="";(n.cv.util.hasValue(t.Prefix)||!n.cv.util.isNullOrWhitespace(t.Prefix))&&(r=t.Prefix.toString());r+=i[t.Field].toString();(n.cv.util.hasValue(t.Suffix)||!n.cv.util.isNullOrWhitespace(t.Suffix))&&(r+=t.Suffix.toString());n.cv.util.hasValue(t.DisableSpacePrefix)&&t.DisableSpacePrefix||(r=" "+r);o+=r}});var e=o.trim().split(" "),c=r.Field.split(","),f=0;n.each(c,function(n,i){for(var r="",o=t.viewModel._psoFields[i]||30;f<e.length&&e[f].length+r.length<=o;)r+=(r===""?"":" ")+e[f],f++;u[i]=r})}),u},o=function(){var r=t.viewModel,l=new u(r),f=l.address(),e={Value:r.get("address").trim()},o=r.get("addressMap"),i=n.cv.util.isNullOrWhitespace(f),s,h,c;n.cv.util.isNullOrWhitespace(o)||i!==!1||(s=_.find(o,function(n){return n.IsPrimary}),n.cv.util.hasValue(s)&&(e={},e[s.Field]=f));n.cv.css.trigger(n.cv.css.eventnames.addressLookupValueEdited,{Address:i?o:e,Type:t.options.defaultAddressType,IsEmpty:i});i&&(h=r.mapManualAddress(f),c=t.viewModel._convertAddress(h),n.cv.css.trigger(n.cv.css.eventnames.addressLookupSelected,{Address:c,Type:t.options.defaultAddressType,IsEmpty:i,AddressLookupProvider:t.options.addressLookupProvider.toString(),IsRural:!1}))},c=function(u){t.trigger(i);var f=n.Deferred();f=n.cv.css.addressLookup.GetAddressDetailByAddressID({input:u});f.done(function(i){var f,e;if(t.trigger(r),f=JSON.parse(i.data),f.SelectedAddressId=u,e=h(f),_.isEmpty(e))o();else{var c=t.viewModel._convertAddress(e),l=n.cv.css.localGetCurrentOrder().IsExemptFromRuralFreightCharge,s=!1;t.options.addressLookupProvider.toString().toLowerCase()==="parceladdress"&&n.cv.util.hasValue(f,"is_rural_delivery")&&l==!1&&(s=f.is_rural_delivery);n.cv.css.trigger(n.cv.css.eventnames.addressLookupSelected,{Address:c,Type:t.options.defaultAddressType,AddressLookupProvider:t.options.addressLookupProvider.toString(),IsRural:s});n.cv.util.isNullOrWhitespace(t.options.displayValuesFromSeq.toString())||t.viewModel.setDisplayValue(e)}})},l=function(i,r,u){u=n.cv.util.hasValue(u)?u:t.options.triggerMessages;var f=t.options.triggerMessages;t.options.triggerMessages=u;n.cv.util.notify(t.viewModel,i,r,{triggerMessages:t.options.triggerMessages,source:t.name});t.options.triggerMessages=f},a=function(){n.cv.util.clearNotifications(t.viewModel)},e=kendo.observable(n.extend(t.options,{isProcessing:!1,address:t.options.defaultAddress,addressId:t.options.defaultAddressId,isAddressEnabled:!0,addressMap:"",message:"",_psoFields:_.extend({},f,t.options.psoFieldLengthsMappingOverride),_convertAddress:function(t){var s=n.extend({},t),e,h,f,o;for(e in t)if(t.hasOwnProperty(e)&&e.indexOf(",")!==-1){for(var u=e.split(","),i=t[e],r=0;r<u.length&&i.length>this._psoFields[u[r]];){if(i.indexOf(" ")>-1)for(h=i.split(" "),f="",o=0;o<h.length;o++)f===""?f+=h[o]:f.length+1+h[o].length<=this._psoFields[u[r]]?f+=" "+h[o]:(s[u[r]]=n.trim(f),i=n.trim(i.substring(f.length)),f="");else s[u[r]]=n.trim(i.substring(0,this._psoFields[u[r]])),i=n.trim(i.substring(this._psoFields[u[r]]));r++}s[u[r]]=i;delete s[e]}return s},_getAddressMap:function(){if(_.isArray(t.options.addressObjectMapping)){var i;return _.each(t.options.addressObjectMapping,function(t){n.cv.util.hasValue(t.AddressType)&&n.cv.util.hasValue(t.Map)&&t.AddressType===e.get("defaultAddressType")&&(i=t.Map)}),_.isArray(i)?_.sortBy(i,"Seq"):""}return""},_autoCompleteSelected:function(i){var r=this.dataItem(i.item.index());n.cv.util.hasValue(r)&&n.cv.util.hasValue(r.Value)&&!n.cv.util.isNullOrWhitespace(r.Value)&&(t.viewModel.set("addressId",r.Value),t.viewModel.set("showManualAddressInputConfirmation",!1),c(r.Value))},validateAddressLookup:function(i){var r=this;t.options.isValueMandatory&&n.cv.util.isNullOrWhitespace(r.get("address"))?l(t.options.mandatoryMessage,n.cv.css.messageTypes.error,
74i):a()},updateViewModelFromDataSource:function(){},mapManualAddress:function(i){var o=this.get("addressMap"),c=this.get("displayValuesFromSeq").toString(),l=this.get("manualMappingSeq").toString(),u={},f=30,r=n.trim(i),e,s,h;return u.AddressId="-1",t.options.defaultAddressType==="Billing"?u.SoBillAddressId="-1":t.options.defaultAddressType==="Delivery"&&(u.SoDelAddressId="-1"),n.cv.util.isNullOrWhitespace(c)||n.cv.util.isNullOrWhitespace(o)||(e=c.split(","),s=0,_.each(e,function(n){var t=_.find(o,function(t){return t.Seq.toString()===n});s+=t.Field.indexOf(",")!==-1?t.Field.split(",").length:1}),r.length>f&&f*s<r.length||r.length===0?_.each(e,function(t){var s=1,i=_.find(o,function(n){return n.Seq.toString()===t}),e;i.Field.indexOf(",")!==-1&&(s=i.Field.split(",").length);e=s*f;u[i.Field]=n.trim(r.substring(0,e));r=n.trim(r.substring(e))}):(h=void 0,h=r.length<=f?n.cv.util.isNullOrWhitespace(l)?e:l.split(","):e,_.each(h,function(t){var i="",h=_.find(o,function(n){return n.Seq.toString()===t}),l=1,c,s,e;if(h.Field.indexOf(",")!==-1&&(l=h.Field.split(",").length),c=l*f,r.indexOf(" ")>-1)for(s=r.split(" "),e=0;e<s.length;e++)if(i==="")i+=s[e];else if(i.length+1+s[e].length<=c)i+=" "+s[e];else{u[h.Field]=n.trim(i);r=n.trim(r.substring(i.length));return}else i=n.trim(r.substring(0,c));u[h.Field]=n.trim(i);r=n.trim(r.substring(i.length))}))),u},setDisplayValue:function(i){var u=this,r="",f=t.options.displayValuesFromSeq.toString().split(",");_.each(f,function(t){var f=_.find(u.get("addressMap"),function(n){return n.Seq.toString()===t.toString()}),e;n.cv.util.hasValue(f)&&(e=f.Field.split(","),_.each(e,function(t){var u=i[t]||"";r=n.cv.util.isNullOrWhitespace(r)?u:r+" "+u}))});n.cv.util.hasValue(r)&&n.cv.util.hasContent(r)&&u.set("address",r.trim())},setDisplayValueFromExternalWidget:function(i){var u=i.addressType,f=i.addressFieldData,r;if(t.options.defaultAddressType===u&&n.cv.util.hasValue(f,"[0]")){if(t.options.addressLookupProvider.toLowerCase()==="parceladdress"&&(u==="Delivery"&&i.deliveryAddressId===""&&i.isIncludeAddressIdOnly===!0||u==="Billing"&&i.billingAddressId===""))return;r={};_.each(f,function(t){n.cv.util.hasContent(t.FieldName)&&n.cv.util.hasContent(t.Value)&&(r[t.FieldName]=t.Value)});n.isEmptyObject(r)===!1&&this.setDisplayValue(r)}},toggleDisplayValue:function(n){var t=this,i=n.isEnabled;t.set("isAddressEnabled",i);i===!1&&t.set("address","")}}));return e.bind("change",function(t){t.field==="address"&&((e.get("addressId").length===0||n.cv.util.isNullOrWhitespace(e.get("address")))&&o(),e.validateAddressLookup(!1))}),e}};n.cv.ui.widget(e)}(jQuery);typeof module=="object"&&typeof module.exports=="object"&&(module.exports=CV.AddressLookupWidget);
75(function(n){var t="listBound",i={name:"articleAlerts",extend:"mvvmwidget",options:{dataSource:[],documentPrefix:"/documents/",articleViewLink:"ArticleView.aspx?articleID={0}",autoBind:!0,excludeRemindMeLater:!0,excludeAlreadyAcknowledged:!0,includeInBrowserHistory:!0,isFirstTimeSessionRetrieval:!1,textAcknowledgePrompt:"Acknowledge and accept",textRemindMeLaterPrompt:"Remind me later",textOpenDocumentPrompt:"Open",textViewPrompt:"View",viewTemplate:null,itemTemplate:""},extendEvents:[t],viewModelBound:function(){var n=this},initDataSource:function(){var t=this,i=n.Deferred(),r=n.Deferred(),u=[];t.viewModel.set("isProcessing",!0);r=n.cv.css.articleAlerts.getCurrentAlertsForUser({excludeAlreadyAcknowledged:t.options.excludeAlreadyAcknowledged,excludeRemindMeLater:t.options.excludeRemindMeLater});n.when(r).done(function(n){n.errorMessage&&n.errorMessage.length!=0||(u=n.data&&n.data.Alerts?n.data.Alerts:[],t.viewModel.set("isFirstTimeSessionRetrieval",n.data.IsFirstTimeSessionRetrieval));t.setDataSource(u);i.resolve()});n.when(i).done(function(){t.viewModel.set("isProcessing",!1)})},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var i=this,u=function(){return i.dataSource?(n.each(i.dataSource.view(),function(t,u){u.id=t;u.documentLink="";u.DocumentName.length>0&&(u.documentLink=i.options.documentPrefix+u.DocumentName);u.viewLink="";u.ArticleTemplate.length>0&&(u.viewLink=i.options.articleViewLink.format(u.ArticleID));u.view=function(){n.cv.util.redirect(u.viewLink,{},!i.options.includeInBrowserHistory)};u.remindMeLater=function(){n.cv.css.articleAlerts.setAlertRemindLaterInSession({articleId:u.ArticleID});r.set("isFirstTimeSessionRetrieval",!1);i.dataSource.remove(u)};u.acknowledge=function(){n.cv.css.articleAlerts.logAlertAcknowledged({articleId:u.ArticleID});r.set("isFirstTimeSessionRetrieval",!1);i.dataSource.remove(u)}}),i.dataSource.view()):[]}
75,r=kendo.observable(n.extend(self.options,{isProcessing:!1,isFirstTimeSessionRetrieval:i.options.isFirstTimeSessionRetrieval,updateViewModelFromDataSource:function(){var n=u();this.set("itemList",[]);this.set("itemList",n);this.set("dataCount",i.dataSource.data().length);i.trigger(t,{dataCount:this.get("dataCount"),isFirstTimeSessionRetrieval:this.get("isFirstTimeSessionRetrieval")})},itemList:u(),dataCount:0}));return r},_buildViewTemplate:function(){var n=this;n._buildDefaultViewTemplate()},_buildDefaultViewTemplate:function(){var n=this;n._buildDefaultContentTemplate()},_buildDefaultContentTemplate:function(){var t=this,n="<div class='cv-ui-element-content-area'>";n+="<div class='itemList' data-bind='source: itemList' data-template='"+t.options.itemTemplateId+"'><\/div>";n+="<\/div>";t.viewTemplate+=n},_buildItemTemplateBody:function(){var t=this,n="<div class='article-alert'>";n+="<span class='alert-page-type' data-bind='text: AlertPageType'><\/span>";n+="<span class='alert-description-document-container'>";n+="<span class='alert-description' data-bind='text: Description'><\/span>";n+="<span class='alert-document' data-bind='visible: DocumentName'><a data-bind='attr: {href: documentLink}' target='_blank'>"+t.options.textOpenDocumentPrompt+"<\/a><\/span>";n+="<\/span>";n+="<span class='alert-acknowledgement-required' data-bind='visible: AlertAcknowledgementRequired'><input data-bind='click: acknowledge' type='button' class='alert-acknowledge-button' value='"+t.options.textAcknowledgePrompt+"' /><\/span>";n+="<span class='alert-view' data-bind='visible: ArticleTemplate'><input data-bind='click: view' type='button' class='alert-view-button' value='"+t.options.textViewPrompt+"' /><\/span>";n+="<span class='alert-remind-later' data-bind='visible: AlertRemindLater'><input data-bind='click: remindMeLater' type='button' class='alert-remind-later-button' value='"+t.options.textRemindMeLaterPrompt+"' /><\/span>";n+="<\/div>";t.itemTemplate+=n}};n.cv.ui.widget(i)})(jQuery);
76(function(n){var t="widgetInitialised",i={name:"productAttributeGrid",extend:"mvvmwidget",extendEvents:[t],options:{clearExistingMessages:!0,showMessages:!0,productCode:"",productAttributes:"",attributedProductList:[],priceForOneShowNettPrice:!0,addSelectedAttributeCodeToOrder:!1,redirectToAfterAddToCart:!1,ordersPageUrl:"/cart",autoBind:!0,triggerMessages:!0,productNotFoundMessageText:"Product {0} not found",addToCartFailMessageText:"There was an error adding product(s) to the cart",getAttributedProductListFailedMessageText:"There was an error retrieving the attributed product.",noProductsAdded:"No items have been added to your cart, please enter a quantity",productTooltipText:"",clearWidgetMessages:!0,viewTemplate:null,addToOrderCheckMinQuantityEnabled:!1,addToOrderCheckMinQuantityAddOnError:!1,increaseQuantitiesInPackQty:!1,addMinimumQuantityToCart:!1},initialise:function(){var n=this},viewModelBound:function(){var i=this;i._initialiseAttributedProductRows();i._initialiseAttributedProductData();i.trigger(t);n.cv.css.bind(n.cv.css.eventnames.productExtendedPriceUpdated,n.proxy(i.viewModel.productExtendedPriceUpdated,i.viewModel))},_initialiseAttributedProductRows:function(){var o=this,t=o.viewModel,s=t.get("productAttributes"),i=s.split(";"),r,u;if(i.length===2){if(r=i[0].split(/[:,]/),u=i[1].split(/[:,]/),r<2||u<2)return;var h=t.get("attributedProductRows"),e=t.get("columnTitles"),f=[];_.each(u,function(n,i){if(i===0){var r=n.split(/[\(\)]/);r.length>=2?(t.set("columnAttributeName",r[0]),t.set("columnAttributeType",r[1])):(t.set("columnAttributeName",r),t.set("columnAttributeType",""));f.push({rowAttributeValue:"",rowIndex:-1,columnAttributeValue:"",columnIndex:-1,isLabel:!1});e.push("&nbsp;")}else f.push({rowAttributeValue:"",rowIndex:-1,columnAttributeValue:n,columnIndex:i-1,isLabel:!1}),e.push(n)});_.each(r,function(i,r){var u,e;r===0?(u=i.split(/[\(\)]/),u.length>=2?(t.set("rowAttributeName",u[0]),t.set("rowAttributeType",u[1])):(t.set("rowAttributeName",u),t.set("rowAttributeType",""))):(e=n.extend(!0,[],f),_.each(e,function(n){n.rowIndex=r-1;n.rowAttributeValue=i;n.columnIndex===-1&&(n.isLabel=!0)}),h.push({attributedProductCells:e}))})}},_initialiseAttributedProductData:function(){var t=this,i=t.viewModel,u=i.get("attributedProductRows"),r;u&&u.length>0&&(r=i.get("attributedProductList"),r&&r.length>0&&(_.each(r,function(r){var f=!1,e=r.AttributeValArray;n.each(u,function(u,o){return n.each(o.attributedProductCells,function(u,o){var c,h,s;if(o.rowAttributeValue!==e[0])return!1;if(c="0",r.AttributedProductProduct&&r.AttributedProductProduct.length>0&&(h=r.AttributedProductProduct[0],c=n.cv.util.getProductDetailsDefaultQuantity(t.options.increaseQuantitiesInPackQty,t.options.addMinimumQuantityToCart,{ProductDetailsDefaultQuantityWhenNotIncreasePackQtyNotAddMinQty:h.ProductDetailsDefaultQuantityWhenNotIncreasePackQtyNotAddMinQty,ProductDetailsDefaultQuantityWhenIncreasePackQtyNotAddMinQty:h.ProductDetailsDefaultQuantityWhenIncreasePackQtyNotAddMinQty,ProductDetailsDefaultQuantityWhenNotIncreasePackQtyAddMinQty:h.ProductDetailsDefaultQuantityWhenNotIncreasePackQtyAddMinQty,ProductDetailsDefaultQuantityWhenIncreasePackQtyAddMinQty:h.ProductDetailsDefaultQuantityWhenIncreasePackQtyAddMinQty})),o.columnAttributeValue===e[1]){var a=n.cv.util.convertArrayToObjectArray(r.AttributeValArray),v='<div data-allow-custom-options="'+t.options.allowCustomOptions+'"  data-role="product" data-orders-page-url="'+t.options.ordersPageUrl+'" data-redirect-to-after-add-to-cart="'+t.options.redirectToAfterAddToCart+'" data-product-code="'+(r.AttributedProductCode.length>0?r.AttributedProductCode:r.ProductCode)+'" data-master-product-code="'+r.ProductCode+'" data-attributes-for-product="'+r.AttributeTitleValueSeq+"\" data-add-selected-attribute-code-to-order='"+i.get("addSelectedAttributeCodeToOrder")+"' data-attribute-value-array='"+JSON.stringify(a)+"'"+n.cv.util.convertFieldsToProperties(r.AttributedProductProduct[0],"",i.get("priceForOneShowNettPrice"))+' data-add-to-order-check-min-quantity-enabled="'+t.options.addToOrderCheckMinQuantityEnabled+'" data-add-to-order-check-min-quantity-add-on-error="'+t.options.addToOrderCheckMinQuantityAddOnError+'" data-product-min-quantity="'+r.AttributedProductProduct[0].MinOrderQty+'" data-trigger-messages="true" data-trigger-get-price-on-qty-change="true" data-pack-quantity="'+r.AttributedProductProduct[0].PackQuantity+'" data-min-quantity="0" data-quantity="0" data-increase-qty-step-from-zero="'+c+'" data-add-to-cart-qty-step-from-zero="'+c+'"><\/div>',l=n(v);return kendo.init(l),s=l.data().product.viewModel,s.increaseAttrQty=function(){s.increaseQty();s.parent().parent().trigger("change")},s.decreaseAttrQty=function(){s.decreaseQty();s.parent().parent().trigger("change")},o.set("attributedProduct",s),f=!0,!1}}),f?!1:!0})}),i.set("attributesLoaded",!0)))},_getViewModel:function(){var i=this,r=i.options,t=kendo.observable(n.extend({},r,{isDisabled:!1,message:"",isProcessing:!1,isAddingToCart:!1,attributesLoaded:!1,attributedProductPriceTotal:0,showAttributedProductGrid:!1,columnTitles:[],attributedProductRows:[],displayAttributedProducts:function(){t.get("attributesLoaded")===!1&&(t.getAttributedProductList(),i._initialiseAttributedProductData())},getAttributedProductList:function(){!t.get("attributesLoaded")&&!t.get("isProcessing")&&t.get("productC
76ode").length>0&&(t.set("isProcessing",!0),n.cv.css.product.getAllAttributeCombinations({productCode:t.get("productCode")}).done(function(n){n&&n.data&&n.data.length>0&&t.set("attributedProductList",n.data);t.set("isProcessing",!1)}).fail(function(){n.cv.util.notify(i.viewModel,t.get("getAttributedProductListFailedMessageText"),n.cv.css.messageTypes.error);t.set("isProcessing",!1)}))},productExtendedPriceUpdated:function(){var n=t.getAttributedProductsWithNonZeroQuantity(),i=0;n&&_.each(n,function(n){i+=n.get("extendedPrice")});t.set("attributedProductPriceTotal",i)},getAttributedProductsWithNonZeroQuantity:function(){var n=[],i=t.get("attributedProductRows");return _.each(i,function(t){t&&t.attributedProductCells&&_.each(t.attributedProductCells,function(t){t&&t.attributedProduct&&t.attributedProduct.getQuantity()>0&&n.push(t.attributedProduct)})}),n},addToCart:function(){var t=this,u,r,f;if(t.set("isAddingToCart",!0),u=t.getAttributedProductsWithNonZeroQuantity(),!u||u.length===0){n.cv.util.notify(i.viewModel,t.get("noProductsAdded"),n.cv.css.messageTypes.warning);t.set("isAddingToCart",!1);return}if(r=[],f=[],_.each(u,function(t){var i=t.getProductAddParams();i&&n.cv.util.hasValue(i.quantity)&&!isNaN(i.quantity)&&(r.push(i),f.push(t))}),r.length===0){n.cv.util.notify(i.viewModel,t.get("noProductsAdded"),n.cv.css.messageTypes.warning);t.set("isAddingToCart",!1);return}n.cv.util.clearNotifications(i.viewModel);_.extend(n.cv.css._proxyMeta,n.cv.util.getBaseProxyMeta(i));n.cv.css.orders.addToCurrentOrderBulk({batchData:r}).done(function(i){i&&i.data?(_.each(f,function(u,f){var e=i.data[f],o="";i.errorMessage[f]==null&&e!=null&&e.editOrderOk===!0?u.triggerAddedToCart(e):(i.errorMessage[f]!=null&&(n.cv.util.notify(t,i.errorMessage[f],n.cv.css.messageTypes.error),o=o.length==0?i.errorMessage[f]:","+i.errorMessage[f]),e!=null&&e.message!=""&&n.cv.util.notify(t,e.message,n.cv.css.messageTypes.error));u.resetDefaults(r[f]);u.parent().parent().trigger("change");o.length>0&&n.cv.util.notify(t,o,n.cv.css.messageTypes.error)}),t.set("isAddingtoCart",!1),t.set("attributedProductPriceTotal",0)):n.cv.util.notify(t,"Request To Add To Cart Returned No Response Data",n.cv.css.messageTypes.error)}).fail(function(n){var n=JSON.parse(n);n.sessionHasTimedOut&&i.redirectToUrl(i.options.sessionTimeOutRedirectUrl,{},!0);t.set("isAddingtoCart",!1)})}}));return t}};n.cv.ui.widget(i)})(jQuery);
77(function(n){var t="widgetDataInitialised",i={name:"valuePropositions",extend:"mvvmwidget",options:{mobileFadeTiming:0,currentNum:0,autoBind:!0},extendEvents:[t,"listUpdated"],viewModelBound:function(){var n=this;n.trigger(t)},initialise:function(){var n=this,i=n.element,t;i&&(t=i.find(".widget-value-prop-1"),t&&t.css("display")==="none"&&(t.show(),n.viewModel.set("mobileFadeTiming",n.viewModel.mobileFadeTiming),n.viewModel.set("currentNum",1),n.setupTimer()))},setupTimer:function(){var n=this,t=n.viewModel.get("mobileFadeTiming");setInterval(function(){var t=n.viewModel.get("currentNum");t===3?t=1:t++;n.viewModel.set("currentNum",t);n.setVisibility(t)},t)},setVisibility:function(n){var t=this;t.viewModel.get("mobileFadeTiming")>0&&t.element&&(t.toggleVisibility(".widget-value-prop-1",1,n),t.toggleVisibility(".widget-value-prop-2",2,n),t.toggleVisibility(".widget-value-prop-3",3,n))},toggleVisibility:function(n,t,i){var u=this,r=u.element.find(n);r&&(i===t?r.fadeIn("slow"):r.hide())},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend(t.options,{}))}};n.cv.ui.widget(i)})(jQuery);
78(function(n){var t="widgetDataInitialised",i="listUpdated",r={name:"backOrderLines",extend:"mvvmwidget",options:{dataSource:[],orderBy:"",topCount:5,allowAllUserCustomers:!0,autoBind:!0,viewTemplate:null},extendEvents:[t,i],viewModelBound:function(){},initDataSource:function(){var n=this,i=n.viewModel;i._getBackOrderList().done(function(){n.trigger(t)})},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend({},t.options,{isLoadingList:!1,itemList:[],dataCount:0,updateViewModelFromDataSource:function(){var n=this,r=n._getDataView();n.set("itemList",r);n.set("dataCount",t.dataSource.data().length);t.trigger(i,{viewCount:r.length,dataCount:n.get("dataCount")}
78)},_getDataView:function(){return t.dataSource?(n.each(t.dataSource.view(),function(n,t){t.index=n}),t.dataSource.view()):[]},_getBackOrderList:function(){var i=this;return i.set("isLoadingList",!0),n.cv.css.orders.getBackOrderLines({topCount:i.get("topCount"),orderBy:i.get("orderBy"),allowAllUserCustomers:t.options.allowAllUserCustomers}).done(function(r,u){n.cv.util.hasValue(u,"data.result")&&t.setDataSource(u.data.result);i.set("isBackOrderServiceEnabled",u.data.IsServiceEnabled)}).always(function(){i.set("isLoadingList",!1)})},isBackOrderServiceEnabled:!0}))}};n.cv.ui.widget(r)})(jQuery);
79(function(n){var t="widgetDataInitialised",i="listUpdated",r={name:"priorPurchases",extend:"mvvmwidget",options:{dataSource:[],searchString:"",orderBy:"",topCount:5,recordsPerPage:5,autoBind:!0,forceUserPurchases:!1,userPurchaseHistoryMonthRange:12,viewTemplate:null},extendEvents:[t,i],viewModelBound:function(){var n=this},initDataSource:function(){var n=this,i=n.viewModel;i._getPriorPurchases().done(function(){n.trigger(t)})},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend({},t.options,{isGettingPriorPurchases:!1,itemList:[],dataCount:0,updateViewModelFromDataSource:function(){var n=this,r=n._getDataView();n.set("itemList",r);n.set("dataCount",t.dataSource.data().length);t.trigger(i,{viewCount:r.length,dataCount:n.get("dataCount")});n._initKendoWidgets()},_getDataView:function(){return t.dataSource?(n.each(t.dataSource.view(),function(n,t){t.index=n}),t.dataSource.view()):[]},_getPriorPurchases:function(){var i=this;return i.set("isGettingPriorPurchases",!0),n.cv.css.favouritesPriorPurchasesSearch({searchString:i.get("searchString"),skip:0,take:i.get("recordsPerPage"),orderBy:i.get("orderBy"),topCount:i.get("topCount"),forceCustomerFavourites:!t.options.forceUserPurchases,forceUserPurchases:t.options.forceUserPurchases,userPurchaseHistoryMonthRange:t.options.userPurchaseHistoryMonthRange}).done(function(n){n&&n.data&&t.setDataSource(n.data)}).always(function(){i.set("isGettingPriorPurchases",!1)})},_initKendoWidgets:function(){kendo.init(n(t.element).children(":first"))}}))}};n.cv.ui.widget(r)})(jQuery);
80(function(n){var t={name:"submitWarrantyClaim",extend:"mvvmwidget",options:{validationWidgets:"deliveryAddress[isB2c],deliveryAddress,orderCompleteFields",autoBind:!0,triggerMessages:!0,clearWidgetMessages:!0},initialise:function(){var t=this,i=t.viewModel;n(t.element).click(function(){i.submitWarrantyClaimClicked()});n.cv.css.bind(n.cv.css.eventnames.addressValidated,n.proxy(t.viewModel._validationUpdated,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.orderCompleteFieldsValidated,n.proxy(t.viewModel._validationUpdated,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.addressBeingEdited,n.proxy(t.viewModel._addressBeingEdited,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.addressValidationUpdated,n.proxy(t.viewModel.addressValidationUpdated,t.viewModel))},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend(t.options,{_validationWidgets:t.options.validationWidgets.split(","),isProcessing:!1,isDisabled:!1,isSubmitClicked:!1,_hasValidationErrors:function(){var t=!1;return n.each(this.get("_validationWidgets"),function(i,r){_.contains(_.keys(n.cv.css.pageValidationErrors),r)&&(t=!0)}),t},_processPageValidationErrors:function(){var r="[data-role='{0}']",t,i=[];return n.each(this.get("_validationWidgets"),function(u,f){var e=f;f!=="deliveryAddress[isB2c]"&&n(r.format(e.toLowerCase())+":not([data-is-view-only='true'])").each(function(){if(t=n(this).data(e),t&&n.isFunction(t.validateInputFields)){n.cv.util.clearNotifications({viewModel:t.viewModel});var r=!1;e==="deliveryAddress"&&n.cv.util.hasValue(t.options)&&n.cv.util.hasValue(t.options.isB2c)&&t.options.isB2c===!0&&(r=!0);i.push(t.validateInputFields(!0,r?"deliveryAddress[isB2c]":""))}})}),n.when.apply(n,i)},_setInProcessing:function(n){var t=this;t._setIsProcessing(n)},_validationUpdated:function(){var n=this;n.get("isSubmitClicked")===!1&&n._setIsProcessing(!1)},_addressBeingEdited:function(){var n=this;n.get("isDisabled")||n._setIsProcessing(!0)},addressValidationUpdated:function(n){var t=this;t._setIsDisabled(!n.valid)},_setIsProcessing:function(i){var r=this;r.set("isProcessing",i);i?n(t.element).addClass(n.cv.css.isProcessingClass):n(t.element).removeClass(n.cv.css.isProcessingClass)},_setIsDisabled:function(i){var r=this;r.set("isDisabled",i);i?n(t.element).addClass("disabled"):n(t.element).removeClass("disabled")},submitWarrantyClaimClicked:function(){var t=this;t.get("isDisabled")||(t.get("isProcessing")?t._processPageValidationErrors():(t.set("isSubmitClicked",!0),t._setIsProcessing(!0),n.cv.util.clearNotifications({viewModel:t}),t._processPageValidationErrors().done(function(){t._hasValidationErrors()?(t.set("isSubmitClicked",!1),t._setIsProcessing(!1)):n.cv.css.orders.submitWarrantyClaim().done(function(i){var r=i.data;
80r.Successful&&r.Successful===!0?(n.cv.css.removeLocalStorage(n.cv.css.localStorageKeys.selectedOrder),n.cv.css.removeLocalStorage(n.cv.css.localStorageKeys.selectedOrderLines),n.cv.util.isNullOrWhitespace(r.RedirectUrl)||n.cv.util.redirect(r.RedirectUrl,null,!1)):n.cv.util.hasValue(r.Messages)&&n.each(r.Messages,function(i,r){n.cv.util.notify(t,r,n.cv.css.messageTypes.error)});t.set("isSubmitClicked",!1);t._setIsProcessing(!1)}).fail(function(i){t.set("isSubmitClicked",!1);t._setIsProcessing(!1);n.cv.util.isNullOrWhitespace(i.errorMessage)||n.cv.util.notify(t,i.errorMessage,n.cv.css.messageTypes.error)})})))}}))}};n.cv.ui.widget(t)})(jQuery);
81(function(n){var t="widgetDataInitialised",i={name:"flyerCreator",extend:"mvvmwidget",options:{autoBind:!0,productCount:9,viewTemplate:null,showMarkup:!0,allowAddressOverride:!1,customFieldPrefix:"",customFieldSuffix:"",address:"",phone:"",fax:"",email:"",ribbonOptions:"",flyerNameEmptyDefaultMsg:"Flyer Name can't be empty",columnCountClass:4},extendEvents:[t,"listUpdated"],viewModelBound:function(){var n=this;n.trigger(t)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){function r(){for(var r=[],u=n.map(t.options.ribbonOptions.split(";"),function(n){return n.trim()}),i=0;i<t.options.productCount;i++)r.push({productCode:"",productDescription:"",isVisible:!0,index:i,costPrice:null,flyerPrice:null,wasPrice:null,markup:null,margin:null,ribbon:"",valid:!1,ribbonOptions:u});return r}var t=this,u=n.cv.data.dataSource({method:"products/productSearchQuickAdd",pageSize:20,params:function(t){var i="";return n.cv.util.hasValue(t,"filter.filters[0]")&&(i=t.filter.filters[0].value),t.filter=null,{searchString:i,categoryFilter:"",pageSizeArg:20}}}),i=kendo.observable(n.extend(t.options,{itemList:r(),productSearchDataSource:u,campaigns:[],selectedCampaign:"",campaignProducts:{},overallMarkup:0,overallMargin:0,flyerName:"",flyerFooter:"",priceIncTax:!0,flyerSaveUserDetails:!0,isProcessing:!1,flyerNameErrorMsg:t.options.flyerNameEmptyDefaultMsg,markupkeyUp:function(n){this.keyUp(n,"markup","markupChanged")},marginkeyUp:function(n){this.keyUp(n,"margin","marginChanged")},flyerPricekeyUp:function(n){this.keyUp(n,"flyerPrice","flyerPriceChanged")},wasPricekeyUp:function(n){this.keyUp(n,"wasPrice","wasPriceChanged")},overallMarkupkeyUp:function(n){this.keyUp(n,"overallMarkup","overallMarkupChanged")},overallMarginkeyUp:function(n){this.keyUp(n,"overallMargin","overallMarginChanged")},keyUp:function(n,t,i){n.keyCode===13&&(n.data.set(t,+n.target.valueAsNumber),this[i](n))},setIsProcessing:function(n){this.set("isProcessing",n)},loadCampaigns:function(){var t=[],i;t.push({campaignCode:"",campaignDescription:"Please Select"});i=this;n.cv.css.campaignList().done(function(r){r.data&&n.each(r.data,function(n,r){r.IncludeInFlyerCreator&&t.push({campaignCode:r.CampaignCode,campaignDescription:r.Description});i.set("campaigns",t)})})},clearData:function(){var t=this;n.each(this.get("itemList"),function(n,i){t.clearItem(i)})},campaignChanged:function(){var i=this.get("selectedCampaign"),t=this;i&&(this.set("flyerName",n.grep(this.get("campaigns"),function(n){return n.campaignCode===i})[0].campaignDescription),t.setIsProcessing(!0),n.cv.css.campaignProductSearch({campaignCode:i}).done(function(i){i.data&&(t.clearData(),n.each(t.get("itemList"),function(n,r){i.data[n]&&(r.set("productCode",i.data[n].ProductCode),t.populateItem(r,i.data[n].Description,i.data[n].NettInc))}),t.flyerNameChanged())}).always(function(){t.setIsProcessing(!1)}))},validate:function(){var t=n.grep(this.get("itemList"),function(t){return!n.cv.util.isNullOrWhitespace(t.productCode)}),i;return t.length===0?"Empty Product Code(s)":(t=n.grep(this.get("itemList"),function(t){return!n.cv.util.isNullOrWhitespace(t.productCode)&&!t.valid}),t=n.map(t,function(n){return n.productCode}),t.length>0)?"Invalid Product Code(s): "+t.join():(i=this.get("flyerName"),n.cv.util.isNullOrWhitespace(i))?this.get("flyerNameEmptyDefaultMsg"):""},generateFlyer:function(){var u,o;if(!this.get("isProcessing")){if(u=this.validate(),u){n.cv.util.notify(i,u,n.cv.css.messageTypes.error,{triggerMessages:!0,clearExisting:!0});return}var s=this.get("flyerName"),r=n.grep(this.get("itemList"),function(n){return n.valid&&n.productC
81ode}).slice(0,this.get("productCount")),h=n.map(r,function(n){return n.showPriceOnFlyer}).join(),c=n.map(r,function(n){return n.productCode}).join(),l=n.map(r,function(t){return n.isNumeric(t.flyerPrice)?t.flyerPrice:NaN}).join(),a=n.map(r,function(n){return n.ribbon.replace(",","")}).join(),v=n.map(r,function(t){return n.isNumeric(t.wasPrice)?t.wasPrice:NaN}).join(),f={showPricesOnFlyer:h,productCodes:c,flyerPrices:l,ribbons:a,wasPrices:v,layoutCount:this.get("productCount"),flyerName:s,flyerFooter:this.get("flyerFooter"),address:this.get("address"),phone:this.get("phone"),email:this.get("email"),fax:this.get("fax"),flyerSaveUserDetails:this.get("flyerSaveUserDetails"),allowAddressOverride:this.get("allowAddressOverride"),priceIncTax:this.get("priceIncTax")},e=t.options.customFieldPrefix,y=t.options.customFieldSuffix;n.each(n("[id^="+e+"]"),function(t,i){f[i.id]=n(i).val();var r=n(i).attr("data-display-name");r!=i.id.replace(e,"")&&(f[i.id+y]=n(i).attr("data-display-name"))});o="FlyerCreator.aspx?"+n.param(f);window.open(o,"_blank")}},layoutClick:function(t){var i=n(t.target).parent().data("productC
81ount");this.set("productCount",i);n.each(this.get("itemList"),function(n,t){t.set("isVisible",n<i)});n(t.target).closest(".flyer-layout").addClass("active").siblings().removeClass("active")},flyerNameChanged:function(){var t="";n.cv.util.isNullOrWhitespace(this.get("flyerName"))&&(t=this.get("flyerNameEmptyDefaultMsg"));this.set("flyerNameErrorMsg",t)},overallMarkupChanged:function(t){if(n.isNumeric(t.data.overallMarkup)){var i=this,r=i.round(t.data.overallMarkup);i.set("overallMarkup",r);i.set("overallMargin",i.calcMargin(r/100));n.each(this.get("itemList"),function(n,t){var f,u;t.valid&&(f=t.get("costPrice"),t.set("markup",r),u=i.calcByMarkup(r,f),t.set("flyerPrice",u.flyerPrice),t.set("margin",u.margin))})}},overallMarginChanged:function(t){if(n.isNumeric(t.data.overallMargin)){var i=this,r=i.round(t.data.overallMargin);i.set("overallMargin",r);i.set("overallMarkup",i.calcMarkup(r/100));n.each(this.get("itemList"),function(n,t){var f,u;t.valid&&(f=t.get("costPrice"),t.set("margin",r),u=i.calcByMargin(r,f),t.set("flyerPrice",u.flyerPrice),t.set("markup",u.markup))})}},flyerSaveUserDetailsChanged:function(n){this.set("flyerSaveUserDetails",n.target.checked)},priceIncTaxChanged:function(n){this.set("priceIncTax",n.target.value==="Inc")},priceExTax:function(){return!this.get("priceIncTax")},markupChanged:function(t){if(n.isNumeric(t.data.markup)){t.data.set("markup",this.round(t.data.markup));var i=this.calcByMarkup(t.data.markup,t.data.costPrice);t.data.set("flyerPrice",i.flyerPrice);t.data.set("margin",i.margin)}},marginChanged:function(t){if(n.isNumeric(t.data.margin)){t.data.set("margin",this.round(t.data.margin));var i=this.calcByMargin(t.data.margin,t.data.costPrice);t.data.set("flyerPrice",i.flyerPrice);t.data.set("markup",i.markup)}},flyerPriceChanged:function(t){if(n.isNumeric(t.data.flyerPrice)){t.data.set("flyerPrice",this.round(t.data.flyerPrice));var i=this.calcByFlyerPrice(t.data.flyerPrice,t.data.costPrice);t.data.set("markup",i.markup);t.data.set("margin",i.margin)}},wasPriceChanged:function(t){n.isNumeric(t.data.wasPrice)&&t.data.set("wasPrice",this.round(t.data.wasPrice))},calcMargin:function(n){return n/(1+n)*100},calcMarkup:function(n){return n/(1-n)*100},calcByMarkup:function(n,t){var i=this;return n=n/100,{margin:i.round(i.calcMargin(n)),flyerPrice:i.round(t*(1+n))}},calcByMargin:function(n,t){n=n/100;var i=this.calcMarkup(n);return{markup:this.round(i),flyerPrice:this.calcByMarkup(i,t).flyerPrice}},calcByFlyerPrice:function(n,t){var i=this,r=(n-t)/t;return{markup:i.round(r*100),margin:i.round(i.calcMargin(r))}},round:function(n,t){var i=t?t:2;return+n.toFixed(i)},clearItem:function(n,t){t||n.set("productCode","");n.set("margin",null);n.set("markup",null);n.set("flyerPrice",null);n.set("costPrice",null);n.set("productDescription",null);n.set("ribbon","");n.set("wasPrice",null);n.set("valid",!1)},updateItem:function(t){var i=this,r=t.data,u;i.setIsProcessing(!0);u=r.productCode.toUpperCase();n.cv.css.product.productSearch({searchString:u}).done(function(t){var f,e;if(t.data&&(f=n.grep(t.data,function(n){return n.ProductCode.toUpperCase()===u}),f.length>0)){e=f[0];i.populateItem(r,e.Description,e.NettInc);return}i.clearItem(r,!0)}).always(function(){i.setIsProcessing(!1)})},populateItem:function(n,t,i){var r=this,f,u;n.set("productDescription",t);f=i<=0?NaN:i;n.set("costPrice",f);n.set("showPriceOnFlyer",!0);r.get("showMarkup")?(n.set("markup",r.get("overallMarkup")),u=r.calcByMarkup(r.get("overallMarkup"),f),n.set("flyerPrice",u.flyerPrice),n.set("margin",u.margin)):(n.set("margin",r.get("overallMargin")),u=r.calcByMargin(r.get("overallMargin"),f),n.set("flyerPrice",u.flyerPrice),n.set("markup",u.markup));n.set("valid",!0)}}));return i.loadCampaigns(),i}};n.cv.ui.widget(i)})(jQuery);
82(function(n){var t="widgetDataInitialised",i={name:"thirdPartyLoginRegistration",extend:"mvvmwidget",options:{autoBind:!0,viewTemplate:null,sq:"",loadOrdersAfterLogin:!1,keepMeLoggedIn:!1,gtmSuccessEventname:"",provider:"",errorRegisteringMessage:"Error during registration",emailPasswordInvalidMessage:"Username / Password not Recognised",overrideRedirectUrl:""},extendEvents:[t,"listUpdated"],viewTemplateParsing:function(){},viewTemplateParsed:function(){},viewAppending:function(){},viewAppended:function(){},viewModelBinding:function(){},viewModelBound:function(){var n=this;n.trigger(t)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this,i=kendo.observable(n.extend({},t.options,{registrationFields:null,isProcessing:!1,triggerMessages:!0,clearWidgetMessages:!0,isLinkProcessing:!1,isRegisterProcessing:!1,userId:"",password:"",inputEventKeyUp:function(n){var t=this;t.userIdKeyUp(n)},userIdKeyUp:function(n){var t=this;n.which===13&&(n.preventDefault(),n.stopPropagation(),t.linkUser())},linkUser:function(){var i=this,u=i.get("userId"),f=i.get("password"),r;if(n.cv.util.isNullOrWhitespace(u)||n.cv.util.isNullOrWhitespace(f)){n.cv.util.notify(i,t.options.emailPasswordInvalidMessage,n.cv.css.messageTypes.error);return}r={};r.Link_userId=u;r.Link_password=f;r.Link_buttonClick=!0;i.set("isLinkProcessing",!0);i.register(r)},submitForm:function(){var u=this,i=n(t.element),r=i.data("kendoValidator"),f;(!r&&i.kendoValidator&&(i.kendoValidator(t.options.validationOptions),r=i.data("kendoValidator")),!r||r.validate())&&
82(f={},n.each(u.get("registrationFields"),function(n,t){var i=t.fieldItem.FieldName;f[i]=t[i]}),u.set("isRegisterProcessing",!0),u.register(f))},registerAndLogin:function(){var u=this,i=n(t.element),r=i.data("kendoValidator"),f;(!r&&i.kendoValidator&&(i.kendoValidator(t.options.validationOptions),r=i.data("kendoValidator")),!r||r.validate())&&(f={RegisterAndLogin_buttonClick:!0},u.set("isRegisterProcessing",!0),u.register(f))},redirectToUrl:function(i){i===void 0&&(i="");var r=t.options.overrideRedirectUrl;n.cv.util.hasContent(r)?(r.startsWith("/")==!1&&(r="/"+r),n.cv.util.redirect(r)):n.cv.util.hasContent(i)&&n.cv.util.redirect(i);n.cv.util.redirect("/")},register:function(i){var r=this,f,u;n.cv.util.clearNotifications(r);r.set("isProcessing",!0);switch(t.options.provider){case"Google":f={sq:t.options.sq,registrationFields:i};n.cv.css.user.registerGoogleUser(f).done(function(i){if(i&&i.data){var u=i.data;u&&u.Success==!0?r.redirectToUrl(u.RedirectUrl):(n.each(u.Messages,function(t,i){n.cv.util.notify(r,i,n.cv.css.messageTypes.error)}),r.resetIsProcessing())}else n.cv.util.notify(r,t.options.errorRegisteringMessage,n.cv.css.messageTypes.error),r.resetIsProcessing()});break;case"Facebook":u="";FB.getLoginStatus(function(f){if(f.status==="connected"){u=f.authResponse.accessToken;var e={sq:t.options.sq,registrationFields:i,accessToken:u};n.cv.css.user.registerFacebookUser(e).done(function(n){r.registerDone(n,null,u)})}else FB.login(function(f){if(f.status==="connected"){u=f.authResponse.accessToken;var e={sq:t.options.sq,registrationFields:i,accessToken:f.authResponse.accessToken};n.cv.css.user.registerFacebookUser(e).done(function(n){r.registerDone(n,null,u)})}else n.cv.util.notify(r,t.options.errorRegisteringMessage,n.cv.css.messageTypes.error),r.resetIsProcessing()},{scope:"email"})});break;default:n.cv.util.notify(r,t.options.errorRegisteringMessage,n.cv.css.messageTypes.error);r.resetIsProcessing();return}},registerDone:function(i,r,u){var f=this,e,o,s;i&&i.data?(e=i.data,e.Success?(o={provider:t.options.provider,googleIdToken:r,facebookAccessToken:u},s=e.Messages[0],n.cv.css.login(s,"",{loadOrdersAfterLogin:t.options.loadOrdersAfterLogin,keepMeLoggedIn:t.options.keepMeLoggedIn,gtmSuccessEventname:t.options.gtmSuccessEventname,isNewUser:!1,thirdPartyLoginData:o,preventLoginRedirect:!0}).done(function(i){var u=i.data,r,e;u.result===0?(r=t.options.overrideRedirectUrl,e=n.cv.util.hasValue(r)?r.startsWith("/")?r:"/"+r:n.cv.util.hasValue(u.redirectAfterLogin)?u.redirectAfterLogin:"/",n.cv.util.redirect(e,null,!1)):(n.cv.util.notify(f,u.responseMessage,n.cv.css.messageTypes.error),f.resetIsProcessing())}).fail(function(t){t=JSON.parse(t.responseText);n.cv.util.notify(f,t.message,n.cv.css.messageTypes.error);f.resetIsProcessing()})):(n.each(e.Messages,function(t,i){n.cv.util.notify(f,i,n.cv.css.messageTypes.error)}),f.resetIsProcessing())):(n.cv.util.notify(f,t.options.errorRegisteringMessage,n.cv.css.messageTypes.error),f.resetIsProcessing())},resetIsProcessing:function(){var n=this;n.set("isProcessing",!1);n.set("isLinkProcessing",!1);n.set("isRegisterProcessing",!1)}}));return n.cv.css.user.getUserRegistrationFieldDataForRole({isThirdPartyRegistration:!0}).done(function(i){if(i&&i.data){var r=[];n.each(i.data.userRegistrationFieldData,function(t,i){i.index=t;r.push(n.cv.util.getFieldItemData(i))});t.viewModel.set("registrationFields",r)}}),i}};n.cv.ui.widget(i)})(jQuery);
83(function(n){var t="widgetDataInitialised",i={name:"clearallselected",extend:"mvvmwidget",options:{productElement:"[data-role='product']",productData:"product",autoBind:!0,triggerMessages:!1,textQuantitiesCleared:"Quantities have been successfully cleared.",viewTemplate:null},extendEvents:[t,"listUpdated"],viewTemplateParsing:function(){var n=this},viewTemplateParsed:function(){var n=this},viewAppending:function(){var n=this},viewAppended:function(){var n=this},viewModelBinding:function(){var n=this},viewModelBound:function(){var i=this,r=i.viewModel;n.cv.css.bind(n.cv.css.eventnames.productQtyChanged,n.proxy(r.toggleButtonState,r));i.trigger(t)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this,i=kendo.observable(n.extend(t.options,{isProcessing:!1,isDisabled:!0,clearAll:function(){var i=this,r=n(i.productElement);r.each(function(){var r=n(this).data(t.options.productData);
83r&&r.viewModel&&r.viewModel.quantity>0&&(r.viewModel.resetQty(),i.set("triggerMessages",!0))});i.triggerMessages&&(n.cv.util.notify(i,i.textQuantitiesCleared,n.cv.css.messageTypes.success),i.set("triggerMessages",!1))},toggleButtonState:function(i){var r=this,f,u;i?r.set("isDisabled",!1):(f=n(r.productElement),u=!0,f.each(function(){var i=n(this).data(t.options.productData);return i&&i.viewModel&&i.viewModel.quantity>0?(u=!1,!1):!0}),r.set("isDisabled",u))}}));return i.bind("change",function(){}),i}};n.cv.ui.widget(i)})(jQuery);
84(function(n){var t={name:"outstandingTasksDisplay",extend:"mvvmwidget",options:{getOrdersAwaitingPayment:!1,getOrdersOnHold:!1,getOrdersRequiringApproval:!1,getOrdersRequiringReceipting:!1,getValidStandingOrders:!1,refreshTiming:1,viewTemplate:null},extendEvents:["widgetDataInitialised","listUpdated"],initialise:function(){var t=this;n.cv.css.bind(n.cv.css.eventnames.refreshOutstandingTasksCount,n.proxy(t.viewModel.getOutstandingTasksDisplayCountForceRetrieve,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.clearOutstandingTasksCount,n.proxy(t.viewModel.setOutstandingTasksDisplayCountClearAll,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.accountChanged,n.proxy(t.viewModel.setOutstandingTasksDisplayCountClearAll,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.userChanged,n.proxy(t.viewModel.setOutstandingTasksDisplayCountClearAll,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.loginLogoutSuccess,n.proxy(t.viewModel.setOutstandingTasksDisplayCountClearAll,t.viewModel));t.viewModel.set("initialised",!0);t.viewModel.getOutstandingTasksDisplayCount(!1)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend({},t.options,{ordersAwaitingPaymentCount:0,ordersOnHoldCount:0,ordersRequiringApprovalCount:0,ordersRequiringReceiptingCount:0,validStandingOrders:0,initialised:!1,getOutstandingTasksDisplayCountForceRetrieve:function(){this.getOutstandingTasksDisplayCount(!0)},getOutstandingTasksDisplayCount:function(i){var r=this;if(r.initialised){var e=new Date,f=new n.Deferred,o=t.options.refreshTiming,u=n.cv.css.localGetOutstandingTasksDisplayCount();!i&&u&&(e-u.LastRetrievedTime)/6e4<o?(r.set("ordersAwaitingPaymentCount",u.OrdersAwaitingPaymentCount),r.set("ordersOnHoldCount",u.OrdersOnHoldCount),r.set("ordersRequiringApprovalCount",u.OrdersRequiringApprovalCount),r.set("ordersRequiringReceiptingCount",u.OrdersRequiringReceiptingCount),r.set("validStandingOrders",u.ValidStandingOrders),f.resolve()):f=n.cv.css.outstandingTasksDisplay.GetOutstandingTasksDisplayCount({getOrdersAwaitingPaymentCount:t.options.getOrdersAwaitingPayment,getOrdersOnHoldCount:t.options.getOrdersOnHold,getOrdersRequiringApprovalCount:t.options.getOrdersRequiringApproval,getOrdersRequiringReceiptingCount:t.options.getOrdersRequiringReceipting,getValidStandingOrders:t.options.getValidStandingOrders}).done(function(t){r.set("ordersAwaitingPaymentCount",t.data.OrdersAwaitingPaymentCount);r.set("ordersOnHoldCount",t.data.OrdersOnHoldCount);r.set("ordersRequiringApprovalCount",t.data.OrdersRequiringApprovalCount);r.set("ordersRequiringReceiptingCount",t.data.OrdersRequiringReceiptingCount);r.set("validStandingOrders",t.data.ValidStandingOrders);n.cv.css.localSetOutstandingTasksDisplayCount(t.data)});f.done(function(){r.setOutstandingTasksDisplayCount(!1);n(".orders-awaiting-payment-count").removeClass("cv-is-hidden");n(".orders-on-hold-count").removeClass("cv-is-hidden");n(".orders-requiring-approval-count").removeClass("cv-is-hidden");n(".orders-requiring-receipting-count").removeClass("cv-is-hidden");n(".valid-standing-orders-count").removeClass("cv-is-hidden")})}},setOutstandingTasksDisplayCountClearAll:function(){this.setOutstandingTasksDisplayCount(!0)},setOutstandingTasksDisplayCount:function(t){var i=this;i.initialised&&(n(".orders-awaiting-payment-count").html(t?"":i.get("ordersAwaitingPaymentCount")),n(".orders-on-hold-count").html(t?"":i.get("ordersOnHoldCount")),n(".orders-requiring-approval-count").html(t?"":i.get("ordersRequiringApprovalCount")),n(".orders-requiring-receipting-count").html(t?"":i.get("ordersRequiringReceiptingCount")),n(".valid-standing-orders-count").html(t?"":i.get("validStandingOrders")),t&&n.cv.css.localClearOutstandingTasksDisplayCount())}}))}};n.cv.ui.widget(t)})(jQuery);
85(function(n){var t={name:"categoryMenu",extend:"mvvmwidget",options:{parentItems:"#menu >
85 li",childMenuSelectorAttr:"subcategorymenuid",childMenuSectionSelector:".menu-content .menu-sub-categories",activeMenuClass:"active",autoBind:!0,viewTemplate:null,hoverPauseDelay:800,showAllCategories:!1,displayShowMoreButton:!0},extendEvents:[],viewModelBound:function(){var n=this;n.viewModel.toggleCurrentParentAndChildMenu()},_getViewModel:function(){var t=this;return kendo.observable(n.extend(t.options,{lastKnownX:0,points:[],numberOfPointsToTrack:10,sumOfPointsBeforeIntentIsDeclared:4,trackHoverPause:null,currentParentMenu:t.element.find(t.options.parentItems)[0],currentChildMenu:t.element.find(t.options.childMenuSectionSelector)[0],trackMenuIntent:function(n){var i=this,f=i.get("lastKnownX"),e=!1,s=n.clientX>=f,h=n.clientX-f,o,u;if(i.set("lastKnownX",n.clientX),s){var r=i.get("points"),c=i.get("numberOfPointsToTrack"),l=i.get("sumOfPointsBeforeIntentIsDeclared");r.push(h);r.length>c&&r.shift();o=_.reduce(r,function(n,t){return n+t},0);e=o>l}u=i.get("trackHoverPause");e?(clearTimeout(u),i.set("trackHoverPause",setTimeout(function(){i.showChildMenu(n.target)},t.options.hoverPauseDelay))):(clearTimeout(u),i.showChildMenu(n.target))},cancelMenuPause:function(){var n=this,t=n.get("trackHoverPause");clearTimeout(t)},showChildMenu:function(i){var r=n(i).closest("li"),u=n(r).attr(this.get("childMenu
85SelectorAttr")),f=t.element.find(u)[0];this.toggleCurrentParentAndChildMenu();this.resetCurrentMenus(r,f);this.toggleCurrentParentAndChildMenu()},toggleCurrentParentAndChildMenu:function(){n(this.get("currentParentMenu")).toggleClass(this.get("activeMenuClass"));n(this.get("currentChildMenu")).toggleClass(this.get("activeMenuClass"))},resetCurrentMenus:function(n,t){this.set("currentParentMenu",n);this.set("currentChildMenu",t)},displayAllCategories:function(){this.set("showAllCategories",!0);this.set("displayShowMoreButton",!1)}}))}};n.cv.ui.widget(t)})(jQuery);
86(function(n){var t=function(){function t(){this.name="pricingInformation";this.extend="mvvmwidget";this.extendEvents=[];this.options={clearExistingMessages:!0,showMessages:!0,allowSettingCustomerCode:!1,matrixOverlayId:"modal-pricing-information-matrix",initialCustomerCode:"",autoBind:!0,triggerMessages:!0,noProductCodeSuppliedText:"Product Code was not supplied. A valid product code must be supplied to generate pricing information.",noCustomerCodeSuppliedText:"Customer Code was not supplied. A valid customer code must be supplied to generate pricing information.",noQuantitySuppliedText:"Quantity was not supplied. A valid quantity of at least 1 must be supplied to generate pricing information.",genericExceptionText:"An unspecified exception occurred generating pricing information. Please try again. If the problem persists, see your administrator.",pricingInformationRequestPendingText:"A Pricing Information Request is pending. Please wait until complete to perform another request",viewTemplate:null}}return t.prototype._getViewModel=function(){var i=this,r=i.options,t=kendo.observable(n.extend({},r,{pricingInformationPromise:undefined,productCode:undefined,customerCode:i.options.initialCustomerCode,quantity:1,isCalculatingPriceInformation:!1,pricingInformation:undefined,isRequestForExistingData:function(n){var i=t.get("pricingInformation");return i!==undefined&&i.Summary!==undefined&&i.Summary.ProductCode===n.productCode&&i.Summary.CustomerCode===n.customerCode&&i.Summary.Quantity===n.quantity},getPricingInformation:function(){var u,r;return t.get("isCalculatingPriceInformation")===!0?(n.cv.util.notify(t,t.get("pricingInformationRequestPendingText"),n.cv.css.messageTypes.warning,{clearExisting:t.get("clearExistingMessages")}),n.Deferred().reject().promise()):(u={productCode:t.get("productCode"),customerCode:t.get("customerCode"),quantity:t.get("quantity")},t.isRequestForExistingData(u))?n.Deferred().resolve().promise():(t.set("isCalculatingPriceInformation",!0),n.cv.css.pricingInformation.getPricingInformation(u).done(function(u){var e=t.get("clearExistingMessages"),f;u&&u.data&&(f=u.data,f.Success?(t.set("pricingInformation",{Summary:f.Summary,Detail:f.Detail}),_.each(f.Messages,function(t){n.cv.util.hasValue(t)&&(n.cv.util.notify(i.viewModel,t,n.cv.css.messageTypes.info,{clearExisting:e}),e=!1)}),r.resolve()):(_.each(f.Messages,function(t){n.cv.util.hasValue(t)&&(n.cv.util.notify(i.viewModel,t,n.cv.css.messageTypes.error,{clearExisting:e}),e=!1)}),r.reject()))}).fail(function(u){var f=t.get("clearExistingMessages"),e;u&&u.data?(e=u.data,_.each(e.Messages,function(t){n.cv.util.hasValue(t)&&(n.cv.util.notify(i.viewModel,t,n.cv.css.messageTypes.error,{clearExisting:f}),f=!1)}),r.reject()):n.cv.util.notify(t,t.get("genericExceptionText"),n.cv.css.messageTypes.error,{clearExisting:f})}).always(function(){t.set("isCalculatingPriceInformation",!1)}),r=n.Deferred(),r.promise())},showOverlay:function(t,i){n.fancybox.open({topRatio:"0.25",minWidth:"320",padding:"0",href:"#"+t,modal:i,afterShow:function(){kendo.init(n("#"+t));n.fancybox.update()}})},hideOverlay:function(){n.fancybox.close(!0)},isProductCodeValid:function(){return!n.cv.util.isNullOrWhitespace(t.get("productCode"))},isCustomerCodeValid:function(){return n.cv.util.isNullOrWhitespace(t.get("customerCode"))?!1:i.options.allowSettingCustomerCode===!1&&t.get("customerCode")!==n.cv.css.localGetCurrentOrder().SoCustCode?!1:!0},isQuantityValid:function(){return n.isNumeric(t.get("quantity"))},calculatePricingInformation:function(r){return(r&&r.preventDefault&&r.preventDefault(),!t.isProductCodeValid())?(n.cv.util.notify(t,t.get("noProductCodeSuppliedText"),n.cv.css.messageTypes.error,{clearExisting:t.get("clearExistingMessages")}),!1):t.isCustomerCodeValid()?t.isQuantityValid()?(t.getPricingInformation().done(function(){t.showOverlay(i.options.matrixOverlayId,!1)}),!1):(n.cv.util.notify(t,t.get("noQuantitySuppliedText"),n.cv.css.messageTypes.error,{clearExisting:t.get("clearExistingMessages")}),!1):(n.cv.util.notify(t,t.get("noCustomerCodeSuppliedText"),n.cv.css.messageTypes.error,{clearExisting:t.get("clearExistingMessages")}),!1)}}));return t},t}();
86n.cv.ui.widget(new t)})(jQuery);
87(function(n){var t="widgetDataInitialised",i={name:"refurbishedproducts",extend:"mvvmwidget",options:{autoBind:!0,viewTemplate:null,isMasterProduct:!1,autoLoadData:!1,contactUsLink:"",productCode:"",refurbishedProducts:"",increaseQuantitiesInPackQty:!1,addMinimumQuantityToCart:!1},extendEvents:[t,"listUpdated"],viewModelBound:function(){var i=this;i.trigger(t);n.cv.css.bind(n.cv.css.eventnames.allAttributesForProductSelected,n.proxy(i.viewModel.allAttributesForProductSelected,i.viewModel));i.options.autoLoadData===!0&&(i.viewModel.set("isExpanded",!0),i.viewModel.loadRefurbishedProducts());i.viewModel.set("isVisible",i.options.isMasterProduct===!1)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend({},t.options,{isProcessing:!1,refurbishedProducts:[],dataLoaded:!1,isVisible:!1,isExpanded:!1,allAttributesSelected:!1,attributedProductCode:null,expandClick:function(){var n=this;n.set("isExpanded",!n.get("isExpanded"));n.get("isExpanded")&&n.loadRefurbishedProducts()},loadRefurbishedProducts:function(){var u=this,i=this,f,r,e;i.get("isExpanded")!==!1&&(i.isMasterProduct()&&i.get("allAttributesSelected")===!1||t.options.productCode&&(i.set("isProcessing",!0),f=n.cv.util.hasValue(i.get("attributedProductCode"))?i.get("attributedProductCode"):t.options.productCode,i.isMasterProduct()?r=n.cv.css.product.getRefurbishedProducts({productCode:f}):(e={data:t.options.refurbishedProducts},r=n.Deferred(),setTimeout(function(){r.resolve(e)},1)),r.done(function(r){var f,e;n.isArray(r.data)&&(f=[],n.each(r.data,function(t,i){var r=kendo.observable(i);r.set("isAdding",!1);r.set("quantity",1);r.increaseQty=function(){n.cv.util.kendoNumericTextBoxIncrease(u)};r.decreaseQty=function(){n.cv.util.kendoNumericTextBoxDecrease(u,0)};f.push(r)}),i.set("refurbishedProducts",f.length>0?f:null),i.set("dataLoaded",!0),e=n(t.element).find("[data-role=product]"),n.each(e,function(t,i){kendo.init(i);n(i).find(".form-number").each(function(){n.cv.util.kendoNumericTextBox(this)})}))}).always(function(){i.set("isProcessing",!1)})))},isMasterProduct:function(){return t.options.isMasterProduct===!0},allAttributesForProductSelected:function(t){var i=this,r=n.cv.util.hasValue(t);i.set("allAttributesSelected",r);i.set("attributedProductCode",t);r?(i.set("isVisible",!0),i.loadRefurbishedProducts()):(i.set("refurbishedProducts",[]),i.set("isVisible",!1),i.set("dataLoaded",!1))}}))}};n.cv.ui.widget(i)})(jQuery);
88(function(n){var t="widgetDataInitialised",i={name:"pendingOrderOverlay",extend:"mvvmwidget",options:{autoBind:!0,viewTemplate:null,popupId:"",cartRedirectionTarget:"/cart"},extendEvents:[t,"listUpdated"],viewModelBound:function(){var i=this;i.trigger(t);n.fancybox({href:"#".concat(i.options.popupId),modal:!0,padding:0,helpers:{overlay:{css:{"z-index":99999999},closeClick:!1}}})},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend({},t.options,{isProcessing:!1,isProcessingStayAndSubmitOrder:!1,isProcessingLeavePage:!1,stayAndSubmitOrder:function(){var t=this;t.set("isProcessing",!0);t.set("isProcessingStayAndSubmitOrder",!0);n.cv.css.orders.resumePendingOrder().done(function(i){i.data?n.cv.util.redirect(i.data,{},!1):n.cv.util.redirect(t.get("cartRedirectionTarget"),{},!1)})},leavePage:function(){var t=this;t.set("isProcessing",!0);t.set("isProcessingLeavePage",!0);n.cv.css.orders.abortPendingOrder().done(function(){n.cv.util.redirect(t.get("cartRedirectionTarget"),{},!1)})}}))}};n.cv.ui.widget(i)})(jQuery);
89(function(n){var t,i,r,u,f;n.cv=n.cv||{};n.cv.css=n.cv.css||{};n.cv.css.reCaptcha=n.cv.css.reCaptcha||{scriptLoaded:!1,scriptLoadedPromise:n.Deferred()};window.onloadReCaptchaCallback=function(){n.cv.css.reCaptcha.scriptLoadedPromise.resolve()},function(n){n.DEFAULT="DEFAULT";n.reCaptchaV2="reCaptchaV2"}(t||(t={})),function(n){n.BottomRight="bottomright";n.BottomLeft="bottomleft";n.Inline="inline"}(i||(i={})),function(n){n.Normal="normal";n.Compact="compact"}(r||(r={})),function(n){n.Dark="dark";n.Light="light"}(u||(u={}));f={name:"reCaptcha",extend:"mvvmwidget",options:{autoBind:!0,widgetParentId:"",captchaVersion:t.reCaptchaV2,reCaptchaGetScriptRetries:0,reCaptchaSiteKey:"",reCaptchaTheme:u.Light,reCaptchaSize:r.Normal,reCaptchaBadge:i.BottomRight,validationFailedMessage:"Invalid reCaptcha",useInvisibleCaptcha:!1},initialised:function(){this.options.captchaVersion===t.reCaptchaV2&&(this.initialiseRecaptcha(),this.options.useInvisibleCaptcha&&this.options.reCaptchaBadge!=="inline"&&n(".capture-row").removeClass("capture-row"))},viewModelBound:function(){var i=this,t=i.viewModel;n.cv.css.bind(n.cv.css.eventnames.validateReCaptcha,n.proxy(t.validateReCaptcha,t));n.cv.css.bind(n.cv.css.eventnames.getReCaptchaToken,n.proxy(t.getReCaptchaToken,t));n.cv.css.bind(n.cv.css.eventnames.resetReCaptchaV2,function(){window.grecaptcha.reset(t.reCaptchaWidgetId);t.set("reCaptchaToken","")});n.cv.css.bind(n.cv.css.eventnames.executeInvisibleCaptcha,n.proxy(t.executeInvisibleCaptcha,t))},_getViewModel:function(){return this._getDefaultViewModel()},initialiseRecaptcha:function(){var t=this;n.cv.css.reCaptcha.scriptLoaded===!1&&(n.cv.css.reCaptcha.scriptLoaded=!0,n.getScript("https://www.google.com/recaptcha/api.js?onload=onloadReCaptchaCallback&render=explicit"));
89n.cv.css.reCaptcha.scriptLoadedPromise.done(function(){return t.registerCaptcha()})},registerCaptcha:function(){var r=this,t=r.options,i=r.viewModel,f="recaptcha-".concat(t.widgetParentId),u;n("#"+f).is(":empty")&&(t.registered=!0,u=window.grecaptcha.render("recaptcha-".concat(t.widgetParentId),{sitekey:t.reCaptchaSiteKey,callback:i.reCaptchaVerifyCallback,theme:t.reCaptchaTheme,size:t.useInvisibleCaptcha?"invisible":t.reCaptchaSize,badge:t.reCaptchaBadge,"expired-callback":i.expiredCallback}),i.set("reCaptchaWidgetId",u))},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend({},t.options,{reCaptchaToken:"",reCaptchaWidgetId:"",reCaptchaVerifyCallback:function(i){var r=t.viewModel,u,f;return r.set("reCaptchaToken",i),r.get("useInvisibleCaptcha")&&(u=r.get("executeInvisibleCaptchaRequest"),f=r.get("skipValidate"),r.set("executeInvisibleCaptchaRequest",null),r.set("skipValidate",null),f?u.success(i):r.validateReCaptcha(u)),n.Deferred().resolve().promise()},expiredCallback:function(){var n=t.viewModel;n.set("reCaptchaToken","");window.grecaptcha.reset(n.reCaptchaWidgetId)},validateReCaptcha:function(i){if(i.widgetId===t.options.widgetParentId&&n.cv.util.hasValue(t.options.registered)){var r=this,u=r.get("reCaptchaToken"),f=function(){r.setMessage(t.options.validationFailedMessage,n.cv.css.messageTypes.error);n.type(i.fail)==="function"&&i.fail()};if(r.clearMessages(),n.cv.util.isNullOrWhitespace(u)){f();return}n.cv.css.validateReCaptchaV2({token:u,widgetId:i.widgetId}).done(function(t){t.data.Success?n.type(i.success)==="function"&&i.success():f()})}},executeInvisibleCaptcha:function(n){var t=this;t.get("useInvisibleCaptcha")&&(t.set("executeInvisibleCaptchaRequest",n),n.skipValidate&&t.set("skipValidate",n.skipValidate),window.grecaptcha.execute())},getReCaptchaToken:function(t){var i=this,r=i.get("reCaptchaToken");n.cv.util.isNullOrWhitespace(r)?t.fail(i.get("validationFailedMessage")):n.type(t.success)==="function"?t.success(r):n.type(t.fail)==="function"&&t.fail(i.get("validationFailedMessage"))},setMessage:function(i,r,u,f){f===void 0&&(f=!0);n.cv.util.notify(this,i,r,{triggerMessages:f,clearExisting:!0,messageGroup:u,source:t.name})},clearMessages:function(i){n.cv.util.clearNotifications({viewModel:this,clearExisting:!0,messageGroup:i,source:t.name},!0)}}))}};n.cv.ui.widget(f)})(jQuery);
90(function(n){var t="widgetDataInitialised",i={name:"captcha",extend:"mvvmwidget",options:{autoBind:!0,validationFailedMessage:"Invalid validation code",viewTemplate:null},extendEvents:[t,"listUpdated"],viewModelBound:function(){var i=this;n.cv.css.bind(n.cv.css.eventnames.validateCaptcha,n.proxy(i.viewModel.validateCaptcha,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.resetCaptcha,n.proxy(function(){var n=this;n.resetCaptcha();n.set("captchaText","");n.clearMessages()},i.viewModel));i.trigger(t);i.viewModel.resetCaptcha()},_getViewModel:function(){return this._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend({},t.options,{isCaptureResetting:!1,captchaText:"",captchaImageUrl:"",errorMessage:"",validateCaptcha:function(i){var r=this,u=r.get("captchaText"),f=function(){r.setMessage(t.options.validationFailedMessage,n.cv.css.messageTypes.error);n.type(i.fail)==="function"&&i.fail()};if(r.clearMessages(),n.cv.util.isNullOrWhitespace(u)){f();return}n.cv.css.validateCaptcha(u).done(function(t){t.data.Success?n.type(i.success)==="function"&&i.success():(f(),r.resetCaptcha())})},resetCaptcha:function(){var t=this;t.set("isCaptureResetting",!0);n.cv.css.generateCaptcha().done(function(){t.set("captchaImageUrl","/ValidationImage.aspx?rand=".concat(n.now()));t.set("isCaptureResetting",!1)})},setMessage:function(i,r,u,f){f===void 0&&(f=!0);this.set("errorMessage",i);n.cv.util.notify(this,i,r,{triggerMessages:f,clearExisting:!0,messageGroup:u,source:t.name})},clearMessages:function(i){this.set("errorMessage","");n.cv.util.clearNotifications({viewModel:this,clearExisting:!0,messageGroup:i,source:t.name},!0)}}))}};n.cv.ui.widget(i)})(jQuery);
91(function(n){var t="widgetDataInitialised",i={name:"creditcardverificationfields",extend:"mvvmwidget",options:{autoBind:!0,validationFailedMessage:"Amount entered is invali
91d.",viewTemplate:null,amountInputId:""},extendEvents:[t,"listUpdated"],viewModelBound:function(){var i=this;n("#"+i.options.amountInputId).data("kendoNumericTextBox").element.on("keyup blur",function(n){var t=n.target.value;i.viewModel.amountChanged(t)});i.trigger(t)},_getViewModel:function(){return this._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend({},t.options,{amount:"",amountOk:!1,showForm:!0,okMessage:"",isProcessing:!1,isError:!1,validateAmount:function(){var i=this,r=i.get("amount"),u;if(i.clearMessages(),n.cv.util.isNullOrWhitespace(r)){i.setMessage(t.options.validationFailedMessage,n.cv.css.messageTypes.error);return}i.set("isProcessing",!0);u={sq:n.cv.util.queryStringValue("sq"),amount:r};n.cv.css.orders.validateAmountForOrder(u).done(function(t){var r=t.data.Success?n.cv.css.messageTypes.success:n.cv.css.messageTypes.error;t.data.Success?i.set("isError",!1):(i.set("amount",""),i.set("amountOk",!1),i.set("isError",!0));n.each(t.data.Messages,function(n,t){i.setMessage(t,r)});t.data.Success&&(i.set("showForm",!1),i.set("okMessage",t.data.Messages[0]))}).always(function(){i.set("isProcessing",!1)})},amountChanged:function(n){var t=this;t.set("isError",!1);t.set("amountOk",n>0)},setMessage:function(i,r,u,f){f===void 0&&(f=!0);this.set("errorMessage",i);this.get("isError")||n.cv.util.notify(this,i,r,{triggerMessages:f,clearExisting:!0,messageGroup:u,source:t.name})},clearMessages:function(i){this.set("errorMessage","");n.cv.util.clearNotifications({viewModel:this,clearExisting:!0,messageGroup:i,source:t.name},!0)}}))}};n.cv.ui.widget(i)})(jQuery);
92(function(n){var t="SoOrderReasonCode",i="SoOrderPackages",r="ReturnBankBSB",u="ReturnBankAccountNumber",f="ReturnBankAccountName",e="ReturnEftReceiptNumber",o={name:"returnInformation",extend:"mvvmwidget",options:{resalableFieldName:"",orderNoOverride:0,returnOrderObjectKey:"",reasonCodePrompt:"Reason Code",numberOfParcelsPrompt:"Number of Parcels to pick up",autoBind:!0,triggerMessages:!0,clearWidgetMessages:!0,reasonCodeRequiredMessage:"Reason code is required",noOfParcelsRequiredMessage:"Number of parcels is required",validateFieldsMessage:"Please fill up all mandatory fields",returnBankBsbPrompt:"Return Bank BSB",returnBankAccountNumberPrompt:"Return Bank Account Number",returnBankAccountName:"Return Bank Account Name",returnBankEftReceiptNumber:"Return Bank EFT Receipt Number",returnBankBsbRegex:"",returnBankAccountNumberRegex:"",returnBankAccountNameRegex:"",returnBankEftReceiptNumberRegex:"",returnBankEftReceiptNumberMandatory:!0,isOriginalOrderPaidByCreditCard:!1,originalOrderPaymentType:"",isReturnBankAccountDetailsMandatory:!0,hideNonMandatoryReturnBankFields:!1,hideNonMandatoryPaymentTypeFields:!1,returnPaymentTypeMandatoryFields:"",viewTemplate:null},extendEvents:["widgetDataInitialised","listUpdated"],validateInputFields:function(t){var i=this;n.cv.css.addRemovePageValidationError(i.viewModel.validateInputFields(t),i.name)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var o=this,s=kendo.observable(n.extend({},o.options,{dataItemList:[],nonResalableReasonCodes:[],_returnPaymentTypeMandatoryFields:function(){if(n.cv.util.isNullOrWhitespace(o.options.returnPaymentTypeMandatoryFields))return[];var t=[];return n.each(o.options.returnPaymentTypeMandatoryFields.split(";"),function(i,r){var u=r.split("=");n.cv.util.hasValue(u,"[1]")&&u[0]===o.options.originalOrderPaymentType&&(t=u[1].split(","))}),t},_onReasonCodeChange:function(t){var i=this;(i._showHideResalableField(t),i.set("addRemoveReturnAdminFeeErrorMessage",""),n.cv.util.isNullOrWhitespace(t))||n.cv.css.returns.addRemoveReturnAdminFee({_objectKey:o.options.returnOrderObjectKey,reasonCode:t}).done(function(t){var r=t.data,u=r.Messages[0];n.cv.util.hasValue(r)&&r.Success?(n.cv.css.trigger(n.cv.css.eventnames.returnReasonCodeSelected,{orderNoOverride:o.options.orderNoOverride}),n.cv.util.clearNotifications(i),n.cv.util.hasContent(u)&&n.cv.util.notify(i,u,n.cv.css.messageTypes.warning)):i.set("addRemoveReturnAdminFeeErrorMessage",u)})},_showHideResalableField:function(t){var r=o.options.resalableFieldName,u,i;n.cv.util.hasContent(r)&&(u=this,i=u._getFieldByName(r),n.cv.util.hasValue(i)&&(_.contains(u.get("nonResalableReasonCodes"),t)?(i.set(r,null),i.fieldItem.set("Hidden",!0)):i.fieldItem.set("Hidden",!1)))},_getFieldByName:function(n){var t=this,i=n.toLowerCase();return _.find(t.get("dataItemList"),function(n){var t=n.fieldItem.FieldName;return t.toLowerCase()===i})},validateInputFields:function(r){var u=this,e,f;return(u.clearFieldErrors(),e=u.get("addRemoveReturnAdminFeeErrorMessage"),n.cv.util.hasContent(e))?(n.cv.util.notify(u,e,n.cv.css.messageTypes.error),!1):(f=!0,n.each(u.get("dataItemList"),function(e,s){var h=s.fieldItem,c=o.options.validateFieldsMessage;return(h.FieldName===t&&(c=o.options.reasonCodeRequiredMessage),h.FieldName===i&&(c=o.options.noOfParcelsRequiredMessage),h.Hidden===!1&&s.fieldValid({data:s},r)===!1)?(n.cv.util.notify(u,s.vaidationErrorMessage,n.cv.css.messageTypes.error),f=!1,!1):h.FieldName===i&&s[i]===0?(s.setError(h,c,h.classForErrors),n.cv.util.notify(u,c,n.cv.css.messageTypes.error),f=!1,!1):!0}),f)},updateReturnInformation:function(){var i=this,t={};_.each(i.get("dataItemList"),function(n){var i=n.fieldItem.fieldName;t[n.fieldItem.fieldName]=n.get(i)});n.cv.css.returns.updateReturnInformation({_objectKey:o.options.returnOrderObjectKey,returnInfoFields:t})},clearFieldErrors:function(){var t=this;n.cv.util.clearNotifications(t);_.each(t.get("dataItemList"),function(n){n.setError(n.fieldItem,"","")})}}));return n.cv.css.returns.getReasonCodeDataSource().done(function(h){var l=h.data,c="ReturnReason",a=_.filter(l,function(n){return n.Resalable===0});s.set("nonResalableReasonCodes",_.map(a,function(n){return n.Value}));n.cv.css.returns.getReturnInformationFieldData({_objectKey:o.options.returnOrderObjectKey}).done(function(h){var y=h.data.Value,a=[],p=[{fieldName:r,regex:o.options.returnBankBsbRegex,mandatory:o.options.isReturnBankAccountDetailsMandatory},{fieldName:u,regex:o.options.returnBankAccountNumberRegex,mandatory:o.options.isReturnBankAccountDetailsMandatory},{fieldName:f,regex:o.options.returnBankAccountNameRegex,mandatory:o.options.isReturnBankAccountDetailsMandatory},{fieldName:e,regex:o.options.returnBankEftReceiptNumberRegex,mandatory:o.options.returnBankEftReceiptNumberMandatory}],w=s._returnPaymentTypeMandatoryFields(),v;_.each(y,function(h){var v,b,y;h.FieldName===t&&(h.Prompt=o.options.reasonCodePrompt,h.Mandatory=!0,h.FieldDisplayOverride="DropDown");h.FieldName===i&&(h.Prompt=o.options.numberOfParcelsPrompt,h.Mandatory=!0,h.FieldDisplayOverride="NumericTextBox",h.CustomAttributes="data-min='0'",h.Length="0");h.FieldName===c&&(h.Hidden=!0);v=n.grep(p,function(n){return h.FieldName===n.fieldName})[0];v&&(n.cv.util.hasContent(v.regex)&&(h.Lookup.regex=v.regex),h.Mandatory=v.mandatory,h.Hidden=o.options.isOriginalOrderPaidByCreditCard||o.options.hideNonMandatoryReturnBankFields&&v.mandatory===!1);b=_.find(w,function(n){return h.FieldName===n});n.cv.util.hasValue(b,"[0]")?(h.Mandatory=!0,h.Hidden=!1):n.inArray(h.FieldName,[t,c,i,r,u,f,e])===-1&&(h.Hidden=h.Mandatory===!1&&o.options.hideNonMandatoryPaymentTypeFields);y=n.cv.util.getFieldItemData(h);y.dataChanged=function(i){var u=n.cv.util.hasValue(i.data)&&n.cv.util.hasValue(i.data.fieldItem)&&i.data.fieldItem.FieldName===t,r;u&&(s._onReasonCodeChange(i.data[t]),r=s._getFieldByName(c),n.cv.util.hasValue(r)&&r.set(c,i.sender.text()));s.updateReturnInformation()};h.FieldName===t&&(l.unshift({Value:"",Text:n.cv.css.pleaseSelectText}),y.SoOrderReasonCode_lookup=l);h.FieldName===t?a.splice(0,0,y):h.FieldName===i?a.splice(1,0,y):a.push(y)});s.set("dataItemList",a);v=s._getFieldByName(t);n.cv.util.hasValue(v)&&s._showHideResalableField(v[t]);n.cv.util.bindKendoWidgets(o.element);n.cv.css.trigger(n.cv.css.eventnames.returnReasonCodeSelected,{orderNoOverride:o.options.orderNoOverride})})}),s.bind("change",function(){}),s}};n.cv.ui.widget(o)})(jQuery);
93(function(n){var t="widgetDataInitialised",i={name:"submitReturnButtons",extend:"mvvmwidget",options:{validationWidgets:"deliveryAddress,returnInformation",returnConfirmationUrl:"ordersearch.aspx",cancelReturnUrl:"ordersearch.aspx",returnOrderObjectKey:"",autoBind:!0,triggerMessages:!0,clearExisting:!0,viewTemplate:null},extendEvents:[t,"listUpdated"],viewModelBound:function(){var i=this;n.cv.css.bind(n.cv.css.eventnames.returnReasonCodeSelected,function(){i.viewModel.updateIsDisableSubmitButton()});i.trigger(t)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this,i=kendo.observable(n.extend({},t.options,{isProcessing:!1,isCancelling:!1,isDisableSubmitButton:!0,_val
93idationWidgets:t.options.validationWidgets.split(","),updateIsDisableSubmitButton:function(){var n=this;n.set("isDisableSubmitButton",n.get("isCancelling"))},onSubmitClick:function(){var i=this;i.set("isProcessing",!0);i._processPageValidationErrors().done(function(){i._hasValidationErrors()===!1?n.cv.css.returns.submitReturn({_objectKey:t.options.returnOrderObjectKey}).done(function(r){var u=r.data;n.cv.util.hasValue(u)&&u.Success?n.cv.util.redirect(t.options.returnConfirmationUrl,{sq:u.Value},!1):(n.cv.util.notify(i,u.Messages[0],n.cv.css.messageTypes.error),i.set("isProcessing",!1))}):i.set("isProcessing",!1)})},onCancelClick:function(){var i=this;i.set("isCancelling",!0);i.updateIsDisableSubmitButton();n.cv.util.redirect(t.options.cancelReturnUrl,{},!1)},_hasValidationErrors:function(){var t=!1;return n.each(this.get("_validationWidgets"),function(i,r){_.contains(_.keys(n.cv.css.pageValidationErrors),r)&&(t=!0)}),t},_processPageValidationErrors:function(){var t=[];return n.each(this.get("_validationWidgets"),function(i,r){n("[data-role='".concat(r.toLowerCase(),"']:not([data-is-view-only='true'])")).each(function(){var i=n(this).data(r);i&&n.isFunction(i.validateInputFields)&&t.push(i.validateInputFields(!0,undefined,!0))})}),n.when.apply(n,t)}}));return i.bind("change",function(){}),i}};n.cv.ui.widget(i)})(jQuery);
94(function(n){var t="orders",i="lines",f="save-changes",r="save-changes-capture-funds-or-pay",e="cancel-order",o="beforeViewLines",s="afterViewLines",h="beforeBack",u="afterBack",c="beforePrintOpened",l="beforeUpdateOrder",a="afterUpdateOrder",v={name:"orderFulfilmentEditable",extend:"mvvmwidget",options:{dataSource:[],autoBind:!0,popupWindowId:"",triggerMessages:!0,recordsPerPage:10,clearWidgetMessages:!0,canEditCurrentOrder:!1,usePleaseSelectForTemplateNames:!1,defaultAddProductQuantity:1,onLoadViewOrderObjectKey:"",onLoadViewOrderNo:0,captureFundsForOrderSuccessMessage:"Funds for Order {0} were successfully captured",captureFundsForOrderFailureMessage:"Unable to capture funds for Order {0}",makeNewPaymentForOrderErrorMessage:"Unable to retrieve information to facilitate a new payment for Order {0}",cancelOrderSuccessMessage:"Order {0} was successfully canceled",cancelOrderFailureMessage:"Unable to cancel Order {0}",updateOrderSuccessMessage:"Successfully updated Order {0}",updateOrderFailureMessage:"An error occurred while attempting to update Order {0}",viewOrderLoadErrorMessage:"Unable to load Order. Order #: {0}",confirmCancelOrderHeader:"Cancel This Order",confirmCancelOrderMessage:"Are you sure you wish to cancel this order",confirmCancelOrderConfirmButtonText:"Cancel this Order",backToOrdersDoYouWantToSaveYourOrderMessage:"Your order contains unsaved changes. Do you want to save your changes?",confirmSaveUnsavedChangesHeader:"Save unsaved changes",confirmSaveUnsavedChangesConfirmButtonText:"Save unsaved changes",confirmDiscardUnsavedChangesConfirmButtonText:"Discard unsaved changes",redirectingForPaymentMessage:"Redirecting to pay Order {0}",confirmationHeader:"",confirmationHeaderDisplayIcon:!0,confirmationLabel:"",confirmationButtonText:"",discardConfirmationButtonText:"",isSaveUnsavedChanges:!1,confirmationType:"",confirmationData:null,confirmationHandler:function(){var t=this.popupWindowId,i=n.Deferred();return n.fancybox.open({href:t,closeBtn:!0,modal:!0,topRatio:"0.25",padding:"0"}),i.promise()},confirmationOKClick:function(){var o=this,h=o.get("confirmationType"),s;h===e?(s=o.get("confirmationData"),o.set("isCancelingOrder",!0),n.fancybox.close(),n.cv.css.orders.cancelOrderFulfilment({_objectKey:o.get("currentOrder")._objectKey}).done(function(t){var i,r;if(n.cv.util.clearNotifications(o),i=t.data,i&&i.Success===!1){i.Messages&&i.Messages.length>0?n.each(i.Messages,function(){n.cv.util.notify(o,this.toString(),n.cv.css.messageTypes.error,{clearExisting:!1})}):n.cv.util.notify(o,n.cv.util.string.format(o.cancelOrderFailureMessage,s),n.cv.css.messageTypes.error,{clearExisting:!1});return}r=n.cv.util.string.format(o.cancelOrderSuccessMessage,s);o.goBackToOrders();n.cv.util.notify(o,r,n.cv.css.messageTypes.success);o.dataSource.fetch()}).fail(function(){var t=n.cv.util.string.format(o.cancelOrderFailureMessage,s);n.cv.util.notify(o,t,n.cv.css.messageTypes.error)}).always(function(){o.set("isCancelingOrder",!1)})):h===f?(o._saveOrderLineChanges_Internal(!1).always(function(){o.set("mode",t);o.clearMessage();var i=n.cv.util.string.format(o.updateOrderSuccessMessage,o.get("currentOrder").SoOrderNo);n.cv.util.notify(o,i,n.cv.css.messageTypes.success);o.dataSource.fetch();o.trigger(u)}),n.fancybox.close()):h===r&&(o._saveOrderLineChanges_Internal(!1).always(function(){o.set("mode",i);o.clearMessage();var t=n.cv.util.string.format(o.updateOrderSuccessMessage,o.get("currentOrder").SoOrderNo);n.cv.util.notify(o,t,n.cv.css.messageTypes.success);o.dataSource.fetch()}),n.fancybox.close())},discardConfirmationClick:function(){var f=this,e=f.get("confirmationType");f.clearMessage();e===r?f.set("mode",i):(f.set("mode",t),f.dataSource.fetch(),f.trigger(u));n.fancybox.close()},confirmationCancelClick:function(){n.fancybox.close()},openPrintOrderPage:function(n,t){n&&window.open("/"+t+"&popup=1")}},extendEvents:["loading","loadingComplete",o,s,h,u,"beforeRejectOrder","afterRe
94jectOrder",c,l,a],_mode:t,initialised:function(){var n=this;n.setupSinglePageHistoryStateHandler({displayResultList:!0},function(t){t.displayResultList&&n.viewModel.goBackToOrders()})},initDataSource:function(){var t=this,i=n.cv.data.dataSource({method:"orders/getOrderFulfimentOrdersForPickup",params:t._constructOrderParamsFunction(),pageSize:t.options.recordsPerPage});i.bind("requestStart",t.viewModel.dataSourceBinding);i.bind("requestEnd",t.viewModel.dataSourceBound);t.setDataSource(i);n.cv.css.bind(n.cv.css.eventnames.approvalOrderUpdated,function(n){n&&n===t.viewModel.currentOrder.SoOrderNo&&t.viewModel._viewOrder_Internal(n,t.viewModel.currentOrder)})},_constructOrderParamsFunction:function(){var i=this,t=i.viewModel,r=i.options.onLoadViewOrderObjectKey;return r&&r.length>0&&t._viewOrder_Internal(i.options.onLoadViewOrderNo,null,r),function(){var r=t.get("orderFilter"),f=t.get("sortColumn"),e=t.get("sortDirection"),i={filter:{filters:[]},sort:[{field:f,dir:e}],bAllAccounts:!1},u;return t.set("currentSort",f+" "+e),r.trim().length>0&&(i.filter.filters.push({field:"SoCustReference",operator:"contains",value:r}),i.filter.filters.push({field:"SoOrderNo",operator:"contains",value:r}),i.filter.filters.push({field:"SoUserIDCode",operator:"contains",value:r})),i.filter.filters.length>1&&(i.filter.logic="or"),u=n.cv.util.queryStringValue("all"),u&&u.length>0&&(i.bAllAccounts=u),i}},_preBindingLineModification:function(t,i){var r=_.filter(i,function(n){return n.LineType&&n.LineType==="DN"&&n.LineSeq%1!=0&&n.Description&&n.Description.length>0});return r=_.map(r,function(n){return{LineSeq:parseInt(n.LineSeq,10),Description:n.Description}}),r=_.groupBy(r,"LineSeq"),r=_.map(r,function(n){return _.reduce(n,function(n,t){return n.LineSeq=t.LineSeq,n.Description==null&&(n.Description=""),n.Description+=" "+t.Description,n},{})}),i=_.filter(i,function(t){return t.LineType&&t.LineType==="DN"&&t.LineSeq%1==0||t.LineType==="SN"&&t.Product&&n.type(t.Product)==="array"&&t.Product.length===1}),_.each(i,function(t,i){t.index=i;var u=_.find(r,function(n){return n.LineSeq===t.LineSeq});u!=null&&(t.ExtendedLineDescription=n.trim(u.Description));t.isDeleteLineChecked=!1;t.toggleDeleteLine=function(t){n.cv.util.toggleCvCheckboxValue(t,this,"isDeleteLineChecked")};t.isRejectChecked=!1;t.displayRejectionNoteEditor=!1;t.toggleReject=function(t){n.cv.util.toggleCvCheckboxValue(t,this,"isRejectChecked")};t.packQuantityTarget="Product[0].PackQty";t.quantityTarget="OrderedQty";t.increaseQty=function(){n.cv.util.kendoNumericTextBoxIncrease(this)};t.decreaseQty=function(){n.cv.util.kendoNumericTextBoxDecrease(this,0)};t.addNoteClicked=function(){this.set("showLineDescription",!0)};t.ErrorMessages=null}),i},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var v=this,p=function(){if(!v.dataSource)return[];var t=v.dataSource.data();return n.each(t,function(n,t){t.index=n;t._isLastRow=!1;t.isLoadingOrderLine=!1;t.disableView=!1;t.viewOrder=function(){y.viewOrder(t)}}),t.length>0&&t[t.length-1]!=null&&t[t.length-1].set("_isLastRow",!0),t},y=kendo.observable(n.extend({},v.options,{mode:t,isOrdersMode:function(){return this.get("mode")===t},isLinesMode:function(){return this.get("mode")===i},isProcessingOrderFulfilment:function(){return this.get("isFilteringOrders")===!0||this.get("isClearingFilter")===!0||this.get("isLoadingOrderLines")===!0||this.get("isCapturingFundsForOrder")===!0||this.get("isMakingNewPaymentForOrder")===!0||this.get("isCancelingOrder")===!0||this.get("isSavingOrder")===!0||this.get("isDataSourceBinding")===!0},dataSourceBinding:function(){y.set("isDataSourceBinding",!0)},dataSourceBound:function(){y.set("isDataSourceBinding",!1);y.set("isSortingOrders",!1)},updateViewModelFromDataSource:function(){var n=p();this.set("orderData",n);this.set("isFilteringOrders",!1);this.set("isClearingFilter",!1)},isFilteringOrders:!1,isClearingFilter:!1,isLoadingOrderLines:!1,isCapturingFundsForOrder:!1,isMakingNewPaymentForOrder:!1,isCancelingOrder:!1,isSavingOrder:!1,isDataSourceBinding:!1,today:new Date,needsValidation:!1,validationCallBack:n.noop,orderFilter:"",orderData:[],isSortingOrders:!1,sortColumn:"SoOrderNo",sortDirection:"asc",clearMessage:function(){var t=this;t.set("message","");v.options.triggerMessages&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:"",type:"",source:"ordersApproval",clearExisting:!0,clearAllExisting:!0})},orders:function(){var t=this,n=t.get("orderData");return n==null&&(n=[]),n},filterOrders:function(){var n=this,t=n.get("dataSource");
94n.get("orderFilter").length>0?n.set("isFilteringOrders",!0):n.set("isClearingFilter",!0);t.page(1)},clearOrderFilter:function(){var n=this;n.set("orderFilter","");n.filterOrders()},setDisableView:function(t){var i=this;i.dataSource&&n.each(i.dataSource.view(),function(n,i){i.set("disableView",t)})},sortByColumn:function(t,i,r){n.cv.util.sortByColumn(this,t,i,r)},viewOrder:function(n){var t=this;v.addNewUiHistoryState({displayResultList:!1});t._viewOrder_Internal(n.SoOrderNo,n)},_viewOrder_Internal:function(t,r,u){var e="",f;if(r?e=r._objectKey:u&&(e=u),e.length!==0)return f=this,f.setDisableView(!0),r&&r.set("isLoadingOrderLine",!0),f.set("isLoadingOrderLines",!0),f.set("orderNo",t),v.trigger(o),n.cv.css.getFullOrderAndLinesByObjectKey({_objectKey:e,storeResultsInLocalStorage:!0}).done(function(r){var o=r.data[0],u=r.data[0].Lines,e,h;if(f.set("currentOrder",o),n.cv.css.trigger(n.cv.css.eventnames.viewApprovalOrder,o),u&&u.length>0){for(f.set("mode",i),f._linesDataSource=u,u=v._preBindingLineModification(f,u),u=new kendo.data.ObservableArray(u),n.each(u,function(){n.cv.util.isNullOrWhitespace(this.ExtendedLineDescription)||this.set("showLineDescription",!0)}),f.set("lines",u),f.set("isLineDataDirty",!1),u.bind("change",function(n){n.field!=="ErrorMessages"&&f.set("isLineDataDirty",!0);n.field==="isDeleteLineChecked"&&f.orderLineCheckboxClicked(n.items[0])}),e=0;e<v.dataSource._data.length;e++)v.dataSource._data[e].set("isLoadingOrderLine",!1);n.cv.util.bindKendoWidgets(n(v.element[0]));n.cv.css.trigger(n.cv.css.eventnames.viewLinesMode);v.trigger(s);n.cv.css.trigger(n.cv.css.eventnames.ordersApprovalLinesRendered,{order:o,lines:u,InsertToLines:!0})}else h=n.cv.util.string.format(v.options.viewOrderLoadErrorMessage,t),n.cv.util.notify(v.viewModel,h,n.cv.css.messageTypes.error),f.setDisableView(!1)}).fail(function(){var i=n.cv.util.string.format(v.options.viewOrderLoadErrorMessage,t);n.cv.util.notify(v.viewModel,i,n.cv.css.messageTypes.error);f.setDisableView(!1)}).always(function(){f.set("isLoadingOrderLines",!1);r&&r.set("isLoadingOrderLine",!1)})},onChange:function(){this.set("isLineDataDirty",!0)},captureFunds:function(t){var i=this,u;t.preventDefault();t.stopPropagation();u=t.data;i._checkUpdateRequired(r).done(function(){return i.set("isCapturingFundsForOrder",!0),n.cv.css.orders.captureFundsOrderFulfilment({_objectKey:i.get("currentOrder")._objectKey}).done(function(t){n.cv.util.clearNotifications(i);var r=t.data;if(r&&r.Success===!1){r.Messages&&r.Messages.length>0?n.each(r.Messages,function(){n.cv.util.notify(i,this.toString(),n.cv.css.messageTypes.error,{clearExisting:!1})}):n.cv.util.notify(i,n.cv.util.string.format(v.options.captureFundsForOrderFailureMessage,u.orderNo),n.cv.css.messageTypes.error,{clearExisting:!1});return}u.goBackToOrders();n.cv.util.notify(i,n.cv.util.string.format(v.options.captureFundsForOrderSuccessMessage,u.orderNo),n.cv.css.messageTypes.success)}).fail(function(){var r=n.cv.util.string.format(v.options.captureFundsForOrderFailureMessage,t.data.orderNo);n.cv.util.notify(i,r,n.cv.css.messageTypes.error)}).always(function(){i.set("isCapturingFundsForOrder",!1)}),!1})},cancelOrder:function(n){var t=this,i;return n.preventDefault(),n.stopPropagation(),i=n.data,t.set("confirmationHeader",v.options.confirmCancelOrderHeader),t.set("confirmationHeaderDisplayIcon",!0),t.set("confirmationLabel",v.options.confirmCancelOrderMessage),t.set("confirmationButtonText",v.options.confirmCancelOrderConfirmButtonText),t.set("confirmationType",e),t.set("isSaveUnsavedChanges",!1),t.set("confirmationData",i.orderNo),v.options.confirmationHandler({widget:v,viewModel:t}),!1},makeNewPayment:function(t){var i=this,u;t.preventDefault();t.stopPropagation();u=t.data;i._checkUpdateRequired(r).done(function(){return i.set("isMakingNewPaymentForOrder",!0),n.cv.css.orders.getRedirectForOrderFulfilmentNewPayAttempt({_objectKey:i.get("currentOrder")._objectKey}).done(function(t){n.cv.util.clearNotifications(i);var r=t.data;n.cv.util.isNullOrWhitespace(r)===!1?(n.cv.util.redirect(r,null,!1),n.cv.util.notify(i,n.cv.util.string.format(v.options.redirectingForPaymentMessage,u.orderNo),n.cv.css.messageTypes.info,{clearExisting:!1})):n.cv.util.notify(i,n.cv.util.string.format(v.options.makeNewPaymentForOrderErrorMessage,u.orderNo),n.cv.css.messageTypes.error)}).fail(function(){var r=n.cv.util.string.format(v.options.makeNewPaymentForOrderErrorMessage,t.data.orderNo);n.cv.util.notify(i,r,n.cv.css.messageTypes.error)}).always(function(){i.set("isMakingNewPaymentForOrder",!1)}),!1})},orderLineCheckboxClicked:function(n){var t=this;return n.isDeleteLineChecked&&t.set("isSaveUnsavedChanges",!1),!1},orderNo:0,currentOrder:null,lines:[],isLineDataDirty:!1,productSearchTerm:"",addProductQuantity:v.options.defaultAddProductQuantity,_getLineChanges:function(){for(var i=this.get("lines"),u=i.length,r=[],n,t=0;t<u;t++)n=i[t],r.push({LineSeq:n.LineSeq,Description:n.Description,StockCode:n.ProductCode,ExtendedLineDescription:n.ExtendedLineDescription,Qty:n.OrderedQty,IsDelete:n.isDeleteLineChecked===!0});return r},isAllowedToChangeAndIsDirty:function(){return this.get("isLineDataDirty")},_getLineQuantities:function(){for(var i=this.get("lines"),e=i.length,r=[],u,n,f,t=0;t<e;t++)n=i[t],u=n.LineSeq,f=n.OrderedQty,r.push({LineSeq:u,Qty:f});return r},_checkUpdateRequired:function(t){var r=n.Deferred(),i=this;return i.isAllowedToChangeAndIsDirty()?(i.set("confirmationHeader",v.options.confirmSaveUnsavedChangesHeader),i.set("confirmationHeaderDisplayIcon",!1),i.set("confirmationLabel",v.options.backToOrdersDoYouWantToSaveYourOrderMessage),i.set("confirmationButtonText",v.options.confirmSaveUnsavedChangesConfirmButtonText),i.set("discardConfirmationButtonText",v.options.confirmDiscardUnsavedChangesConfirmButtonText),i.set("confirmationRejectionNotes",""),i.set("confirmationType",t),i.set("isSaveUnsavedChanges",!0),v.o
94ptions.confirmationHandler({widget:v,viewModel:i})):r.resolve(),r.promise()},goBackToOrders:function(){var i=this;return i._checkUpdateRequired(f).done(function(){v.trigger(h);n.cv.css.trigger(n.cv.css.eventnames.viewOrdersMode);i.setDisableView(!1);i.set("mode",t);n.cv.util.clearNotifications(i);v.dataSource.fetch();v.trigger(u)}),!1},saveOrderLineChanges:function(n){return n.preventDefault(),n.stopPropagation(),this._saveOrderLineChanges_Internal(),!1},_saveOrderLineChanges_Internal:function(t){var i=this,r=i.currentOrder,u=i._getLineChanges();return(t==null&&(t=!0),i.set("isSavingOrder",!0),v.trigger(l,r),i.get("needsValidation")&&!i.validationCallBack(!0))?(i.set("isSavingOrder",!1),!1):n.cv.css.orders.saveLinesChanges({_objectKey:i.get("currentOrder")._objectKey,changes:u}).done(function(){i.clearMessage();i.set("isLineDataDirty",!1);var t=n.cv.util.string.format(v.options.updateOrderSuccessMessage,r.SoOrderNo);n.cv.util.notify(i,t,n.cv.css.messageTypes.success);n.cv.css.trigger(n.cv.css.eventnames.viewApprovalOrder,i.currentOrder)}).fail(function(){var t=n.cv.util.string.format(v.options.updateOrderFailureMessage,r.SoOrderNo);n.cv.util.notify(i,t,n.cv.css.messageTypes.error)}).always(function(){i.set("isSavingOrder",!1);v.trigger(a,r);t===!0&&i._viewOrder_Internal(r.SoOrderNo,r)})},printOrder:function(n){var t=this;return n.preventDefault(),n.stopPropagation(),v.trigger(c),v.options.openPrintOrderPage&&v.options.openPrintOrderPage(t.get("currentOrder.SoOrderNo"),t.get("currentOrder.PrintOrderUrl")),!1}}));return y}};n.cv.ui.widget(v)})(jQuery);
95(function(n){var t="widgetDataInitialised",i={name:"commwebclient",extend:"mvvmwidget",options:{initializationFailedMessage:"CommWeb: Initialisation failed.",showDebugMessages:!1,autoBind:!0,viewTemplate:null,cardNumberElementId:"",cardExpiryMonthElementId:"",cardExpiryYearElementId:"",cardSecurityCodeElementId:""},extendEvents:[t],viewModelBound:function(){var i=this;n.cv.css.bind(n.cv.css.eventnames.getPaymentOptionsFinished,n.proxy(i.viewModel.configureCommWebSession,i.viewModel));n.cv.css.bind(n.cv.css.eventnames.commWebUpdateSessionFromForm,n.proxy(i.viewModel.updateSessionFromForm,i.viewModel));i.trigger(t)},_getViewModel:function(){return this._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend({},t.options,{isInitialized:!1,sessionId:"",formSessionUpdateCallback:null,errorMessage:"",configureCommWebSession:function(i){var r=this;PaymentSession.configure({fields:{card:{number:"#".concat(t.options.cardNumberElementId),expiryMonth:"#".concat(t.options.cardExpiryMonthElementId),expiryYear:"#".concat(t.options.cardExpiryYearElementId),securityCode:"#".concat(t.options.cardSecurityCodeElementId)}},frameEmbeddingMitigation:["javascript"],callbacks:{initialized:function(u){r.debugLog("CommWeb: initialized() ".concat(JSON.stringify(u)));u.status==="ok"?(r.set("isInitialized",!0),i&&n.isFunction(i)&&i()):r.setMessage(t.options.initializationFailedMessage,n.cv.css.messageTypes.error)},formSessionUpdate:function(t){r.debugLog("CommWeb: formSessionUpdate() ".concat(JSON.stringify(t)));n.cv.css.trigger(n.cv.css.eventnames.commWebUpdateSessionFromFormCompleted,t);r.sessionHasExpired(t)===!1&&r.get("formSessionUpdateCallback")&&n.isFunction(r.get("formSessionUpdateCallback"))&&(r.get("formSessionUpdateCallback")(t),r.set("formSessionUpdateCallback",null));t.status?t.status==="ok"?(r.debugLog("CommWeb: Session updated succeeded - Session ID = ".concat(t.session.id)),r.set("sessionId",t.session.id)):t.status==="fields_in_error"?r.debugLog("CommWeb: Session update failed with field errors."):t.status==="request_timeout"?r.handleFormSessionUpdateError(t):t.status==="system_error"&&r.handleFormSessionUpdateError(t):r.handleFormSessionUpdateError(t)}}});PaymentSession.onBlur(["card.number","card.securityCode","card.expiry.month","card.expiry.year"],function(n){r.debugLog("CommWeb: onBlur ".concat(n));r.updateSession()})},updateSession:function(){PaymentSession.updateSessionFromForm("card")},sessionHasExpired:function(n){return n.errors&&n.errors.message?n.errors.message.toLowerCase().indexOf("expired")!==-1:!1},handleFormSessionUpdateError:function(t){var i=this,r="Unknown error.";t&&t.status?t.status==="request_timeout"?r="Session update timed out.":t.status==="system_error"&&(r="Session update failed (system error)."):r="Session update failed.";i.sessionHasExpired(t)?(i.debugLog("CommWeb: Session timed out - configuring a new session"),i.configureCommWebSession(function(){i.debugLog("CommWeb: New session configured - updating session");i.updateSession()})):i.setMessage("CommWeb: ".concat(r," Reload the page and try again."),n.cv.css.messageTypes.error)},updateSessionFromForm:function(n){var t=this;t.set("formSessionUpdateCallback",n);PaymentSession.updateSessionFromForm("card")},setMessage:function(i,r,u,f){f===void 0&&(f=!0);var e=this;e.set("errorMessage",i);n.cv.util.notify(e,i,r,{triggerMessages:f,clearExisting:!0,messageGroup:u,source:t.name})},clearMessages:function(i){var r=this;r.set("errorMessage","");n.cv.util.clearNotifications({viewModel:r,clearExisting:!0,messageGroup:i,source:t.name},!0)},debugLog:function(n){t.options.showDebugMessages&&console.log(n)}}))}};n.cv.ui.widget(i)})(jQuery);
96(function(n){var t="change",i={name:"orderStatus",extend:"orderSearch",options:{preloadedOrderNo:"",titleForSplitOrder:"",showSplitOrdersAsOne:!1,generatedHtml:"",enableDepositPaymentsForOrders:!1,ordersAwaitingPaymentPageUrl:""},events:[t],viewModelBound:function(){var t=this,i;t.emailFocused===!1&&(i=n.cv.util.hasContent(t.options.preloadedOrderNo)?"orderNumberSearchEmail":"orderNumberSearchNumber",t.element.find("#"+i).focus(),t.emailFocused=!0)},_extend:function(i,r){r.searchStarted=!1;r.emailFocused=!1;r.orderSearchService=function(){return i.get("isSearchByOrderNumber")?"orders/publicOrderSearchByOrderNumber":"orders/publicOrderSearchByName"};r.orderLineSearchService=function(){return i.get("isSearchByOrderNumber")?
96n.cv.css.orders.getOrderLinesForPublicUserByOrderNumber:n.cv.css.orders.getOrderLinesForPublicUserByName};r.orderLineSearchExtendedParams=function(){return i.get("isSearchByOrderNumber")?{email:i.get("emailForOrderNumberSearch")}:{email:i.get("emailForNameSearch"),billingSurname:i.get("billingSurname"),postcode:i.get("shippingPostCode")}};r.isSearchResultsHidden=function(){var t,f,u;return r.searchStarted===!1?!1:(t=i.itemList,t.length>0&&t[0].OrderTotalAmount>0)?(f=t[0].SoOrderNo,u=!0,n.each(t,function(n,t){return t.SoOrderNo!==f?(u=!1,!1):!0}),r.options.showSplitOrdersAsOne)?u:u?t.length===1:!1:!1};r.initOrderList=function(t,i,u){i.index=t;i.disableView=!1;i.isShowingOrder=!1;i.isRequestingReceipt=!1;i.hasAddress=!1;i.requestInvoiceReprint=!1;i.orderNumberDisplay=function(){return i.get("SoOrderNo")+" "+i.get("SoBoSuffix")};i.isOrderInvisible=function(){return r.options.showSplitOrdersAsOne&&n.cv.util.hasContent(this.SoBoSuffix)?!0:!1};var f=i.Customer[0].ShowTaxAs;i.isIncTax=f;u.set("clientSideIncTax",f);r.options.showSplitOrdersAsOne&&n.cv.util.hasContent(i.SoBoSuffix)===!1&&n.each(r.totalsFields,function(n,t){r.recalculateTotals(t,i.SoOrderNo,i)});i.showOrder=function(n){u.showOrder(n.data)};i.isReprintDisabled=function(){return!0};i.showPricing=function(){return this.get("Customer[0].ShowPricing")};u.set("isSearching",!1)};r.totalsFields=["OrderTotalAmount","OrderTotalAmountByStatus","OrderTotalAmountLessFreightChargesExGst","OrderTotalAmountExGst","OrderTotalAmountExTaxByStatus","OrderTotalTax","OrderTotalTaxByStatus"];r.backupFieldPrefix="orig";r.recalculateTotals=function(t,u,f){var o=r.dataSource.view(),s=n.map(i.getSortedOrders(o,u),function(n){return n[t]}),h=s.reduce(function(n,t){return n+t}),e=r.backupFieldPrefix+t;f[e]===undefined&&(f[e]=f[t]);f[t]=h};r.restoreTotals=function(n,t){var i=r.backupFieldPrefix+t;n[i]!==undefined&&(n[t]=n[i])};r.baseAddNewUiHistoryState=r.addNewUiHistoryState;r.addNewUiHistoryState=n.noop;r.mergedOrderDetailHtml="";var f=i.loadDeliveryAddressAndOrderLines,e=i.dataSourceBound,u={viewModelUpdated:function(){r.searchStarted===!0&&(r.isSearchResultsHidden()&&r.element.find(".cv-sortable-column-container button").first().trigger("click"),r.searchStarted=!1);i.itemList.length===0&&i.set("isSearching",!1)},canShowShippedQuantities:function(){return!1},validateSearchByOrderNumber:function(){return i.validateSearch(["orderNumber","emailForOrderNumberSearch"],"emailForOrderNumberSearch","emailForOrderNumberSearchError")},validateSearchByName:function(){return i.validateSearch(["emailForNameSearch","billingSurname","shippingPostCode"],"emailForNameSearch","emailForNameSearchError")},validateSearch:function(t,r,u){var e="",f=!0,o;return n.each(t,function(n,t){var r=i.checkRequiredField(t);r.ok===!1&&(e+=r.msg+"<br/>",f=!1)}),n.cv.util.validateField(i.get(r).trim(),"email")===!1&&(o="Email format is incorrect",i.set(u,o),e+=o+"<br/>",f=!1),f===!1&&n.cv.util.notify(i,e,n.cv.css.messageTypes.error,{triggerMessages:!0,clearExisting:!0}),f},dataSourceBound:function(){e.call(i);var t=n.grep(i.itemList,function(t){return n.cv.util.hasContent(t.SoBoSuffix)===!1&&n.cv.util.hasValue(t,"SoOrderingUser[0]")}),r=!0;t.length>0&&(r=t[0].SoOrderingUser[0].B2C);i.set("clientSideHideCustomerCode",r)},isSearching:!1,isSearchByOrderNumber:!0,searchByOrderNumber:function(){this.validateSearchByOrderNumber()!==!1&&i.startSearch(!0,{orderNo:i.get("orderNumber"),email:i.get("emailForOrderNumberSearch")})},searchByName:function(){this.validateSearchByName()!==!1&&i.startSearch(!1,{email:i.get("emailForNameSearch"),billingSurname:i.get("billingSurname"),postcode:i.get("shippingPostCode")})},startSearch:function(n,t){r.searchStarted=!0;i.set("isSearching",!0);i.set("isSearchByOrderNumber",n);i.setSearchProperties("isSearchingInvoiceOrNumber");i.search(_.extend(i.getSearchDefaults(r.options.showSplitOrdersAsOne),t))},orderDetailPageHeader:function(){var n=r.options;return n.showSplitOrdersAsOne&&i.get("shipmentNumber")>0?n.titleForSplitOrder+" # "+this.get("shipmentNumber"):""},getSortedOrders:function(t,i){var r=n.grep(t,function(n){return n.SoOrderNo===i});return _.sortBy(r,function(n){return n.SoBoSuffix})},disablePager:function(){return r.options.showSplitOrdersAsOne},shipmentNumber:0,clientSideIncExTaxOverride:!0,clientSideIncTax:!0,clientSideHideCustomerCode:!1,clientSideHideTopNavigation:!0,showOrder:function(t){var h,u,e,o,s;if(r.baseAddNewUiHistoryState({displayResultList:!1}),h=t.SoOrderNo,u=i.getSortedOrders(i.itemList,h),this.resetOrderMergingSettings(),t.set("clientSideIncExTaxOverride",!0),t.set("clientSideIncTax",t.get("isIncTax")),i.set("isSearching",!0),r.options.enableDepositPaymentsForOrders&&i.loadTransactionsLog(t),r.options.showSplitOrdersAsOne===!1||u.length===1){f.call(i,t).done(function(){i.set("isSearching",!1)});return}for(i.set("shipmentNumber",1),n.each(r.totalsFields,function(n,t){r.restoreTotals(u[0],t)}),e=u[0],o=f.call(i,e),s=1;s<u.length;s++)(function(n){o=o.then(function(){return i.appendGeneratedOrderDetail(),r.element.find("#order-track-view").hide(),i.set("shipmentNumber",n+1),e=u[n],f.call(i,e)})})(s);o.then(function(){i.appendGeneratedOrderDetail();i.set("generatedHtml",r.mergedOrderDetailHtml);i.set("isSearching",!1)})},hasTransactionsLogs:!1,hasBalanceOwing:!1,balanceAmountOwing:0,transactionsLogLines:[],loadTransactionsLog:function(t){n.cv.util.loadPaymentTransactionsLog(this,t._objectKey,t.soOrderNo)}
96,appendGeneratedOrderDetail:function(){r.mergedOrderDetailHtml+=r.element.find("#order-track-view").html()},resetOrderMergingSettings:function(){r.mergedOrderDetailHtml="";this.set("generatedHtml",r.mergedOrderDetailHtml);this.set("shipmentNumber",0)},checkRequiredField:function(t){var u={ok:!0,msg:""},r="";return n.cv.util.isNullOrWhitespace(i.get(t))&&(r=this.get(t+"Description")+" is required"),this.set(t+"Error",r),n.cv.util.hasContent(r)&&(u.ok=!1,u.msg=r),u},validateRequiredField:function(t,r){var u="";n.cv.util.isNullOrWhitespace(i.get(t))&&(u=this.get(t+"Description")+" is required");this.set(r,u)},getSearchDefaults:function(n){var t=n?9999:this.get("recordsPerPage");return{pageSize:t,take:t}}};r.addRequiredFields("orderNumber","Order Number",u);u.orderNumber=r.options.preloadedOrderNo;r.addRequiredFields("emailForOrderNumberSearch","Email",u);r.addRequiredFields("emailForNameSearch","Email",u);r.addRequiredFields("billingSurname","Billing Surname",u);r.addRequiredFields("shippingPostCode","Shipping Postcode",u);kendo.observable(n.extend(i,r.options,u));i.bind(t,function(n){n.field==="invoiceOrOrderNumber"&&(i.get("invoiceOrOrderNumber").length===0?i.set("disableSearchOptions",!1):i.set("disableSearchOptions",!0))})},addRequiredFields:function(n,t,i){i[n]="";i[n+"Error"]="";i[n+"Description"]=t;i[n+"Changed"]=function(){this.validateRequiredField(n,n+"Error")}}};n.cv.ui.widget(i)})(jQuery);
97(function(n){var t={name:"businessCard",extend:"mvvmwidget",options:{windowId:"businessCardWindow",windowWidth:"500px",windowTitle:"Business Card details for product {0}",productPictureFieldNumber:5,imagesPathPrefix:"/images/",backButtonText:"Back",nextButtonText:"Next",saveButtonText:"Save",wizardBackButtonId:"businessCardWizardBack",wizardNextButtonId:"businessCardWizardNext",formItemIdPrefix:"businessCardForm_",wizardButtonStyle:"width: 80px",wizardValidationFailedMessage:"<span style='color: red'>Please fill in all required fields (* = required).<\/span>",imagePrompt:"Image:",logChanges:!1,modalHeading:"Business Card Details",triggerMessages:!0},_window:null,_kendoWindow:null,_businessCardData:null,_wizardPage:1,_validationErrorMessage:"",_hyperlinkId:null,_orderNo:null,_boSuffix:null,_lineSeq:null,_productCode:null,viewModelBound:function(){var t=this;n.cv.css.bind(n.cv.css.eventnames.editBusinessCard,n.proxy(t.viewModel.execCommand_editBusinessCard,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.saveBusinessCard,n.proxy(t.viewModel.execCommand_saveBusinessCard,t.viewModel))},_getViewModel:function(){var t=this,i=kendo.observable(n.extend({}
97,t.options,{imageSrc:"/images/controls/bit.gif",editCard:function(n){t._hyperlinkId=n.target.id;var i=t._hyperlinkId.split("_");i.length==5&&i[0]=="businessCard"&&(t._orderNo=i[1],t._boSuffix=i[2],t._lineSeq=i[3],t._productCode=i[4],t._kendoWindow.title(t.options.windowTitle.replace("{0}",t._productCode)).center().open(),t._loadData(t,t._orderNo,t._boSuffix,t._lineSeq,t._productCode,t.options.productPictureFieldNumber))},item:null,execCommand_editBusinessCard:function(t){var i=this,r,u;return(i.set("item",t),t.IsBusinessCard===!1)?!1:(i.set("hasBusinessCardErrors",!1),i.set("errorMessage",""),i.set("isProcessing",!0),i.set("productOptionsLines",[]),r=i.get("productPictureFieldNumber"),u=i.get("imagesPathPrefix"),i.set("modalHeading",i.get("modalHeading").replace("{0}",t.StockCode)),n.cv.css.orders.loadBusinessCardDetailsForLine({orderNo:t.SoOrderNo,orderSuffix:"",lineSeq:t.LineSeq,productCode:t.StockCode,productPictureFieldNumber:r}).done(function(t){var e,r,s,o,f;if(t.data&&t.data.length>0){for(e=0;e<t.data.length;e++){if(r=t.data[e],n.cv.util.hasContent(r.Lookup)){for(s=[],o=r.Lookup.split(";"),f=0;f<o.length;f++)s.push({value:o[f],text:o[f]});r.LookupItems=s}n.cv.util.hasContent(r.ImageName)?(i.set("imageSrc",u+"/"+r.ImageName),i.set("hasImage",!0)):i.set("hasImage",!1)}i.set("productOptionsLines",t.data)}i.set("isProcessing",!1)}),!0)},execCommand_saveBusinessCard:function(){var t=this,u=t.get("item"),i;t.set("isProcessing",!0);var r=t.get("productOptionsLines"),f="",e="";for(i=0;i<r.length;i++)if(r[i].IsMandatory&&n.cv.util.isNullOrWhitespace(r[i].Data)){e="Field - "+r[i].Prompt+", is mandatory";break}else f+=r[i].OptionCode+"\t"+r[i].Data+"\t";if(n.cv.util.hasContent(e)){t.set("hasBusinessCardErrors",!0);t.set("errorMessage",e);t.set("isProcessing",!1);return}f+=".";n.cv.css.orders.saveBusinessCardDetailsForLine({orderNo:u.SoOrderNo,orderSuffix:"",lineSeq:u.LineSeq,optionCodeData:f,logChanges:"",productCode:u.StockCode}).done(function(i){t.set("isProcessing",!1);n.cv.util.hasContent(i.errorMessage)?(t.set("hasBusinessCardErrors",!0),t.set("errorMessage",i.errorMessage)):(t.set("hasBusinessCardErrors",!1),t.set("errorMessage",""),t.execCommand_closeBusinessCardModal(),u.execCommand_update())})},execCommand_closeBusinessCardModal:function(){n.fancybox.close()}}));return n("#"+t.options.windowId).length==0&&n("body").append("<div id='"+t.options.windowId+"'><\/div>"),t._window=n("#"+t.options.windowId),t._window.data("kendoWindow")||t._window.kendoWindow({width:t.options.windowWidth,modal:!0,visible:!1,close:t._onWindowClose}),t._kendoWindow=t._window.data("kendoWindow"),i},_loadData:function(t,i,r,u,f,e){var o=n.cv.ajax.call("BusinessCard/LoadBusinessCardData",{parameters:{soOrderNo:i,soBoSuffix:r,lineSeq:u,productCode:f,productPictureFieldNumber:e},success:function(n){t._businessCardData=n.data}});n.when(o).done(function(){t._wizardPage=1;t._drawWindowContent(t)})},_drawWindowContent:function(t){for(var r,e,u,o=[],s=null,i="<table width='100%'>",f=0;f<t._businessCardData.length;f++){r=t._businessCardData[f];i+="<tr>";i+="<td width='10%'>"+r.Prompt+"<\/td>";e=t.options.formItemIdPrefix+f;u="";switch(t._wizardPage){case 1:r.Lookup?(u+="<select id='"+e+"'>",u+=t._getOptionsForSelect(r.Lookup,r.Data),u+="<\/select>",o.push(e)):u+="<input type='text' maxlength='"+r.MaxLength+"' class='k-textbox' id='"+e+"' value=\""+r.Data+'" />';r.IsMandatory&&(u+="&nbsp;<span style='color: red'>*<\/span>");break;case 2:u+=r.Data}i+="<td style='white-space: nowrap'>"+u+"<\/td>";i+="<\/tr>";s=r.ImageName}i+="<tr>";i+="<td valign='top'>"+t.options.imagePrompt+"<\/td>";i+='<td><img src="'+t.options.imagesPathPrefix+s+"\" alt='' /><\/td>";i+="<\/tr>";i+="<tr>";i+="<td colspan='2' align='middle'>"+t._validationErrorMessage+"<\/td>";i+="<\/tr>";i+="<tr>";i+="<td colspan='2' align='right'>"+t._wizardButtons(t)+"<\/td>";i+="<\/tr>";i+="<\/table>";t._kendoWindow.content(i).center();t._convertSelectsToKendo(o);n("#"+t.options.wizardBackButtonId).click(function(){t._wizardBackClick(t)});n("#"+t.options.wizardNextButtonId).click(function(){t._wizardNextClick(t)})},_getOptionsForSelect:function(n,t){for(var i,e,u="<option value=''><\/option>",f=n.split(";"),r=0;r<f.length;r++)i=f[r],e=i==t?" selected='selected'":"",u+='<option value="'+i+'"'+e+">"+i+"<\/option>";return u},_convertSelectsToKendo:function(t){for(var i=0;i<t.length;i++)n("#"+t[i]).kendoDropDownList()},_wizardButtons:function(n){return n._wizardBackButton(n)+" "+n._wizardNextButton(n)},_wizardBackButton:function(n){var t="k-button";switch(n._wizardPage){case 1:t+=" k-state-disabled"}return n._wizardButton(n,n.options.wizardBackButtonId,t,n.options.backButtonText)},_wizardNextButton:function(n){var t="";switch(n._wizardPage){case 1:t=n.options.nextButtonText;break;case 2:t=n.options.saveButtonText}return n._wizardButton(n,n.options.wizardNextButtonId,"k-button",t)},_wizardButton:function(n,t,i,r){return'<button id="'+t+'" class="'+i+'" style="'+n.options.wizardButtonStyle+'">'+r+"<\/button>
97"},_wizardBackClick:function(n){switch(n._wizardPage){case 2:n._wizardPage--;n._drawWindowContent(n)}},_wizardNextClick:function(t){var r,i;switch(t._wizardPage){case 1:for(r=!0,i=0;i<t._businessCardData.length;i++){var u=t._businessCardData[i],f=t.options.formItemIdPrefix+i,e=n("#"+f);u.Data=e.val();u.IsMandatory&&u.Data.length==0&&(r=!1)}r?(t._validationErrorMessage="",t._wizardPage++):t._validationErrorMessage=t.options.wizardValidationFailedMessage;t._drawWindowContent(t);break;case 2:n("#"+t.options.windowId+" button").addClass("k-state-disabled").prop("disabled",!0);t._saveData(t)}},_saveData:function(t){for(var u,i="",r=0;r<t._businessCardData.length;r++)u=t._businessCardData[r],i+=u.OptionCode+"\t"+u.Data+"\t";i+=".";n.cv.ajax.call("BusinessCard/SaveBusinessCardData",{parameters:{soOrderNo:t._orderNo,soBoSuffix:t._boSuffix,lineSeq:t._lineSeq,optionCodeData:i,logChanges:t.options.logChanges,productCode:t._productCode},success:function(){var i=n("#"+t._hyperlinkId.replace(".","\\.")+"_hidden_span");i.length>0&&(n("#"+t._hyperlinkId.replace(".","\\.")+"_span").remove(),i.show(),i.attr("id",t._hyperlinkId+"_span"),n("#"+t._hyperlinkId.replace(".","\\.")+"_hidden").attr("id",t._hyperlinkId));t._kendoWindow.close()},error:function(i){alert(i.statusText);n("#"+t.options.windowId+" button").removeClass("k-state-disabled").removeProp("disabled")}})},_onWindowClose:function(){}};n.cv.ui.widget(t)})(jQuery);
98(function(n){var t,r,f,u,i,e;(function(n){n[n.Daily_EveryNDays=0]="Daily_EveryNDays";n[n.Daily_EveryWeekday=1]="Daily_EveryWeekday";n[n.Weekly=2]="Weekly";n[n.Monthly_DayOfEveryNMonths=3]="Monthly_DayOfEveryNMonths";n[n.Monthly_DayOfNthWeekEveryNMonths=4]="Monthly_DayOfNthWeekEveryNMonths";n[n.Yearly_DayOfMonthEveryNYears=5]="Yearly_DayOfMonthEveryNYears";n[n.Yearly_DayOfNthWeekOfMonthEveryNYears=6]="Yearly_DayOfNthWeekOfMonthEveryNYears"})(t||(t={}));r=function(){function n(){this.Sunday=!1;this.Monday=!1;this.Tuesday=!1;this.Wednesday=!1;this.Thursday=!1;this.Friday=!1;this.Saturday=!1}return n.newConfigFromJson=function(t){var i=new n;return i.Sunday=t.Sunday,i.Monday=t.Monday,i.Tuesday=t.Tuesday,i.Wednesday=t.Wednesday,i.Thursday=t.Thursday,i.Friday=t.Friday,i.Saturday=t.Saturday,i},n.prototype.hasOneDaySet=function(){return this.countDaysSet()==1},n.prototype.countDaysSet=function(){var n=0;return n=this.Sunday?n+1:n,n=this.Monday?n+1:n,n=this.Tuesday?n+1:n,n=this.Wednesday?n+1:n,n=this.Thursday?n+1:n,n=this.Friday?n+1:n,this.Saturday?n+1:n},n.prototype.hasWeekdaysSet=function(){return this.countDaysSet()==5&&this.Saturday==!1&&this.Sunday==!1},n.prototype.hasWeekendSet=function(){return this.countDaysSet()==2&&this.Saturday==!0&&this.Sunday==!0},n.prototype.hasAllDaysSet=function(){return this.countDaysSet()==7},n.prototype.toString=function(){return this.Sunday?"Sunday":this.Monday?"Monday":this.Tuesday?"Tuesday":this.Wednesday?"Wednesday":this.Thursday?"Thursday":this.Friday?"Friday":this.Saturday?"Saturday":""},n.prototype.setAllDays=function(n){this.Sunday=n;this.Monday=n;this.Tuesday=n;this.Wednesday=n;this.Thursday=n;this.Friday=n;this.Saturday=n},n.prototype.setDayByNumber=function(n){n===void 0&&(n=-1);this.setAllDays(!1);n!=-1&&(n==0&&(this.Sunday=!0),n==1&&(this.Monday=!0),n==2&&(this.Tuesday=!0),n==3&&(this.Wednesday=!0),n==4&&(this.Thursday=!0),n==5&&(this.Friday=!0),n==6&&(this.Saturday=!0))},n}(),function(n){n[n.First=1]="First";n[n.Second=2]="Second";n[n.Third=3]="Third";n[n.Fourth=4]="Fourth";n[n.Last=5]="Last"}(f||(f={})),function(n){n[n.NoEnd=0]="NoEnd";n[n.NumberOfOccurrences=1]="NumberOfOccurrences";n[n.EndDate=2]="EndDate"}(u||(u={})),function(n){n[n.Create=0]="Create";n[n.Edit=1]="Edit";n[n.Configure=2]="Configure"}(i||(i={}));e={name:"scheduleStandingOrder",extend:"mvvmwidget",options:{standingOrderName:"",forceConfirmReadTerms:!1,termsAndConditionsMandatoryMessage:"",orderKey:"",mode:i.Create,viewTemplate:null,triggerMessages:!0,saveButtonPrompt:"",cancelButtonPrompt:"",closeButtonPrompt:"",cancelRedirectUri:"",configureSoScheduleUri:""},events:[],initialised:function(){var t=this;t.options.mode===i.Configure&&(n.cv.css.bind(n.cv.css.eventnames.selectingApprovers,function(){t.viewM
98odel._setConfigureStandingOrderButtonEnabledState(!1)}),n.cv.css.bind(n.cv.css.eventnames.approversSelected,function(){t.viewModel._setConfigureStandingOrderButtonEnabledState(!0)}))},_getViewModel:function(){function h(n){return kendo.toString(n,"yyyy/MM/dd")}var e=this,o=e.options,c=function(n){for(var i=[7,14,21,28,31],r=n.getDate(),t=0;t<=4;t++)if(r<=i[t])return t+1;throw new Error("Date not in valid range.");},s=kendo.observable(n.extend({},o,{standingOrderName:o.standingOrderName,ccUsers:"",isSharedOrder:!0,readTerms:!1,orderKey:o.orderKey,forceConfirmReadTerms:o.forceConfirmReadTerms,termsAndConditionsMandatoryMessage:o.termsAndConditionsMandatoryMessage,isSavingTemplate:!1,reoccurrenceType:t.Monthly_DayOfEveryNMonths,startDate:h(new Date),endType:u.NoEnd,occurrences:1,endDate:null,reoccurrenceTopLevel:"monthly",showDailyReoccurrence:function(){return this.get("reoccurrenceTopLevel")==="daily"},showWeeklyReoccurrence:function(){return this.get("reoccurrenceTopLevel")==="weekly"},showMonthlyReoccurrence:function(){return this.get("reoccurrenceTopLevel")==="monthly"},showYearlyReoccurrence:function(){return this.get("reoccurrenceTopLevel")==="yearly"},data:{daily:{mode:t[t.Daily_EveryNDays],every:1},weekly:{mode:t[t.Weekly],every:1,days:new r},monthly:{mode:t[t.Monthly_DayOfEveryNMonths],Monthly_DayOfEveryNMonths:{dayOfMonth:1,every:1},Monthly_DayOfNthWeekEveryNMonths:{weekOfMonth:f.First,selectedDayMode:"",every:1}},yearly:{mode:t[t.Yearly_DayOfMonthEveryNYears],every:1,Yearly_DayOfMonthEveryNYears:{monthOfYear:1,dayOfMonth:1},Yearly_DayOfNthWeekOfMonthEveryNYears:{weekOfMonth:f.First,selectedDayMode:"",monthOfYear:1}}},figureOutWeekOfCurrentMonth:c,_generateDefaultEndDate:function(){var t=new Date,n=new Date;return n.setDate(t.getDate()+1),n.setFullYear(t.getFullYear()+1),n},init:function(){var n=new Date,t=n.getDate(),i=n.getMonth()+1,r=c(n),u=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"][n.getDay()],f=new Date;f.setDate(n.getDate()+1);this.set("startDate",f);this.set("occurrences",10);this.set("endDate",this._generateDefaultEndDate());this.set("data.daily.every",1);this.set("data.weekly.every",1);this.get("data.weekly.days").setAllDays(!1);this.set("data.monthly.Monthly_DayOfEveryNMonths.dayOfMonth",t);this.set("data.monthly.Monthly_DayOfEveryNMonths.every",1);this.set("data.monthly.Monthly_DayOfNthWeekEveryNMonths.weekOfMonth",r);this.set("data.monthly.Monthly_DayOfNthWeekEveryNMonths.selectedDayMode",u);this.set("data.monthly.Monthly_DayOfNthWeekEveryNMonths.every",1);this.set("data.yearly.Yearly_DayOfMonthEveryNYears.monthOfYear",i);this.set("data.yearly.Yearly_DayOfMonthEveryNYears.dayOfMonth",t);this.set("data.yearly.Yearly_DayOfNthWeekOfMonthEveryNYears.weekOfMonth",r);this.set("data.yearly.Yearly_DayOfNthWeekOfMonthEveryNYears.selectedDayMode",u);this.set("data.yearly.Yearly_DayOfNthWeekOfMonthEveryNYears.monthOfYear",i)},initData:function(n){function f(n,t){var r="data."+o.get("reoccurrenceTopLevel")+"."+i.Frequency+"."+n;o.set(r,t)}function s(n){var t=r.newConfigFromJson(n);return t.hasOneDaySet()?t.toString():t.hasWeekdaysSet()?"weekday":t.hasWeekendSet()?"weekend-day":"day"}var o=this,h=n.order,i,e;if(this.set("standingOrderName",h.SoCustReference),this.set("ccUsers",n.CCUsers.join(";")),this.set("isSharedOrder",n.OrderShareType=="Shared"),i=n.ReoccurrenceState,this.set("startDate",i.StartDate),this.set("occurrences",i.OccurrencesRequired),this.set("endDate",i.EndDate==null?this._generateDefaultEndDate():i.EndDate),this.set("endType",u[n.ReoccurrenceState.RangeType]),e=i.WeekOfMonth,e!=null&&e.length>0)switch(e.toLowerCase()){case"first":i.WeekOfMonth=1;break;case"second":i.WeekOfMonth=2;break;case"third":i.WeekOfMonth=3;break;case"fourth":i.WeekOfMonth=4;break;case"last":i.WeekOfMonth=5}switch(t[i.Frequency]){case t.Daily_EveryNDays:this.set("reoccurrenceTopLevel","daily");this.set("data.daily.every",i.Every);break;case t.Daily_EveryWeekday:this.set("reoccurrenceTopLevel","daily");break;case t.Weekly:this.set("reoccurrenceTopLevel","weekly");this.set("data.weekly.every",i.Every);this.set("data.weekly.days",r.newConfigFromJson(i.Days));break;case t.Monthly_DayOfEveryNMonths:this.set("reoccurrenceTopLevel","monthly");f("every",i.Every);f("dayOfMonth",i.DayOfMonth);break;case t.Monthly_DayOfNthWeekEveryNMonths:this.set("reoccurrenceTopLevel","monthly");f("weekOfMonth",i.WeekOfMonth);f("selectedDayMode",s(i.Days));f("every",i.Every);break;case t.Yearly_DayOfMonthEveryNYears:this.set("reoccurrenceTopLevel","yearly");this.set("data.yearly.every",i.Every);f("monthOfYear",i.MonthOfYear);f("dayOfMonth",i.DayOfMonth);break;case t.Yearly_DayOfNthWeekOfMonthEveryNYears:this.set("reoccurrenceTopLevel","yearly");this.set("data.yearly.every",i.Every);f("weekOfMonth",i.WeekOfMonth);f("selectedDayMode",s(i.Days));f("monthOfYear",i.MonthOfYear)}this.set("data."+this.get("reoccurrenceTopLevel")+".mode",i.Frequency)},_selectedDayToDaysObject:function(n){var t=new r,i;return n==="weekday"?(t.setAllDays(!0),t.Saturday=!1,t.Sunday=!1,t):n==="weekend-day"?(t.setAllDays(!1),t.Saturday=!0,t.Sunday=!0,t):n==="day"?(t.setAllDays(!0),t):(i={Sunday:0,Monday:1,Tuesday:2,Wednesday:3,Thursday:4,Friday:5,Saturday:6},t.setDayByNumber(i[n]),t)},extractData:function(){var f=this.get("reoccurrenceTopLevel"),i=this.get("data")[f],r=i.mode,t=i[r],n={frequency:r,orderKey:this.get("orderKey"),name:this.get("standingOrderName"),ccUsers:this.get("ccUsers"),isSharedOrder:this.get("isS
98haredOrder"),readTerms:this.get("readTerms"),rangeType:u[this.get("endType")],startDate:this.get("startDate"),occurrencesRequired:this.get("occurrences"),endDate:this.get("endDate")};switch(f){case"daily":n.every=i.every;break;case"weekly":n.every=i.every;n.days=i.days;break;case"monthly":switch(r){case"Monthly_DayOfEveryNMonths":n.every=t.every;n.dayOfMonth=t.dayOfMonth;break;case"Monthly_DayOfNthWeekEveryNMonths":n.weekOfMonth=t.weekOfMonth;n.days=this._selectedDayToDaysObject(t.selectedDayMode);n.selectedDayMode=t.selectedDayMode;n.every=t.every}break;case"yearly":switch(r){case"Yearly_DayOfMonthEveryNYears":n.every=i.every;n.monthOfYear=t.monthOfYear;n.dayOfMonth=t.dayOfMonth;break;case"Yearly_DayOfNthWeekOfMonthEveryNYears":n.every=i.every;n.weekOfMonth=t.weekOfMonth;n.days=this._selectedDayToDaysObject(t.selectedDayMode);n.monthOfYear=t.monthOfYear}}return n.monthOfYear&&(n.monthOfYear=parseInt(n.monthOfYear,10)),n.weekOfMonth&&(n.weekOfMonth=parseInt(n.weekOfMonth,10)),n.startDate=h(n.startDate),n.endDate&&(n.endDate=h(n.endDate)),n},extractDataAsString:function(){return JSON.stringify(this.extractData())},saveStandingOrderInformation:function(){var r=this,f,u,o;return(r.set("isSavingTemplate",!0),r.get("forceConfirmReadTerms")===!0&&r.get("readTerms")===!1)?(n.cv.util.notify({triggerMessages:e.options.triggerMessages,source:e.name,message:r.get("termsAndConditionsMandatoryMessage"),type:n.cv.css.messageTypes.error}),f=n.Deferred(),f.resolve(),r.set("isSavingTemplate",!1),f.promise()):(u=this.extractData(),o=t[u.frequency],u.dayOfMonth>28&&(o==t.Monthly_DayOfEveryNMonths||o==t.Yearly_DayOfMonthEveryNYears)&&!confirm("Some months have less than 31 days. For these months, the occurrence will fall on the last day of the month"))?(r.set("isSavingTemplate",!1),n.cv.util.resolvedPromise()):n.cv.css.orders.saveStandingOrder({_objectKey:this.get("orderKey"),data:u}).done(function(t){if(t.data&&t.data.success)t.data.order&&t.data.schedule&&(r.set("responseOrder",t.data.order),r.set("responseSchedule",t.data.schedule)),e.options.mode===i.Create&&t.data.redirectUrl&&t.data.redirectUrl.length>0?window.location.href=t.data.redirectUrl:(n.cv.util.clearNotifications(r),n.fancybox.close());else if(n.cv.util.hasValue(t,"data.messages.length"))for(var u=0;u<t.data.messages.length;u++)n.cv.util.notify({triggerMessages:e.options.triggerMessages,source:e.name,message:t.data.messages[u],type:n.cv.css.messageTypes.error,clearExisting:u==0})}).always(function(){r.set("isSavingTemplate",!1)})},setEndDateAsEndType:function(){this.set("endType",2)},cancelButtonPrompt:function(){return e.options.mode===i.Create?e.options.cancelButtonPrompt:e.options.closeButtonPrompt},redirectingToScheduleStandingOrderPage:!1,redirectToScheduleStandingOrderPage:function(){var t=this;t.set("redirectingToScheduleStandingOrderPage",!0);n.cv.util.clearNotifications(t);n.cv.css.orders.canConfigureStandingOrder({_objectKey:e.options.orderKey}).done(function(i){var r=i.data;r&&r.Success?n.cv.util.redirect(e.options.configureSoScheduleUri):(n.cv.util.notify({triggerMessages:e.options.triggerMessages,source:e.name,message:r.Messages[0],type:n.cv.css.messageTypes.error}),t.set("redirectingToScheduleStandingOrderPage",!1))})},scheduleStandingOrderButtonEnabled:!0,_setConfigureStandingOrderButtonEnabledState:function(n){this.set("scheduleStandingOrderButtonEnabled",n)},onSave:function(){this.saveStandingOrderInformation()},onCancel:function(){e.options.mode===i.Create?window.location.href=n.cv.util.hasContent(e.options.cancelRedirectUri)?e.options.cancelRedirectUri:"/cart":(n.cv.util.clearNotifications(this),n.fancybox.close())}}));return o.mode!==i.Configure&&s.init(),s.bind("change",function(n){n.field=="endDate"&&s.setEndDateAsEndType()}),o.mode==i.Edit&&n.cv.css.orders.getStandingOrderInformation({_objectKey:o.orderKey}).done(function(t){if(n.cv.util.hasValue(t,"data.schedule[0]")&&n.cv.util.hasValue(t,"data.order[0]")){var i=t.data.schedule[0];i.order=t.data.order[0];s.initData(i)}}),s}};n.cv.ui.widget(e)})(jQuery);
99(function(n){var t="widgetDataInitialised",i={name:"printOrder",extend:"mvvmwidget",options:{templateName:"",pdfSize:"",pdfCustomWidth:"",pdfCustomHeight:"",orderKey:"",isPrintingOrder:!1,canPrintOrder:!1,orderPrintedSuccessMessage:"The order has failed to send to the printer.",orderPrintedFailMessage:"The order has successfully been sent to the printer."},extendEvents:[t],viewModelBound:function(){var n=this;n.trigger(t)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this,i=function(){return[]};return kendo.observable(n.extend(t.options,{isProcessing:!1,updateViewModelFromDataSource:function(){var n=i();console.debug(n)},printOrder:function(){n.cv.css.printOrder.sendOrderData({TemplateName:t.options.templateName,PdfSize:t.options.pdfSize,PdfCustomWidth:t.options.pdfCustomWidth,PdfCustomHeight:t.options.pdfCustomHeight},t.options.orderKey,t.options.labelPrintedSuccessfullyMessage)}}))}};n.cv.ui.widget(i)})(jQuery);
100(function(n){n.connection=n.connection||{};var t={name:"signalRClientSelector",extend:"mvvmwidget",options:{clientsDataSource:[],currentClient:"",currentClientFriendlyName:"",isSingleClientConnectedAndJoined:!1}
100,clientHub:{},viewModelBound:function(){var i=this,t;if(window.signalRClientSelectorWidget){n.cv.util._consoleMessage(n.cv.css.messageTypes.error,"cv.css.ui.signalRClientSelector.js can only be present once on a page!");return}window.signalRClientSelectorWidget=i;i.clientHub=n.connection.clientHub;t=i.viewModel;i.clientHub.client.newMessage=t._onClientHubNewMessages;i.clientHub.client.groupClientConnected=t._onClientHubGroupClientConnected;i.clientHub.client.groupClientDisconnected=t._onClientHubGroupClientDisconnected;i.clientHub.client.groupClientReconnected=t._onClientHubGroupClientReconnected;i.clientHub.client.clientHubGroupJoined=t._onClientHubGroupJoined;i.clientHub.client.clientHubGroupCleared=t._onClientHubGroupCleared;i.clientHub.client.messageReceived=t._onMessageReceived;i.clientHub.client.messageProcessed=t._onMessageProcessed;n.cv.util.debuggingEnabled()&&(n.connection.hub.logging=!0,n.connection.hub.error(function(t){n.cv.util._consoleMessage(n.cv.css.messageTypes.error,"Client Hub error occurred: "+t)}));n.connection.hub.start().done(function(){var i=t._getConnectedClientCount();if(i===0){t.set("currentClient","");t.set("currentClientFriendlyName","");t.set("currentClientConnectionId","");return}t.set("currentClientConnectionId",n.connection.hub.id);t._checkIfOnlyOneClientConnectedAndAutoJoin();t.isSingleClientConnected()===!0&&t.set("isSingleClientConnectedAndJoined",!0);t._getIsMultipleClientsConnected()})},_getViewModel:function(){var t=this;return kendo.observable(n.extend({},t.options,{clientsDataSource:t.options.clientsDataSource,currentClient:t.options.currentClient,currentClientFriendlyName:t.options.currentClientFriendlyName,currentClientConnectionId:"",clientHubNewMessages:"",connectedClientCount:-1,isSingleClientConnectedAndJoined:t.options.isSingleClientConnectedAndJoined,isMultipleClientsConnected:!1,isDropDownListVisible:!1,_onClientHubNewMessages:function(n){var t=window.signalRClientSelectorWidget.viewModel;t.set("clientHubNewMessages",t.get("clientHubNewMessages")+n+"<br /><br />")},_onClientHubGroupClientConnected:function(n,t){var i=window.signalRClientSelectorWidget.viewModel;i._refreshDataSourceAndIfSingleClientConnectedAutoJoin(t)},_onClientHubGroupClientDisconnected:function(n,t){var i=window.signalRClientSelectorWidget.viewModel;i.get("currentClient")===n&&(i.set("currentClient",""),i.set("currentClientFriendlyName",""),i.set("currentClientFConnectionId",""),i.set("isSingleClientConnectedAndJoined",!1));i._refreshDataSourceAndIfSingleClientConnectedAutoJoin(t)},_onClientHubGroupClientReconnected:function(n,t){var i=window.signalRClientSelectorWidget.viewModel;i._refreshDataSourceAndIfSingleClientConnectedAutoJoin(t)},_onClientHubGroupCleared:function(){var n=window.signalRClientSelectorWidget.viewModel;n.set("currentClient","");n.set("currentClientFriendlyName","");n.set("currentClientConnectionId","");n.set("isSingleClientConnectedAndJoined",!1)},_onClientHubGroupJoined:function(n,t,i){var r=window.signalRClientSelectorWidget.viewModel;r.set("currentClient",n);r.set("currentClientFriendlyName",t);r.set("currentClientConnectionId",i);r.isSingleClientConnected()===!0&&r.set("isSingleClientConnectedAndJoined",!0)},_onMessageReceived:function(t,i,r){n.cv.util.notify({triggerMessages:!0,message:r,type:i===!0?n.cv.css.messageTypes.success:n.cv.css.messageTypes.error,clearExisting:!0});n.cv.util._consoleMessage(n.cv.css.messageTypes.info,"Client Group Received Print Data - Client Group: "+t+"; Message: "+r)},_onMessageProcessed:function(t,i,r){var u=n.cv.util.tryParseJson(r),f=u.Redirect,e;if(f!==undefined){n.cv.css.trigger(n.cv.css.eventnames.terminalPaymentComplete);n.cv.util.redirect(f,{},!1);return}e=u.AdditionalMessage===undefined?u:u.AdditionalMessage;n.cv.util.notify({triggerMessages:!0,message:e,type:i===!0?n.cv.css.messageTypes.success:n.cv.css.messageTypes.error,clearExisting:!0});n.cv.util._consoleMessage(n.cv.css.messageTypes.info,"Client Group Completed Processing Print Data - Client Group: "+t+"; Message: "+r)},_refreshDataSourceAndIfSingleClientConnectedAutoJoin:function(n){var t=window.signalRClientSelectorWidget.viewModel;t.set("clientsDataSource",n);t.set("connectedClientCount",-1);t._checkIfOnlyOneClientConnectedAndAutoJoin();t._getIsMultipleClientsConnected()},_joinClientGroupInHub:function(n){t.clientHub.server.joinGroupAsync(n)},_checkIfOnlyOneClientConnectedAndAutoJoin:function(){var n=this,i=n.get("clientsDataSource"),t;if(n.isSingleClientConnected())if(n.get("currentClient").length===0){for(t=0;t<i.length;t++)if(i[t].IsClientConnected===!0){n._joinClientGroupInHub(i[t].ClientGroup);break}}else n.set("isSingleClientConnectedAndJoined",!0)},_getIsMultipleClientsConnected:function(){var n=this;n.set("isMultipleClientsConnected",n._getConnectedClientCount()>1)},_getConnectedClientCount:function(){var t=this,n=t.get("connectedClientCount"),i,r;if(n>-1)return n;if(i=t.get("clientsDataSource"),n=0,i.length<1)return t.set("connectedClientCount",n),0;for(r=0;r<i.length;r++)i[r].IsClientConnected===!0&&n++;return t.set("connectedClientCount",n),n==1},onClientChanged:function(n){var t=this;t._joinClientGroupInHub(n.data.currentClient);t.hideDropDown()},isSingleClientConnected:function(){var n=this;return n._getConnectedClientCount()==1},hasCurrentClient:function(){var n=this;return n.get("currentClient").length>0},hideDropDown:function(){var n=this;n.set("isDropDownListVisible",!1)},toggleDropDownListVisible:function(){var n=this,i=n._getConnectedClientCount(),t=n.get("isDropDownListVisible");if(i===1){t===!0&&n.set("isDropDownListVisible",!1);return}n.set("isDropDownListVisible",!t)}}))}};n.cv.ui.widget(t)})(jQuery);
101var ActionTypeEnum;(function(n){n[n.AskAQuestion=0]="AskAQuestion";n[n.ShowContent=1]="ShowContent";n[n.RedirectToAPage=2]="RedirectToAPage"})(ActionTypeEnum||(ActionTypeEnum={})),function(n){var t="widgetDataInitialised",i={name:"helpTopicSearch",extend:"mvvmwidget",options:{topics:[],popularTopics:[],hasPopularTopics:!1,searchText:"",numberOfPopularHelpTopicsToDisplay:3},extendEvents:[t],viewModelBound:function(){var n=this;n.viewModel.getPopularTopics();n.trigger(t)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this,r=function(){return[]},i=kendo.observable(n.extend({},t.options,{searchText:"",updateViewModelFromDataSource:function(){var n=r();console.debug(n)},searchTopics:function(r){r.trim()!=""&&n.cv.css.help.getTopics({searchText:r}).done(function(r){i.set("topics",r.data);var u=n(t.element).find("input[data-text-field='Description']").data("kendoAutoComplete");u.dataSource.filter([])})},getPopularTopics:function(){t.options.numberOfPopularHelpTopicsToDisplay>0&&n.cv.css.help.getPopularTopics({numberOfTopicsToDisplay:t.options.numberOfPopularHelpTopicsToDisplay}).done(function(n){var t=n.data;i.set("popularTopics",t);i.set("hasPopularTopics",t.length>0)})},topicSelected:function(n){i.set("searchText",n.data.Description)},searchFiltering:function(n){n.filter.value?t.viewModel.searchTopics(n.filter.value):(n.preventDefault(),n.sender.close())}}));return i.bind("change",function(i){if(i.field=="searchText"){var u=this,f=_.union(_.flatten(u.topics),_.flatten(u.popularTopics)),r=_.find(f,function(n){return n.Description===i.sender.searchText});r&&(n.cv.css.trigger(n.cv.css.eventnames.helpTopicSelected,{name:t.name,topic:r}),n.cv.css.help.incrementTopicHitCount({helpContentId:r.HelpContentID}))}}),i}};n.cv.ui.widget(i)}(jQuery);
102var RelatedContentTypeEnum;(function(n){n[n.Article=0]="Article";n[n.Gallery=1]="Gallery";n[n.Product=2]="Product"})(RelatedContentTypeEnum||(RelatedContentTypeEnum={})),function(n){var t="widgetDataInitialised",i={name:"helpTags",extend:"mvvmwidget",options:{relatedContent:[],relatedContentCount:0,hasRelatedContent:!1},extendEvents:[t],viewModelBound:function(){var n=this;n.trigger(t)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var i=this,r=function(){return[]},t;return n.cv.css.bind(n.cv.css.eventnames.helpTopicSelected,function(n){var t=n.topic.Tags;i.viewModel.getRelatedContent(t)}),n.cv.css.bind(n.cv.css.eventnames.helpActionSelected,function(n){var t=n.breadcrumb.map(function(n){return n.Tags}).join(",");i.viewModel.getRelatedContent(t)}),t=kendo.observable(n.extend({},i.options,{updateViewModelFromDataSource:function(){var t=r();n.cv.util.consoleMessage(t)},getRelatedContent:function(r){i.viewModel.set("relatedContent",[]);t.set("relatedContentCount",0);t.set("hasRelatedContent",!1);r!==""&&n.cv.css.help.getRelatedContent({tags:r}).done(function(i){var r=i.data.Links;n.each(r,function(n,t){t.Type=RelatedContentTypeEnum[t.Type]});t.set("relatedContent",r);t.set("relatedContentCount",r.length);t.set("hasRelatedContent",r.length>0)})}}))}};n.cv.ui.widget(i)}(jQuery);
103(function(n){var t="widgetDataInitialised",i={name:"helpWorkflow",extend:"mvvmwidget",options:{question:"",answers:[],isQuestionAndAnswer:!1,content:"",isContent:!1,breadcrumb:[],tags:[],relAttributeValueForExternalLinks:""},extendEvents:[t],viewModelBound:function(){var n=this;n.trigger(t)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var i=this,r=function(){return[]},t;return n.cv.css.bind(n.cv.css.eventnames.helpTopicSelected,function(n){i.viewModel.set("breadcrumb",[]);i.viewModel.redirectToAction(n.topic)}),t=kendo.observable(n.extend({},i.options,{updateViewModelFromDataSource:function(){var t=r();n.cv.util.consoleMessage(t)},refreshTags:function(){var n=t.get("breadcrumb"),i=n.slice(1,n.length);t.set("tags",i)},redirectToAction:function(r){var u,f;switch(r.ActionType){case ActionTypeEnum.AskAQuestion:i.viewModel.getQuestionAndAnswers(r.ActionReference);i.viewModel.appendToBreadcrumb(r);break;case ActionTypeEnum.ShowContent:t.set("content",r.ActionReference);t.set("isContent",!0);t.set("isQuestionAndAnswer",!1);i.viewModel.appendToBreadcrumb(r);break;case ActionTypeEnum.RedirectToAPage:u=n.cv.util.getLocation(window.location.href).hostname;u&&r.ActionReference.indexOf(u)!==-1?document.location.href=r.ActionReference:(f=i.options.relAttributeValueForExternalLinks.replace(" ",","),window.open(r.ActionReference,"_blank",f));break;default:console.log("Step has been setup incorrectly.")}},getQuestionAndAnswers:function(i){n.cv.css.help.getQuestionAndAnswers({helpContentId:i}).done(function(n){var i=n.data;t.set("question",i.Question[0].Description);t.set("answers",i.Answers);t.set("isQuestionAndAnswer",!0);t.set("isContent",!1)})}
103,actionSelected:function(t){var r=this,u=t.data!==undefined?t.data:t;r.redirectToAction(u);n.cv.css.trigger(n.cv.css.eventnames.helpActionSelected,{name:i.name,breadcrumb:r.breadcrumb})},appendToBreadcrumb:function(n){var t=this;_.last(t.breadcrumb)!=n&&t.breadcrumb.push(n);t.refreshTags()},removeFromBreadcrumb:function(n){for(var t=this,r=t.breadcrumb.indexOf(n.data),i=t.breadcrumb.length;i>r;i--)t.breadcrumb.pop();t.actionSelected(_.last(t.breadcrumb));t.refreshTags()}}))}};n.cv.ui.widget(i)})(jQuery);
104(function(n){var t={name:"accountInfoRegister",extend:"mvvmwidget",options:{customFieldsJson:[],separator:"",lookupFieldDataSourceAppendix:"",isProcessing:!1},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},initialised:function(){var t=this,i=t.options,n=t._vm;n.hasOnlyOneFieldGroup()&&(n.set(i.customFieldsJson[0].GroupName,!0),n.set("promptModeSelection",!1))},_getDefaultViewModel:function(){var n=this,i=n.getAugmentedOptions(),t=kendo.observable(i);return n._vm=t,t},addField:function(t,i,r,u){u[t]=n.cv.util.hasContent(r)?r:"";u[t+"Error"]="";u[t+"Description"]=i;var f=this;f.addChangedHandler(t,u)},addLookupField:function(n,t,i,r,u){var f=this,e;f.addField(n,t,r,u);f.addChangedHandler(n,u,!0);e=f.getLookupFieldDataSource(i);u["".concat(n).concat(f.options.lookupFieldDataSourceAppendix)]=e},getLookupFieldDataSource:function(n){var i=[];for(var t in n)n.hasOwnProperty(t)&&i.push({label:n[t],value:t});return i},addChangedHandler:function(t,i,r){var u=this;i[t+"Changed"]=function(t){var f=(r?t.sender.element.parent().find("select"):n(t.target)).data("field-name"),i=u.getCustomFieldsJsonByFieldName(f);n.cv.util.hasValue(i)&&u._vm.setFieldErrorMessage(f,u._vm.validateInput(i.field,i.groupName))}},getCustomFieldsJsonByFieldName:function(t){var o=this,r=o.options,u=t.split(r.separator),f=u[0],s=u[1],e=n.grep(r.customFieldsJson,function(n){return n.GroupName===f}),i;return e.length>0&&(i=n.grep(e[0].Fields,function(n){return n.FieldName===s}),i.length>0)?{field:i[0],groupName:f}:null},augmentOptions:function(t){var i=this;t.executeOnField(function(r,u){var f=t.getFieldName(u,r);n.cv.util.hasValue(r.Lookup)?i.addLookupField(f,r.Label,r.Lookup.KvPairs,r.DefaultValue,t):i.addField(f,r.Label,r.DefaultValue,t)},!0)},_vm:null,getAugmentedOptions:function(){var i=this,t=n.extend(i.options,{promptModeSelection:!0,isBeforeSubmit:!0,contactId:"",linkExpiryTime:"",submitButtonVisible:!0,submit:function(){var t=this,i,r;t.validateAllInputs()!==!1&&(i=t.extractParameters(),t.set("contactId",""),t.set("linkExpiryTime",""),t.set("isProcessing",!0),r=n.cv.css.accounts.verifyAccountInfo({json:JSON.stringify(i),verifyOnly:!1}),r.done(function(n){var i=n.data;i.Success?(t.set("contactId",i.Messages[0]),t.set("linkExpiryTime",i.Messages[1]),t.set("isBeforeSubmit",!1)):t.showMessage(i.Messages[0])}).always(function(){t.set("isProcessing",!1)}))},validateAllInputs:function(){var t=this,i;return(t.clearErrorMessage(),i="",t.executeOnField(function(r,u){var f=t.validateInput(r,u);i+=n.cv.util.hasContent(f)?f+"<br/>":""}),n.cv.util.hasContent(i))?(t.showMessage(i),!1):!0},verifyCustomInfo:function(){var r=this,u,f;r.validateAllInputs()!==!1&&(u=r.extractParameters(),r.set("isProcessing",!0),f=n.cv.css.accounts.verifyAccountInfo({json:JSON.stringify(u),verifyOnly:!0}),f.done(function(f){var e=f.data,o,s,h;e.Success?(o=n.grep(u.Fields,function(n){return n&&n.Lookup&&n.Lookup.IsSendViaSelection})[0],o&&(s=JSON.parse(e.Messages[0]),h="".concat(r.getFieldName(u.GroupName,o)).concat(t.lookupFieldDataSourceAppendix),r.set(h,i.getLookupFieldDataSource(s)),r.set("submitButtonVisible",!0))):r.showMessage(e.Messages[0])}).always(function(){r.set("isProcessing",!1)}))},showMessage:function(t){var i=this;n.cv.util.notify(i,t,n.cv.css.messageTypes.error,{triggerMessages:!0,clearExisting:!0})},extractParameters:function(){var i=this,r;return i.executeOnField(function(n,t){n.Value=i.get(i.getFieldName(t,n))}),r=n.grep(t.customFieldsJson,function(n){var t=n.GroupName;return i.get(t)===!0}),r[0]},modeSelected:function(i){var r=this,u;r.set("promptModeSelection",!1);r.clearErrorMessage();u=n(i.target).data("selected-mode");n.each(t.customFieldsJson,function(t,i){var f=i.GroupName===u;r.set(i.GroupName,f);f&&(r.set("submitButtonVisible",n.cv.util.hasValue(i.CustomVerification)===!1),r.clearAllInputs())})},switchMode:function(){var n=this;n.set("promptModeSelection",!0)},submitCompleted:function(){var n=this;n.clearAllInputs();n.set("submitButtonVisible",!0);n.set("isBeforeSubmit",!0);n.set("promptModeSelection",n.hasOnlyOneFieldGroup()===!1)},setFieldErrorMessage:function(n,t){var i=this;i.set(n+"Error",t)},clearErrorMessage:function(){var t=this;t.executeOnField(function(n,i){t.setFieldErrorMessage(t.getFieldName(i,n),"")});n.cv.util.clearNotifications({viewModel:this,clearExisting:!0},!0)},getFieldName:function(n,i){return n+t.separator+i.FieldName},executeOnField:function(i,r){var u=this;n.each(t.customFieldsJson,function(t,f){var e=f.GroupName,o;(r||u.get(e)===!0)&&(o=f.Fields,n.each(o,function(n,t){i(t,e)}))})},hasOnlyOneFieldGroup:function(){return t.customFieldsJson.length===1},checkRequiredField:function(t){var r=this,u={ok:!0,msg:""},i="";return n.cv.util.isNullOrWhitespace(r.get(t))&&(i=r.get(t+"Description")+" is required"),r.set(t+"Error",i),n.cv.util.hasContent(i)&&(u.ok=!1,u.msg=i),u},validateInput:function(i,r){var u=this,f=u.getFieldName(r,i),h=n.cv.util.hasValue(i.Lookup),c=!1,s,l,e,o;
104return(h&&(c=u.get("".concat(f).concat(t.lookupFieldDataSourceAppendix)).length>0),i.Required&&(h===!1||c)&&(s=u.checkRequiredField(f),s.ok===!1))?s.msg:i.IsEmail&&(e=u.get(f).trim(),n.cv.util.hasContent(e)&&n.cv.util.validateField(e,"email")===!1)?(o="The format of ".concat(i.Label," is incorrect"),u.set("".concat(f,"Error"),o),o):n.cv.util.hasContent(i.Regex)&&(l=new RegExp(i.Regex,"i"),e=u.get(f).trim(),n.cv.util.hasContent(e)&&l.test(e)===!1)?(o="The format of ".concat(i.Label," is incorrect"),u.set("".concat(f,"Error"),o),o):""},clearAllInputs:function(){var i=this;i.executeOnField(function(r,u){if(i.set(i.getFieldName(u,r,!0),""),n.cv.util.hasValue(r.Lookup)&&r.Lookup.IsSendViaSelection===!0){var f="".concat(i.getFieldName(u,r)).concat(t.lookupFieldDataSourceAppendix);i.set(f,[])}})}});return i.augmentOptions(t),t}};n.cv.ui.widget(t)})(jQuery);
105(function(n){var t={name:"accountActivator",extend:"accountInfoRegister",options:{customFieldsJson:[],separator:"",thirdPartyLoginGetCurrentUserFailed:"Error attempting to login",isProcessing:!1,thirdPartyLoginRegisterFailed:"Error attempting to redirect to registration page",customerCode:"",activationGuid:"",initialRole:""},initialised:function(){var n=this,t=n.options,i=n.base._vm;t.customFieldsJson.length>0&&i.set(t.customFieldsJson[0].GroupName,!0)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var i=this,t=n.extend(i.options,{password:"",passwordRepeat:"",passwordMatch:!1,passwordStrength:"",passwordStrengthMessage:"Level 1",matchMessage:"",isActivationComplete:!1,passwordError:"",isStrengthIndicatorVisible:!1,isMatchIndicatorVisible:!1,calculatePasswordStrength:function(t){return n.cv.util.calculatePasswordStrength(t)},passwordChanged:function(t){var i=this,r=i.get("password"),f=i.get("passwordRepeat"),e=i.passwordHasContent(r)&&r===f,u;i.set("isStrengthIndicatorVisible",i.passwordHasContent(r));i.set("isMatchIndicatorVisible",i.passwordHasContent(r)||i.passwordHasContent(f));n(t.target).data("is-primary-password")&&(u=i.calculatePasswordStrength(r),i.set("passwordStrength","password-strength-level"+u+" password-strength"),i.set("passwordStrengthMessage","Strength Level "+u));i.set("passwordMatch",e);i.set("matchMessage",e?"Match":"Not Matched")},passwordHasContent:function(n){return!!n},checkPassword:function(){var n=this,t;return n.passwordHasContent(n.get("password"))===!1||n.get("passwordMatch")===!1?(t="Invalid Password",n.set("passwordError",t),t):""},activate:function(){var i=this,r,u,f,e;if(i.clearErrorMessage(),i.set("passwordError",""),r="",n.cv.util.hasContent(t.customFieldsJson)&&i.executeOnField(function(t,u){var f=i.validateInput(t,u);r+=n.cv.util.hasContent(f)?f+"<br/>":""}),u=i.checkPassword(),n.cv.util.hasContent(u)&&(r+=u),n.cv.util.hasContent(r)){i.showMessage(r);return}f=i.extractParameters();i.set("isProcessing",!0);e=n.cv.css.accounts.activateAccount({json:JSON.stringify(f),password:i.get("password"),accountActivationGuid:t.activationGuid,accountActivationCustomerCode:t.customerCode,initialRole:t.initialRole});e.done(function(n){var t=n.data;t.Success?i.set("isActivationComplete",!0):i.showMessage(t.Messages[0])}).always(function(){i.set("isProcessing",!1)})},facebookLoginClick:function(){var n=this;FB.login(function(i){if(i.status==="connected"){var r={provider:"Facebook",facebookAccessToken:i.authResponse.accessToken};n.thirdPartyLogin(r)}else n.showMessage(t.thirdPartyLoginGetCurrentUserFailed)},{scope:"email"})},thirdPartyLogin:function(i){var r=this;n.cv.css.user.getCurrentUser({triggerEvents:!1}).done(function(n){if(n.data&&n.data.length>0){var u=n.data[0].EmailAddress;i.accountActivationGuid=t.activationGuid;i.accountActivationCustomerCode=t.customerCode;r.login(i,u)}else r.showMessage(t.thirdPartyLoginGetCurrentUserFailed)})},thirdPartyRegister:function(i){var r=this;n.cv.css.user.thirdPartyLoginRegister({data:i}).done(function(i){if(i&&i.data&&i.data.result){var u=i.data.result;u.Success?n.cv.util.redirect(u.RedirectUrl,null,!1):r.showMessage(t.thirdPartyLoginRegisterFailed)}})},login:function(t,i){var r=this;r.set("isProcessing",!0);
105n.cv.css.login(i,"",{isNewUser:!1,thirdPartyLoginData:t,isFromCheckoutPage:!1}).done(function(i){var u=i.data;if(n.inArray(u.result,["0","15","16"])<0)if(u.result===-1)switch(t.provider){case"Google":case"Facebook":r.thirdPartyRegister(t)}else r.showMessage(u.responseMessage)}).fail(function(n){n=JSON.parse(n.responseText);r.showMessage(n.message)}).always(function(){r.set("isProcessing",!1)})}}),f=i.base.getAugmentedOptions(),u=n.extend(f,t),r;return i.base.augmentOptions(u),r=kendo.observable(u),i.base._vm=r,r}};n.cv.ui.widget(t)})(jQuery);
106(function(n){var t={name:"standingOrderRecurrenceInformation",extend:"mvvmwidget",options:{},events:[],initialised:function(){function i(){var i=n.cv.css.localGetSelectedOrder();i&&i.IsStandingOrder&&n.cv.css.orders.getStandingOrderRecurrenceHtml({_objectKey:i._objectKey}).done(function(n){t.viewModel.set("recurrenceHtml",n.data||"")})}var t=this,r=_.debounce(i,200);n.cv.css.bind([n.cv.css.eventnames.viewApprovalOrder],function(){t.viewModel.set("recurrenceHtml","");r()});n.cv.css.bind(n.cv.css.eventnames.toggleStandingOrderRecurrenceInformation,n.proxy(t.viewModel.toggleStandingOrderRecurrenceInformation,t.viewModel))},_getViewModel:function(){var t=this,i=t.options;return kendo.observable(n.extend({},i,{recurrenceHtml:"",isVisible:!0,toggleStandingOrderRecurrenceInformation:function(n){this.set("isVisible",n)}}))}};n.cv.ui.widget(t)})(jQuery);
107(function(n){var t="widgetDataInitialised",i={name:"invoiceApproval",extend:"mvvmwidget",options:{dataSource:[],autoBind:!0,isLiveSearch:!1,pendingCreditClaimPrompt:"Pending Credit Claim",approvedCreditClaimPrompt:"Approved Credit Claim",rejectedCreditClaimPrompt:"Rejected Credit Claim",userEmailAddress:"",notSelectedInvoicesErrorMessage:"Please select at least 1 invoice to approve.",selectedReasonInvalidErrorMessage:"Please select a reason option for the rejection.",otherReasonInvalidErrorMessage:"Please enter the reason for the rejection if the Other option is selected.",selectedInvoicesErrorMessage:"Unable to update invoices. Please refresh and try again.",selectedInvoicesSuccessMessage:"Invoices updated!",approvedStatus:"AP",pendingCreditClaimStatus:"PC",approvedCreditClaimStatus:"AC",rejectedCreditClaimStatus:"RC",invoiceReasonList:"",showOrderLinesLabelShowText:"Show Details",showOrderLinesLabelHideText:"Hide Details",completedOrderStatus:"90",noteLine:"DN",selectListText:"Please Select"},extendEvents:[t],initialised:function(){var n=this;n.viewModel.getInvoicesForApproval(!1)},viewModelBound:function(){var n=this;n.trigger(t)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend({},t.options,{isGettingInvoices:!1,isApprovingInvoices:!1,invoicesIndex:[],updateViewModelFromDataSource:function(){},getInvoicesForApproval:function(i){i===void 0&&(i=!0);var r=this;r.set("isGettingInvoices",!0);i&&r.set("invoicesIndex",[]);n.cv.css.invoiceApprovalSearch({liveSearch:t.options.isLiveSearch,useDateFilter:!0,startOrderDate:"",endOrderDate:"",overrideOrderBy:"",isOutstandingInvoicesOnly:!1,topCount:0}).done(function(i){if(n.cv.util.hasValue(i.data)){var u=i.data,f=[],e=0;n.each(u,function(i,o){if(o.SoOrderNo!==e){var h=0,s=t.options,c=[],l=_.filter(u,function(n){return n.SoOrderNo===o.SoOrderNo});n.each(l,function(n,i){var u=i.InvoiceStatus,e=u===s.pendingCreditClaimStatus||u===s.approvedCreditClaimStatus||u===s.rejectedCreditClaimStatus,f=s.pendingCreditClaimPrompt,o;u===s.approvedCreditClaimStatus?f=s.approvedCreditClaimPrompt:u===s.rejectedCreditClaimStatus&&(f=s.rejectedCreditClaimPrompt);o={SoInvoiceNo:i.SoInvoiceNo,SoInvoiceDate:i.SoInvoiceDate,SoCustCode:i.SoCustCode,EmailAddress:s.userEmailAddress,ApproverName:i.ApproverFirstName+" "+i.ApproverSurname,OrderTotalAmountByStatus:i.OrderTotalAmountByStatus,SoDeliveryDateDisplay:i.SoOrderStatus===s.completedOrderStatus&&i.SoDeliveryDate!=null?i.SoDeliveryDate:"",SoOrderStatus:i.SoOrderStatus,SoOrderNo:i.SoOrderNo,SoBoSuffix:i.SoBoSuffix,InvoiceStatus:i.InvoiceStatus,InvoiceApprovalDate:i.InvoiceApprovalDate,CreditNoteReference:i.CreditNoteReference!=null?i.CreditNoteReference:"",CreditNoteAmount:i.CreditNoteAmount!=null?i.CreditNoteAmount:0,NetOwingAmount:i.OrderTotalAmountByStatus-i.CreditNoteAmount,selectedStatus:i.InvoiceStatus,selectedReason:i.InvoiceReason!==null?i.InvoiceReason:s.selectListText,rejectReason:i.InvoiceReason,invoiceSelected:!1,showOrderLines:!1,showOrderLinesLabel:s.showOrderLinesLabelShowText,orderLines:[],rejectedPrompt:f,invoiceReasonList:s.invoiceReasonList,isGettingInvoicesLines:!1,showStatusList:function(){var n=this;return n.get("InvoiceStatus")===""},changeSelectedStatus:function(){var n=this;n.get("selectedStatus")!==""?n.set("invoiceSelected",!0):n.set("invoiceSelected",!1)},showRejectReasonList:function(){var n=this;return n.get("selectedStatus")===t.options.pendingCreditClaimStatus&&n.get("InvoiceStatus")===""},enableRejectReason:function(){var n=this;return n.get("InvoiceStatus")===""},showRejectReason:function(){var t=this,n=t.get("selectedStatus"),i=n===s.pendingCreditClaimStatus||n===s.approvedCreditClaimStatus||n===s.rejectedCreditClaimStatus;return i&&(t.get("selectedReason")===""||e)},changeSelectedReason:function(){var n=this,t=n.get("selectedReason");t!==""?n.set("rejectReason",t):n.set("rejectReason","")},showApproveText:function(){var n=this;return n.get("InvoiceStatus")===t.options.approvedStatus},showRejectText:function(){return e},toggleOrderLines:r._toggleOrderLines};h+=i.OrderTotalAmountByStatus;c.push(o)});o.shipments=c;o.totalAmount=h;e=o.SoOrderNo;f.push(o)}});r.set("invoicesIndex",f)}}).always(function(){r.set("isGettingInvoices",!1)})},_toggleOrderLines:function(){var i=this,r=t.options,u=n.Deferred();i.get("orderLines").length===0?(i.set("isGettingInvoicesLines",!0),n.cv.css.getOrderLines({orderNo:i.get("SoOrderNo"),suffix:i.get("SoBoSuffix"),liveOrder:r.isLiveSearch}).done(function(n){n.data=_.filter(n.data,function(n){return n.LineType!==r.noteLine});i.set("orderLines",n.data);u.resolve()})):u.resolve();u.then(function(){i.get("showOrderLines")===!0?(i.set("showOrderLines",!1),i.set("showOrderLinesLabel",r.showOrderLinesLabelShowText)):(i.set("showOrderLines",!0),i.set("showOrderLinesLabel",r.showOrderLinesLabelHideText))}).always(function(){i.set("isGettingInvoicesLines",!1)})},approveSelectedInvoices:function(){var u="InvoiceApproval",r=this,i=t.options,o=[];if(r.set("isApprovingInvoices",!0),n.each(r.get("invoicesIndex"),function(t,i){n.each(i.shipments,function(n,t){t.get("invoiceSelected")&&o.push(t)})}),o.length===0)n.cv.css.trigger(n.cv.css.eventnames.message,{message:i.notSelectedInvoicesErrorMessage,type:n.cv.css.messageTypes.error,source:u,clearExisting:!0}),r.set("isApprovingInvoices",!1);else{var s=[],f=!0,e=!0;n.each(o,function(n,r){s.push({InvoiceNumber:r.SoInvoiceNo,SoOrderNo:r.SoOrderNo,SoBoSuffix:r.SoBoSuffix,InvoiceDate:r.SoInvoiceDate,CustomerCode:r.SoCustCode,InvoiceStatus:r.selectedStatus,Reason:r.selectedStatus!==t.options.approvedStatus&&r.rejectReason!=null?r.rejectReason:"",EmailAddress:r.EmailAddress});f=f&&(r.selectedStatus!==i.pendingCreditClaimStatus||r.selectedReason!==i.selectListText);e=e&&(r.selectedStatus!==i.pendingCreditClaimStatus||r.selectedReason===i.selectListText||r.rejectReason!==null&&r.rejectReason.trim()!=="")});f&&e?n.cv.css.processInvoiceApproval({invoices:{data:s}}).done(function(t){t.data.success?(n.cv.css.trigger(n.cv.css.eventnames.message,{message:i.selectedInvoicesSuccessMessage,type:n.cv.css.messageTypes.success,source:u,clearExisting:!0}),r.getInvoicesForApproval()):n.cv.css.trigger(n.cv.css.eventnames.message,{message:i.selectedInvoicesErrorMessage,type:n.cv.css.messageTypes.error,source:u,clearExisting:!0})}).always(function(){r.set("isApprovingInvoices",!1)}):(f||n.cv.css.trigger(n.cv.css.eventnames.message,{message:i.selectedReasonInvalidErrorMessage,type:n.cv.css.messageTypes.error,source:u,clearExisting:!0}),e||n.cv.css.trigger(n.cv.css.eventnames.message,{message:i.otherReasonInvalidErrorMessage,type:n.cv.css.messageTypes.error,source:u,clearExisting:f}),r.set("isApprovingInvoices",!1))}}}))}};n.cv.ui.widget(i)})(jQuery);
108(function(n){var t="widgetDataInitialised",i={name:"invoiceApprovalAlert",extend:"mvvmwidget",options:{autoBind:!0,messageContent:"There are outstanding invoices awaiting approval. Please go to the Invoice Approval page to approve the invoices.",modalSelector:"",invoiceApprovalUrl:"invoice-approval"},extendEvents:[t],viewModelBound:function(){var n=this;n.trigger(t);n.viewModel._showModal()},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend({},t.options,{isNavigating:!1,isContinueEnabled:!0,messageContent:t.options.messageContent,_showModal:function(){n.cv.util.hasContent(t.options.modalSelector)&&n.fancybox.open(n.cv.css.fancybox.defaultSettings({modal:!0,href:t.options.modalSelector}))},goToInvoiceApproval:function(){var i=this;i.set("isNavigating",!0);i.set("isContinueEnabled",!1);n.cv.util.redirect(t.options.invoiceApprovalUrl,null,!1)},"continue":function(){n.fancybox.close()}}))}};n.cv.ui.widget(i)})(jQuery);
109(function(n){var t={name:"checkoutDepositPayment",extend:"mvvmwidget",options:{minDepositPercentage:0,enforceMaxValue:!1,isInOrdersAwaitingPaymentPage:!1,allowPartialPaymentOfBalanceOwing:!1,useMinimumPercentageForPaymentOfBalanceOwing:!1},extendEvents:["widgetDataInitialised"],viewModelBound:function(){var i=this,t=i.viewModel;n.cv.css.bind(n.cv.css.eventnames.orderChanged,n.proxy(t.cartUpdated,t));n.cv.css.bind(n.cv.css.eventnames.viewOrderAwaitingPayment,n.proxy(t.updateBalance,t))},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var i=this,t=kendo.observable(n.extend({},i.options,{isProcessing:!1,minDeposit:0,maxDeposit:0,depositAmount:0,hasTransactionsLogs:!1,hasBalanceOwing:!1,balanceAmountOwing:0,transactionsLogLines:[],errorMessage:"",updateBalanceCalled:!1,cartUpdated:function(r){var f,u,e;t.get("updateBalanceCalled")!==!0&&r&&n.cv.util.hasValue(r.OrderTotalAmount)&&(i.options.enforceMaxValue&&(f=r.OrderTotalAmount,t.get("maxDeposit")!==f&&(t.set("maxDeposit",f),t.set("max",f))),u=r.OrderTotalAmount*i.options.minDepositPercentage/100,u=Math.round(u*100)/100,t.get("minDeposit")!==u&&(t.set("minDeposit",u),t.set("min",u),e=this.get("depositAmount"),u>e&&t.set("depositAmount",u),n.cv.css.trigger(n.cv.css.eventnames.checkoutDepositPaymentAmountChanged,this.get("depositAmount")))
109)},updateBalance:function(r){var e,u,f,o;t.set("updateBalanceCalled",!0);r&&r.transactionsLogLines!=null&&(t.set("hasTransactionsLogs",!0),r.balanceAmountOwing>0&&(t.set("hasBalanceOwing",!0),t.set("balanceAmountOwing",r.balanceAmountOwing)),t.set("transactionsLogLines",r.transactionsLogLines));r&&n.cv.util.hasValue(r.balanceAmountOwing)&&(i.options.enforceMaxValue&&(e=r.balanceAmountOwing,t.get("maxDeposit")!==e&&(t.set("maxDeposit",e),t.set("max",e))),u=r.balanceAmountOwing,i.options.allowPartialPaymentOfBalanceOwing&&(t.set("depositAmount",u),i.options.useMinimumPercentageForPaymentOfBalanceOwing?(f=r.orderTotal*i.options.minDepositPercentage/100,f=Math.round(f*100)/100,f<r.balanceAmountOwing&&(u=f),t.set("depositAmount",u)):u=0),t.get("minDeposit")!==u&&(t.set("minDeposit",u),t.set("min",u),o=t.get("depositAmount"),u>o&&t.set("depositAmount",u)),n.cv.css.trigger(n.cv.css.eventnames.checkoutDepositPaymentAmountChanged,this.get("depositAmount")))},onChange:function(){this.get("depositAmount")==null&&this.set("depositAmount",this.get("minDeposit"));this.get("depositAmount")===0?this.set("errorMessage","Payment amount must be greater than 0."):(this.set("errorMessage",""),n.cv.css.trigger(n.cv.css.eventnames.checkoutDepositPaymentAmountChanged,this.get("depositAmount")))}}));return t}};n.cv.ui.widget(t)})(jQuery);
110(function(n){var t={name:"crossSellUpSell",extend:"mvvmwidget",extendEvents:[],options:{widgetId:"",carouselId:"",templateName:"",alternateType:"",siteTrackerEnabled:!1,productCode:""},viewModelBound:function(){var t=this;n.cv.css.bind(n.cv.css.eventnames.allAttributesForProductSelected,n.proxy(t.viewModel.allAttributesForProductSelected,t.viewModel))},initialise:function(){this.viewModel.getAlternates()},_getViewModel:function(){var t=this;return kendo.observable(n.extend({},t.options,{showProductAlternates:!1,allAttributesForProductSelected:function(i){var r=this;r.set("showProductAlternates",!1);n("#"+t.options.carouselId).html("");r.getAlternates(i)},getAlternates:function(i){var r=this,u=n.cv.util.hasContent(i)?i:r.productCode;n.cv.css.product.getRenderedAlternatesForProductTemplate({productCode:u,alternateType:t.options.alternateType,templateName:t.options.templateName}).done(function(i){var e;r.set("isContentLoading",!1);var u=i.data,f=n("#"+t.options.carouselId),o="#"+t.options.carouselId+" div.product-list-gallery-slider";if(t.viewModel._destroyOwlCarousel(f,u.ProductCount),f.html(u.Html),n.cv.css.owlCarousel.bindProductCarousel(f),r.set("showProductAlternates",n.cv.util.hasContent(u.Html)),f.data("owlCarousel").reinit(),n.cv.util.productListItemGallery(o),n(" .form-number",f).each(function(){n.cv.util.kendoNumericTextBox(this)}),kendo.init(f),n.cv.util.hasContent(u.SiteTrackerData)){if(e=u.SiteTrackerData,n.type(e)==="string")try{e=JSON.parse(u.SiteTrackerData)}catch(s){}n.cv.css.tracker.productImpressions.base(e,t.options.alternateType)}n.cv.css.trigger(n.cv.css.eventnames.initialiseProductImageLazyLoad)})},_destroyOwlCarousel:function(i){var u=n.cv.util.hasValue(i)?i:n("#"+t.options.carouselId),r=u.data("owlCarousel");r&&r.destroy()}}))}};n.cv.ui.widget(t)})(jQuery);
111var setTime=kendo.date.setTime;(function(n){var t={name:"quoteReview",extend:"orderSearch",options:{orderSearchServiceUrl:"orders/QuoteReviewSearch",cancelQuoteDialog:"cancel-quote-confirm-dialog",acceptQuoteDialog:"accept-quote-dialog",resendQuoteDialog:"resend-quote-dialog",quoteFollowupDialog:"quote-follow-up-dialog",sendQuoteRenewRequestDialog:"send-quote-renew-request-dialog",defaultQuoteStatus:"",cancelQuoteReasonOptions:[],customSearchFields:[],quoteExpiryDays:30,endUserEmailCustomFieldName:"",searchOnLoad:!0,enableCancelOnlineQuote:!1,showAsIncTax:!1,orderQuotingMode:""},events:["change"],_extend:function(t,i){i.orderSearchService=function(){return i.options.orderSearchServiceUrl};i.initOrderList=function(n,t,i){t.isRequestingReceipt=!1;t.requestInvoiceReprint=!1;var r=t.Customer[0].ShowTaxAs;t.isIncTax=r;i.set("clientSideIncTax",i.showAsIncTax);t.showOrder=function(n){i.showOrder(n.data)};t.isReprintDisabled=function(){return!0};t.showPricing=function(){return!0};
111t.orderNumberDisplay=function(){return t.get("SoOrderNo")+" "+t.get("SoBoSuffix")}};var u=t.getSearchDefaults,r={showOnlyUserOrders:!1,clientSideHideTopNavigation:!0,clientSideIncExTaxOverride:!0,showOrder:function(n){i.addNewUiHistoryState({displayResultList:!1});t.set("isShowingOrder",!0);n.set("clientSideIncExTaxOverride",!0);n.set("clientSideIncTax",t.get("clientSideIncTax"));t.loadDeliveryAddressAndOrderLines(n).done(function(){t.set("isShowingOrder",!1);t.resetVmState()})},getSearchDefaults:function(){var f=u.call(t),r={};return n.each(i.options.customSearchFields,function(n,i){r[i]=t.get(i)}),n.extend(f,{enteredBy:t.get("enteredBy"),productDescription:t.get("productDescription"),followupStartDate:t.get("followupStartDate"),followupEndDate:t.get("followupEndDate"),customFields:r})},orderStatus:i.options.defaultQuoteStatus,productDescription:"",enteredBy:"",cancelQuoteRequestFinished:!1,cancelQuoteValidationErrorMessage:"",cancelComments:"",cancelReasonCode:"",quoteCancelSucceeded:!1,hasCancelQuoteSubmitError:!1,quoteCancelFailureReason:"",resendQuoteEmail:"",resendQuoteResultMessage:"",resendQuoteValidationErrorMessage:"",hasResendQuoteEmailSubmitError:!1,followupNotes:"",followupNotesList:[],followupStartDate:null,followupEndDate:null,openedOrder:function(){return this.get("currentOrder")},resetVmState:function(){var t=this,r,u;t.set("cancelQuoteRequestFinished",!1);t.set("cancelQuoteValidationErrorMessage","");t.set("cancelComments","");t.set("cancelReasonCode","");t.set("quoteCancelSucceeded",!1);t.set("hasCancelQuoteSubmitError",!1);r=i.options.endUserEmailCustomFieldName;u=n.cv.util.hasContent(r)?t.openedOrder()[r]||"":"";t.set("resendQuoteEmail",u);t.set("resendQuoteValidationErrorMessage","");t.set("resendQuoteResultMessage","");t.set("hasResendQuoteEmailSubmitError",!1);t.set("followupNotes","")},resetAdvancedSearchFilters:function(){var n=this;n.set("orderStatus",i.options.defaultQuoteStatus);n.set("startOrderDate",i.base.options.startOrderDate);n.set("endOrderDate",i.base.options.endOrderDate);n.set("reference","");n.set("enteredBy","");n.set("productDescription","");n.set("followupStartDate",null);n.set("followupEndDate",null);n.resetCustomFields()},resetCustomFields:function(){var t=this;n.each(i.options.customSearchFields,function(n,i){t.set(i,"")})},validateCancelQuoteInputs:function(){var t=this,r,f,i,u;return(t.clearCancelQuoteSubmitError(),r=t.openedOrder(),f=n.cv.css.localGetUser(),r.IsQuoteForCustomerCheckout&&r.DeliveryEmailAddress===f.EmailAddress)?!0:(i="",t.cancelReasonsSelectable()&&n.cv.util.hasContent(t.get("cancelReasonCode"))==!1?i="Reason is not selected":t.cancelQuoteCommentsInvalid()&&(i="Invalid comments"),t.set("cancelQuoteValidationErrorMessage",i),u=n.cv.util.hasContent(i),t.set("hasCancelQuoteSubmitError",u),u===!1)},clearCancelQuoteSubmitError:function(){var n=this;n.set("cancelQuoteValidationErrorMessage","");n.set("hasCancelQuoteSubmitError",!1)},confirmQuoteCancel:function(){var t=this;t.validateCancelQuoteInputs()!==!1&&(t.set("isProcessing",!0),n.cv.css.orders.cancelQuote({_objectKey:t.openedOrder()._objectKey,cancelReasonCode:t.get("cancelReasonCode"),cancelComments:t.get("cancelComments")}).done(function(n){var i=n.data,r=i.Success;t.set("quoteCancelSucceeded",r);t.set("quoteCancelFailureReason",r?"":i.Messages[0])}).always(function(){t.set("cancelQuoteRequestFinished",!0);t.set("isProcessing",!1)}))},confirmCancelQuoteProcessResult:function(){var n=this;n.get("quoteCancelSucceeded")?n.resetToInitialSearch():(n.clearCancelQuoteResult(),n.closeDialog())},clearCancelQuoteResult:function(){var n=this;n.set("cancelQuoteRequestFinished",!1);n.set("quoteCancelSucceeded",!1)},cancelQuoteCommentsInvalid:function(){var t=this.get("cancelComments");return n.cv.util.hasContent(t)===!1},cancelQuoteCommentsChanged:function(){this.clearCancelQuoteSubmitError()},showCancelQuoteDialog:function(){var t=this;t.clearCancelQuoteSubmitError();n.fancybox.open({topRatio:"0.25",minWidth:"500",padding:"0",href:"#"+t.get("cancelQuoteDialog"),afterClose:function(){t.get("
111cancelQuoteRequestFinished")&&(t.get("quoteCancelSucceeded")?t.resetToInitialSearch():t.clearCancelQuoteResult())}})},cancelReasonsSelectable:function(){var r=this,t=r.openedOrder(),i;return n.cv.util.hasValue(t)===!1?!1:(i=n.cv.css.localGetUser(),t.IsQuoteForCustomerCheckout&&t.DeliveryEmailAddress===i.EmailAddress)?!1:this.get("cancelQuoteReasonOptions").length>0},cancelCommentVisible:function(){var r=this,t=r.openedOrder(),i;return n.cv.util.hasValue(t)===!1?!1:(i=n.cv.css.localGetUser(),(t.IsQuoteForCustomerCheckout&&t.DeliveryEmailAddress===i.EmailAddress)==!1)},acceptQuote:function(){var t=this,i=!1,r=t.openedOrder()._objectKey;t.set("isProcessing",!0);n.cv.css.orders.acceptQuote({_objectKey:r}).done(function(r){var u=r.data,f,e;u.Success===!0?(f=u.Messages[0],n.cv.util.hasValue(f)&&(i=!0,n.cv.util.redirect(f))):(e=n.cv.util.hasValue(u.Messages[0])?u.Messages[0]:"Unexpected error",n.cv.util.notify(t,e,n.cv.css.messageTypes.error));n.cv.util.hasValue(u)&&(i=!0,n.cv.util.redirect(u))}).always(function(){i||t.set("isProcessing",!1)})},showAcceptQuoteDialog:function(){n.fancybox.open({href:"#"+i.options.acceptQuoteDialog})},reprintQuote:function(){var t={quoteID:this.openedOrder().SoOrderNo},i="QuoteReview.aspx?"+n.param(t);window.open(i,"_blank")},resendQuoteEmailInvalid:function(){var t=this.get("resendQuoteEmail");return n.cv.util.hasContent(t)===!1||n.cv.util.validateField(t.trim(),"email")===!1},resendQuoteEmailChanged:function(){this.clearResendQuoteSubmitError()},clearResendQuoteSubmitError:function(){var n=this;n.set("resendQuoteValidationErrorMessage","");n.set("hasResendQuoteEmailSubmitError",!1)},hideResendQuoteDialog:function(){n.fancybox.close(!0)},resendQuote:function(){var t=this,i;(t.set("resendQuoteResultMessage",""),t.validateResendQuoteInputs()!=!1)&&(i=t.openedOrder(),t.set("isProcessing",!0),n.cv.css.orders.resendQuote({_objectKey:i._objectKey,email:t.get("resendQuoteEmail"),expiryDays:t.get("quoteExpiryDays")}).done(function(n){var r=n.data.Success?"Quote has been sent successfully":"Failed to send the quote";t.set("resendQuoteResultMessage",r);i.QuoteExpiryDays=t.get("quoteExpiryDays")}).always(function(){t.set("isProcessing",!1)}))},validateResendQuoteInputs:function(){var t=this,i,r;return t.clearResendQuoteSubmitError(),i="",t.resendQuoteEmailInvalid()&&(i="Invalid Email Address"),t.get("quoteExpiryDays")<=0&&(i="Expiry days should be greater than 0."),t.set("resendQuoteValidationErrorMessage",i),r=n.cv.util.hasContent(i),t.set("hasResendQuoteEmailSubmitError",r),r===!1},showResendQuoteDialog:function(){var t=this;t.clearResendQuoteSubmitError();var i=t.openedOrder(),r=i.IsQuoteForCustomerCheckout?i.SoUserIdCode:"",u=i.QuoteExpiryDays;t.set("resendQuoteEmail",r);t.set("quoteExpiryDays",u);n.fancybox.open({topRatio:"0.25",minWidth:"500",padding:"0",href:"#"+t.get("resendQuoteDialog")})},showQuoteFollowupDialog:function(){var t=this;t.loadFollowupNotes().done(function(){n.fancybox.open({topRatio:"0.25",minWidth:"900",padding:"0",href:"#"+t.get("quoteFollowupDialog")})})},addFollowupNotes:function(){var t=this,i=t.get("followupNotes"),r=t.openedOrder();n.cv.util.hasContent(i)&&(t.set("isProcessing",!0),n.cv.css.orders.addQuoteFollowUpNotes({_objectKey:r._objectKey,quoteNo:t.openedOrder().SoOrderNo,notes:i}).done(function(){t.set("followupNotes","");t.loadFollowupNotes()}).always(function(){t.set("isProcessing",!1)}))},loadFollowupNotes:function(){var t=this;return t.set("isProcessing",!0),n.cv.css.orders.getQuoteFollowUpNotes({quoteNo:t.get("orderDetailHeader").SoOrderNo}).done(function(i){i&&i.data&&(t.set("followupNotesList",i.data),n.fancybox.update())}).always(function(){t.set("isProcessing",!1)})},clickAmendQuote:function(){var t=this,i=t.openedOrder();t.set("isProcessing",!0);n.cv.css.orderQuote.canAmendQuote({_objectKey:i._objectKey}).done(function(i){var r=i.data;t.set("isProcessing",!1);r&&r.Success?t.startAmendQuote():r.Value&&r.Value.Error==="InQuotingModeError"?t.showAmendQuoteExitQuotingConfirm():n.cv.util.notify(t,r.Messages[0],n.cv.css.messageTypes.error)}).fail(function(){t.set("isProcessing",!1);n.cv.util.notify(t,"Can't amend the quote. Please try again.",n.cv.css.messageTypes.error)})},showAmendQuoteExitQuotingConfirm:function(){n.fancybox.open({topRatio:"0.25",minWidth:"500",padding:"0",href:"#amend-quote-confirm-exit-quoting"})},startAmendQuote:function(){var t=this,i;t.set("isProcessing",!0);i=t.openedOrder();n.cv.css.orderQuote.startAmendQuote({_objectKey:i._objectKey}).done(function(i){var r=i.data;r&&r.Success?n.cv.util.redirect("/cart"):(t.set("isProcessing",!1),n.cv.util.notify(t,r.Messages[0],n.cv.css.messageTypes.error))}).fail(function(){t.set("isProcessing",!1);n.cv.util.notify(t,"Can't amend the quote. Please try again.",n.cv.css.messageTypes.error)})},hasFollowupHistory:function(){var n=this;return n.get("followupNotesList").length>0},isAcceptQuoteButtonDisabled:function(){var n=this;return n.isQuoteExpired()||n.isCancelledQuote()||n.get("isProcessing")},isAcceptQuoteButtonVisible:function(){var i=this,t=i.openedOrder(),r;return n.cv.util.hasValue(t)===!1?!1:i.orderQuotingMode==="StandardAndApproved"&&t.ConfirmedByErp==0?!1:(r=n.cv.css.localGetUser(),!t.IsQuoteForCustomerCheckout||t.IsQuoteForCustomerCheckout&&t.DeliveryEmailAddress===r.EmailAddress)},isResendQuoteButtonVisible:function(){var r=this,t=r.openedOrder(),i;return n.cv.util.hasValue(t)===!1?!1:(i=n.cv.css.localGetUser(),!t.IsQuoteForCustomerCheckout||t.IsQuoteForCustomerCheckout&&t.DeliveryEmailAddress!==i.EmailAddress)},isCancelledQuote:function(){var i=this,t=i.openedOrder();return n.cv.util.hasValue(t)===!1?!1:t.SoOrderStatus==="98"},isCancelQuoteButtonDisabled:function(){var n=this;return n.isCancelledQuote()||n.get("isProcessing")},isCancelQuoteButtonVisible:function(){var i=this,t=i.openedOrder(),r;return n.cv.util.hasValue(t)===!1?!1:(r=n.cv.css.localGetUser(),!t.IsQuoteForCustomerCheckout||t.IsQuoteForCustomerCheckout&&(i.get("enableCancelOnlineQuote")||t.DeliveryEmailAddress===r.EmailAddress))},isQuoteExpired:function(){var u=this,r=u.openedOrder(),t,i;return n.cv.util.hasValue(r)==!1?!1:(t=r.QuoteExpiryDate,n.cv.util.hasValue(t)==!1)?!1:(i=new Date,i.setHours(0,0,0,0),i>t)},isQuoteForCustomerCheckout:function(){var i=this,t=i.openedOrder();return n.cv.util.hasValue(t)==!1?!1:t.IsQuoteForCustomerCheckout},isAmendQuoteButtonDisabled:function(){var n=this;return n.isCancelledQuote()||n.get("isProcessing")},isResendQuoteButtonDisabled:function(){var n=this;return n.isCancelledQuote()||n.get("isProcessing")},quoteExpiredMessageVisible:function(){var n=this;return n.isOperationButtonVisible()&&n.isQuoteExpired()},isOperationButtonVisible:function(){var n=this;return n.get("showingOrderDetails")},resetToInitialSearch:function(){var n=this;n.clearCancelQuoteResult();window.history.back();setTimeout(function(){n.set("showingResults",!1)},10);n.get("lastSearchMethod")==="isSearchingWithOptions"?n.searchWithOptions():n.searchInvoiceOrNumber();n.closeDialog()},closeDialog:function(){n.fancybox.close(!0)},canRenewQuote:function(){var t=this,i=t.openedOrder();return n.cv.util.hasValue(i)?t.isQuoteExpired()&&!i.IsQuoteForCustomerCheckout:!1},showSendQuoteRenewRequestDialog:function(){n.fancybox.open({topRatio:"0.25",minWidth:"900",padding:"0",href:"#"+this.get("sendQuoteRenewRequestDialog")})},sendQuoteRenewRequest:function(){var t=this,i=t.get("quoteRenewRequestBody"),r=t.get("quoteRenewRequestSendCopyToUser");n.cv.css.orders.sendRenewQuoteEmail({_objectKey:t.openedOrder()._objectKey,emailBody:i,sendCopyToUser:r}).done(function(i){i.data.Success?n.cv.util.notify(t,i.data.Messages[0],n.cv.css.messageTypes.success):n.cv.util.notify(t,i.data.Messages[0],n.cv.css.messageTypes.error,{triggerMessages:!0,clearExisting:!0})}).always(function(){n.fancybox.close(!0)})}};n.each(i.options.customSearchFields,function(n,t){r[t]=""});kendo.observable(n.extend(t,i.options,r))}};n.cv.ui.widget(t)})(jQuery);
112(function(n){var t={name:"returnReviewAndConfirmation",extend:"orderSearch",options:{orderSearchServiceUrl:"orders/orderReturnSearch",overlayId:"order-return-confirm-dialog",cancelOrderReturnConfirmOverlayId:"order-return-cancel-dialog",commentsMaxLength:60,pendingReviewStatusList:[],invalidRefundAmountMessage:"Invalid refund amount",invalidCommentsMessage:"Comments must be provided and can't have more than 60 characters",showReturnOrderAsIncludeTax:!0,defaultOrderStatus:"",searchOnLoad:!0},events:["change"],_extend:function(t,i){i.orderSearchService=function(){return i.options.orderSearchServiceUrl};i.initOrderList=function(n,t,i){t.isRequestingReceipt=!1;t.requestInvoiceReprint=!1;var r=t.Customer[0].ShowTaxAs;i.set("clientSideIncTax",!0);t.isIncTax=r;t.showOrder=function(n){i.showOrder(n.data)};t.isReprintDisabled=function(){return!0};t.showPricing=function(){return!0};
112t.orderNumberDisplay=function(){return t.get("SoOrderNo")+" "+t.get("SoBoSuffix")};i.set("isSearching",!1)};var r=t.getSearchDefaults,u={showOnlyUserOrders:!1,clientSideHideTopNavigation:!0,clientSideIncExTaxOverride:!0,showOrder:function(n){i.addNewUiHistoryState({displayResultList:!1});t.set("refundAmount",null);t.set("comments","");t.set("isSearching",!0);n.set("clientSideIncExTaxOverride",!0);n.set("clientSideIncTax",t.get("clientSideIncTax"));t.loadDeliveryAddressAndOrderLines(n).done(function(){t.set("isSearching",!1)})},getSearchDefaults:function(){var i=r.call(t);return n.extend(i,{userSurname:t.get("userSurname"),userFirstName:t.get("userFirstName"),userEmailAddress:t.get("userEmailAddress")})},orderStatus:i.options.defaultOrderStatus,isSearching:!1,isProcessingRefund:!1,isProcessingRefundFinished:!1,isCancellingOrder:!1,refundSucceeded:!1,showOverrideView:!1,refundFailureReason:"",userSurname:"",userFirstName:"",userEmailAddress:"",refundAmount:null,comments:"",refundType:"",hasSubmitError:!1,overallErrorMessage:"",validateInputs:function(){var t=this,r,u;t.clearSubmitError();r="";t.refundAmountInvalid()?r=i.options.invalidRefundAmountMessage:t.isCommentsMandatory()&&t.commentsInvalid()&&(r=i.options.invalidCommentsMessage);t.set("overallErrorMessage",r);u=n.cv.util.hasContent(r);t.set("hasSubmitError",u)},clearSubmitError:function(){var n=this;n.set("overallErrorMessage","");n.set("hasSubmitError",!1)},hasError:function(){return n.cv.util.hasContent(this.get("overallErrorMessage"))},confirmReturn:function(){var t=this;t.get("isProcessingRefund")||(t.validateInputs(),t.hasError())||(t.set("isProcessingRefund",!0),n.cv.css.orders.orderReturnRefund({_objectKey:t.get("currentOrder")._objectKey,refundAmount:t.get("refundAmount"),comments:t.get("comments"),override:t.get("showOverrideView")}).done(function(i){var r=i.data,u;n.cv.util.hasValue(r)==!1&&t.set("refundFailureReason","Failed to process the request");t.set("refundSucceeded",r.Success);u=r.Success?"refundType":"refundFailureReason";t.set(u,r.Messages[0]);r.Success==!1&&t.set("showOverrideView",r.Messages[1]==="overrideable")}).always(function(){t.set("isProcessingRefundFinished",!0);t.set("isProcessingRefund",!1)}))},cancelReturn:function(){var t=this;t.set("isCancellingOrder",!0);n.cv.css.orders.cancelOrderReturn({_objectKey:t.get("currentOrder")._objectKey}).done(function(i){var r=i.data;n.cv.util.hasValue(r)&&r.Success&&t.resetToInitialSearch()}).always(function(){t.set("isCancellingOrder",!1)})},showCancelReturnDialog:function(){n.fancybox.open({href:"#"+i.options.cancelOrderReturnConfirmOverlayId})},confirmProcessResult:function(){var n=this;n.get("refundSucceeded")?n.resetToInitialSearch():(n.clearRefundResult(),n.hideReturnDialog())},resetToInitialSearch:function(){var n=this;n.clearRefundResult();window.history.back();n.get("lastSearchMethod")==="isSearchingWithOptions"?n.searchWithOptions():n.searchInvoiceOrNumber();n.hideReturnDialog()},clearRefundResult:function(){var n=this;n.set("isProcessingRefundFinished",!1);n.set("refundSucceeded",!1);n.set("refundFailureReason","");n.set("refundType","");n.set("showOverrideView",!1)},orderTotal:function(){var t=this.get("currentOrder");return n.cv.util.hasValue(t)==!1?0:t.OrderTotalAmount*-1},refundAmountInvalid:function(){var t=this.get("refundAmount");return n.isNumeric(t)===!1||t<0||t===0&&this.orderTotal()!==0||t>this.orderTotal()||t!==parseFloat(t.toFixed(2))},commentsInvalid:function(){var t=this.get("comments");return n.cv.util.hasContent(t)===!1||t.length>i.options.commentsMaxLength},commentsChanged:function(){this.clearSubmitError()},refundAmountChanged:function(){this.clearSubmitError()},canBeRefunded:function(){return this.orderTotal()>=0},isCommentsMandatory:function(){var n=this;return n.get("refundAmount")!=n.orderTotal()},isRefundButtonVisible:function(){var n=this;return n.get("showingOrderDetails")&&i.options.pendingReviewStatusList.indexOf(n.get("currentOrder").SoOrderStatus)>=0},showReturnDialog:function(){var t=this,i;(t.clearSubmitError(),i=t.get("overlayId"),n.cv.util.isNullOrWhitespace(i))||(t.get("refundAmount")===null&&t.set("refundAmount",t.orderTotal()),n.fancybox.open({topRatio:"0.25",minWidth:"500",padding:"0",href:"#"+i,afterClose:function(){t.get("isProcessingRefundFinished")&&(t.get("refundSucceeded")?t.resetToInitialSearch():t.clearRefundResult())}}))},hideReturnDialog:function(){n.fancybox.close(!0)}};kendo.observable(n.extend(t,i.options,u))}};n.cv.ui.widget(t)})(jQuery);
113(function(n){var t="InitialView",i="CreditCardView",r={name:"customerPaymentTokenManagement",extend:"mvvmwidget",options:{isEwayDirectConnection:!1,isEwayResponsiveSharedPage:!1,ewayPublicApiKey:"",ewaySecureFieldStyles:"",ewayScriptUrl:"",email:"",defaultEmailAddress:"",creditCardEmailAddressLabel:"Email Address",isBraintreeEnabled:!1,braintreePaymentDropinDivId:"",braintreeClientToken:"",cardYearsToShow:11,defaultCardNumberDigits:16,defaultCcvDigits:3,titles:[],cardHolderTitle:"",serverResponded:!1,isRedirectResultPage:!1,ewayErrorCode:"",resultDialogId:"eway-process-return-dialog",termsAndConditionsDialogId:"eway-terms-and-conditions-dialog",deleteCreditCardDialog:"delete-credit-card-dialog",custPaymentTokenManagementUrl:"customer-payment-token-management",hideTermsAndConditions:!1,hideConfirmationDialogue:!1,isAutoInvoicePaymentEnabledForCustomer:!1,cardInfoDict:[{cardType:"CARDVISA",regex:"^4",cardNumberDigits:16,ccvDigits:3},{cardType:"CARDMASTERCARD",regex:"^5[1-5]|^2(?:2(?:2[1-9]|[3-9]\\d)|[3-6]\\d\\d|7(?:[
11301]\\d|20))-?\\d{2}",cardNumberDigits:16,ccvDigits:3},{cardType:"CARDAMEX",regex:"^3[47][0-9]{13}$",cardNumberDigits:15,ccvDigits:4},{cardType:"CARDDINERSCLUB",regex:"^3(?:0[0-5,9]|[689][0-9])[0-9]{11}$",cardNumberDigits:14,ccvDigits:3}],cardExpiryMonthList:[]},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},initialised:function(){var i=this;i.viewModel.set("isCardHolderTitleRequired",n.cv.util.hasContent(i.options.cardHolderTitle)===!1);i.viewModel.loadCustomerToken().done(function(){i.showResultOnRedirectPage();i.viewModel.loadEWaySecureFields()});i.setupSinglePageHistoryStateHandler({viewState:t},function(t){var r=t.viewState;n.cv.util.hasContent(r)&&i.viewModel.goToView(r)})},showResultOnRedirectPage:function(){var t=this;t.options.isRedirectResultPage&&t.options.hideConfirmationDialogue===!1&&n.fancybox.open({topRatio:"0.25",minWidth:"500",href:"#"+t.options.resultDialogId})},_getDefaultViewModel:function(){var r=this,f=r.options.isBraintreeEnabled?n.cv.css.braintree.getBraintreeViewModel():null,u=kendo.observable(n.extend({},r.options,f,{viewState:t,secureFieldCode:"",cardExpiry:"",nameIsValid:!1,cardIsValid:!1,expiryIsValid:!1,cvnIsValid:!1,isProcessing:!1,termsAndConditionsAgreed:!1,tokenRecord:null,isGenericCreditCardUpdateMode:!1,creditCardType:"",cardHolderName:"",isCardHolderTitleRequired:!1,cardNumber:"",cardExpiryMonth:"",cardExpiryYear:"",cardSecurityCode:"",email:r.options.email,defaultEmailAddress:r.options.email,isCreditCardEmailRequired:!0,creditCardEmailAddressLabel:r.options.creditCardEmailAddressLabel,creditCardDigitsRequired:r.options.defaultCardNumberDigits,ccvDigitsRequired:r.options.defaultCcvDigits,message:"",loadEWaySecureFields:function(){function i(n){return function(t){var i=t.errors==null&&t.valueIsValid,r;n(i);i&&(r=document.getElementById("securefieldcode"),r.value=t.secureFieldCode)}}if(r.options.isEwayDirectConnection!=!1||r.options.isEwayResponsiveSharedPage!=!1){var t=this,u={publicApiKey:r.options.ewayPublicApiKey,fieldDivId:"eway-secure-field-name",fieldType:"name",styles:r.options.ewaySecureFieldStyles},f={publicApiKey:r.options.ewayPublicApiKey,fieldDivId:"eway-secure-field-card",fieldType:"card",styles:r.options.ewaySecureFieldStyles},e={publicApiKey:r.options.ewayPublicApiKey,fieldDivId:"eway-secure-field-expiry",fieldType:"expiry",styles:r.options.ewaySecureFieldStyles},o={publicApiKey:r.options.ewayPublicApiKey,fieldDivId:"eway-secure-field-cvn",fieldType:"cvn",styles:r.options.ewaySecureFieldStyles};n.getScript(r.options.ewayScriptUrl,function(){eWAY.setupSecureField(u,i(function(n){return t.set("nameIsValid",n)}));eWAY.setupSecureField(f,i(function(n){return t.set("cardIsValid",n)}));eWAY.setupSecureField(e,i(function(n){return t.set("expiryIsValid",n)}));eWAY.setupSecureField(o,i(function(n){return t.set("cvnIsValid",n)}))})}},submitButtonLabel:function(){return(this.tokenExists()?"Update":"Add")+" Credit Card"},hasEwayProcessError:function(){return n.cv.util.hasContent(this.get("ewayErrorCode"))},addCreditCard:function(){var n=this;n.get("termsAndConditionsAgreed")||n.get("hideTermsAndConditions")?n.openCreditCardView():n.showTermsAndConditions()},updateCreditCard:function(){this.openCreditCardView()},deleteCreditCard:function(){var n=this;n.get("isAutoInvoicePaymentEnabledForCustomer")||(n.closeCurrentDialog(),n.deleteTokenCustomer())},cardNumberChanged:function(){var t=this,s=t.get("cardNumber"),e=n.grep(r.options.cardInfoDict,function(n){var t=new RegExp(n.regex);return t.test(s)}),u=0,f=0,o="",i;e.length>0?(i=e[0],o=i.cardType,u=i.cardNumberDigits,f=i.ccvDigits):(u=r.options.defaultCardNumberDigits,f=r.options.defaultCcvDigits);t.set("creditCardType",o);t.set("creditCardDigitsRequired",u);t.set("ccvDigitsRequired",f)},getNonPrefixedCardName:function(){return this.get("creditCardType").replace(/CARD/,"")},cardExpiryMonthsDataSource:function(){return new kendo.data.ObservableArray(r.options.cardExpiryMonthList)},cardExpiryYearDataSource:function(){for(var u=r.options.cardYearsToShow,f=(new Date).getFullYear(),i=[],t=0;t<u;t++)i.push(f+t);return new kendo.data.ObservableArray(n.map(i,function(n){var t=n.toString();return{value:t.substr(2,2),text:t}}))},titleDataSource:function(){return new kendo.data.ObservableArray(n.map(r.options.titles,function(n){return{text:n,value:n}}))},ewayErrorDescription:function(){var n=this.get("ewayErrorCode");switch(n){case"V6110":return"(Invalid credit card number)";default:return n}},validateInputs:function(){var r=this,t=r.validateEwayInputs(),i=r.validateEmailAddress();return n.cv.util.isNullOrWhitespace(t)?n.cv.util.hasContent(i)?"Invalid "+i:"":(n.cv.util.hasContent(i)&&(t+=(n.
113cv.util.hasContent(t)?", ":"")+i),t)},validateEmailAddress:function(){var t=this,i,u;return t.get("isCreditCardEmailRequired")?(i=t.get("email").trim(),u="",(n.cv.util.hasContent(i)===!1||n.cv.util.validateField(i,"email")===!1)&&(u=(r.options.isBraintreeEnabled?"Invalid ":"")+t.get("creditCardEmailAddressLabel")),u):""},validateEwayInputs:function(){var n=this;return r.options.isEwayDirectConnection||r.options.isEwayResponsiveSharedPage?n.validateInputsDirectConnection():n.validateInputsStandard()},validateInputsDirectConnection:function(){var t=this,n=[];return(t.cardIsValid||n.push("Credit Card Number"),t.expiryIsValid||n.push("Expiry"),t.cvnIsValid||n.push("Security Code"),t.nameIsValid||n.push("Name On Card"),n.length==0)?"":"Invalid Field(s): "+n.join(", ")},validateInputsStandard:function(){var t=this,i="",r=t.get("creditCardDigitsRequired"),u=t.get("cardNumber");return u.length<r?i="Invalid Credit Card Number. "+(u.length==0?"":"".concat(t.getNonPrefixedCardName()," Card should have ").concat(r," digits.")):n.cv.util.hasContent(t.get("cardExpiryYear"))==!1?i="Invalid Expiry Year":n.cv.util.hasContent(t.get("cardExpiryMonth"))==!1?i="Invalid Expiry Month":n.cv.util.hasContent(t.get("cardHolderTitle"))==!1?i="Invalid Card Holder Title":t.get("cardSecurityCode").length<t.get("ccvDigitsRequired")?i="Invalid Credit Security Code. The security code of the ".concat(t.getNonPrefixedCardName()," card  has ").concat(t.get("ccvDigitsRequired")," digits"):n.cv.util.hasContent(t.get("cardHolderName"))==!1&&(i="Invalid Card Holder Name"),i},closeCurrentDialog:function(){n.fancybox.close(!0)},isInitialView:function(){return this.get("viewState")===t},isCreditCardView:function(){return this.get("viewState")===i},openCreditCardView:function(){var n=this;n.set("viewState",i);r.addNewUiHistoryState({viewState:i});r.options.isBraintreeEnabled&&n.initBraintreePayment()},initBraintreePayment:function(){var n=this,t={authorization:r.options.braintreeClientToken,container:"#"+r.options.braintreePaymentDropinDivId,card:{cardholderName:{required:!0},vault:{allowVaultCardOverride:!1,vaultCard:!1}},vaultManager:!1,preselectVaultedPaymentMethod:!1,showDefaultPaymentMethodFirst:!1};n.braintreeInitDropin(t)},goToView:function(n){this.set("viewState",n)},agreeTermsAndConditions:function(){var n=this;n.closeCurrentDialog();n.set("termsAndConditionsAgreed",!0);n.openCreditCardView()},disagreeTermsAndConditions:function(){var n=this;n.set("termsAndConditionsAgreed",!1);n.closeCurrentDialog()},showTermsAndConditions:function(){var t=this;n.fancybox.open({topRatio:"0.25",maxWidth:"800",minWidth:"800",href:"#"+r.options.termsAndConditionsDialogId,afterClose:function(){t.set("termsAndConditionsAgreed",!1)}})},showDeleteCreditCardDialog:function(){this.get("isAutoInvoicePaymentEnabledForCustomer")||n.fancybox.open({topRatio:"0.25",minWidth:"500",href:"#"+r.options.deleteCreditCardDialog})},backToInitialView:function(){history.back()},createOrUpdatepPaymentToken:function(t){return n.cv.css.createOrUpdatePaymentTokenCustomer(t)},loadPaymentToken:function(){return n.cv.css.getPaymentCustomerToken({})},loadCustomerToken:function(){var t=this;return t.loadPaymentToken().done(function(i){var r=null,u;i.data&&i.data[0]&&(r=i.data[0]);t.set("tokenRecord",r);t.get("isAutoInvoicePaymentEnabledForCustomer")&&(n("#deleteStoredCreditCardButtonContainer").removeClass("no-tooltip"),n("#deleteStoredCreditCardButton").attr("disabled","disabled"));r&&t.get("isCreditCardEmailRequired")&&(u=n.cv.util.hasContent(r.EmailAddress)?r.EmailAddress:t.get("defaultEmailAddress"),t.set("email",u))})},tokenExists:function(){var t=this.get("tokenRecord");return n.cv.util.hasValue(t)&&n.cv.util.hasContent(t.MaskedCardNumber)},cardHasExpired:function(){var n=this.get("tokenRecord");if(!n)return!1;var t=2e3+n.ExpiryYear,i=new Date,u=i.getMonth()+1,r=i.getFullYear();return r>t||t===r&&u>=n.ExpiryMonth},deleteTokenCustomer:function(){var t=this,i=!1;t.set("isProcessing",!0);n.cv.css.deletePaymentTokenCustomer({isBraintreeEnabled:r.options.isBraintreeEnabled}).done(function(u){var f=u.data;f.Status===0&&(t.loadCustomerToken(),i=!0,n.cv.css.trigger(n.cv.css.eventnames.customerPaymentTokenDeleted,r.name))}).always(function(){t.set("isProcessing",!1);i==!1&&t.set("message","Failed to delete credit card")})},submit:function(){var t=this,i,u,f;if(!t.get("isProcessing")){if(t.set("message",""),i=t.validateInputs(),n.cv.util.hasContent(i)){t.set("message",i);return}u={secureFieldCode:n("#securefieldcode").val(),cardHolderName:t.get("cardHolderName"),cardHolderTitle:t.get("cardHolderTitle"),cardType:t.getNonPrefixedCardName(),email:t.get("email"),isCreate:t.tokenExists()==!1};t.extendSubmitOpts&&t.extendSubmitOpts(u);t.set("isProcessing",!0);f=!1;t.createOrUpdatepPaymentToken(u).done(function(i){var u=i.data,e,o,h,s;if(u.Status===0){if(e=u.AdditionalResultData,r.options.isEwayDirectConnection||r.options.isEwayResponsiveSharedPage){o=n.grep(e,function(n){return n.Key==="eWay_DirectConnectionTokenCustomerError"})[0];h=n.cv.util.hasValue(o)?"&ewayErrorCode="+o.Value:"";n.cv.util.redirect("/"+r.options.custPaymentTokenManagementUrl+"?serverResponded=true"+h);return}var c=n.grep(e,function(n){return n.Key==="eWay_PostbackUrl"})[0],l=n.grep(e,function(n){return n.Key==="eWay_AccessCode"})[0],a=l&&l.Value,v=c&&c.Value;a&&v&&(t.set("eWayAccessCode",a),f=!0,s=n("form:first"),s.attr("action",v),s.submit())}else n.cv.util.hasValue(u.Messages)&&t.set("message",u.Messages[0])}).always(function(){f==!1&&t.set("isProcessing",!1)})}},braintreeAddOrUpdateCard:function(){var t=this,i=t.validateEmailAddress(),u;if(t.set("braintreeCreditCardEmailAddressErrorMessage",""),n.cv.util.hasContent(i)){t.set("braintreeCreditCardEmailAddressErrorMessage",i);return}u={isCreate:t.tokenExists()==!1,braintreeNonce:t.get("braintreeNonce"),email:t.get("email")};t.set("isProcessing",!0);t.createOrUpdatepPaymentToken(u).done(function(i){var u=i.data,f;if(u.PaymentSuccessful){n.cv.css.trigger(n.cv.css.eventnames.customerPaymentTokenAddedOrUpdated,r.name);n.cv.util.redirect("/"+r.options.custPaymentTokenManagementUrl+"?serverResponded=true");return}n.cv.util.hasValue(u.Messages)&&(t.set("message",u.Messages[0]),t.set("showCreditCardVerificationSuccessMessage",!1),f=t.get("creditCardAddedOrUpdatedFailedMessage"),t.set("braintreeCreditCardAddedOrUpdatedFailedMessage",f),t.set("showCreditCardAddedOrUpdatedFailedMessage",!0))}).always(function(){t.set("isProcessing",!1)})}}));return r._extend&&r._extend.call(r,u,r),u}};n.cv.ui.widget(r)})(jQuery);
114(function(n){var t="widgetDataInitialised",i={name:"reportGenerator",extend:"mvvmwidget",options:{dataSource:[],autoBind:!1,showActiveAndInactiveReportsFlags:!0,sourceReportGenerator:"ReportGenerator",reportGroups:"",reportFormatOptions:"",reportCsvFormatOption:"",noReportsAvailablePrompt:"There are no reports found.",reportNameEmptyMessage:"Please enter the Report Name.",reportGeneratedSuccessfulMessage:"Report generated successfully",reportGeneratedUnsuccessfulMessage:"Report generated unsuccessfully",reportGeneratedSubscriptionMessage:"A new report has been generated and ready to subscribe.",reportGeneratedNoSubscriptionMessage:"A new report has been generated but not enabled to subscribe."},extendEvents:[t],initialised:function(){var n=this;n.viewModel.getAvailableReports()},viewModelBound:function(){var n=this;n.trigger(t)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend({},t.options,{isSearchReports:!1,isClearSearchReports:!1,isShowReports:!1,isNoReportsAvailable:!0,showActive:!0,showInactive:t.options.showActiveAndInactiveReportsFlags===!1,noReportsAvailablePrompt:t.options.noReportsAvailablePrompt,searchTerm:"",updateViewModelFromDataSource:function(){},searchReports:function(){var n=this;n.getAvailableReports()},clearSearchReports:function(){var n=this;n.set("isClearSearchReports",!0);n.set("searchTerm","");n.getAvailableReports();n.set("isClearSearchReports",!1)},getAvailableReports:function(){var i=this,r;i.set("isShowReports",!1);r=n.cv.data.dataSource({method:"report/ReportSearch",params:{reportGroups:t.options.reportGroups,searchTerm:i.get("searchTerm"),includeActive:i.get("showActive"),includeInactive:i.get("showInactive")},requestStart:function(){i.set("isSearchReports",!0)},requestEnd:function(t){var r=t.response.data;n.cv.util.hasValue(r)?(n.each(r,function(n,t){i.generateReportCriteria(t)}),i.set("isNoReportsAvailable",r.length===0),i.set("isShowReports",r.length>0)):(i.set("isNoReportsAvailable",!0),i.set("isShowReports",!1));i.set("isSearchReports",!1)}});t.setDataSource(r)},generateReportCriteria:function(i){i.reportCode=i.ReportCode;i.reportName=i.ReportName;i.reportDescription=i.ReportDescription;i.reportNameUpdated=i.ReportName;i.pdfOutputTemplate=i.PDFOutputTemplate;i.availableToSubscribe=i.AvailableToSubscribe===1;i.isPdfAvailable=n.cv.util.hasValue(i.PDFOutputTemplate)&&i.PDFOutputTemplate!=="";i.isPdfAvailable?(i.reportFormatOptions=t.options.reportFormatOptions,i.reportFormat="pdf"):(i.reportFormatOptions=t.options.reportCsvFormatOption,i.reportFormat="csv");i.reportGeneratedSubscriptionMessage=i.availableToSubscribe?t.options.reportGeneratedSubscriptionMessage:t.options.reportGeneratedNoSubscriptionMessage;i.searchFieldsStart=[];i.searchFieldsEnd=[];i.groupByOptions=[];i.sortByOptions=[];i.groupBy1="";i.groupBy2="";i.groupBy3="";i.sortBy1="";i.sortBy2="";i.sortBy3="";i.sortByAscending1=!0;i.sortByAscending2=!0;i.sortByAscending3=!0;i.reportNotes="";i.subscriptionUrl="";i.isProcessEditReportCriteria=!1;i.isFirstLoadReportCriteria=!0;i.isGenerateReport=!1;
114i.isShowReportNotes=!1;i.isShowGenerate=!0;i.isShowSubscribe=!1;i.isShowReportNameValidationErrors=!1;i.cancelEditReportCriteria=function(){var n=this;n.set("isShowEditReportCriteria",!1);n.set("isFirstLoadReportCriteria",!0);n.set("isShowGenerate",!0);n.set("isShowSubscribe",!1)};i.hideEditReportCriteria=function(){var n=this;n.set("isShowEditReportCriteria",!1)};i.isReportNameValid=function(t){return(n.cv.util.hasValue(t)===!1&&(t=this),t.get("isShowReportNameValidationErrors"))?t.get("reportNameUpdated")!=="":!0};i.resetEditReportCriteria=function(){var n=this;n.set("isFirstLoadReportCriteria",!0);n.set("isShowGenerate",!0);n.set("isShowSubscribe",!1);i.editReportCriteria.apply(n)};i.editReportCriteria=function(){var r=this;r.get("isFirstLoadReportCriteria")?(r.set("reportNameUpdated",r.get("ReportName")),i.isPdfAvailable?r.set("reportFormat","pdf"):r.set("reportFormat","csv"),r.set("groupBy1",""),r.set("groupBy2",""),r.set("groupBy3",""),r.set("sortBy1",""),r.set("sortBy2",""),r.set("sortBy3",""),r.set("sortByAscending1",!0),r.set("sortByAscending2",!0),r.set("sortByAscending3",!0),r.set("reportNotes",""),r.set("isShowReportNotes",!1),r.set("isFirstLoadReportCriteria",!1),r.set("isProcessEditReportCriteria",!0),n.cv.css.getReportCriteriaByReportCode({reportCode:r.get("reportCode")}).done(function(i){var u,f,e,o,s;n.cv.util.hasValue(i.data)&&(u=i.data.reportCriteriaFields,r.set("isShowReportNotes",u.IsShowNotes),f=u.GroupByOptions,r.set("displayGroupByOptions",u.GroupByOptions.length>0),n.each(f,function(n,t){t.text=t.Value;t.value=t.FieldName}),f.unshift({text:"Please Select",value:""}),r.set("groupByOptions",f),e=u.SortByOptions,r.set("displaySortByOptions",u.SortByOptions.length>0),n.each(e,function(n,t){t.text=t.Value;t.value=t.FieldName}),e.unshift({text:"Please Select",value:""}),r.set("sortByOptions",e),r.set("displaySearchTitle",u.SearchFieldData.length>0),o=[],n.each(u.SearchFieldData,function(t,i){var u,f,r;i.index=t;u=i.FieldName;f=i.Prompt;i.FieldName=u+"_Start";i.Prompt=f+" Start";r=n.cv.util.getFieldItemData(i);r.dataChanged=function(){var s=this,e=r.fieldItem.FieldName,o=e.replace("_Start","_End"),i=n("[name='"+e+"']").val(),t,u,f;s.set(o,i);t=n("[name='"+o+"']");t.attr("data-role")==="datepicker"?(u=t.data("kendoDatePicker"),u.value(i),u.trigger("change")):t.attr("data-role")==="dropdownlist"?(f=t.data("kendoDropDownList"),f.value(i),f.trigger("change")):(t.val(i),t.change())};o.push(r)}),r.set("searchFieldsStart",o),s=[],n.each(u.SearchFieldData,function(t,i){var r,u,f;i.index=t;r=i.FieldName.substring(0,i.FieldName.length-6);u=i.Prompt.substring(0,i.Prompt.length-6);i.FieldName=r+"_End";i.Prompt=u+" End";f=n.cv.util.getFieldItemData(i);s.push(f)}),r.set("searchFieldsEnd",s),n.cv.util.bindKendoWidgets(n(t.element[0])));r.set("isShowEditReportCriteria",!0)}).always(function(){r.set("isProcessEditReportCriteria",!1)})):r.set("isShowEditReportCriteria",!0)};i.generateReport=function(){var i=this,e,r,o,u,s,f;if(i.set("isGenerateReport",!0),i.set("isShowReportNameValidationErrors",!0),e=i.isReportNameValid(i),e===!1){n.cv.css.trigger(n.cv.css.eventnames.message,{message:t.options.reportNameEmptyMessage,type:n.cv.css.messageTypes.error,source:t.options.sourceReportGenerator,clearExisting:!0});i.set("isGenerateReport",!1);return}if(n.each(i.get("searchFieldsStart"),function(n,t){t.fieldValid({data:t.fieldItem.parent()})}),r=_.find(i.get("searchFieldsStart"),function(n){return n.fieldItem.hasError}),r!==undefined){n.cv.css.trigger(n.cv.css.eventnames.message,{message:r.fieldItem.errorMessage,type:n.cv.css.messageTypes.error,source:t.options.sourceReportGenerator,clearExisting:!0});i.set("isGenerateReport",!1);return}if(n.each(i.get("searchFieldsEnd"),function(n,t){t.fieldValid({data:t.fieldItem.parent()})}),r=_.find(i.get("searchFieldsEnd"),function(n){return n.fieldItem.hasError}),r!==undefined){n.cv.css.trigger(n.cv.css.eventnames.message,{message:r.fieldItem.errorMessage,type:n.cv.css.messageTypes.error,source:t.options.sourceReportGenerator,clearExisting:!0});i.set("isGenerateReport",!1);return}o=i.get("searchFieldsStart");u=[];n.each(o,function(n,t){var i=t.fieldItem.FieldName;u.push({FieldName:i.substring(0,i.length-6),Value:t[i]})});s=i.get("searchFieldsEnd");f=[];n.each(s,function(n,t){var i=t.fieldItem.FieldName;
114f.push({FieldName:i.substring(0,i.length-4),Value:t[i]})});n.cv.css.generateReport({reportCode:this.get("reportCode"),reportName:this.get("reportNameUpdated"),reportFormat:this.get("reportFormat"),reportNotes:this.get("reportNotes"),groupBy1:this.get("groupBy1"),groupBy2:this.get("groupBy2"),groupBy3:this.get("groupBy3"),sortBy1:this.get("sortBy1"),sortBy2:this.get("sortBy2"),sortBy3:this.get("sortBy3"),sortByAscending1:this.get("sortByAscending1"),sortByAscending2:this.get("sortByAscending2"),sortByAscending3:this.get("sortByAscending3"),searchFieldsStart:u,searchFieldsEnd:f}).done(function(r){var u,f,e,o;n.cv.util.hasValue(r.data)&&(u=r.data.requestId,f=r.data.sq,n.cv.util.hasValue(u)&&u!==-1&&r.data.success?(i.set("isShowGenerate",!1),i.set("isShowSubscribe",i.get("availableToSubscribe")),e="report-subscription?sq=".concat(f),i.set("subscriptionUrl",e),n.cv.css.trigger(n.cv.css.eventnames.message,{message:t.options.reportGeneratedSuccessfulMessage,type:n.cv.css.messageTypes.success,source:t.options.sourceReportGenerator,clearExisting:!0}),o="report-retrieve?sq=".concat(f),n.cv.util.redirect(o)):n.cv.css.trigger(n.cv.css.eventnames.message,{message:n.cv.util.hasValue(r.data.messages[0])?r.data.messages[0]:t.options.reportGeneratedUnsuccessfulMessage,type:n.cv.css.messageTypes.error,source:t.options.sourceReportGenerator,clearExisting:!0}))}).always(function(){i.set("isGenerateReport",!1)})};i.subscribeReport=function(){var i=this,t=i.get("subscriptionUrl");t!==""&&n.cv.util.redirect(t)}}}))}};n.cv.ui.widget(i)})(jQuery);
115(function(n){var t="widgetDataInitialised",i={name:"stockenquiry",extend:"mvvmwidget",options:{dataSource:[],dataPromoMaster:[],autoBind:!0,viewTemplate:null,warehouse:"",userWarehouseRestriction:"",colourFirst:"",searchFields:[]},extendEvents:[t,"listUpdated"],viewModelBound:function(){var n=this;n.trigger(t)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this,i={};return n.each(t.options.searchFields,function(n,t){i[t.MvvmDropDownValueName]="";i[t.MvvmDropDownSourceName]=t.Lookup}),kendo.observable(n.extend(t.options,i,{isProcessing:!1,searchResults:[],searchString:"",masterFileSearchKey:"MasterSearch",masterFileSearchTableName:"vwMasterFileSearch",masterFileSearchFields:["APN","ProductCode","Description"],masterSearchString:"",recordsPerPage:20,recordCount:0,currentPage:1,totalPages:0,pageStartValue:1,pageEndValue:20,hasMultiplePages:!1,onFirstPage:!1,onLastPage:!1,
115changedItemCount:0,isPaging:!1,sortField:"Description",sortDirection:"ASC",chosenProductCode:"",hasEmptySearchResults:!1,isMasterSearch:!1,productSearchKeyEvent:function(n){var t=this;(n.keyCode=="13"||n.which=="13"||n.key=="Enter")&&(t.set("currentPage",1),t.newProductSearch())},newProductSearch:function(){var n=this;n.set("isProcessing",!0);n.set("currentPage",1);n.set("hasEmptySearchResults",!1);n.productSearch()},returnSearchResult:function(t){var i=n.Deferred(),r=this;return n.fancybox.open({topRatio:"0.25",minWidth:"90%",padding:[10,15,10,15],href:"#stockenquiry",afterShow:function(){n("#stockenquiry").removeClass("cv-is-hidden");n("#product-search").focus()},beforeClose:function(){t&&t()},afterClose:function(){i.resolve({SelectedProductCode:r.get("chosenProductCode")});r.clearFilter()}}),i.promise()},productSearch:function(){var i=this,u,r,f,e;i.set("isMasterSearch",!1);u=i.get("searchString");n.cv.util.hasContent(u)?(i.buildFilter(),r=0,i.get("currentPage")>1&&(r=t.options.recordsPerPage*(parseInt(i.get("currentPage"))-1)),f=t.options.recordsPerPage,n.cv.css.product.productSearch({searchString:u,filter:{logic:"and",filters:i.get("filterList")},skip:r,take:f,sort:i.get("sortField")+" "+i.get("sortDirection")}).done(function(t){n.cv.util.hasValue(t)&&(i.set("recordCount",t.recordCount),i.set("hasEmptySearchResults",t.recordCount==0),n.each(t.data,function(t,r){r.selectProduct=function(){i.set("chosenProductCode",r.ProductCode);n.fancybox.close()};r.Bin="";r.ProntoStockWarehouseRecord.length>0&&(r.Bin=r.ProntoStockWarehouseRecord[0].BinLocation)}),i.set("searchResults",t.data),i.setPageDataActual(r==0));i.set("isProcessing",!1)})):(e="Please enter Item Code or Description to search",n.cv.css.trigger(n.cv.css.eventnames.message,{message:e,type:n.cv.css.messageTypes.warning,source:"newProductSearch",clearExisting:!0}),i.set("isProcessing",!1))},masterFileSearch:function(){var i=this,r,u,f;i.set("isMasterSearch",!0);n.cv.util.hasContent(i.get("searchString"))?(i.buildMasterFileSearchString(),r=0,i.get("currentPage")>1&&(r=t.options.recordsPerPage*(parseInt(i.get("currentPage"))-1)),u=t.options.recordsPerPage,i.set("isProcessing",!0),n.cv.css.getCustomTableData({key:t.options.masterFileSearchKey,jsonFieldGroup:t.options.masterFileSearchTableName,filter:i.get("masterSearchString"),skip:r,take:u,sort:i.get("sortField")+" "+i.get("sortDirection")}).done(function(t){n.cv.util.hasValue(t)&&(i.set("recordCount",t.recordCount),i.set("hasEmptySearchResults",t.recordCount==0),n.each(t.data,function(t,i){i.selectProduct=function(){n.fancybox.close()}}),i.set("searchResults",t.data),r==0?i.setPageDataActual(!0):i.setPageDataActual(!1));i.set("isProcessing",!1)})):(f="Please enter Item Code or Description to search",n.cv.css.trigger(n.cv.css.eventnames.message,{message:f,type:n.cv.css.messageTypes.warning,source:"masterFileSearch",clearExisting:!0}),i.set("isProcessing",!1))},buildMasterFileSearchString:function(){var u=this,f="",e,s,r,o;n.each(t.options.searchFields,function(n,t){i[t.MvvmDropDownValueName]="";i[t.MvvmDropDownSourceName]=t.Lookup});e=u.get("searchString");n.cv.util.hasContent(e)&&(s=n.map(t.options.masterFileSearchFields,function(n){return"".concat(n,":lk:").concat(e)}),f="(".concat(s.join("|"),")"),r=n.map(t.options.searchFields,function(n){return{FieldName:n.FieldName,FieldValue:u.get(n.MvvmDropDownValueName)}}),r=n.grep(r,function(t){return n.cv.util.hasContent(t.FieldValue)}),o=n.map(r,function(n){return"".concat(n.FieldName,":eq:").concat(n.FieldValue)}),o.length>0&&(f+=",(".concat(o.join(","),")")));u.set("masterSearchString",f)},buildFilter:function(){var r=this,i=n.map(t.options.searchFields,function(n){return{FieldName:n.FieldName,FieldValue:r.get(n.MvvmDropDownValueName)}}),u;i=n.grep(i,function(t){return n.cv.util.hasContent(t.FieldValue)});u=n.map(i,function(n){return{field:n.FieldName,operator:"eq",value:n.FieldValue}});r.set("filterList",u)},showSearchResults:function(){var n=this;return n.get("searchResults").length>0},updateViewModelFromDataSource:n.noop,clearFilter:function(){var i=this;i.set("searchString","");n.each(t.options.searchFields,function(n,t){i.set(t.MvvmDropDownValueName,"")});i.set("searchResults",[]);i.set("chosenProductCode","")},sortByColumn:function(t){var i=this,f="",e="",r,u;n.cv.util.hasValue(t.currentTarget.attributes)&&(r=_.filter(t.currentTarget.attributes,function(n){return n.nodeName=="data-sort-field"}),r.length==1&&(f=r[0].nodeValue),u=_.filter(t.currentTarget.attributes,function(n){return n.nodeName=="data-sort-order"}),u.length==1&&(e=u[0].nodeValue));i.set("sortDirection",e);i.set("sortField",f);i.setPageData(!0)},setPageData:function(){var n=this;n.isMasterSearch?n.masterFileSearch():n.productSearch()},setPageDataActual:function(n){var t=this,r=t.get("recordsPerPage"),f=0,e=r,o=0,i=Math.ceil(t.get("recordCount")/r),u;i>1?t.set("hasMultiplePages",!0):t.set("hasMultiplePages",!1);t.set("totalPages",i);n?(t.set("currentPage",1),t.set("onFirstPage",!0),t.set("onLastPage",i==1)):(u=t.get("currentPage"),f=(u-1)*r,e=f+r,i==1?(t.set("onFirstPage",!0),t.set("onLastPage",!0)):(t.set("onFirstPage",u==1),t.set("onLastPage",u==i)));o=e>t.get("recordCount")?t.get("recordCount"):e;t.set("pageStartValue",f+1);t.set("pageEndValue",o)},previousPage:function(){var n=this,t=n.get("currentPage");t>1&&(n.set("currentPage",t-1),n.setPageData(!1))},nextPage:function(){var n=this,t=n.get("currentPage"),i=n.get("totalPages");t<i&&(n.set("currentPage",t+1),n.isMasterSearch?n.masterFileSearch():n.productSearch())},firstPage:function(){var n=this;n.set("currentPage",1);n.setPageData(!0)},lastPage:function(){var n=this,t=n.get("totalPages");n.set("currentPage",t);n.setPageData(!1)},showBinLocation:function(){var n=this;return n.get("userWarehouseRestriction")!=""&&n.get("isMasterSearch")==!1}}))}};n.cv.ui.widget(i)})(jQuery);
116(function(n){var t="widgetDataInitialised",i={name:"reportSubscription",extend:"mvvmwidget",options:{dataSource:[],autoBind:!1,showActiveAndInactiveReportsFlags:!0,sourceReportSubscription:"ReportSubscription",reportGroups:"",frequencyOptions:"",defaultRequestId:-1,noReportsAvailablePrompt:"There are no reports found.",noSubscriptionsAvailablePrompt:"There are currently no subscriptions for {0}.",noSubscriptionLogRecordsPrompt:"There are currently no subscription log records for {0}.",recipientEmailAddressEmptyMessage:"Please enter the Recipient Email Address.",recipientEmailAddressInvalidMessage:"The Recipient Email Address is invali
116d.",recipientEmailAddressErrorMessage:"The Recipient Email Address is invalid.",startDateEmptyMessage:"Please enter the Start Date.",startDateInvalidMessage:"The Start Date is invalid.",startDateErrorMessage:"The Start Date is invalid.",reportGeneratedSuccessfulMessage:"Report generated successfully",reportGeneratedUnsuccessfulMessage:"Report generated unsuccessfully",deleteReportUnsuccessfulHasSubscribersPrompt:"Cannot delete this report, still have some subscribers",deleteReportConfirmationPrompt:"Are you sure you want to delete this report?",deleteReportErrorPrompt:"There was an error while deleting this report, please try again",deleteReportSubscriptionConfirmationPrompt:"Are you sure you want to delete this subscription?"},extendEvents:[t],initialised:function(){var n=this;n.viewModel.getAvailableReports()},viewModelBound:function(){var n=this;n.trigger(t)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_bindingTemplate:function(t,i){var r=n(kendo.template(n(t).html())(i));return kendo.bind(r,i),r},_bindingModal:function(t){n.fancybox({content:t,topRatio:"0.25",padding:"0",openEffect:"none",helpers:{overlay:{closeClick:!0}}})},_getDefaultViewModel:function(){var t=this,i=kendo.observable(n.extend({},t.options,{isSearchReports:!1,isClearSearchReports:!1,isShowReports:!1,isNoReportsAvailable:!0,showActive:!0,showInactive:t.options.showActiveAndInactiveReportsFlags===!1,noReportsAvailablePrompt:t.options.noReportsAvailablePrompt,defaultRequestId:t.options.defaultRequestId,searchTerm:"",subscribeTemplateClassName:"#report-subscription-subscribe-template",auditTemplateClassName:"#report-subscription-audit-template",updateViewModelFromDataSource:function(){},searchReports:function(){var n=this;n.getAvailableReports()},clearSearchReports:function(){var n=this;n.set("isClearSearchReports",!0);n.set("searchTerm","");n.getAvailableReports();n.set("isClearSearchReports",!1)},getAvailableReports:function(){var i=this,r;i.set("isShowReports",!1);r=n.cv.data.dataSource({method:"report/ReportSearchForSubscriptions",params:{reportGroups:t.options.reportGroups,searchTerm:i.get("searchTerm"),includeActive:i.get("showActive"),includeInactive:i.get("showInactive"),requestId:i.get("defaultRequestId")},requestStart:function(){i.set("isSearchReports",!0)},requestEnd:function(t){var r=t.response.data;n.cv.util.hasValue(r)?(n.each(r,function(n,t){i.generateReportSubscriptions(t)}),i.set("isNoReportsAvailable",r.length===0),i.set("isShowReports",r.length>0)):(i.set("isNoReportsAvailable",!0),i.set("isShowReports",!1));i.set("isSearchReports",!1)}});t.setDataSource(r)},generateReportSubscriptions:function(r){r.requestId=r.RequestID;r.requester=r.Requester;r.reportCode=r.ReportCode;r.reportName=r.ReportName;r.reportDescription=r.ReportDescription;r.nickname=r.Nickname;r.editingNickname=!1;r.noSubscriptionsAvailablePrompt=t.options.noSubscriptionsAvailablePrompt.format(r.ReportName);r.noSubscriptionLogRecordsPrompt=t.options.noSubscriptionLogRecordsPrompt.format(r.ReportName);r.isShowAddSubscription=!1;r.isNoSubscriptionsAvailable=!0;r.isNoSubscriptionLogRecords=!0;r.isSaveNewSubscription=!1;r.isUpdateSubscription=!1;r.isDeleteSubscription=!1;r.isGenerateReport=!1;r.newSubscription={};r.subscriptions=[];r.subscriptionLog=[];r.cancelNewSubscription=function(){var r=this,u;r.set("isShowAddSubscription",!1);u=t._bindingTemplate(i.get("subscribeTemplateClassName"),r);t._bindingModal(n(u))};r.cancelEditSubscriptions=function(){var t=this;t.cancelNewSubscription();t.set("newSubscription",{});t.set("subscriptions",[]);t.set("isShowEditSubscriptions",!1);n.fancybox.close()};r.generateReport=function(){var i=this;i.set("isGenerateReport",!0);n.cv.css.generateReportByRequestId({requestId:i.get("requestId")}).done(function(i){var r,u;n.cv.util.hasValue(i.data)&&(r=i.data.sq,n.cv.util.hasValue(r)&&i.data.success?(n.cv.css.trigger(n.cv.css.eventnames.message,{message:t.options.reportGeneratedSuccessfulMessage,type:n.cv.css.messageTypes.success,source:t.options.sourceReportSubscription,clearExisting:!0}),u="report-retrieve?sq=".concat(r),n.cv.util.redirect(u)):n.cv.css.trigger(n.cv.css.eventnames.message,{message:n.cv.util.hasValue(i.data.messages[0])?i.data.messages[0]:t.options.reportGeneratedUnsuccessfulMessage,type:n.cv.css.messageTypes.error,source:t.options.sourceReportSubscription,clearExisting:!0}))}).always(function(){i.set("isGenerateReport",!1)})};r.addSubscription=function(){var r,u,f;n.fancybox.showLoading();r=this;u={reportCode:r.get("reportCode"),requestId:r.get("requestId"),reportName:r.get("ReportName"),rowId:-1,recipientEmailAddress:"",startDate:"",endDate:"",frequencyOptions:t.options.frequencyOptions,frequency:"Daily",active:!0,lastRunDate:"",showRecipientEmailAddressValidationErrors:!1,showStartDateValidationErrors:!1,subscriptionIndex:-1,recipientEmailAddressErrorMessage:t.options.recipientEmailAddressEmptyMessage,startDateErrorMessage:t.options.startDateEmptyMessage};r.set("isShowAddSubscription",!0);r.set("newSubscription",u);n.fancybox.hideLoading();f=t._bindingTemplate(i.get("subscribeTemplateClassName"),r);t._bindingModal(n(f))};r.isRecipientEmailAddressValid=function(i){var r,u;if(n.cv.util.hasValue(i)===!1)return!1;if(r=!0,i.get("showRecipientEmailAddressValidationErrors")){if(u=i.get("recipientEmailAddress"),u==="")return i.set("recipientEmailAddressErrorMessage",t.options.recipientEmailAddressEmptyMessage),!1;n.each(u.split(";"),function(u,f){return(r=f===""?!1:n.cv.util.validateField(f,"email"),r===!1)?(i.set("recipientEmailAddressErrorMessage",t.options.recipientEmailAddressInvalidMessage),!1):!0})}return r};r.isStartDateValid=function(i){return n.cv.util.hasValue(i)===!1?!1:i.get("showStartDateValidationErrors")?i.get("startDate")===null||i.get("startDate").length===0?(i.set("startDateErrorMessage",t.options.startDateInvalidMessage),!1):i.get("startDate")!=="":!0};
116r.saveNewSubscription=function(){var r=this,i=r.get("newSubscription"),u,f;i.set("isSaveNewSubscription",!0);i.set("showRecipientEmailAddressValidationErrors",!0);i.set("showStartDateValidationErrors",!0);u=r.isRecipientEmailAddressValid(i);f=r.isStartDateValid(i);u&&f?n.cv.css.addReportSubscription({reportCode:i.reportCode,requestId:i.requestId,recipientEmailAddress:i.recipientEmailAddress,startDate:i.startDate,endDate:i.endDate,frequency:i.frequency,active:i.active}).done(function(i){var f=i.data,e;if(n.cv.util.hasValue(f)!==!1){if(e=f.result,n.cv.util.hasValue(e)&&e.length>0){var o=r.get("subscriptions"),u=e[0],s={requestId:u.RequestId,reportCode:u.ReportCode,reportName:r.get("ReportName"),rowId:u.RowId,recipientEmailAddress:u.RecipientEmailAddress,startDate:u.StartDate,endDate:u.EndDate,frequencyOptions:t.options.frequencyOptions,frequency:u.Frequency,active:u.IsActive,lastRunDate:u.LastRunDate!=null?u.LastRunDate:"",showRecipientEmailAddressValidationErrors:!1,showStartDateValidationErrors:!1,subscriptionIndex:o.length,recipientEmailAddressErrorMessage:t.options.recipientEmailAddressEmptyMessage,startDateErrorMessage:t.options.startDateEmptyMessage};o.push(s);r.set("isNoSubscriptionsAvailable",o.length===0)}f.success&&r.set("isShowAddSubscription",!1);n.cv.css.trigger(n.cv.css.eventnames.message,{message:f.messages[0],type:f.success?n.cv.css.messageTypes.success:n.cv.css.messageTypes.error,source:t.options.sourceReportSubscription,clearExisting:!0})}}).always(function(){i.set("isSaveNewSubscription",!1)}):(u===!1&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:i.get("recipientEmailAddressErrorMessage"),type:n.cv.css.messageTypes.error,source:t.options.sourceReportSubscription,clearExisting:!0}),f===!1&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:i.get("startDateErrorMessage"),type:n.cv.css.messageTypes.error,source:t.options.sourceReportSubscription,clearExisting:u}),i.set("isSaveNewSubscription",!1))};r.deleteReport=function(){function u(){n.cv.css.trigger(n.cv.css.eventnames.message,{message:t.options.deleteReportErrorPrompt,type:n.cv.css.messageTypes.error,source:t.options.sourceReportSubscription,clearExisting:!0})}var r=this,f=r.get("isNoSubscriptionsAvailable");if(f===!1){n.cv.css.trigger(n.cv.css.eventnames.message,{message:t.options.deleteReportUnsuccessfulHasSubscribersPrompt,type:n.cv.css.messageTypes.error,source:t.options.sourceReportSubscription,clearExisting:!0});return}confirm(t.options.deleteReportConfirmationPrompt)&&n.cv.css.deleteReportFromQueue({_objectKey:r._objectKey}).done(function(f){n.cv.util.hasValue(f.data.errorMessage)||f.data.deleteOk===!1?u():(i.get("dataSource").remove(r),n.cv.css.trigger(n.cv.css.eventnames.message,{message:f.data.message,type:n.cv.css.messageTypes.success,source:t.options.sourceReportSubscription,clearExisting:!0}),n.fancybox.close())}).fail(function(){u()})};r.deleteSubscription=function(i){if(confirm(t.options.deleteReportSubscriptionConfirmationPrompt)){var u=this,f=n(i.target).data("subscriptionIndex"),r=u.get("subscriptions")[f];r.set("isDeleteSubscription",!0);n.cv.css.deleteReportSubscription({reportCode:this.get("reportCode"),rowId:r.rowId}).done(function(i){var f=i.data,e;n.cv.util.hasValue(f)&&(f.success&&(e=u.get("subscriptions"),e.remove(r),n.each(e,function(n,t){t.set("subscriptionIndex",n)}),u.set("isNoSubscriptionsAvailable",e.length===0)),n.cv.css.trigger(n.cv.css.eventnames.message,{message:f.messages[0],type:f.success?n.cv.css.messageTypes.success:n.cv.css.messageTypes.error,source:t.options.sourceReportSubscription,clearExisting:!0}))}).always(function(){r.set("isDeleteSubscription",!1)})}};r.updateSubscription=function(i){var f=this,o=n(i.target).data("subscriptionIndex"),r=f.get("subscriptions")[o],u,e;r.set("isUpdateSubscription",!0);r.set("showRecipientEmailAddressValidationErrors",!0);r.set("showStartDateValidationErrors",!0);u=f.isRecipientEmailAddressValid(r);e=f.isStartDateValid(r);u&&e?n.cv.css.updateReportSubscription({reportCode:this.get("reportCode"),rowId:r.rowId,recipientEmailAddress:r.recipientEmailAddress,startDate:r.startDate,endD
116ate:r.endDate,frequency:r.frequency,active:r.active}).done(function(i){var r=i.data;n.cv.util.hasValue(r)&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:r.messages[0],type:r.success?n.cv.css.messageTypes.success:n.cv.css.messageTypes.error,source:t.options.sourceReportSubscription,clearExisting:!0})}).always(function(){r.set("isUpdateSubscription",!1)}):(u===!1&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:r.get("recipientEmailAddressErrorMessage"),type:n.cv.css.messageTypes.error,source:t.options.sourceReportSubscription,clearExisting:!0}),e===!1&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:r.get("startDateErrorMessage"),type:n.cv.css.messageTypes.error,source:t.options.sourceReportSubscription,clearExisting:u}),r.set("isUpdateSubscription",!1))};r.showAudits=function(){n.fancybox.showLoading();var r=this;n.cv.css.getReportSubscriptionLog({requestId:r.get("requestId")}).done(function(t){var i=[],u;n.cv.util.hasValue(t.data)&&(u=t.data.result,n.each(u,function(n,t){i.push({reportCode:t.Key1,requestId:t.Key2,rowId:t.Key3,recipientEmailAddress:t.To,sentDateTime:t.SentDateTime,cc:t.Cc,bcc:t.Bcc,status:t.EmailType==="ReportSubscription"?"Successful":"Failed"})}));r.set("isNoSubscriptionLogRecords",i.length===0);r.set("subscriptionLog",i)}).always(function(){n.fancybox.hideLoading();var u=t._bindingTemplate(i.get("auditTemplateClassName"),r);t._bindingModal(n(u))})};r.showSubscriptions=function(){n.fancybox.showLoading();var r=this;n.cv.css.getReportSubscriptionsByRequestId({requestId:r.get("requestId")}).done(function(i){var u=[],f;n.cv.util.hasValue(i.data)&&(f=i.data.result,n.each(f,function(n,i){u.push({rowId:i.RowId,reportName:i.ReportName,recipientEmailAddress:i.RecipientEmailAddress,startDate:i.StartDate,endDate:i.EndDate,frequencyOptions:t.options.frequencyOptions,frequency:i.Frequency,active:i.IsActive,lastRunDate:i.LastRunDate!=null?i.LastRunDate:"",showRecipientEmailAddressValidationErrors:!1,showStartDateValidationErrors:!1,subscriptionIndex:n,recipientEmailAddressErrorMessage:t.options.recipientEmailAddressEmptyMessage,startDateErrorMessage:t.options.startDateEmptyMessage})}));r.set("isNoSubscriptionsAvailable",u.length===0);r.set("subscriptions",u);r.set("isShowEditSubscriptions",!0);r.set("isShowAddSubscription",!1);r.set("newSubscription",[])}).always(function(){r.set("isShowEditSubscriptions",!0);n.fancybox.hideLoading();var u=t._bindingTemplate(i.get("subscribeTemplateClassName"),r);t._bindingModal(n(u))})};r.frequencyChange=function(n){this.subscriptions[n.data.subscriptionIndex].frequency=n.data.frequency};r.endDateChange=function(n){this.subscriptions[n.data.subscriptionIndex].endDate=n.data.endDate};r.activeChange=function(n){this.subscriptions[n.data.subscriptionIndex].active=n.data.active};r.startDateChange=function(n){this.subscriptions[n.data.subscriptionIndex].startDate=n.data.startDate};r.recipientEmailChange=function(n){this.subscriptions[n.data.subscriptionIndex].recipientEmailAddress=n.data.recipientEmailAddress};r.editNickname=function(){this.set("editingNickname",!0);this.set("oldNickName",this.get("nickname"))};r.saveNickname=function(i){this.set("editingNickname",!1);n.cv.css.updateReportNickname({requestId:i.data.RequestID,emailAddress:i.data.Requester,nickname:this.get("nickname")}).done(function(i){var r=i.data;n.cv.util.hasValue(r)&&n.cv.css.trigger(n.cv.css.eventnames.message,{message:r.messages[0],type:r.success?n.cv.css.messageTypes.success:n.cv.css.messageTypes.error,source:t.options.sourceReportSubscription,clearExisting:!0})})};r.cancelEditNickname=function(){this.set("nickname",this.get("oldNickName"));this.set("editingNickname",!1)}}}));return i}};n.cv.ui.widget(i)})(jQuery);
117(function(n){var t={name:"catalogueMaintenance",extend:"mvvmwidget",events:["dataBinding","dataBound","selected","success"],options:{customerCode:"",catalogueGridId:"catalogueGrid",categoryTreeId:"categoryTree",categoryTreePopupTemplateId:"categoryTreePopupTemplate",categoryTreeRowTemplateId:"categoryTreeRowTemplate",categoryTreeContextMenuId:"categoryTreeContextMenu",productGridId:"productGrid",addProductsDialogId:"addProductsDialog",productSearchGridId:"productSearchGrid",clusterLinesGridId:"clusterLinesGrid",addClusterLineDialogContentId:"addClusterLineDialogContent",uploadCatalogueId:"uploadCatalogue",uploadProductsId:"uploadProducts"},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var i=this,t=kendo.observable(n.extend({},i.options,{listMode:!0,configMode:!1,_isConfigMode:function(n){var t=this;t.set("configMode",n);t.set("listMode",!n);n===!1&&(t.categories.data([]),t.productsDataSource.data([]),t.clusterLinesDataSource.data([]))},catalogues:n.cv.data.dataSource({method:"cataloguemaintenance/GetCataloguesForCustomer",createMethod:"cataloguemaintenance/CreateCatalogue",updateMethod:"cataloguemaintenance/UpdateCatalogue",destroyMethod:"cataloguemaintenance/DeleteCatalogue",params:function(){return{customerCode:i.options.customerCode}},model:{id:"CatalogueCode",fields:{CatalogueCode:{editable:!0,validation:{required:!0}},Description:{editable:!0,validation:{required:!0}}}}}),onCatalogueGridEdit:function(n){if(n.model&&n.container){var t=n.container,i=t.data("kendoWindow");n.model.id?(i.title("Edit"),i.bind("activate",function(){t.find("#CatalogueCode").attr("disabled","disabled");t.find("#Description").focus()})):(i.title("Create"),i.bind("activate",function(){t.find("#CatalogueCode").focus()}))}},configureCatalogue:function(i){i.preventDefault();var r=u.dataItem(n(i.currentTarget).closest("tr"));t.set("currentCatalogueCode",r.CatalogueCode);t.categories.fetch();t._isConfigMode(!0)}
117,deleteCatalogue:function(i){i.preventDefault();var r=u.dataItem(n(i.currentTarget).closest("tr")),f=t;f._confirm("Delete Catalogue","Are you sure you want to delete this catalogue?").then(function(){u.dataSource.remove(r);u.dataSource.sync();u.refresh()})},backToList:function(){t._isConfigMode(!1)},uploadCatalogue:function(i){var r={catalogueCode:t.currentCatalogueCode,uploadMethod:t.uploadMethod,fileContents:i.target.result};t._uploadCatalogue(r).done(function(n){var i=n.data;i.Success&&(t.categories.fetch(),s.clearAllFiles());t.set("uploadResult",n.data)}).fail(function(i){t._setMessage(i.responseJSON.errorMessage,n.cv.css.messageTypes.error)})},_uploadCatalogue:n.cv.newServiceMethod("cataloguemaintenance/UploadCatalogue",{catalogueCode:"",uploadMethod:"",fileContents:null}),downloadCatalogue:function(){n("form").submit()},categories:n.cv.data.treeListDataSource({method:"cataloguemaintenance/GetCategoriesByCatalogue",createMethod:"cataloguemaintenance/CreateCategory",updateMethod:"cataloguemaintenance/UpdateCategory",destroyMethod:"cataloguemaintenance/DeleteCategory",params:function(){return{CatalogueCode:t.get("currentCatalogueCode")}},model:{id:"Id",parentId:"ParentId",fields:{Id:{type:"number",nullable:!0},ParentId:{type:"number",nullable:!0},CategoryCode:{nullable:!1},ParentCode:{nullable:!0},Description:{nullable:!1,validation:{required:!0}},CatalogueCode:{nullable:!1},SortOrder:{type:"number",nullable:!1}}}}),addFirstCategory:function(){r.addRow("")},firstCategoryMode:!1,onTreeListDataBound:function(i){var r=i.sender;if(r.dataSource.data().length===0){t.set("firstCategoryMode",!0);return}t.set("firstCategoryMode",!1);r.select(n(r.element).find("tbody>tr:nth(0)"))},onTreeListDragEnd:function(n){var u=n.destination,t=n.source,f,r;u&&t&&(f=i.viewModel,r=n.sender,t.set("ParentCode",u.get("CategoryCode")),t.set("SortOrder",f._getNextSortOrder(r.dataSource.data(),t)),r.dataSource.sync())},onTreeListSave:function(n){var t=n.model,u,r,f,e;t&&(u=i.viewModel,r=n.sender.dataSource.data(),t.isNew()&&(f=_.max(_.map(r,function(n){return n.Id}),function(n){return n})+1,t.set("Id",f),t.set("CatalogueCode",u.currentCatalogueCode)),e=t.get("ParentId")===null?null:_.find(r,function(n){return n.Id===t.get("ParentId")}).CategoryCode,t.set("SortOrder",u._getNextSortOrder(r,t)),t.set("ParentCode",e))},onTreeListChange:_.debounce(function(i){var u=i.sender,r=u.dataItem(u.select());r&&r.get("CategoryCode")!==t.currentCategoryCode&&(t.set("currentCategoryCode",r.get("CategoryCode")),t.set("currentCategoryIsCluster",r.get("IsCluster")),t.productsDataSource.fetch(),r.get("IsCluster")?t.clusterLinesDataSource.fetch():n("#tabs").data("kendoTabStrip").select(0))},250),onContextMenuOpen:function(t){t.target&&r.select(n(t.target))},onContextMenuSelect:function(i){if(i.item&&i.target){var u=n(i.target),f=n(i.item).data("c
117ommand");switch(f){case"createChild":r.addRow(u);break;case"edit":r.editRow(u);break;case"destroy":t._confirm("Delete Category","Are you sure you want to delete this category and all its children from this catalogue?").then(function(){r.removeRow(u)});break;case"createTopLevel":r.addRow("");break;case"download":t._downloadCategoryProducts()}}},categoryForDownload:"",_downloadCategoryProducts:function(){for(var u=t.categories,i=_.find(u.data(),function(n){return n.CategoryCode===t.currentCategoryCode}),r="";i;)r=r===""?i.Description:i.Description+"\\"+r,i=u.parentNode(i);t.set("categoryForDownload",t.currentCategoryCode+"="+r);n("form").submit()},onTreeListEdit:function(n){if(n.model&&n.container){var i=n.model,t=n.container;i.id?t.data("kendoWindow").title("Edit Category"):i.parentId?t.data("kendoWindow").title("New Child Category"):t.data("kendoWindow").title("New Top Level Category")}},productsDataSource:n.cv.data.dataSource({batch:!0,method:"cataloguemaintenance/GetProductsByCategory",createMethod:"cataloguemaintenance/AddCatalogueProducts",params:function(){return{catalogueCode:t.get("currentCatalogueCode"),categoryCode:t.get("currentCategoryCode")}},model:{id:"ProductCode"},serverPaging:!1}),firstProductMode:!0,onProductGridDataBound:function(){t._refreshTabContent()},onAddSelectedProductsClick:function(){var r=o.selectedKeyNames(),u;r.length>0&&(u={productCodes:r,catalogueCode:t.get("currentCatalogueCode"),categoryCode:t.get("currentCategoryCode")},t._addProductsToCategory(u).done(function(){f.dataSource.read();f.clearSelection();n("#".concat(i.options.addProductsDialogId)).data("kendoWindow").close()}).fail(function(i){t._setMessage(i.responseJSON.errorMessage,n.cv.css.messageTypes.error)}))},_addProductsToCategory:n.cv.newServiceMethod("cataloguemaintenance/AddProductsToCategory",{productCodes:[],catalogueCode:"",categoryCode:""}),onDeleteSelectedProductsClick:function(){var i=this,r=f.selectedKeyNames();r.length>0&&i._confirm("Delete Product","Are you sure you want to delete the selected products?").then(function(){var u={productCodes:r,catalogueCode:i.get("currentCatalogueCode"),categoryCode:i.get("currentCategoryCode")};i._removeProductsFromCategory(u).done(function(){f.dataSource.read();f.clearSelection()}).fail(function(i){t._setMessage(i.responseJSON.errorMessage,n.cv.css.messageTypes.error)})})},_removeProductsFromCategory:n.cv.newServiceMethod("cataloguemaintenance/RemoveProductsFromCategory",{productCodes:[],catalogueCode:"",categoryCode:""}),uploadProducts:function(i){var r={catalogueCode:t.currentCatalogueCode,categoryCode:t.currentCategoryCode,uploadMethod:t.uploadMethod,fileContents:i.target.result};t._uploadProductsToCategory(r).done(function(n){var i=n.data;i.Success&&(t.productsDataSource.fetch(),h.clearAllFiles());t.set("uploadResult",n.data)}).fail(function(i){t._setMessage(i.responseJSON.errorMessage,n.cv.css.messageTypes.error)})},_uploadProductsToCategory:n.cv.newServiceMethod("cataloguemaintenance/UploadProductsToCategory",{catalogueCode:"",categoryCode:"",uploadMethod:"",fileContents:""}),searchText:"",productSearchDatasource:n.cv.data.dataSource({method:"cataloguemaintenance/ProductSearch",params:function(){return{searchText:t.get("searchText"),catalogueCode:t.get("currentCatalogueCode"),categoryCode:t.get("currentCategoryCode")}},model:{id:"ProductCode"}}),isSearchingProducts:!1,onSearchProductsClick:function(){var n=this;n.set("isSearchingProducts",!0);n.productSearchDatasource.fetch(function(){n.set("isSearchingProducts",!1)})},onAddProductsDialogClose:function(){o.clearSelection();o.dataSource.data([]);t.set("searchText","")},clusterLinesDataSource:n.cv.data.dataSource({batch:!0,method:"cataloguemaintenance/GetClusterLinesByCategory",params:function(){return{categoryCode:t.get("currentCategoryCode")}},model:{id:"ClusterLineId"},serverPaging:!1}),firstClusterMode:!0,showClusterLineGrid:!1,onClusterLineGridDataBound:function(){t._refreshTabContent()},onClusterLineDialogOpen:function(){n("#".concat(i.options.addClusterLineDialogContentId)).kendoValidator({validateOnBlur:!1})},onClusterLineDialogClose:function(){var t=n("#".concat(i.options.addClusterLineDialogContentId)).data("kendoValidator");t.reset()}
117,onClusterLineProductChange:function(n){t.set("clusterLineModel.Description",n.sender.text())},onAddClusterLineClick:function(){var r=this,o=n("#".concat(i.options.addClusterLineDialogContentId)).data("kendoValidator"),u,f;o.validate()&&(u=r.clusterLinesDataSource.data(),f=u.length>0?_.max(_.map(u,function(n){return n.SortOrder}))+1:1,r.clusterLineModel.set("CategoryCode",r.currentCategoryCode),r.clusterLineModel.set("SortOrder",f),r._addClusterLine({clusterLine:r.clusterLineModel}).done(function(){e.dataSource.fetch(function(){r._clearClusterLineModel();r._refreshClusterLineProductsDataSource()})}).fail(function(i){t._setMessage(i.responseJSON.errorMessage,n.cv.css.messageTypes.error)}))},_addClusterLine:n.cv.newServiceMethod("cataloguemaintenance/AddClusterLine",{clusterLine:{}}),onDeleteClusterLineClick:function(){var i=e.selectedKeyNames();i.length>0&&t._confirm("Delete Lines","Are you sure you want to delete the selected lines?").then(function(){var r={clusterLineIds:i};t._deleteClusterLines(r).done(function(){e.dataSource.read();e.clearSelection()}).fail(function(i){t._setMessage(i.responseJSON.errorMessage,n.cv.css.messageTypes.error)})})},_deleteClusterLines:n.cv.newServiceMethod("cataloguemaintenance/DeleteClusterLines",{clusterLineIds:[]}),clusterLineModel:{CategoryCode:"",LineType:"",ProductCode:"",Description:"",Quantity:0,SortOrder:0,AllowQtyOverride:!1},_clearClusterLineModel:function(){var n=this.clusterLineModel;n.set("CategoryCode","");n.set("LineType","");n.set("ProductCode","");n.set("Description","");n.set("Quantity",0);n.set("SortOrder",0);n.set("AllowQtyOverride",!1)},clusterLineProducts:[],_refreshClusterLineProductsDataSource:function(){var n=this,i=n.clusterLinesDataSource.data(),r=n.productsDataSource.data(),t=[];_.each(r,function(n){var r=_.some(i,function(t){return n.ProductCode===t.ProductCode});r||t.push({ProductCode:n.ProductCode,Description:n.Description})});n.set("clusterLineProducts",t)},clusterLineTypeDataSource:n.cv.data.dataSource({method:"cataloguemaintenance/GetClusterLineTypes"}),availableTemplates:n.cv.data.dataSource({method:"cataloguemaintenance/GetAvailableTemplates"}),openDialog:function(t){var i=n(t.currentTarget).data("dialogId");n("#".concat(i)).data("kendoWindow").center().open()},closeDialog:function(t){var i=n(t.currentTarget).data("dialogId");n("#".concat(i)).data("kendoWindow").center().close()},_refreshTabContent:function(){var o=t.productsDataSource.data(),n=o.length===0,r,i,u;t.set("firstProductMode",n);r=t.clusterLinesDataSource.data();i=r.length===0;t.set("firstClusterMode",!n&&i);u=!n&&!i;t.set("showClusterLineGrid",u);t._refreshClusterLineProductsDataSource();t.set("canAddClusterLines",t.clusterLineProducts.length!==0);f.resize();e.resize()},_getNextSortOrder:function(n,t){var i=_.max(_.map(n.filter(function(n){return n.Id!==t.Id&&n.ParentId===t.ParentId}),function(n){return n.SortOrder}),function(n){return n});return(i||0)+1},_confirm:function(t,i){return n("<div><\/div>").kendoConfirm({title:t,content:i}).data("kendoConfirm").open().result},_setMessage:function(t,r){n.cv.util.notify({triggerMessages:!0,clearExisting:!0,type:r,source:i.name,message:t})},uploadMethod:"A",uploadMethods:[{value:"A",text:"Append"},{value:"O",text:"Overwrite"}],uploadResult:null,showUploadResult:function(){return t.get("uploadResult")!==null},refreshUploadWindow:function(){t.set("uploadMethod","A");t.set("uploadResult",null);h.clearAllFiles()}})),u=n("#".concat(i.options.catalogueGridId)).kendoGrid({pageable:!0,sortable:!0,editable:{mode:"popup",confirmation:!0},toolbar:["create"],columns:[{field:"CatalogueCode",title:"Code"},{field:"Description",title:"Description"},{command:[{name:"edit"},{text:"Delete",click:t.deleteCatalogue},{text:"Configure",click:t.configureCatalogue},],title:"Options"}],dataSource:t.catalogues,edit:t.onCatalogueGridEdit}).data("kendoGrid"),s,r;u.dataSource.bind("error",function(){u.cancelChanges()});s=n("#".concat(i.options.uploadCatalogueId)).kendoUpload({multiple:!1,validation:{allowedExtensions:[".csv"]},select:function(n){_.each(n.files,function(n){var i=new FileReader;i.onload=t.uploadCatalogue;i.readAsText(n.rawFile)})}}).data("kendoUpload");r=n("#".concat(i.options.categoryTreeId)).kendoTreeList({autoBind:!1,selectable:!0,editable:{mode:"popup",move:!0,template:n("#".concat(i.options.categoryTreePopupTemplateId)).html()},columns:[{field:"Description",title:"Category",template:n("#".concat(i.options.categoryTreeRowTemplateId)).html()}],dataSource:t.categories,dataBound:t.onTreeListDataBound,dragend:t.onTreeListDragEnd,save:t.onTreeListSave,change:t.onTreeListChange,edit:t.onTreeListEdit}).data("kendoTreeList");r.dataSource.bind("error",function(){r.cancelChanges()});
117n("#".concat(i.options.categoryTreeContextMenuId)).kendoContextMenu({target:"#".concat(i.options.categoryTreeId),filter:"tbody > tr",select:t.onContextMenuSelect,open:t.onContextMenuOpen});var f=n("#".concat(i.options.productGridId)).kendoGrid({autoBind:!1,pageable:!0,sortable:!0,persistSelection:!0,columns:[{selectable:!0,width:50},{field:"ProductCode",title:"Code",width:200},{field:"Description"}],dataSource:t.productsDataSource,dataBound:t.onProductGridDataBound}).data("kendoGrid"),h=n("#".concat(i.options.uploadProductsId)).kendoUpload({multiple:!1,validation:{allowedExtensions:[".csv"]},select:function(n){_.each(n.files,function(n){var i=new FileReader;i.onload=t.uploadProducts;i.readAsText(n.rawFile)})}}).data("kendoUpload"),o=n("#".concat(i.options.productSearchGridId)).kendoGrid({autoBind:!1,pageable:!0,sortable:!0,persistSelection:!0,columns:[{selectable:!0,width:50},{field:"ProductCode",title:"Code",width:200},{field:"Description"}],dataSource:t.productSearchDatasource}).data("kendoGrid"),e=n("#".concat(i.options.clusterLinesGridId)).kendoGrid({autoBind:!1,pageable:!0,persistSelection:!0,columns:[{selectable:!0,width:50},{field:"LineType",title:"Line Type",width:200},{field:"Description"}],dataSource:t.clusterLinesDataSource,dataBound:t.onClusterLineGridDataBound}).data("kendoGrid");return t}};n.cv.ui.widget(t)})(jQuery);
118(function(n){var t={name:"customerClientProjectEditDialog",extend:"mvvmwidget",options:{projectTitle:"Project",clientTitle:"Client"},events:[],initialised:function(){},window:null,_getViewModel:function(){var i=this,r=i.options,t=kendo.observable(n.extend({},r,{data:null,errors:[],hasErrors:function(){return this.get("errors").length>0},clientData:{Status:""},isEditing:!1,isProjectMode:!0,_dialogCompletePromise:null,title:function(){return this.get("isProjectMode")?i.options.projectTitle:i.options.clientTitle},customers:[],hasClientSelected:function(){var n=this.get("data.ClientId");return n>0},show:function(t){function f(t){i.set("data",t);n.fancybox.open(r[0],{src:"cv-customer-client-project-edit-dialog",type:"inline",topRatio:"0.25",minWidth:"700",padding:"0",helpers:{overlay:{closeClick:!1}},afterOpen:function(){n.cv.css.initialiseKendoControls(r)}})}var r=n("#cv-customer-client-project-edit-dialog"),u=t==null,i=this;return this.set("isEditing",!u),this.set("isProjectMode",!0),i.set("_dialogCompletePromise",n.Deferred()),n.cv.css.customerClient.clientSearch().done(function(r){var e=r.data.result;i._setCustomers(e);i.set("customers",e);u?f({Status:"Active"}):n.cv.css.customerClient.getProject({_objectKey:t}).done(function(n){var t=n.data.result[0];t.StartDate=kendo.toString(t.StartDate,"yyyy-MM-dd");t.EndDate=kendo.toString(t.EndDate,"yyyy-MM-dd");f(t)})}),i.get("_dialogCompletePromise").promise()},onCreateClient:function(){this.set("errors",[]);this.set("clientData",{Status:"Active"});this.set("isProjectMode",!1)},onSave:function(){var t=this,i=t.get("data").toJSON(),r={data:i};return i._objectKey&&(r._objectKey=i._objectKey),n.cv.css.customerClient.saveProject(r).done(function(n){n.data.status.Success===!1?t.set("errors",n.data.status.Messages):(t.get("_dialogCompletePromise").resolve(n),t._close())}),!1},onSaveClient:function(){var t=this,i=t.get("clientData").toJSON(),r={data:i};return i._objectKey&&(r._objectKey=i._objectKey),n.cv.css.customerClient.saveClient(r).then(function(i){if(i.data.status.Success===!1)t.set("errors",i.data.status.Messages);else{t.set("errors",[]);var r=i.data.result[0].ClientId;n.cv.css.customerClient.clientSearch().done(function(n){var i=n.data.result;t._setCustomers(i);t.set("isProjectMode",!0);t.set("data.ClientId",r)})}}),!1},_setCustomers:function(t){_.each(t,function(t){var i=n.trim(t.ContactName);t.AugmentedName=t.Name;i.length>0&&(t.AugmentedName+=" ("+i+")")});this.set("customers",t)},onCopyClientAddress:function(){var t=this.get("data"),i=this.get("customers"),r=this.get("data.ClientId"),n=_.find(i,function(n){return n.ClientId==r});n&&(t.set("Address1",n.Address1),t.set("Address2",n.Address2),t.set("Suburb",n.Suburb),t.set("Postcode",n.Postcode),t.set("ClientEmail",n.ClientEmail),t.set("ClientPhone",n.ClientPhone))},onCancel:function(){return(t.set("errors",[]),this.get("isProjectMode")==!1)?(this.set("isProjectMode",!0),!1):(this._close(),!1)},startDateChanged:function(){var t=this.get("data"),i=t.get("StartDate"),r=t.get("EndDate");i&&r&&n.cv.util.toDate(i)>n.cv.util.toDate(r)&&t.set("EndDate",n.cv.util.toDate(i))},endDateChanged:function(){var t=this.get("data"),r=t.get("StartDate"),i=t.get("EndDate");r&&i&&n.cv.util.toDate(r)>n.cv.util.toDate(i)&&t.set("StartDate",n.cv.util.toDate(i))},_close:function(){n.fancybox.close();t.set("data",{});t.set("errors",[])}}));return t}};n.cv.ui.widget(t)})(jQuery);
119(function(n){var t={name:"customerClientEditDialog",extend:"mvvmwidget",options:{title:"Client"},events:[],initialised:function(){},window:null,_getViewModel:function(){var i=this,r=i.options,t=kendo.observable(n.extend({},r,{data:{},errors:[],hasErrors:function(){return this.get("errors").length>0},isEditing:!1,_dialogCompletePromise:null,show:function(i){function f(i){t.set("data",i);n.fancybox.open(r[0],{src:"cv-customer-client-edit-dialog",type:"inline",topRatio:"0.25",minWidth:"320",padding:"0",helpers:{overlay:{closeClick:!1}}
119,afterOpen:function(){n.cv.css.initialiseKendoControls(r)}})}var r=n("#cv-customer-client-edit-dialog"),u=i==null;return this.set("isEditing",!u),t.set("_dialogCompletePromise",n.Deferred()),u?f({Status:"Active"}):n.cv.css.customerClient.getClient({_objectKey:i}).done(function(n){var t=n.data.result[0];f(t)}),t.get("_dialogCompletePromise").promise()},onSave:function(){var t=this,i=t.get("data").toJSON(),r={data:i};return i._objectKey&&(r._objectKey=i._objectKey),n.cv.css.customerClient.saveClient(r).done(function(n){n.data.status.Success===!1?t.set("errors",n.data.status.Messages):(t.get("_dialogCompletePromise").resolve(n),t._close())}),!1},onCancel:function(){return this._close(),!1},_close:function(){n.fancybox.close();t.set("data",{});t.set("errors",[])}}));return t}};n.cv.ui.widget(t)})(jQuery);
120(function(n){var t={name:"maintainCustomerClientProjects",extend:"mvvmwidget",options:{recordPerPage:10},events:[],initialised:function(){},_getViewModel:function(){var t=this,r=t.options,i=kendo.observable(n.extend({},r,{isSearching:!1,statusFilter:"",projectNameFilter:"",clientNameFilter:"",startDateFilter:"",endDateFilter:"",onSearch:function(){var n=this;n._search()},_search:function(){var i=this,r;i.set("isSearching",!0);r=n.cv.data.dataSource({method:"customerclientproject/projectsearch",params:function(t){n.extend(t,i._constructSearchParameters())},pageSize:t.options.recordsPerPage,requestEnd:function(t){i.set("isSearching",!1);try{t.response.data=n.cv.css.customerClient._projectConverter(JSON.stringify(t.response)).data.result}catch(r){}}});t.setDataSource(r)},updateViewModelFromDataSource:function(){var n=t.dataSource.data();this.get("showingProjects")===!1?this.set("orderResults",n):this.set("searchResults",n)},_constructSearchParameters:function(){var t=this,i=n.trim(t.get("clientNameFilter"))||"";return i.length>0?{clientName:i,sort:[{field:t.get("sortColumn"),dir:t.get("sortDirection")}]}:{status:n.trim(t.get("statusFilter")).length>0?t.get("statusFilter"):null,projectName:t.get("projectNameFilter"),clientName:i,startDate:t.get("startDateFilter"),endDate:t.get("endDateFilter"),sort:[{field:t.get("sortColumn"),dir:t.get("sortDirection")}]}},showingProjects:!0,dataSource:[],searchResults:[],showResults:function(){return this.get("searchResults").length>0},orderResults:[],onShowAssociatedProjects:function(i){var r=this,u=i.data._objectKey,f=n.cv.data.dataSource({method:"customerclientproject/getOrdersForProject",params:function(t){n.extend(t,{_objectKey:u})},pageSize:t.options.recordsPerPage,requestEnd:function(n){r.set("isSearching",!1);try{n.response.data=n.response.data.result;r.set("showingProjects",!1)}catch(t){}}});t.setDataSource(f)},onShowOrder:function(n){var t=n.data.SoOrderNo;window.location.href="/order-history?order="+t+"&R=/customer-client-projects"},goBack:function(){this.set("showingProjects",!0)},isSorting:!1,sortColumn:"Name",sortDirection:"asc",sortByColumn:function(t,i,r){var u=this;n.cv.util.sortByColumn(u,t,i,r);u._search()},onShowProject:function(t){var r=this,i=t.data._objectKey;n.cv.css.customerClient.showCustomerClientProjectEdit({objectKey:i}).done(function(n){if(n.data.status.Success!==!1){var t=n.data.result[0];r._removeByKey(i,t)}})},onCreateProject:function(){var t=this;n.cv.css.customerClient.showCustomerClientProjectEdit().done(function(){t._search()})},onDeleteProject:function(t){var i=this,r=t.data._objectKey,u=n("#customer-client-project-delete-project-confirmation-dialog");(i.set("_deleteKey",r),t.data.isProjectUsed!==!0)&&n.fancybox.open(u,{type:"inline",topRatio:"0.25",minWidth:"700",padding:"0",helpers:{overlay:{closeClick:!1}},afterOpen:function(){}})},onConfirmDelete:function(){var t=this,i=t.get("_deleteKey");n.cv.css.customerClient.deleteProject({_objectKey:i}).done(function(i){i.data.result.Success&&t._search();n.fancybox.close()})},_deleteKey:"",_removeByKey:function(n,t){for(var f=this,i=f.get("searchResults"),r=-1,u=0;u<i.length;u++)if(i[u]._objectKey===n){r=u;break}r!==-1&&(t?i.splice(r,1,t):i.splice(r,1))},itemClient:function(t){return t.client?n.trim(t.client.ContactName||"").length>0?t.client.Name+" ("+t.client.ContactName+")":t.client.Name:""},itemDateRange:function(n){var t=kendo.toString(n.StartDate,"yyyy-MM-dd"),i=kendo.toString(n.EndDate,"yyyy-MM-dd");return t&&i?t+" to "+i:t?"From "+t:i?"Finishing "+i:""},itemAddress:function(t){return n.trim(t.Address1+" "+t.Address2)+" "+t.Suburb+" "+t.Postcode},isProjectDeletable:function(n){return n.isProjectUsed===!1}}));return setTimeout(function(){i._search()},4),i}};n.cv.ui.widget(t)})(jQuery);
121(function(n){var t={name:"maintainCustomerClients",extend:"mvvmwidget",options:{recordPerPage:10},events:[],initialised:function(){},_getViewModel:function(){var t=this,r=t.options,i=kendo.observable(n.extend({},r,{isSearching:!1,statusFilter:"",clientNameFilter:"",startDateFilter:"",endDateFilter:"",onSearch:function(){var n=this;n._search()},_search:function(){var i=this,r;i.set("isSearching",!0);r=n.cv.data.dataSource({method:"customerclientproject/clientsearch",params:function(t){n.extend(t,i._constructSearchParameters())},pageSize:t.options.recordsPerPage,requestEnd:function(t){i.set("isSearching",!1);try{t.response.data=n.cv.css.customerClient._clientConverter(JSON.stringify(t.response)).data.result}catch(r){}}});t.setDataSource(r)},updateViewModelFromDataSource:function(){var n=t.dataSource.data();this.set("searchResults",n)},_constructSearchParameters:function(){var t=this,i=n.trim(t.get("clientNameFilter"))||"";return i.length>0?{clientName:i,sort:[{field:t.get("sortColumn"),dir:t.get("sortDirection")}]}:{clientName:i,status:n.trim(t.get("statusFilter")).length>0?t.get("statusFilter"):null,startDate:t.get("startDateFilter"),endDate:t.get("endDateFilter"),sort:[{field:t.get("sortColumn"),dir:t.get("sortDirection")}]}},dataSource:[],searchResults:[],showResults:function(){return this.get("searchResults").length>0},isSorting:!1,sortColumn:"Name",sortDirection:"asc",sortByColumn:function(t,i,r){var u=this;n.cv.util.sortByColumn(u,t,i,r);u._search()},onShowClient:function(t){var r=this,i=t.data._objectKey;n.cv.css.customerClient.showCustomerClientEdit({objectKey:i}
121).done(function(n){if(n.data.status.Success!==!1){var t=n.data.result[0];r._removeByKey(i,t)}})},onCreateClient:function(){var t=this;n.cv.css.customerClient.showCustomerClientEdit().done(function(){t._search()})},onDeleteClient:function(t){var i=this,r=t.data._objectKey,u=n("#customer-client-delete-client-confirmation-dialog");(i.set("_deleteKey",r),t.data.isClientUsed!==!0)&&n.fancybox.open(u,{type:"inline",topRatio:"0.25",minWidth:"320",padding:"0",helpers:{overlay:{closeClick:!1}},afterOpen:function(){}})},onConfirmDelete:function(){var t=this,i=t.get("_deleteKey");n.cv.css.customerClient.deleteClient({_objectKey:i}).done(function(i){i.data.result.Success&&t._search();n.fancybox.close()})},_deleteKey:"",_removeByKey:function(n,t){for(var f=this,i=f.get("searchResults"),r=-1,u=0;u<i.length;u++)if(i[u]._objectKey===n){r=u;break}r!=-1&&(t?i.splice(r,1,t):i.splice(r,1))},itemClient:function(t){return t?n.trim(t.ContactName||"").length>0?t.Name+" ("+t.ContactName+")":t.Name:""},itemAddress:function(t){return n.trim(t.Address1+" "+t.Address2)+" "+t.Suburb+" "+t.Postcode},isClientDeletable:function(n){return n.isClientUsed===!1}}));return setTimeout(function(){i._search()},4),i}};n.cv.ui.widget(t)})(jQuery);
122(function(n){var t={name:"orderProjectSelector",extend:"mvvmwidget",options:{limitResultCount:10,noProjectSelectedLabel:"-- No Selected Project --"},events:[],initialised:function(){},_getViewModel:function(){var t=this,r=t.options,i=kendo.observable(n.extend({},r,{projects:[],dataSource:[],onCreateProject:function(){var i=this;n.cv.css.customerClient.showCustomerClientProjectEdit().done(function(r){var u=r.data.result[0].ProjectId;n.cv.css.customerClient.setCurrentOrderProject({_objectKey:r.data.result[0]._objectKey}).done(function(){t.dataSource.fetch(function(){i.set("selectedProject",u)})})})},isSearching:!1,selectedProject:-1,_loadProjects:function(i){var r,u;i===void 0&&(i=!1);r=this;r.set("isSearching",!0);u=n.cv.data.dataSource({method:"customerclientproject/projectsearch",params:function(n){return r._constructSearchParameters(n)},pageSize:t.options.recordsPerPage,requestEnd:function(t){r.set("isSearching",!1);try{var i=t.response.data.currentOrderProjectId;t.response.data=n.cv.css.customerClient._projectConverter(JSON.stringify(t.response)).data.result;t.response.data.splice(0,0,{ProjectId:-1,Name:r.noProjectSelectedLabel,fullName:r.noProjectSelectedLabel});i!==-1&&n.type(r.get("selectedProject"))=="number"&&r.set("selectedProject",i)}catch(u){r.set("dataSource",[{ProjectId:-1,Name:r.noProjectSelectedLabel,fullName:r.noProjectSelectedLabel}])}}});t.setDataSource(u)},_constructSearchParameters:function(i){var r="";return i.filter&&i.filter.filters&&i.filter.filters.length>0&&n.cv.util.hasContent(i.filter.filters[0].value)&&(r=i.filter.filters[0].value),delete i.filter,delete i.page,delete i.pageSize,delete i.skip,delete i.take,{status:"Active",projectName:r,getClientInfo:!0,getOrderInfo:!1,isForLookup:!0,sort:[{field:"Name",dir:"asc"}],limitResultCount:t.options.limitResultCount}},updateViewModelFromDataSource:function(){var n=t.dataSource.data();this.set("projects",n)},dropdownHasValidationError:!1}));return i.bind("change",function(t){var r,u;if(t.field==="selectedProject"){if(r=i.get("selectedProject"),r==null&&(r=-1),n.type(r)!="number"&&(r=-1),i.set("dropdownHasValidationError",!1),r===-1){n.cv.css.customerClient.setCurrentOrderProject({clearSelectedProject:!0});return}u=_.find(i.get("projects"),function(n){return n.ProjectId===r});u&&n.cv.css.customerClient.setCurrentOrderProject({_objectKey:u._objectKey})}}),setTimeout(function(){i._loadProjects()},4),i}};n.cv.ui.widget(t)})(jQuery);
123(function(n){var t={Active:"Active",Expired:"Expired",All:"All"},i={name:"subscriptionMaintenance",extend:"customerPaymentTokenManagement",options:{dataSource:[],autoBind:!1,stopSubscriptionAutoRenewDialog:"stop-subscription-auto-renew-dialog"},_extend:function(i,r){var u={isGenericCreditCardUpdateMode:!0,isCreditCardEmailRequired:!1,createOrUpdatepPaymentToken:function(t){return t._objectKey=i.getCurrentSubscription()._objectKey,n.cv.css.updateSubscriptionEwayToken(t)},loadPaymentToken:function(){var t=this;return n.cv.css.getSubscriptionEwayToken({_objectKey:t.getCurrentSubscription()._objectKey})},isCreditCardView:function(){var n=this;return n.tokenExists()},hasResults:!1,searchType:t.Active,searchTypeOptions:[{value:t.Active,text:t.Active},{value:t.Expired,text:t.Expired},{value:t.All,text:t.All}
123],searchTerm:"",isSubscriptionDetailView:!1,currentSubscription:null,resetSearch:function(n){n===void 0&&(n=!1);var i=this;n==!1&&(i.set("searchTerm",""),i.set("searchType",t.Active));i.set("isSubscriptionDetailView",!1);i.set("currentSubscription",null);i.search()},updateViewModelFromDataSource:n.noop,search:function(){var t=this,i;t.set("isProcessing",!0);i=n.cv.data.dataSource({method:"subscription/SearchSubscriptions",params:{searchTerm:t.get("searchTerm"),searchType:t.get("searchType")},requestEnd:function(i){var r=i.response.data;n.cv.util.hasValue(r)&&(n.each(r,function(n,t){var i="Yes",r="No";t.IsAutoRenewDisp=t.IsAutoRenewInAction==!0?i:r;t.IsPaidByCreditCardDisp=t.IsPaidByCreditCard==!0?i:r;t.NeverExpiresDisp=t.NeverExpires==!0?i:r;t.SoOrderNoDisp=(t.SoOrderNo||"")+(t.SoBoSuffix||"")}),t.set("hasResults",r.length>0),t.set("isProcessing",!1))}});r.setDataSource(i)},getCurrentSubscription:function(){var n=this;return n.get("currentSubscription")},isCurrentAutoRenewSubscription:function(){var t=this,n=t.getCurrentSubscription();return n&&n.IsAutoRenewInAction},openSubscription:function(n){var t=this,i;r.addNewUiHistoryState({displayResultList:!1});t.set("isSubscriptionDetailView",!0);i=n.data;t.set("currentSubscription",i);t.loadCustomerToken().done(function(){t.set("email",t.getCurrentSubscription().UserEmailAddress);i.IsAutoRenewInAction==!1&&t.set("tokenRecord",null)})},extendSubmitOpts:function(n){var t=this;n.subscriptionId=t.getCurrentSubscription().SubscriptionId},stopAutoRenew:function(){var t=this;t.set("isProcessing",!0);n.cv.css.stopSubscriptionAutoRenew({_objectKey:t.getCurrentSubscription()._objectKey}).done(function(){t.set("isProcessing",!1);t.closeStopAutoRenewDialog();t.resetSearch(!0)})},goBackToSearch:function(){history.back()},showStopAutoRenewDialog:function(){n.fancybox.open({topRatio:"0.25",minWidth:"500",href:"#"+r.options.stopSubscriptionAutoRenewDialog,modal:!0})},showStopAutoRenewDialogFromGrid:function(n){var t=this,i=n.data;t.set("currentSubscription",i);t.showStopAutoRenewDialog()},closeStopAutoRenewDialog:function(){n.fancybox.close()}};r.viewModel=kendo.observable(n.extend(i,r.options,u))},initialised:function(){var n=this,t=n.viewModel;n.showResultOnRedirectPage();t.loadEWaySecureFields();n.setupSinglePageHistoryStateHandler({displayResultList:!0},function(n){n.displayResultList&&t.resetSearch()});t.search()}};n.cv.ui.widget(i)})(jQuery);
124(function(n){var t={name:"recentPayments",extend:"mvvmwidget",options:{autoBind:!0,dataSource:[],paymentsToShow:5},initDataSource:function(){var n=this,t;n.options.autoBind&&(t=n.viewModel,t.loadRecentPayments())},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend({},t.options,{isProcessing:!1,hasData:!1,updateViewModelFromDataSource:function(){},loadRecentPayments:function(){var i=this;i.set("isProcessing",!0);n.cv.css.accounts.getRecentPayments({paymentsToShow:t.options.paymentsToShow}).done(function(r){r&&t.setDataSource(r.data);i.set("hasData",r&&n.isArray(r.data)&&r.data.length>0)}).always(function(){i.set("isProcessing",!1)})}}))}};n.cv.ui.widget(t)})(jQuery);
125(function(n){var t={name:"customerQuoteConfiguration",extend:"mvvmwidget",options:{title:"Customer Quote Configuration",triggerMessages:!0,clearWidgetMessages:!0},initialised:function(){var n=this;n.viewModel.getCustomerQuoteConfigration()},_getViewModel:function(){var i=this,r=i.options,t=kendo.observable(n.extend({},r,{data:{},errors:[],hasLogo:!1,hasErrors:function(){return this.get("errors").length>0},getCustomerQuoteConfigration:function(){n.cv.css.customerQuote.getCustomerQuoteConfiguration({}).done(function(i){var r=i.data.result[0];n.cv.util.hasContent(r.Logo)&&(r.Logo="data:image;base64,"+r.Logo,t.set("hasLogo",!0));t.set("data",r)})},onRemoveImage:function(){t.set("Logo","");t.set("hasLogo",!1)},onSave:function(){var i=this,e=i.get("data").toJSON(),r={data:e},o,u,f;if(e._objectKey&&(r._objectKey=e._objectKey),o=n("#addLogoUpload").data("kendoUpload"),r.files=o.getFiles(),u=r.files,u.length>0&&u[0].validationErrors){f="";
125switch(u[0].validationErrors[0]){case"invalidMaxFileSize":f="\n\nLogo was too large.";break;case"invalidFileExtension":f="\n\nLogo was not the correct format."}n.cv.util.notify(i,"There was an error uploading the logo you have selected."+f,n.cv.css.messageTypes.error);return}n.cv.css.customerQuote.saveCustomerQuoteConfiguration(r).done(function(r){if(r.data.status.Success){var u=r.data.result[0];n.cv.util.hasContent(u.Logo)&&(u.Logo="data:image;base64,"+u.Logo,t.set("hasLogo",!0));t.set("data",u);n.cv.util.notify(i,"Quote Configuration saved successfully.",n.cv.css.messageTypes.success)}else n.cv.util.notify(i,r.data.status.Messages[0],n.cv.css.messageTypes.error);o.clearAllFiles()})},onFileUploadError:function(){var t=i.viewModel;n.cv.util.notify(t,"Error uploading file.",n.cv.css.messageTypes.error)},onFileUploadSelect:function(t){n.each(t.files,function(n,t){t.name="CustomerQuoteLogo-"+t.uid+"-"+t.name})},onFileUploadUpload:function(n){var t=n.files;t.length!==0&&(n.data={uid:t[0].uid})},onFileUploadSuccess:function(t){var i=t.files,r;if(i.length!==0)switch(t.operation){case"upload":if(n.cv.util.hasContent(t.response.fileName)===!1){t.preventDefault();return}r=i[0];r.name=t.response.fileName}}}));return t}};n.cv.ui.widget(t)})(jQuery);
126(function(n){var t={name:"customerQuoteProductDialog",extend:"mvvmwidget",options:{otherProductTitle:"Other Product",labourTitle:"Labour",otherProductCode:"ZPRODUCT",labourCode:"ZLABOUR",taxIncEx:!0},initialised:function(){},_getViewModel:function(){var i=this,r=i.options,t=kendo.observable(n.extend({},r,{data:{},errors:[],hasErrors:function(){return this.get("errors").length>0},isEditing:!1,_dialogCompletePromise:null,title:"",productCode:"",taxIncEx:!0,showGSTPercent:!1,show:function(r){function e(i){t.set("data",i);n.fancybox.open(u[0],{src:"cv-customer-quote-product-dialog",type:"inline",topRatio:"0.25",padding:"0",helpers:{overlay:{closeClick:!1}},afterOpen:function(){n.cv.css.initialiseKendoControls(u)}})}var u=n("#cv-customer-quote-product-dialog"),f=r.productCode==="ZPRODUCT"?i.options.otherProductTitle:i.options.labourTitle;return t.set("title",f),t.set("productCode",r.productCode),t.set("data.TaxIncEx",!0),t.set("_dialogCompletePromise",n.Deferred()),e({ProductCode:t.get("productCode")}),t.get("_dialogCompletePromise").promise()},onAdd:function(){var u=this,t,i;return u.set("errors",""),t=u.get("data").toJSON(),t._objectKey&&(r._objectKey=t._objectKey),i={}
126,i.productCode=t.ProductCode,i.quantity=t.Quantity,i.notes=t.Description,i.noteIsExtendedLineDescription=!0,i.price=t.NetPrice,i.markupPrice=t.MarkupPrice,i.markupPercent=(t.MarkupPrice-t.NetPrice)/t.NetPrice*100,i.taxRate=t.GstPercent,i.taxRateCode=t.TaxIncEx==="Inc"?1:0,i.taxIncEx=t.TaxIncEx,i.uom=n.cv.util.hasContent(t.Unit)?t.Unit:"EA",n.cv.css.customerQuote.validateCustomerQuoteProduct(i).done(function(r){r.data.result.Fail?u.set("errors",r.data.result.Messages):n.cv.css.addToCurrentOrder(i).done(function(i){n.cv.css.trigger(n.cv.css.eventnames.cartLineAdded,t);i.data.editOrderOk?(u.get("_dialogCompletePromise").resolve(i.data),u._close()):u.set("errors",i.data.message)})}),!1},onCancel:function(){return this._close(),!1},_close:function(){n.fancybox.close();t.set("data",{});t.set("errors",[])},calculateTotal:function(){var t=this,i=t.get("data.MarkupPrice"),r=t.get("data.Quantity"),u;n.cv.util.hasValue(r)&&n.cv.util.hasValue(i)&&(u=i*r,t.set("data.Total",u));t.get("data.TaxIncEx")==="Inc"?t.set("showGSTPercent",!0):t.set("showGSTPercent",!1)}}));return t}};n.cv.ui.widget(t)})(jQuery);
127(function(n){var t={name:"customerQuoteProjectDialog",extend:"mvvmwidget",options:{limitResultCount:10,noProjectSelectedLabel:"-- No Selected Project --"},initialised:function(){},_getViewModel:function(){var i=this,r=i.options,t=kendo.observable(n.extend({},r,{projects:[],dataSource:[],errors:[],hasErrors:function(){return this.get("errors").length>0},onCreateProject:function(){var t=this;n.cv.css.customerClient.showCustomerClientProjectEdit().done(function(r){var u=r.data.result[0].ProjectId;n.cv.css.customerClient.setCurrentOrderProject({_objectKey:r.data.result[0]._objectKey}).done(function(){i.dataSource.fetch(function(){t.set("selectedProject",u)})})})},isSearching:!1,selectedProject:-1,_loadProjects:function(t){var r,u;t===void 0&&(t=!1);r=this;r.set("isSearching",!0);u=n.cv.data.dataSource({method:"customerclientproject/projectsearch",params:function(n){return r._constructSearchParameters(n)},pageSize:i.options.recordsPerPage,requestEnd:function(t){r.set("isSearching",!1);try{var i=t.response.data.currentOrderProjectId;t.response.data=n.cv.css.customerClient._projectConverter(JSON.stringify(t.response)).data.result;t.response.data.splice(0,0,{ProjectId:-1,Name:r.noProjectSelectedLabel,fullName:r.noProjectSelectedLabel});i!==-1&&n.type(r.get("selectedProject"))=="number"&&r.set("selectedProject",i)}catch(u){r.set("dataSource",[{ProjectId:-1,Name:r.noProjectSelectedLabel,fullName:r.noProjectSelectedLabel}])}}});i.setDataSource(u)},_constructSearchParameters:function(t){var r="";return t.filter&&t.filter.filters&&t.filter.filters.length>0&&n.cv.util.hasContent(t.filter.filters[0].value)&&(r=t.filter.filters[0].value),delete t.filter,delete t.page,delete t.pageSize,delete t.skip,delete t.take,{status:"Active",projectName:r,getClientInfo:!0,getOrderInfo:!1,isForLookup:!0,sort:[{field:"Name",dir:"asc"}],limitResultCount:i.options.limitResultCount}},updateViewModelFromDataSource:function(){var n=i.dataSource.data();this.set("projects",n)},_dialogCompletePromise:null,show:function(){function r(r){t.set("data",r);n.fancybox.open(i[0],{src:"cv-customer-quote-project-dialog",type:"inline",topRatio:"0.25",padding:"0",helpers:{overlay:{closeClick:!1}},afterOpen:function(){n.cv.css.initialiseKendoControls(i)}})}var i=n("#cv-customer-quote-project-dialog");return t.set("_dialogCompletePromise",n.Deferred()),r({data:this._loadProjects()}),t.get("_dialogCompletePromise").promise()},onCancel:function(){return this._close(),this.set("errors",""),this.set("selectedProject",-1),!1},onSave:function(){var r=t.get("selectedProject"),i=_.find(t.get("projects"),function(n){return n.ProjectId===r});return i?(n.cv.css.customerClient.setCurrentOrderProject({_objectKey:i._objectKey}),this._close()):this.set("errors","Please select a valid project."),!1},_close:function(){n.fancybox.close();t.set("data",{})}}));return t}};n.cv.ui.widget(t)})(jQuery);
128(function(n){var t={name:"customerQuoteMarkupPriceSummary",extend:"mvvmwidget",options:{autoBind:!0,dataSource:[]},initDataSource:function(){var n=this,t;n.options.autoBind&&(t=n.viewModel,t.loadMarkupPriceSummary())},_getViewModel:function(){var t=this,r=t.options,i=kendo.observable(n.extend({},r,{isProcessing:!1,hasData:!1,data:{},updateViewModelFromDataSource:function(){},loadMarkupPriceSummary:function(){var r=this;r.set("isProcessing",!0);n.cv.css.customerQuote.getCustomerQuoteMarkupPriceSummary().done(function(u){u&&(t.setDataSource(u.data.result[0].Table[0]),i.set("data",u.data.result[0].Table[0]));r.set("hasData",u&&n.isArray(u.data)&&u.data.length>0)}).always(function(){r.set("isProcessing",!1)})}}));return i}};n.cv.ui.widget(t)})(jQuery);
129(function(n){var t={name:"kitComponentDisplay",extend:"mvvmwidget",options:{productElement:"[data-role='product']",productData:"product",productC
129ontainerSelector:"",successMessage:"All selected kit components added to your cart.",warningMessage:"Kit components added. Not all components could be added, please review your cart.",failMessage:"We were not able to add any components to your cart. Please try again."},events:[],initialised:function(){},_getViewModel:function(){var i=this,t=i.options;return kendo.observable(n.extend({},t,{isProcessing:!1,addAllToCart:function(){var r=this,u={},f;n.cv.util.isNullOrWhitespace(t.productContainerSelector)||(r.set("isProcessing",!0),f=[],n(t.productContainerSelector).find(t.productElement).each(function(){var i=n(this).data(t.productData);i&&(u=i.getProductAddParams(),u&&u.quantity.length!==0&&!isNaN(u.quantity)&&f.push(i.addToCart(!1)))}),f.length>0?n.when.apply(n,f).done(function(){var u=_.filter(arguments,function(n){return n.data.editOrderOk===!0}).length,f=u===arguments.length?t.successMessage:u===0?t.failMessage:t.warningMessage,e=u===arguments.length?n.cv.css.messageTypes.success:u===0?n.cv.css.messageTypes.error:n.cv.css.messageTypes.warning;n.cv.util.notify(r,f,e,{triggerMessages:!0,clearExisting:!0,source:i.name});r.set("isProcessing",!1)}):r.set("isProcessing",!1))}}))}};n.cv.ui.widget(t)})(jQuery);
130(function(n){var t="widgetDataInitialised",i={name:"excelExport",extend:"mvvmwidget",options:{id:"",excelTemplate:"",excelTemplatePath:"",excelTemplateDataSources:"",emailSubject:"Excel Export",emailBody:"Please find your Excel export attached.",excelExportProcessingMessage:"Your Excel export is currently processing, and will be sent via email when ready.",captchaVersion:"",captchaHash:""},extendEvents:[t],viewModelBound:function(){var n=this;n.trigger(t)},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend({},t.options,{openExportToExcelModal:function(){var r=this,u="#"+t.options.id,i=n.cv.css.localGetUser();i&&!n.cv.util.string.startsWith(i.EmailAddress,"guestuser")&&r.set("emailAddress",i.EmailAddress);n.fancybox.open({modal:!0,topRatio:"0.25",minWidth:"250",padding:"0",href:u})},sendEmail:function(){var i=this;if(!n.cv.util.validateField(i.get("emailAddress"),"email")){n.cv.util.notify(i,"Please enter a valid email address.",n.cv.css.messageTypes.error,{triggerMessages:!0,clearExisting:!0});return}t.options.captchaVersion==="reCaptchaV2"?n.cv.css.trigger(n.cv.css.eventnames.getReCaptchaToken,{success:n.proxy(i.sendEmail2,i),fail:function(){},widgetId:t.element.attr("id")}):i.sendEmail2()},sendEmail2:function(i){var r=this,u=r.get("emailAddress"),f=n.cv.css.excelExport.sendEmail({emailAddress:u,templateType:t.options.excelTemplate,templatePath:t.options.excelTemplatePath,templateDataSources:t.options.excelTemplateDataSources,emailSubject:t.options.emailSubject,emailBody:t.options.emailBody,captchaVersion:t.options.captchaVersion,captchaToken:i,captchaHash:t.options.captchaHash});n.when(f).done(function(i){var u=i.data,f;u.status.Success?(n.cv.util.notify(r,t.options.excelExportProcessingMessage,n.cv.css.messageTypes.info,{triggerMessages:!0,clearExisting:!0}),n.fancybox.close()):(f=u.status.Messages.join("<br />"),n.cv.util.notify(r,f,n.cv.css.messageTypes.error,{triggerMessages:!0,clearExisting:!0}))})}}))}};n.cv.ui.widget(i)})(jQuery);
131(function(n){var t={name:"jobs",extend:"mvvmwidget",options:{title:"Jobs",searchResultsFoundLabel:"Results Found: {0}",noSearchResultsFoundLabel:"No results found."},initialised:function(){var n=this;n.viewModel.jobSearch()},viewModelBound:function(){var t=this,i=t.viewModel;n.cv.css.bind(n.cv.css.eventnames.jobUpdated,function(){i.jobSearch()})},_getViewModel:function(){var t=this,i=t.options;return kendo.observable(n.extend({},i,{data:{},errors:[],searchResultsCount:0,hasSearchResults:function(){return this.get("searchResultCount")>0},title:t.options.title,searchResultsMessage:"",hasErrors:function(){return this.get("errors").length>0},jobSearch:function(){var i=this,r=i.get("searchString");n.cv.css.stockLevel.jobSearch({searchString:r}).done(function(r){if(n.cv.util.hasValue(r)){var u=r.data.jobs;i.set("searchResults",u);i.set("searchResultsCount",u.length);i.set("hasSearchResults",i.searchResultsCount>0);i.set("searchResultsMessage",i.hasSearchResults?n.cv.util.string.format(t.options.searchResultsFoundLabel,i.searchResultsCount):t.options.noSearchResultsFoundLabel)}})},addJob:function(){n.cv.css.stockLevel.showJobDialog()},viewJob:function(t){n.cv.css.stockLevel.showJobDialog({objectKey:t.data})}}))}};n.cv.ui.widget(t)})(jQuery);
132(function(n){var t={name:"jobDialog",extend:"mvvmwidget",options:{title:"Add Job",pageSize:5,saveJobError:"There was an error saving a job.",confirmationMessage:"",deleteJobConfirmationMessage:"Are you sure you want to delete this job?",closeJobConfirmationMessage:"Are you sure you want to close this job?",isDeleteConfirmation:!1,isCloseConfirmation:!1,poReferenceRequired:!1},initialised:function(){this.viewModel.initJobFields()},_getViewModel:function(){var i=this,r=i.options,u=n.cv.data.dataSource({method:"products/productSearchQuickAdd",pageSize:i.options.pageSize,params:function(n){var t=i.viewModel.getSearchString(n);
132return{searchString:t,categoryFilter:"",pageSizeArg:i.options.pageSize,excludeOrderRestrictedProducts:!1}}}),t=kendo.observable(n.extend({},r,{data:{},fields:[],errors:[],productSearchDataSource:u,hasLines:!1,poReferenceRequired:i.options.poReferenceRequired,isNew:!1,isLineUpdateEnabled:!1,isStatusUpdateEnabled:!1,isProcessing:!1,title:i.options.title,hasErrors:function(){return this.get("errors").length>0},_dialogCompletePromise:null,initJobFields:function(){var i=t;return n.cv.css.stockLevel.getJobFieldGroupData().done(function(n){n.data.length===1&&i.set("fields",i.getDataView(n.data[0].Fields))})},setFieldsFromData:function(){var i=t;i.initJobFields().then(function(){n.each(i.get("fields"),function(n,t){var r=t.get("fieldItem").fieldName,u=i.get("data");u&&t.set(r,u[r])})})},getDataView:function(i){var r=t,u=[];return n.each(i,function(i,f){var e=n.cv.util.getFieldItemData(f);e.fieldItem.fieldName=="POReference"&&r.get("poReferenceRequired")&&(e.fieldItem.mandatory=!0,r.set("poReferenceRequired",!0));e.dataChanged=function(n){var u=n.data,f=u.fieldItem,e=u[f.fieldName],i;u.fieldValid(n);i=t.get("data");i===null||i===void 0?void 0:i.set(f.fieldName,e);r.set("data",i)};u.push(e)}),u},show:function(i){function f(t){if(t=t.data,n.cv.util.hasValue(t))t.JobStatus==="Open"?(r.set("isLineUpdateEnabled",!0),r.set("isStatusUpdateEnabled",!0)):(r.set("isLineUpdateEnabled",!1),r.set("isStatusUpdateEnabled",!1));else t={Id:-1,Name:"",POReference:"",Reference:"",ManagerName:"",Comment:"",_objectKey:"",JobStatus:"Open",Lines:[]},r.set("isNew",!0),r.set("productCode",""),r.set("isLineUpdateEnabled",!0),r.set("isStatusUpdateEnabled",!1);r.set("data",t);r.setFieldsFromData();r.set("hasLines",n.cv.util.hasContent(t.Lines)?t.Lines.length>0:!1);r.set("isProcessing",!1);n.fancybox.open(u[0],{src:"cv-job-dialog",topRatio:"0.25",padding:"0",helpers:{overlay:{closeClick:!1}},afterOpen:function(){n.cv.css.initialiseKendoControls(u)},afterShow:function(){var t=n("#product-search").data("kendoAutoComplete");t.bind("open",function(){n.cv.util.isNullOrWhitespace(t.value())&&setTimeout(function(){t.close()},0)});n(".show-outline").focus()}})}var r=t,u=n("#cv-job-dialog");return r.set("_dialogCompletePromise",n.Deferred()),f({data:i}),r.get("_dialogCompletePromise").promise()},onSave:function(){var r=t.get("data"),u,f;r!=null&&(u=t,u.validateJobExcludesDeletedAndClosed(r))&&(f={data:r},(r===null||r===void 0?void 0:r.get("_objectKey"))&&(f._objectKey=r.get("_objectKey")),n.each(r.get("Lines"),function(n,t){t.set("SolOrderedQty",Math.floor(Math.abs(t.SolOrderedQty)))}),u.set("isProcessing",!0),n.cv.css.stockLevel.saveJob(f).done(function(t){t.data.status.Success?(n.cv.css.trigger(n.cv.css.eventnames.jobUpdated),u.get("_dialogCompletePromise").resolve(t),u._close()):u.set("errors",t.data.status.Messages)}).fail(function(){u.set("isProcessing",!1);u.set("errors",i.options.saveJobError)}))},onCancel:function(){return n.cv.css.trigger(n.cv.css.eventnames.jobUpdated),this._close(),!1},_close:function(){n.fancybox.close();t.set("data",null);t.set("errors",[])},onAddProduct:function(i){var f=t,e,o,r,u;i||(i=f.get("productCode"));n.cv.util.hasValue(i)&&n.cv.util.hasValue(i.ProductCode)&&(e=f.get("data"),o=!1,e&&(r=e.get("Lines"),r.length>0&&(u=_.find(r,function(n){return n.StockCode===i.ProductCode}),n.cv.util.hasValue(u)&&(u.set("SolOrderedQty",u.get("SolOrderedQty")+1),o=!0)),o||(u={StockCode:i.ProductCode,SolLineDescription:i.Description,SolOrderedQty:1},r.push(u)),e.set("Lines",r),f.set("productCode",""),f.set("hasLines",r.length>0)))},getSearchString:function(t){var i="";return n.cv.util.hasValue(t,"filter.filters[0]")&&(i=t.filter.filters[0].value,t.filter.filters=[]),i},onPreClose:function(){this.set("confirmationMessage",i.options.closeJobConfirmationMessage);this.set("isDeleteConfirmation",!1);this.set("isCloseConfirmation",!0);var t=n("#cv-confirmation-dialog");n.fancybox.open(t[0],{src:"cv-confirmation-dialog",topRatio:"0.25",padding:"0",helpers:{overlay:{closeClick:!1}}})},onClose:function(){var i=t,n=i.get("data");if(n){n.set("JobStatus","Closed");i.onSave(n)}},onPreDelete:function(){this.set("confirmationMessage",i.options.deleteJobConfirmationMessage);this.set("isDeleteConfirmation",!0);this.set("isCloseConfirmation",!1);var t=n("#cv-confirmation-dialog");n.fancybox.open(t[0],{src:"cv-confirmation-dialog",topRatio:"0.25",padding:"0",helpers:{overlay:{closeClick:!1}}})},onDelete:function(){var n=this,t=n.get("data");t.JobStatus="Deleted";n.onSave(t)},onDeleteLine:function(n){var r=this,t=r.get("data"),i=-1;
132_.find(t.Lines,function(t,r){t.StockCode===n.data.StockCode&&(i=r)});t.Lines.splice(i,1)},onAddProductWithSearch:function(){var i=this,t=i.get("productCode"),r=_.isObject(t)?t.ProductCode:t;n.cv.util.hasValue(r)&&n.cv.css.stockLevel.stockLevelSearch({searchString:r}).done(function(t){if(n.cv.util.hasValue(t)){var r=t.data.products;if(r&&r.length>=1)i.onAddProduct(r[0])}})},validateJobExcludesDeletedAndClosed:function(i){var u=!0,r;return i==null?!1:(r=i.get("JobStatus"),r!="Deleted"&&r!="Closed"&&n.each(t.get("fields"),function(n,t){t.data=this;t.fieldValid(t)||(u=!1)}),u)}}));return t}};n.cv.ui.widget(t)})(jQuery);
133(function(n){var t={name:"stockLevels",extend:"mvvmwidget",options:{searchResultsFoundLabel:"Results Found: {0}",noSearchResultsFoundLabel:"No results found.",saveStockLevelError:"There was an error saving stock levels.",thresholdIsInvalidLabel:"Invalid threshold quantity range."},initialised:function(){n("#product-search").focus()},_getViewModel:function(){var t=this,i=t.options;return kendo.observable(n.extend({},i,{data:{},errors:[],searchResultsCount:0,hasSearchResults:!1,title:t.options.title,thresholdIsInvalidLabel:t.options.thresholdIsInvalidLabel,searchResultsMessage:"",hasErrors:function(){return this.get("errors").length>0},stockLevelSearch:function(){var i=this,r=i.get("searchString");r.length<3||n.cv.util.hasContent(r)&&(i.set("isSearching",!0),n.cv.css.stockLevel.stockLevelSearch({searchString:r}).done(function(r){var u,f;n.cv.util.hasValue(r)&&(u=r.data.products,u.length===1&&(f=u[0].StockLevel[0].OnHandQty,u[0].StockLevel[0].OnHandQty=n.cv.util.hasContent(f)?f+1:1,n.cv.css.stockLevel.saveStockLevel({_objectKey:u[0]._objectKey,data:u[0]}).done(function(n){n.data.status.Success||i.set("errors",n.data.status.Messages)}).fail(function(){i.set("errors",t.options.saveStockLevelError)}),i.set("searchString","")),n.each(u,function(t,r){r.onSave=function(t){var u=t.data.StockLevel[0];u.set("MinThresholdQty",Math.abs(u.get("MinThresholdQty")));u.set("MaxThresholdQty",Math.abs(u.get("MaxThresholdQty")));u.set("OnHandQty",Math.abs(u.get("OnHandQty")));n.cv.css.stockLevel.saveStockLevel({_objectKey:r._objectKey,data:t.data}).done(function(n){n.data.status.Success||i.set("errors",n.data.status.Messages)})};r.thresholdIsInvalid=function(){var n=Math.abs(this.get("StockLevel[0].MinThresholdQty")),t=Math.abs(this.get("StockLevel[0].MaxThresholdQty"));return n>t}}),i.set("searchResults",u),i.set("searchResultsCount",u.length),i.set("hasSearchResults",i.searchResultsCount>0),i.set("searchResultsMessage",i.hasSearchResults?n.cv.util.string.format(t.options.searchResultsFoundLabel,i.searchResultsCount):t.options.noSearchResultsFoundLabel));i.set("isSearching",!1)}))},clearSearch:function(){var n=this;n.set("searchString","");n.set("hasSearchResults",!1);n.set("searchResultsMessage","")},stockLevelSearchKeyEvent:function(n){var t=this;n.keyCode===13&&t.stockLevelSearch()}}))}};n.cv.ui.widget(t)})(jQuery);
134(function(n){var t={name:"stockToReceive",extend:"mvvmwidget",options:{saveStockReceivedError:"There was an error saving stock received.",receiveAllConfirmationMessage:"Are you sure you want to receive all selected orders?"},initialised:function(){var n=this;n.viewModel.stockToReceiveSearch()},viewModelBound:function(){var t=this,i=t.viewModel;n.cv.css.bind(n.cv.css.eventnames.stockReceivedUpdated,function(){i.stockToReceiveSearch()})},_getViewModel:function(){var t=this,i=t.options;return kendo.observable(n.extend({},i,{data:{},errors:[],searchResultsCount:0,hasSearchResults:function(){return this.searchResultCount>0},hasErrors:function(){return this.get("errors").length>0},stockToReceiveSearch:function(){var t=this,i=t.get("searchString");n.cv.css.stockLevel.stockToReceiveSearch({searchString:i}).done(function(i){if(n.cv.util.hasValue(i)){var r=i.data.orders;n.each(r,function(t,i){i.Lines=_.filter(i.Lines,function(n){return n.LineType==="SN"||n.LineType==="KN"});var r,u;switch(i.OrderReceipt[0].Status){case"UR":r="Unreceipted";u=!0;break;case"R":r="Receipted";u=!1;break;case"PR":r="Partially Receipted";u=!0;break;default:r="Overdue Receipted";u=!1}i.OrderReceiptStatus=r;i.canReceiveAll=u;i.toggleReceiveAll=function(t){n.cv.util.toggleCvCheckboxValue(t,this,"isReceiveAllChecked")}});t.set("searchResults",r);t.set("searchResultsCount",r.length);t.set("hasSearchResults",t.searchResultsCount>0)}})},stockToReceiveSearchKeyEvent:function(n){var t=this;n.data.searchString.length>=3&&t.newStockToReceiveSearch()},newStockToReceiveSearch:function(){var n=this;n.set("hasSearchResults",!1);n.stockToReceiveSearch()},viewStock:function(t){n.cv.css.stockLevel.showStockDialog({objectKey:t.data})},onReceiveAll:function(){var i=this,u=i.get("searchResults"),r=[];n.each(u,function(n,t){t.isReceiveAllChecked&&r.push(t._objectKey)});n.cv.css.stockLevel.saveStockFullyReceivedBulk({orders:r}).done(function(t){t.data.status.Success?(n.cv.css.trigger(n.cv.css.eventnames.stockReceivedUpdated),n.fancybox.close()):i.set("errors",t.data.status.Messages)}).fail(function(){i.set("errors",t.options.saveStockReceivedError)})},onCancel:function(){n.fancybox.close()},onPreReceiveAll:function(){var t=n("#cv-confirmation-dialog");n.fancybox.open(t[0],{src:"cv-confirmation-dialog",topRatio:"0.25",padding:"0",helpers:{overlay:{closeClick:!1}}})}}))}};n.cv.ui.widget(t)})(jQuery);
135(function(n){var t={name:"stockDialog",extend:"mvvmwidget",options:{title:"Stock To Receive Details",saveStockReceivedError:"There was an error saving stock received."},initialised:function(){},_getViewModel:function(){var t=this,r=t.options,i=kendo.observable(n.extend({},r,{data:{},errors:[],receiveAllEnabled:!1,title:t.options.title,hasErrors:function(){return this.get("errors").length>0},_dialogCompletePromise:null,show:function(i){function f(i){i=i.data;var f=!0;n.each(i.Lines,function(u,e){e.ReceiptQty=i.OrderReceipt[0].ReceiptLines[u].ReceiptQty;e.ShippedQty=i.OrderReceipt[0].ReceiptLines[u].SolShippedQty;
135e.onReceived=function(n){e.set("ReceiptQty",e.SolOrderedQty);e.onSave(n)};e.onSave=function(i){n.cv.css.stockLevel.saveStockReceived({_objectKey:e._objectKey,data:i.data}).done(function(t){t.data.status.Success?(n.cv.css.trigger(n.cv.css.eventnames.stockReceivedUpdated),r.set("receiveAllEnabled",t.data.orderReceiptStatus!=="Receipted"&&f)):r.set("errors",t.data.status.Messages)}).fail(function(){r.set("errors",t.options.saveStockReceivedError)})};e.receiveLineEnabled=e.ShippedQty>0&&e.ReceiptQty<e.SolOrderedQty;e.ShippedQty<e.SolOrderedQty&&(f=!1)});r.set("receiveAllEnabled",i.OrderReceipt[0].Status!=="R"&&f);r.set("data",i);n.fancybox.open(u[0],{src:"cv-stock-dialog",topRatio:"0.25",padding:"0",helpers:{overlay:{closeClick:!1}},afterOpen:function(){n.cv.css.initialiseKendoControls(u)}})}var r=this,u=n("#cv-stock-dialog");return r.set("_dialogCompletePromise",n.Deferred()),f({data:i}),r.get("_dialogCompletePromise").promise()},onReceivedAll:function(i){var r=this,u=i.data.data;n.cv.css.stockLevel.saveStockFullyReceived({_objectKey:u._objectKey}).done(function(t){t.data.status.Success?(n.cv.css.trigger(n.cv.css.eventnames.stockReceivedUpdated),r.get("_dialogCompletePromise").resolve(t),r._close()):r.set("errors",t.data.status.Messages)}).fail(function(){r.set("errors",t.options.saveStockReceivedError)})},onCancel:function(){return this._close(),!1},_close:function(){n.fancybox.close();i.set("data",{});i.set("errors",[])}}));return i}};n.cv.ui.widget(t)})(jQuery);
136(function(n){var t={name:"hotspotImage",extend:"mvvmwidget",options:{hotspotJsonString:"",hotspotWidth:40},events:[],initialised:function(){},_getViewModel:function(){function e(n){var t=i.hotspotWidth,f=t/r*100,e=t/u*100,o=n.x-t/2,s=n.y-t/2,h=o/r*100,c=s/u*100;n.positionStyleString="position: absolute; top: "+c+"%; left: "+h+"%; width: "+f+"%; height: "+e+"%"}var f=this,i=f.options,t=i.hotspotJsonString,r=t.width,u=t.height;return _.each(t.hotspots,function(n){e(n)}),kendo.observable(n.extend({},i,{data:t}))}};n.cv.ui.widget(t)})(jQuery);
137(function(n){var t={name:"quotingbuttons",extend:"mvvmwidget",options:{popupId:"",exitQuotingPopupId:"",exitQuotingPopupId2:"",confirmCancelPopupId:"",redirecToPage:"/",selectRoleId:"",emailAddress:"",selectRoleOrCustomerMessage:"",emailAddressInvalidMessage:"",orderNo:""},_getViewModel:function(){var i=this,t=i._getDefaultViewModel();return t.bind("change",n.proxy(t.dataChanged,t)),t},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend(t.options,{isProcessing:!1,inlineAlertMessage:{},roleList:[],customerList:[],selectedRole:"",selectedCust:"",disableContinue:!1,clickConfirmExitQuoting:function(){n.cv.css.orderQuote.exitQuotingMode().done(function(t){var i=t.data;i&&i.Success?(n.cv.css.removeLocalStorage(n.cv.css.localStorageKeys.currentOrder),n.cv.css.removeLocalStorage(n.cv.css.localStorageKeys.currentOrderLines),n.cv.util.redirect("/")):n.cv.util.notify(this,i.Messages[0],n.cv.css.messageTypes.error)}).fail(function(){n.cv.util.notify(this,"Unable to exit quoting mode. Please try again.",n.cv.css.messageTypes.error)})},clickExitQuoting:function(){var i=t.options.exitQuotingPopupId;i||(i=t.options.exitQuotingPopupId2);i&&n.fancybox.open({href:i})},canContinue:function(){var t=this;return n.cv.util.isNullOrWhitespace(t.get("emailAddress"))===!1&&n.cv.util.validateField(t.get("emailAddress"),"email")&&n.cv.util.isNullOrWhitespace(t.get("selectedRole"))===!1&&n.cv.util.isNullOrWhitespace(t.get("selectedCust"))===!1&&!t.get("disableContinue")},clickContinue:function(){var i=this;if(n.cv.util.isNullOrWhitespace(i.get("selectedRole"))&&n.cv.util.isNullOrWhitespace(i.get("selectedCust"))){i._setMessage(t.options.selectRoleOrCustomerMessage,n.cv.css.messageTypes.error);return}i._clearMessage();i.set("isProcessing",!0);n.cv.css.orderQuote.startQuotingMode({emailAddress:i.get("emailAddress"),role:i.get("selectedRole"),customer:i.get("selectedCust")}).done(function(r){var u=r.data;u&&u.Success?(n.cv.css.removeLocalStorage(n.cv.css.localStorageKeys.currentOrder),n.cv.css.removeLocalStorage(n.cv.css.localStorageKeys.currentOrderLines),n.cv.util.redirect(t.options.redirecToPage)):(i.set("isProcessing",!1),i._setMessage(u.Messages[0],n.cv.css.messageTypes.error))}).fail(function(){i.set("isProcessing",!1);i._setMessage("Unable to start quoting mode. Please try again.",n.cv.css.messageTypes.error)})},hasCustomers:function(){var n=this;return n.get("customerList").length>0&&!n.get("disableContinue")},hasRoles:function(){var n=this;return n.get("roleList").length>0&&!n.get("disableContinue")},dataChanged:function(n){var t=this;n.field==="emailAddress"&&t.set("disableContinue",!0)},validateEmailAddress:function(){var i=this;if(i.set("disableContinue",!1),i._clearMessage(),!n.cv.util.isNullOrWhitespace(i.get("emailAddress"))){if(!n.cv.util.validateField(i.get("emailAddress"),"email")){i.set("roleList",[]);i.set("customerList",[]);i.set("selectedCust","");i.set("selectedRole","");i._setMessage(t.options.emailAddressInvalidMessage,n.cv.css.messageTypes.error);return}i.set("isProcessing",!0);n.cv.css.orderQuote.checkQuoteEmail({emailAddress:i.get("emailAddress")}).done(function(r){var u,f,e;i.set("isProcessing",!1);u=r.data;u&&u.Success?(f=u.Value.roles||[],f.length&&i.set("selectedRole",f[0].RoleName),e=u.Value.customers||[],e.length&&i.set("selectedCust",e[0].Code),i.set("roleList",f),i.set("customerList",e),n(t.options.selectRoleId).data("kendoDropDownList").focus()):i._setMessage(u.Messages[0],n.cv.css.messageTypes.error)}).fail(function(){i.set("isProcessing",!1);i._setMessage("Unable to validate the email address.",n.cv.css.messageTypes.error)})}},clickStartQuoting:function(){var i=this;n.fancybox.open({href:t.options.popupId,afterClose:function(){i.set("emailAddress","");i.set("roleList",[]);i.set("customerList",[]);i.set("selectedRole","");i.set("selectedCustomer","");i._clearMessage()}})},clickCancelQuote:function(){n.fancybox.open({href:t.options.confirmCancelPopupId})},clickConfirmCancelQuote:function(){var t=this;t.set("isProcessing",!0);
137n.cv.css.orderQuote.cancelQuote({OrderNo:t.get("orderNo")}).done(function(i){t.set("isProcessing",!1);var r=i.data;r&&r.Success?n.cv.util.redirect("/"):t._setMessage(r.Messages[0],n.cv.css.messageTypes.error)}).fail(function(){t.set("isProcessing",!1);t._setMessage("Unable to cancel the quote. Please try again.",n.cv.css.messageTypes.error)})},hasInlineAlertMessage:function(){var t=this.get("inlineAlertMessage");return n.cv.util.hasValue(t,"message")?t.message.length>0:!1},_setMessage:function(t,i){var r=this;n.cv.util.notify(r,t,i,{triggerMessages:!0});r.set("inlineAlertMessage",{message:t,type:i,source:"login",clearExisting:!0})},_clearMessage:function(){var n=this;n.set("inlineAlertMessage",null)}}))}};n.cv.ui.widget(t)})(jQuery);
138(function(n){var t="DEFAULT",i={name:"productpdfdownload",extend:"mvvmwidget",options:{showCaptchaForDownload:!1,captchaVersion:"",captchaPopupId:"",queryString:"",autoBind:!0},extendEvents:[],viewModelBound:function(){},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var i=this,r=kendo.observable(n.extend(i.options,{isProcessing:!1,showCaptchaModalOrDownload:function(){var u=this;r.get("showCaptchaForDownload")?n.fancybox.open({href:"#"+u.get("captchaPopupId"),topRatio:"0.25",minWidth:"320",padding:"0",parent:"form:first",afterClose:function(){i.options.captchaVersion===t?n.cv.css.trigger(n.cv.css.eventnames.resetCaptcha,{}):n.cv.css.trigger(n.cv.css.eventnames.resetReCaptchaV2,{})}}):(u.set("isProcessing",!0),u.downloadPdf())},validateCaptcha:function(){var r=this,u,f;r.set("isProcessing",!0);r.get("showCaptchaForDownload")&&(u=i.options.captchaVersion===t?n.cv.css.eventnames.validateCaptcha:n.cv.css.eventnames.validateReCaptcha,f=i.options.captchaVersion===t?r.downloadPdf:r.getReCaptchaToken,n.cv.css.trigger(u,{success:n.proxy(f,r),fail:function(){r.set("isProcessing",!1)},widgetId:i.element.attr("id")}))},getReCaptchaToken:function(){var t=this;n.cv.css.trigger(n.cv.css.eventnames.getReCaptchaToken,{success:n.proxy(t.downloadPdf,t),fail:function(){t.set("isProcessing",!1)}})},downloadPdf:function(r){var u,f,e;r===void 0&&(r="");u=this;u.get("showCaptchaForDownload")&&i.options.captchaVersion===t&&(r=kendo.guid().split("-")[0]);f=window.open("/PdfGenerator.ashx?qs="+u.get("queryString")+(u.get("showCaptchaForDownload")?"&tk="+r:""),"_blank");e=setInterval(function(){(!f||f&&f.closed)&&(clearInterval(e),u.set("isProcessing",!1))},1e3);u.get("showCaptchaForDownload")&&n.fancybox.close()}}));return r}};n.cv.ui.widget(i)})(jQuery);
139(function(n){var t={name:"orderPaymentLinks",extend:"mvvmwidget",options:{orderNumberLabel:"Order Number",totalAmountLabel:"Amount ($)",customerCodeLabel:"Customer code",emailAddressLabel:"Email Address",isEmailAddressRequiredField:!1,currentStepNo:1,stepClass:"step-{0}-active",totalStepsClass:"total-steps-three"},events:[],initialised:function(){var t=this;n.cv.css.bind(n.cv.css.eventnames.setSurchargeForOrderPaymentLinksMode,n.proxy(t.viewModel.setSurchargeForOrderPaymentLinksMode,t.viewModel))},_getViewModel:function(){var r=this,u=r.options,t=parseFloat(n.cv.util.queryStringValue("orderTotal"))||0,i;return isNaN(t)&&(t=0),i=kendo.observable(n.extend({},u,{message:"",hasMessage:function(){return(this.get("message")||"").trim().length>0},orderNumber:n.cv.util.queryStringValue("orderNumber")||"",customerCode:n.cv.util.queryStringValue("customerCode")||"",orderTotalCost:t,emailAddress:n.cv.util.queryStringValue("emailAddress")||"",hasEmailAddress:function(){return(this.get("emailAddress")||"").trim().length>0},orderSurcharge:0,isSurchargeProcessed:!1,totalPaymentAmount:function(){return this.get("orderTotalCost")},totalSurcharge:function(){return this.get("orderSurcharge")},totalAmount:function(){var n=this.get("orderSurcharge"),t=this.get("orderTotalCost");return n+t},setSurchargeForOrderPaymentLinksMode:function(t){this.set("orderSurcharge",t);this.set("isSurchargeProcessed",!0);var i=n("[data-role='paymentoptions']").data("paymentOptions").options;i.orderSurchargeForOrderPaymentLinksMode=parseFloat(t)},isOnFirstStep:!0,activeStepClass:function(){return this.get("totalStepsClass")+" "+this.get("stepClass").format(this.get("currentStepNo"))},onMoveToFirstStep:function(){this.set("isOnFirstStep",!0);this.set("currentStepNo",1);this._showHidePaymentOptions(!1)}
139,onMoveToSecondStep:function(){if(this._validate()){this.set("isOnFirstStep",!1);this.set("currentStepNo",2);var t=n("[data-role='paymentoptions']").data("paymentOptions").options;t.orderNumberForOrderPaymentLinksMode=parseInt(this.get("orderNumber"));t.orderTotalAmountForOrderPaymentLinksMode=parseFloat(this.get("orderTotalCost"));t.customerCodeForOrderPaymentLinksMode=(this.get("customerCode")||"").trim();t.emailAddressForOrderPaymentLinksMode=(this.get("emailAddress")||"").trim();this._showHidePaymentOptions(!0);n.cv.css.trigger(n.cv.css.eventnames.setCreditCardType)}},_validate:function(){function t(n){u.set("message",n)}var u=this,f=parseInt(this.get("orderNumber")),e=(this.get("customerCode")||"").trim(),r=parseFloat(this.get("orderTotalCost")),i=(this.get("emailAddress")||"").trim();return(t(""),isNaN(f))?(t(this.orderNumberLabel+" is not a valid number"),!1):(this.set("orderNumber",f),isNaN(r)||r<=0)?(t(this.totalAmountLabel+" is not a valid number"),!1):(this.set("orderTotalCost",r),e.length==0)?(t(this.customerCodeLabel+" is required"),!1):(this.set("customerCode",e),u.isEmailAddressRequiredField&&i.length==0)?(t(this.emailAddressLabel+" is invalid."),!1):i&&i.length>0&&n.cv.util.validateField(i,"email")==!1?(t(this.emailAddressLabel+" is invalid."),!1):!0},_showHidePaymentOptions:function(t){var i=n("[data-role='paymentoptions']");if(i.length===0){console.error("Checkout Payment Options widget is required on this page");return}t?i.show():i.hide()},setup:function(){this.onMoveToFirstStep()}})),i.setup(),i}};n.cv.ui.widget(t)})(jQuery);
140(function(n){var t={name:"autoInvoicePaymentSetup",extend:"mvvmwidget",options:{isAutoInvoicePaymentEnabledForCustomer:!1,allowUsersOptOutAutoInvoicePayment:!1,isTokenAvailableForCustomer:!1,notAcceptedTermsAndConditionsErrorMessage:"Terms & Conditions not accepted. Please read and accept the Terms & Conditions to continue.",notEnableAutomaticInvoicePaymentErrorMessage:"Automatic Invoice Payment not enabled. You need to enable Automatic Invoice Payment.",noNotificationEmailAddressErrorMessage:"No email address was entered. Please enter one or more valid email addresses to continue.",invalidNotificationEmailAddressErrorMessage:"The Email Address(s) is/are invalid. Please enter valid email address(s) to continue.",noTokenErrorMessage:"No credit card added. Please add a credit card to continue.",notificationEmailAddresses:"",accountPaymentPageUrl:""},initialised:function(){var t=this;t.options.isAutoInvoicePaymentEnabledForCustomer&&!t.options.allowUsersOptOutAutoInvoicePayment&&(n("#enableAutomaticInvoicePaymentContainer").removeClass("no-tooltip"),n("#enableAutomaticInvoicePaymentContainer .form-checkbox").attr("disabled","disabled"))},viewModelBound:function(){var t=this;n.cv.css.bind(n.cv.css.eventnames.customerPaymentTokenDeleted,n.proxy(t.viewModel.customerPaymentTokenDeleted,t.viewModel));n.cv.css.bind(n.cv.css.eventnames.customerPaymentTokenAddedOrUpdated,n.proxy(t.viewModel.customerPaymentTokenAddedOrUpdated,t.viewModel))},_getViewModel:function(){var n=this;return n._getDefaultViewModel()},_getDefaultViewModel:function(){var t=this;return kendo.observable(n.extend({},t.options,{acceptedTermsAndConditions:!1,isTokenAvailableForCustomer:t.options.isTokenAvailableForCustomer,enableAutomaticInvoicePayment:t.options.isAutoInvoicePaymentEnabledForCustomer,notificationEmailAddresses:t.options.notificationEmailAddresses,notAcceptedTermsAndConditionsErrorMessage:"",notEnableAutomaticInvoicePaymentErrorMessage:"",notificationEmailAddressErrorMessage:"",noTokenErrorMessage:"",isProcessing:!1,toggleAcceptedTermsAndConditions:function(){this.set("acceptedTermsAndConditions",!this.get("acceptedTermsAndConditions"))},onSave:function(){var n=this,t=n.validateBeforeSaving();n.submit(t)},validateBeforeSaving:function(){var i=this,r=!0,u,f;return(i.clearMessage(),t.options.isAutoInvoicePaymentEnabledForCustomer&&i.get("enableAutomaticInvoicePayment")!==!0)?r:(i.get("isTokenAvailableForCustomer")!==!0&&(i.set("noTokenErrorMessage",t.options.noTokenErrorMessage),r=!1),i.get("acceptedTermsAndConditions")!==!0&&(i.set("notAcceptedTermsAndConditionsErrorMessage",t.options.notAcceptedTermsAndConditionsErrorMessage),r=!1),t.options.isAutoInvoicePaymentEnabledForCustomer!==!0&&i.get("enableAutomaticInvoicePayment")!==!0&&(i.set("notEnableAutomaticInvoicePaymentErrorMessage",t.options.notEnableAutomaticInvoicePaymentErrorMessage),r=!1),u=i.get("notificationEmailAddresses"),n.cv.util.isNullOrWhitespace(u)?(i.set("notificationEmailAddressErrorMessage",t.options.noNotificationEmailAddressErrorMessage),r=!1):(u=u.replace(",",";"),f=n.cv.util.splitTrimRemoveEmpty(u,";"),_.some(f,function(t){return n.cv.util.validateField(t,"email")===!1}
140)&&(i.set("notificationEmailAddressErrorMessage",t.options.invalidNotificationEmailAddressErrorMessage),r=!1)),r)},clearMessage:function(){this.set("message","");this.set("notAcceptedTermsAndConditionsErrorMessage","");this.set("notEnableAutomaticInvoicePaymentErrorMessage","");this.set("notificationEmailAddressErrorMessage","")},submit:function(t){var i=this,r;i.get("isProcessing")||t!==!0||(r={isEnabled:i.get("enableAutomaticInvoicePayment"),notificationEmailAddresses:i.get("notificationEmailAddresses")},i.set("isProcessing",!0),n.cv.css.createOrUpdateAutomaticInvoicePaymentCustomers(r).done(function(t){var r=t.data;r.Success===!0?n.cv.util.redirect(location.href,{message:"Successfully Saved The Automatic Invoice Payment Setup.",messagetype:n.cv.css.messageTypes.success},!1):n.cv.util.hasValue(r.Messages)&&(i.set("isProcessing",!1),n.cv.util.notify({triggerMessages:!0,message:r.Messages[0],type:n.cv.css.messageTypes.error,clearExisting:!0}))}).always(function(){i.set("isProcessing",!1)}))},customerPaymentTokenAddedOrUpdated:function(){this.set("isTokenAvailableForCustomer",!0)},customerPaymentTokenDeleted:function(){this.set("isTokenAvailableForCustomer",!1)}}))}};n.cv.ui.widget(t)})(jQuery);
141(function(n){n.cv=n.cv||{};n.cv.css=n.cv.css||{};n.cv.css.productSearchEvents=n.cv.css.productSearchEvents||{}})(jQuery);
142(function(n){n.cv=n.cv||{};n.cv.css=n.cv.css||{};n.cv.css.thirdPartyDeliveryWidget=n.cv.css.thirdPartyDeliveryWidget||{}})(jQuery);
143$.cv.css.enterPressedEvent="keydown";$(document).ready(function(){var n,t,e,i;kendo.culture("en-AU");kendo.culture().calendar.patterns.d="dd/MM/yyyy";$("form:first").attr("novalidate","novalidate");$.cv.ajax.setup({timeoutRedirectUrl:"/session-expired"});n=$.cv.css.browser();(n.isIE===!1||n.isIE&&n.version>8)&&(t=$("#dl-menu"),t.length>0&&t.dlmenu&&t.dlmenu());window.name===""&&(e=(new Date).getTime().toString(),window.name=e);$("#_window_name").val(window.name);$(".widget-mobile-menu .cv-mobile-menu-zone-button").click(function(){var n=$("body"),r=$(".widget-mobile-menu .mobile-menu"),t="shift-left";if(r.toggleClass(t),n.toggleClass(t),n.find("> .overlay").remove(),n.hasClass(t)){n.prepend('<span class="overlay"><\/span>');var u=n.find("> .overlay"),f=n.find(".mobile-menu-close"),i=function(e){var o=$(e.target);(o.closest(".widget-mobile-menu .mobile-menu .mobile-menu-close").length>0||!o.closest(".widget-mobile-menu .cv-mobile-menu-zone-button").length&&!o.closest(".widget-mobile-menu .mobile-menu").length&&o.closest(".k-list-scroller").length==0)&&(n.removeClass(t),r.removeClass(t),u.remove(),n.unbind("click",i),f.unbind("click",i))};u.bind("click",i);n.bind("click",i);f.bind("click",i)}});$("#homepage-gallery-slider").each(function(){$.cv.css.owlCarousel.bindCarousel(this,{navSpeed:300,dotsSpeed:400,items:1,lazyLoad:!0,autoHeight:!0,dots:!0,autoplay:!0,autoplayTimeout:6e3,autoplayHoverPause:!0})});$("#news-gallery-slider").each(function(){$.cv.css.owlCarousel.bindCarousel(this,$.cv.css.owlCarousel.carouselDefaults)});$.cv.util.productListItemGallery("div.product-list-gallery-slider");$.cv.css.initCarouselSliders($(document));$.cv.util.productGallery("#product-gallery-slider");$(".video.video-wrapper").fitVids();$("#coupons").hide();$("#shipping-options").hide();$("#coupon-apply").click(function(){$("#coupons").fadeIn(600)});$("#shipping-estimate").click(function(){$("#shipping-options").fadeIn(700)});$("body").on("click","#goto-review",function(){$("html,body").animate({scrollTop:$("#review-area").offset().top},"fast")});$("body").on("click","#goto-review-write",function(){$("html,body").animate({scrollTop:$("#review-area").offset().top},"fast",function(){$("#write-review").slideDown()})});$(".order-summary-quickview-area").hide();$("body").on("click",".order-summary-quickview-button",function(){var n=$(this).closest("[class^='widget-checkout-review-summary']").parents();n.each(function(n,t){var i=$(t).find(".order-summary-quickview-area");if(i.length>0)return i.is(":hidden")?$(i).slideDown("fast",function(){$("html,body").animate({scrollTop:$(".cart-summary").offset().top-($(".cv-header-topbar").height()||0)-($(".
143sticky-wrapper").height()||0)},"fast")}):$(i).slideUp("fast"),!1})});$("#mobile-filter .dropdown-area").hide();$("#mobile-filter").click(function(){$("#mobile-filter .dropdown-area").slideToggle()});$("#warranty-content").hide();$("#warranty-toggle").click(function(){$("#warranty-content").slideToggle();$("#warranty-toggle").toggleClass("cv-ico-general-arrow-down5")});$(".expandable-content").hide();$("body").on("click",".expandable-toggle",function(n){n.stopPropagation();var t=$(this).children(".expandable-content");t.length>0?t.slideToggle():($(this).next(".expandable-content").slideToggle(),$(this).find(".expandable-content:first").slideToggle());$(this).toggleClass("cv-ico-general-arrow-down5")});$("body").on("click",".expandable-toggle > a",function(n){var t=$(this);return n.stopPropagation(),t.parent().hasClass("all-expandable")?($(this).parent().click(),!1):!0});$("body").on("click",".expandable-toggle li.non-expandable",function(n){n.stopPropagation()});$(".expandable-toggle.is-visible").click();$("#shipping-content").hide();$("#shipping-toggle").click(function(){$("#shipping-content").slideToggle();$("#shipping-toggle").toggleClass("cv-ico-general-arrow-down5")});$(".reviews-content").hide();$("#reviews-toggle").click(function(){$(".reviews-content").slideToggle();$("#reviews-toggle").toggleClass("cv-ico-general-arrow-down5")});$("#write-review").hide();$("#write-toggle").click(function(){$("#write-review").slideToggle()});$(".shipping-dates").hide();$("#shippingschedule-toggle").click(function(){$(".shipping-dates").slideToggle()});$("#filter-1 .expandable-content").hide();$("#filter-1 .expandable-header").click(function(){$("#filter-1 .expandable-content").slideToggle();$("#filter-1 .expandable-header .downArrow").toggle();$("#filter-1 .expandable-header .upArrow").toggle()});$("#filter-2 .expandable-content").hide();$("#filter-2 .expandable-header").click(function(){$("#filter-2 .expandable-content").slideToggle();$("#filter-2 .expandable-header .downArrow").toggle();$("#filter-2 .expandable-header .upArrow").toggle()});$("#filter-3 .expandable-content").hide();$("#filter-3 .expandable-header").click(function(){$("#filter-3 .expandable-content").slideToggle();$("#filter-3 .expandable-header .downArrow").toggle();$("#filter-3 .expandable-header .upArrow").toggle()});$("#filter-4 .expandable-content").hide();$("#filter-4 .expandable-header").click(function(){$("#filter-4 .expandable-content").slideToggle();$("#filter-4 .expandable-header .downArrow").toggle();$("#filter-4 .expandable-header .upArrow").toggle()});$("#filter-5 .expandable-content").hide();$("#filter-5 .expandable-header").click(function(){$("#filter-5 .expandable-content").slideToggle();$("#filter-5 .expandable-header .downArrow").toggle();$("#filter-5 .expandable-header .upArrow").toggle()});$("#filter-6 .expandable-content").hide();$("#filter-6 .expandable-header").click(function(){$("#filter-6 .expandable-content").slideToggle();$("#filter-6 .expandable-header .downArrow").toggle();$("#filter-6 .expandable-header .upArrow").toggle()});$("#filter-7 .expandable-content").hide();$("#filter-7 .expandable-header").click(function(){$("#filter-7 .expandable-content").slideToggle();$("#filter-7 .expandable-header .downArrow").toggle();$("#filter-7 .expandable-header .upArrow").toggle()});$("#expanding-area").hide();$("#expand").click(function(){$("#expanding-area").slideDown(400);$("#expand").fadeOut(400)});$("#layout-switch-grid").click(function(){$("#product-grid").removeClass("detailed-list").addClass("grid")});$("#layout-switch-list").click(function(){$("#product-grid").removeClass("grid").addClass("detailed-list")});$("#cv-button-update").click(function(){$(".product-line-update").fadeIn(600).delay(1800).fadeOut(600)});$("#cv-button-remove").click(function(){$(".product-line-removed").fadeIn(600).delay(1800).fadeOut(600);
143$("#cart-row").delay(2200).fadeOut(600)});$("#cv-button-fav").click(function(){$(".product-line-addtofav").fadeIn(600).delay(1800).fadeOut(600)});$("#cart-update").click(function(){$(".cart-update").fadeIn(600).delay(1800).fadeOut(600)});$("#cart-empty").click(function(){$(".cart-row").fadeOut(800);$(".empty-cart").delay(800).fadeIn(800)});i=["Albania","Andorra","Armenia","Austria","Azerbaijan","Belarus","Belgium","Bosnia & Herzegovina","Bulgaria","Croatia","Cyprus","Czech Republic","Denmark","Estonia","Finland","France","Georgia","Germany","Greece","Hungary","Iceland","Ireland","Italy","Kosovo","Latvia","Liechtenstein","Lithuania","Luxembourg","Macedonia","Malta","Moldova","Monaco","Montenegro","Netherlands","Norway","Poland","Portugal","Romania","Russia","San Marino","Serbia","Slovakia","Slovenia","Spain","Sweden","Switzerland","Turkey","Ukraine","United Kingdom","Vatican City"];$(".product-search-autocomplete").kendoAutoComplete({dataSource:i,filter:"startswith"});$(".ordertemplate-autocomplete").kendoAutoComplete({dataSource:i,filter:"startswith"});$("[id$='EnquiryType']").kendoDropDownList();$("#cvfUserMaintenance select").kendoDropDownList();$("#formOrderComplete select").kendoDropDownList();$("#formOrderComplete #oc2_TBSoDeliveryDate").kendoDatePicker();$.cv.css.initialiseKendoControls($(document));$.cv.util.bindNonVmKendoTextBox();$("#expandable-area").hide();$("#expandable-click").click(function(){$("#expandable-area").fadeToggle();$("#expandable-click").toggleClass("cv-ico-general-arrow-down5")});$("#order-track-results").hide();$(".search-click").click(function(){$("#order-track-results").slideDown()});$("#mobile-filter-expand").hide();$("#mobile-filter-toggle").click(function(){$("#mobile-filter-expand").slideToggle()});$("#mobile-sort-expand").hide();$("#mobile-sort-toggle").click(function(){$("#mobile-sort-expand").slideToggle()});$("#notes-toggle").hide();$("#notes-click").click(function(){$("#notes-toggle").slideToggle();$("#notes-click").toggleClass("active")});$("#cart-fast-order-toggle").hide();$("#cart-fast-order-click").click(function(){$("#cart-fast-order-toggle").slideToggle();$("#cart-fast-order-click").toggleClass("active")});$("#cart-promo-code-toggle").hide();$("#cart-promo-code-click").click(function(){$("#cart-promo-code-toggle").slideToggle();$("#cart-promo-code-click").toggleClass("active")});$("#add-example").hide();$("#add-example-click").click(function(){$("#add-example").slideDown()});$("#shipping-toggle").hide();$("#shipping-click-yes").click(function(){$("#shipping-toggle").slideToggle()});$("#cart-summary-address1-click").click(function(){$("#cart-summary-address1-toggle").slideToggle()});$("#cart-summary-address2-click").click(function(){$("#cart-summary-address2-toggle").slideToggle()});$(document).on("click",".widget-role-select .role-select",function(){$(".widget-role-select .dropdown-area").slideToggle()});$(document).on("click",".widget-catalogue-select .catalogue-select",function(){$(".widget-catalogue-select .dropdown-area").slideToggle()});$(document).on("click",".multi-buy",function(){var n=$(this).data("productC
143ode").toString().replace(/ /,"-");$(".qty-breaks[data-product-code='"+n+"']").slideToggle()});$("#compare-toggle").click(function(){$(this).hasClass("cv-ico-general-arrow-down2")?$("#product-compare-list").animate({height:"4px"},300,function(){$("#compare-toggle").removeClass().addClass("cv-ico-general-arrow-up2")}):$(this).hasClass("cv-ico-general-arrow-up2")&&$("#product-compare-list").animate({height:"150px"},300,function(){$("#compare-toggle").removeClass().addClass("cv-ico-general-arrow-down2")})});$("#compare-full-toggle").click(function(){$("#product-compare-list").animate({height:$(window).height()-($(".cv-header-topbar").height()||0)},300,function(){$("body").addClass("no-scroll");$("#product-compare-list").addClass("expanded-compare-area")})});$(".product-compare-close").click(function(){$("#product-compare-list").animate({height:"150px"},300,function(){$("body").removeClass("no-scroll");$("#product-compare-list").removeClass("expanded-compare-area")})});$("#compare-remove-all").click(function(){$("body").removeClass("no-scroll")});var o=$(".cv-header-topbar"),r=o.length>0?parseFloat(o.css("height")):0,u=$(".cv-menus"),f=r+(u.length>0?parseFloat(u.css("height")):0);r>0&&u.sticky({topSpacing:r});f>0&&($("#sticky-heading").sticky({topSpacing:f}),$(".checkout-heading-navigation").sticky({topSpacing:f}));$.cv.util.fixHtmlEncodingInKendoTemplates();kendo.init("body");$.cv.css.initFancyBox($(document));$("#cv-zone-container-1").on("keypress",function(n){if(n.keyCode===13){if(n.target.tagName.toLowerCase()==="textarea"||n.target.tagName.toLowerCase()==="object")return;n.preventDefault();n.stopPropagation()}});$(document).on("click",".text-fade-toggle",function(n){var t=$(n.target),i=t.attr("data-categoryBannerTextId"),r=t.attr("data-categoryBannerTextReadMoreButtonId");$("#"+i).toggleClass("expanded");$("#"+r).toggleClass("showing-more")});$("#formOrders").length>0&&$("#ordergrid_btnUpdate,#ordergrid_btnEmptyCart").click(function(){$.cv.css.removeLocalStorage($.cv.css.localStorageKeys.currentOrder);$.cv.css.removeLocalStorage($.cv.css.localStorageKeys.currentOrderLines)});$.cv.css.setFieldTemplate($.cv.css.fieldTemplates.selector);$.cv.css.trigger($.cv.css.eventnames.documentReady,{});$.cv.css.bind($.cv.css.eventnames.productSearchWithPreviewProductCategoryListRendered,function(n){n&&$.cv.util.hasContent(n.widgetId)&&($(n.widgetId).find(".expandable-toggle.is-visible").click(),$.cv.css.trigger($.cv.css.eventnames.searchPreviewRendered))});$.cv.css.lazyLoadProductImages&&$.cv.util.initialiseProductImageLazyLoad();$.cv.css.lazyLoadWidget()});$(function(){function n(n){return!$.trim($(n).html())}function i(){var f,n,o,s;if(t!==!0){t=!0;$(document).off("mouseover",".widget-category-menu .menu-button",i);var e=$(".menu-content").first().find("a.heading, a.menu-item"),u=[],r=[];for(n=0;n<e.length;n++)f=$(e[n]),f.is("a.heading")&&r.length>0&&(u.push(r),r=[]),r.push(f[0]);for(r.length>0&&u.push(r),n=0;n<u.length;n++)o=$(u[n]),s=function(n){return function(){var t=$(n[0]),i=t.hasClass("cv-tmp-exp");n.wrapAll('<div class="menu-group" />');t.hasClass("heading")&&(t.removeClass("heading"),i?t.wrap('<div class="heading expandable-category-header" />'):t.wrap('<div class="heading" />'));i&&(t.removeClass("cv-tmp-exp"),$('<div class="expandable-toggle expandable-header">&nbsp;<\/div>').insertAfter(t.parent()));n.splice(0,1);n.removeClass("menu-item");i?n.wrapAll('<ul class="expandable-content" style="display: none;" />').wrap("<li />"):n.wrapAll("<ul />").wrap("<li />");$(".expandable-content",n).hide()}}(o),setTimeout(s,4)}}$(".container").each(function(t,i){var r=$(i);n(r)&&r.remove()});$(".dropdown-area-custom").each(function(t,i){var r=$(i);n(r)&&r.remove()});$(".third-level").each(function(t,i){var r=$(i);n(r)&&r.remove()});var t=!1;$(document).on("mouseover",".widget-category-menu .menu-button",i)});
144(function(n){n.cv=n.cv||{};n.cv.css=n.cv.css||{};n.cv.css.articleListItemEvents=n.cv.css.articleListItemEvents||{};n.cv.css.articleListItemEvents.isInitialized=!1;n.cv.css.articleListItemEvents.init=function(){if(n.cv.css.articleListItemEvents.isInitialized===!1){n(".faq-toggle").on("click",n.cv.css.articleListItemEvents.clickEvent);n.cv.css.articleListItemEvents.isInitialized=!0}};n.cv.css.articleListItemEvents.clickEvent=function(){n(this).toggleClass("active").closest(".
144news-article").find(".box-content").slideToggle().toggleClass("collapsed expanded")}})(jQuery);
145
146
147// Processed by cv-bundle

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.