cartApp.controller("DellAdvantageController",["$scope","$cookies","$filter","advantageFactory","featureService",function(n,t,i,r,u){n.initdelladvantage=function(){var o=u.IsEnabled("DellAdvantageDynamic")||n.ShowDellAdvantage,s=n.$parent.DataModel.CartTaskEntryUrl+encodeURIComponent(location.href),h=n.$parent.DataModel.CartSummary.EntireOrderTotalAmount,e;if(o&&n.$parent.DataModel.CartItems&&n.$parent.DataModel.CartItems.length>0){e=[];angular.forEach(n.$parent.DataModel.CartItems,function(n){e.push({OrderCodeId:n.ItemType===1?n.ProductId:n.ItemType===3?n.ServiceTag:undefined,SkuId:n.ItemType===2?n.ProductId:undefined,Price:n.ItemTotalValue,Manufacturer:n.Metadata.manufacturer,BrandId:n.Metadata.brand,FamilyId:n.Metadata.family,CategoryIds:n.Metadata.categories!=undefined?n.Metadata.categories.split(","):null})});var f=Dell.Transactional.buildLightweightProfile(),c={IncludeAccountNumberAndPin:!1,IncludeAccountBalance:!0,IncludeRedeemableBalance:!0,IncludeExpiringBalance:!0,IncludePendingBalance:!1,IncludeRewardsHistory:!1,BypassCache:!1,OrderTotal:h},l={Country:f.c,Language:f.l,Segment:f.s,CustomerSet:f.cs,Region:f.r,ProfileId:t.profile!=undefined?t.profile:t.Profile,IncludeProductMessaging:!1,IncludeProductGroupMessaging:!0,Products:e,GroupMessages:[{Library:"Responsive_Messaging",Key:"dell_advantage_product_group_messaging_cold"},{Library:"Responsive_Messaging",Key:"dell_advantage_product_group_messaging_warm_da_dpa"},{Library:"Responsive_Messaging",Key:"dell_advantage_product_group_messaging_warm_da_nodpa"},{Library:"Responsive_Messaging",Key:"dell_advantage_product_group_messaging_warm_noda_dpa"},{Library:"Responsive_Messaging",Key:"dell_advantage_product_group_messaging_hot_da_dpa"},{Library:"Responsive_Messaging",Key:"dell_advantage_product_group_messaging_hot_da_nodpa"},{Library:"Responsive_Messaging",Key:"dell_advantage_product_group_messaging_hot_noda_dpa"}],GroupMessageLinks:[{Library:"Responsive_Links",Key:"dell_advantage_product_group_messaging_cta_cold"},{Library:"Responsive_Links",Key:"dell_advantage_product_group_messaging_cta_warm_da_dpa"},{Library:"Responsive_Links",Key:"dell_advantage_product_group_messaging_cta_warm_da_nodpa"},{Library:"Responsive_Links",Key:"dell_advantage_product_group_messaging_cta_warm_noda_dpa"},{Library:"Responsive_Links",Key:"dell_advantage_product_group_messaging_cta_hot_da_nodpa"},{Library:"Responsive_Links",Key:"dell_advantage_product_group_messaging_cta_hot_noda_dpa"}],RewardsAccountSettings:c,RewardsAccountMessages:[{Library:"Responsive_Messaging",Key:"dell_advantage_rewards_account_balance_messaging"},{Library:"Responsive_Messaging",Key:"dell_advantage_rewards_account_balance_messaging_warm"},{Library:"Responsive_Messaging",Key:"dell_advantage_rewards_account_expiring_balance_messaging"}]},a=function(t){var o=n.$parent.DataModel.IsDellPreferredAccountMember,f=n.$parent.DataModel.IsAuthenticated,h,e,r;if(n.dellAdvantageMessage="",n.dellAdvantageMessageUrl="",n.dellAdvantageMessageCaption="",t.IsRewardsPaymentEnabled=u.IsEnabled("DellAdvantageRewardsPayment")||n.ShowDellAdvantage,t.IsRewardsPaymentEnabled&&t.IsMember&&t.RewardsAccount&&t.RewardsAccount.RewardsAccountMessages&&t.RewardsAccount.AccountBalance>0&&t.RewardsAccount.IsValid){n.dellAdvantageMessage=i("filter")(t.RewardsAccount.RewardsAccountMessages,{Key:"dell_advantage_rewards_account_balance_messaging_warm"})[0].Value;h=i("filter")(t.GroupMessageLinks,{Key:"dell_advantage_product_group_messaging_cta_warm_da_dpa"})[0];n.dellAdvantageMessageUrl=h.Link.Url;n.dellAdvantageMessageCaption=h.Link.Caption;f&&(n.dellAdvantageMessage=i("filter")(t.RewardsAccount.RewardsAccountMessages,{Key:"dell_advantage_rewards_account_balance_messaging"})[0].Value+i("filter")(t.RewardsAccount.RewardsAccountMessages,{Key:"dell_advantage_rewards_account_expiring_balance_messaging"})[0].Value,n.isDaAuthenticated=!0);return}t.GroupMessages&&t.GroupMessageLinks&&n.$parent.DataModel.IsComoMessagingEnabled&&(t.ProfileId&&t.IsMember&&o?(e=i("filter")(t.GroupMessages,{Key:f?"dell_advantage_product_group_messaging_hot_da_dpa":"dell_advantage_product_group_messaging_warm_da_dpa"})[0],r=i("filter")(t.GroupMessageLinks,{Key:f?null:"dell_advantage_product_group_messaging_cta_warm_da_dpa"})[0]):t.ProfileId&&!t.IsMember&&o?(e=i("filter")(t.GroupMessages,{Key:f?"dell_advantage_product_group_messaging_hot_noda_dpa":"dell_advantage_product_group_messaging_warm_noda_dpa"})[0],r=i("filter")(t.GroupMessageLinks,{Key:f?"dell_advantage_product_group_messaging_cta_hot_noda_dpa":"dell_advantage_product_group_messaging_cta_warm_noda_dpa"})[0]):t.ProfileId&&t.IsMember&&!o?(e=i("filter")(t.GroupMessages,{Key:f?"dell_advantage_product_group_messaging_hot_da_nodpa":"dell_advantage_product_group_messaging_warm_da_nodpa"})[0],r=i("filter")(t.GroupMessageLinks,{Key:f?"dell_advantage_product_group_messaging_cta_hot_da_nodpa":"dell_advantage_product_group_messaging_cta_warm_da_nodpa"})[0],r.Link.Url=s):(e=i("filter")(t.GroupMessages,{Key:"dell_advantage_product_group_messaging_cold"})[0],r=i("filter")(t.GroupMessageLinks,{Key:"dell_advantage_product_group_messaging_cta_cold"})[0]),e&&(n.dellAdvantageMessage=e.Value),r&&r.Link&&(n.dellAdvantageMessageUrl=r.Link.Url,n.dellAdvantageMessageCaption=r.Link.Caption))};n.isLoading=!0;r.getProgram(l).then(function(t){n.program=t;a(n.program);n.isLoading=!1},function(t){console.log(t);n.isLoading=!1})}};n.$parent.$watch("DataModel.CartItems",function(){n.initdelladvantage()})}])